LINUX.ORG.RU

Избранные сообщения Bad_ptr

Книги

 

В продолжение темы. Изначально книги собирались в рамках инициативы и были обновлены мной. Если нет чего-то важного, пишите. cast science, shgurbanov

link mirror

Deleted
()

Python 3, не получается залогиниться на ЛОР

 , ,

Быдлокод, подсмотренный в интернетах и переправленный: http://pastebin.com/RK1Qs2yw

В итоге вход не выполняется, в выводе видно. Пробовал и через главную логиниться, и через login.jsp - никакой разницы. Как это нужно правильно написать? Весь день гугл перерываю.

// P.S. pastebin отступы немного испортил

evilmanul
()

Формальная верификация

 ,

Привет!

Я заинтересовался языками с зависимыми типами. Попробовал писать на Agda, но она мне не очень понравилась. Переключился на Coq. Начал читать Software Fuondations и решать задания оттуда.

Русскоязычных материалов по Coq практически нет. В ЖЖ есть gds и deni_ok, тут и на хабре есть ymn.

Что почитать по основам Coq? Язык английский, русский.

Какой простенький проект подойдет для новичка?

betalor
()

Интересные технические заметки по геймдеву

 , , , ,

Кто-то знает где лучше искать качественный сабж?
Пример - DOOM 3 BFG Technical Note
http://fabiensanglard.net/doom3_documentation/index.php

elrprt
()

Выучи X за Y минут - документация к ЯП и технологиям в виде документированного кода!

 ,

Adam Bard с сообществом начал и развивает, а также приглашает всех поучаствовать в проекте Learn X in Y minutes - «Code documentation written as code!».

Где ознакомление с языком программирования, инструментом или технологией представлено в виде документированного кода на целевом ЯП.

На данный момент можно изучать, в том числе с переводом с английского на испанский и китайский языки - такие ЯП и технологии:



Ведется работа над Go.

Возможно, некоторые найдут более читабельным версию на сайте проекта: http://learnxinyminutes.com

А не непосредственного репозитария с файлами в markdown: https://github.com/adambard/learnxinyminutes-docs

science
()

Вышла новая версия SciDB

 

Группа Open Source

Вышла новая версия проекта SciDB - 12.12.

SciDB - проект Майка Стоунбрейкера, отца многих СУБД.

SciDB - версионируемая СУБД для аналитики, работающая с большими многомерными распределёнными массивами.

Доступны два вида синтаксиса:

  • Array Query Language (AQL) — язык очень похожий на SQL, но работающий не с таблицами (таблица = одномерный массив), а с многомерными массивами;
  • Array Functional Language (AFL) — «чистый» в функциональном смысле полностью эквивалентный AQL язык.

Партицирование данных и запросов, линейная алгебра, математическая статистика и машинное обучение из коробки.

В новой версии большое количество исправлений, оптимизаций производительности.

Появилась интеграция с MPICH и ScaLAPACK.

Доступны репозитории для CentOS 6.x, RedHat 6.x, Ubuntu 12.04.

Доступные интерфейсы:

  • Python
  • R
  • iquery (аналог консольного клиента)

В ближайшем будущем планируются:

  • RESTful API
  • JDBC-connector
  • ODBC-connector

SciDB используется:

  • банками
  • страховыми компаниями
  • генетиками
  • астрономами
  • платёжными системами

Из публично доступных примеров: 1000 Genomes Browser

>>> Скачать (scidb.org)

zabivator
()

Годные CSS-фреймворки

 , , css framework, ,

Есть закреплённый тред про JS-библиотеки, а про CSS-фреймворки нет. Потому спрашиваю, что есть годного?
Сейчас использую Twitter Bootstrap, который мне не очень-то нравится, зато умеет адаптивный дизайн.
Когда начал гуглить фреймворки от гугла, нашёл Elegantizr и Plusstrap. Также наткнулся на такую пародию на фреймворк (мне понравилось, вообще-то).
На википедии лежит такой список, а на хабре такой.
Также приглядываюсь к [url=]xy.css, но он не очень-то похож на фреймворк. Хотелось бы прикрутить к нему что-нибудь для настройки полей ввода и кнопок, чтобы выглядело так.
А ещё есть normalize.css, который вообще не фреймворк, но очень-очень годная шктука.

Делитесь, кто что использует, а то интересно. Если тема востребована, то можно закрепить.

CYB3R
()

Функциональный tcl (часть2)

 ,

в продолжении Функциональный tcl

как-то внезапно получились lazy и memoize :) это уже в добавок к map,fold,filter,zip,compose и прочим.

Демка:

#!/usr/bin/tclsh
source functional.tcl
namespace import f::*

# функция, что ну очень долго и нудно работает
set massive {{x} {
	puts "Чтото-там считаем над x=$x"
	after 1000
	puts "Читаем файлы и Обращаемся к серверам"
	after 1000
	puts "че-то получили"
	set x
}}
# но будет её соханять её результаты :)
set massive [ memoize $massive ]

set vector {}
foreach i [ range 0 10000 ] {
	lappend vector [ lazy $massive $i ]
}

set subvect [ lrange $vector 100 102 ]

set n100 [ invoke2 $massive 100 ]
set n100plus200 [ chain $massive {expr 200+} 100 ]
puts "=== Calcs done :) ==="
puts "ИТОГО:"
puts "massive 100..102 = $subvect"
puts "massive 100 = $n100"
puts "massive 100+200 = $n100plus200"
и выхлоп демки:
Чтото-там считаем над x=100
Читаем файлы и Обращаемся к серверам
че-то получили
=== Calcs done :) ===
ИТОГО:
Чтото-там считаем над x=101
Читаем файлы и Обращаемся к серверам
че-то получили
Чтото-там считаем над x=102
Читаем файлы и Обращаемся к серверам
че-то получили
massive 100..102 = 100 101 102
massive 100 = 100
massive 100+200 = 300

Хотелось бы узнать мнение сообщества об:

1) Наиболее естественный синтаксис для map,fold,filter и прочего. Сейчас

map func1 func .. funcN {argList}
Но может быть
map {funcList} arg1 arg2 .. argN
или
map {funcList} {argList}

2) Какие удобные фичи стоит подсмотреть в других языках ?

MKuznetsov
()

Функциональный tcl

 ,

Точнее библиотека just-for-fun зарелижена вашим покорным слугой на https://www.assembla.com/spaces/tclamba

наличиствуют map, filter, fold, chain, compose, zip а также некоторые другие, полезные и не очень. Интеграция в стиль Тикля на мой взгляд получилась неплохая и даже удобная.

А вот примерчик:

## Можно использовать процедуры tcl как lambda
map { expr 2+$$ } [ f::range 1 10 ]
# =3 4 5 6 7 8 9 10 11 12

## Анонимные функции по прежнему используются
map { apply {{a b} { expr $a + $b }} } {{2 3} {4 5}}
# =5 9

## lambda можно выстраивать в цепочку
map { expr 2+} { expr 2*} [ f::range 1 10 ]
# =6 8 10 12 14 16 18 20 22 24

## Можно применять фильтры c break и continue
map {
	if { {$$} =={} } {  break } else { continue }
} {{a b} {expr $a + $b}} {{ 1 2} {0 7} {} {3 4}}
# =3 7

## fold lambda+ init list
fold {{{a b} {expr $a+$b}}} 0 { 1 2 3 4 }
# =10

map { fold {::tcl::mathop::+} 2 } { { 1 2 3 } { 4 5 6 } }
# =8 17

## filter lambda+ list
filter {expr $$ % 2} [f::range 1 10 ]
# =1 3 5 7 9

## chain lambda+ list - просто цепь исполнения без обработки сигналов
chain { concat "WORD" } { concat "hello" } { string totitle "$$" 0 end } "!!"
# =Hello word !!

## Можно строить композиции (конвееры),использовать внешние переменные
##  и много-много разного
set charClass "upper"
set numberOfUpperChar {
   {split {$$} {}}
   {isolate { if {$charClass == "lower"} { set charClass "upper"} }}
   {filter {string is $charClass -strict} }
   {collapse}
   {llength}
}
set lorem "Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum"

chain {*}$numberOfUpperChar $lorem
# =4

## в частности делать вот такую композицию:
set func [ compose2 {string range $$ 1 end-1} {lindex $$ end} ]
invoke [ list $func ] {one two three}
# =hre

## теперь можно считать факториалы "по взрослому" :)
proc fasum { n } {
	set s [ zip [ map {{ a {
		list "*(1+$a" ")"
	} }} [ range 2 $n ] ] ]
	set s [ string map { " " {} \{ {} \} {} } $s ]
	return [ string range $s 2 end-1 ]
}
fasum 10
# =1+2*(1+3*(1+4*(1+5*(1+6*(1+7*(1+8*(1+9*(1+10))))))))

в дальних планах - lazy, благо что свой-же код надо только слегка переделать и (если осилю NRE) lazylist

MKuznetsov
()

онлайн среда+компилятор

 , онлайн разработка,

Есть ли такой сервис, где можно набирать код, компилить его и запускать на сервере (желательно в браузере)? Видел такое ПХП (была новость на х.хабре), нужно для с++ и С# (увернулся от помидора).
Нужно потому, что неохота брать все время с собой ноутбук, а время на работе есть.
Возможно есть какие-то бесплатные серверы, на какие можно заходить по ССШ и устанавливать какие-хочешь приложение, тогда можно было-бы запускать среду через ССШ и форвардинг Х-ов.

//если модераторы посчитают нужным, пускай перенесут.

ymuv
()

Выбор паяльной станции + фенечек

На подарок. Основные предполагающиеся применения: ремонт всяких компьютерных плат, БП и прочей электроники.
Бюджет на всё: $300-400.
Я в этом не особо соображаю, поэтому после поверхностного гуглежа остановился на поделиях китайской промышленности по методу «не самое дешёвое в прайсе»:
Паяльная станция AOYUE-968 (термофен, дымоуловитель, датчики температуры) ~$200
Настольная линза с подсветкой Pro'sKit MA-1215CF ~$90

Что я ещё забыл? Чего ещё не хватает для нормальной работы?

Уровень одаряемого: техникум + полгода в сервисном центре.

В тред призывается AiFiLTr0 в качестве гуру паяльника и командора микроэлектроники.

Deleted
()

Микромоторы, электроника

 ,

Дорогой ЛОР, я знаю,что ты не Гугл, но всё же, обращаюсь к тебе за помощью: Подскажи, пожалуйста, добротные сайты где можно купить в небольшом количестве микромоторы, размером до 5-7 см по длине\ширине. И каких-нибудь сайтов по обращению с этими моторами, интересные схемы. Зачем? Хочу улучшить навыки в создании микророботов, во славу роботам! Линукс здесь при том, что со временем он будет управлять этим самым роботом!

Заранее спасибо!

Mr_Jke
()

Мультисит на убунте

 ,

Приспичило мне как-то создать мультисит, делается он не очень очевидным путем, потому выкладываю рецепт на случай, если кому понадобится.

1) Запуск двух иксов и настройка KDM.

У меня две видеокарты NVIDIA, не знаю, прокатит такой способ с ATI.
Сперва нам нужно найти адрес устройств, делается это так:

$ lspci | grep VGA
01:00.0 VGA compatible controller: NVIDIA Corporation GF100 [GeForce GTX 480] (rev a3)
04:00.0 VGA compatible controller: NVIDIA Corporation G73 [GeForce 7600 GT] (rev a1)

Соответственно нас интересует первая колонка.

Затем нам нужно запустить два экземпляра Xorg
Делается это так:

Xorg -config /etc/X11 -br -nolisten tcp -isolateDevice PCI:1:0:0 vt6 #Первый
Xorg -config ~ -br -nolisten tcp -sharevts -novtswitch -isolateDevice PCI:4:0:0 vt5 #Второй, в качестве пути к конфиге я намеренно указал неверный путь, для того, что бы конфига сгенерилась на лету.

Соответственно пример конфиги KDM:

cat /etc/kde4/kdm/kdmrc
http://pastebin.com/2CHkVa7h

2) Назначение устройств ввода:
Был в сети пример через конфиги иксов, но мне не понравилось то, что в таком случае нужно эти конфиги таки писать. Потому я сделал через xinput

Вывод списка устройств:

xinput list
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ Logitech USB Gaming Mouse id=9 [slave pointer (2)]
⎣ Virtual core keyboard id=3 [master keyboard (2)]
↳ Virtual core XTEST keyboard id=5 [slave keyboard (3)]
↳ Power Button id=6 [slave keyboard (3)]
↳ Power Button id=7 [slave keyboard (3)]
↳ Dell Dell USB Keyboard id=8 [slave keyboard (3)]
∼ Logitech USB Optical Mouse id=10 [floating slave]
∼ AT Translated Set 2 keyboard id=11 [floating slave]

По умолчанию - все устройства ввода подцеплены ко всем иксам, нам нужно это исправить. От каждого дисплея мы отключаем лишние устройства.

DISPLAY=:0 xinput --float 10
DISPLAY=:0 xinput --float 11
DISPLAY=:1 xinput --float 8
DISPLAY=:1 xinput --float 9

Соответственно, добавляем эти строки в /etc/kde4/kdm/Xsetup, и в /etc/kde4/kdm/Xreset. (Я на всякий случай добавил и в /etc/kde4/kdm/Xsession)

На этом этапе, у вас два икса, каждый со своим набором клава/мыш.

3) Разделение аудио.
Вариант для ленивых, с пульсаудио я не расматриваю, так как не пользуюсь им.
Как это делается в ALSA. Двух звуковух у меня нет, поэтому я делю звук по каналам. Передний канал на первого пользователя, задний на второго.
Основная идея в использовании ttable.
pcm.alc883 {
type dmix
ipc_key 2048 #Нужно для того, что бы все пользователи использовали общий dmix
ipc_perm 0777
slave {
pcm «hw:CARD=Intel,DEV=0» #Править под себя
rate 44100
period_time 0
period_size 1024
buffer_size 16384
channels 8
}
bindings { #Почему-то без этого у меня не заработало.
0 0
1 1
2 2
3 3
4 4
5 5
6 6
7 7
}
}
# green - «Front» in Alsa mixer
pcm.a {
type plug
slave {
pcm «alc883»
channels 8
}
ttable.0.0 1 #Тут рулим каналами
ttable.1.1 1
}
# gray - «Surround» in Alsa mixer
pcm.b {
type plug
slave {
pcm «alc883»
channels 8
}
ttable.0.2 1
ttable.1.3 1
}

Пример моей рабочей конфиги: http://pastebin.com/aZwNE4RS

Разумеется у пользователя в хомяке должен лежать файл ~/.asoundrc, с чем-то вроде этого:
pcm.!default {
type plug
slave {
pcm «d»
channels 8
}
}

Собственно на этом все. У меня все работает. (Конфига называется asound.conf.old потому как я временно отключил разделение звука, разумеется реально она должна лежать в /etc/asound/conf)

Перемещено JB из talks

kir2yar
()

Лицензированные материалы в DVCS. Правовые вопросы.

В свете темы сайтах на DVCS возник концептуальный вопрос. Вот, предположим, я, не зная об этом, выложил сейчас на сайт материал, нарушающий чьи-то права. Со мной связываются, я материал убираю, претензий ко мне нет.

Теперь представим, что сайт лежит в DVCS, типа того же Битбукета. Материал с сайта-то я удаляю, но он лежит на Битбукете в истории ревизий по-прежнему.

Существует ли механизм безвозвратного удаления материала из истории? Ну, т.е. история, фиг с ней, пусть будет, а вот чтобы файл вытащить было нельзя.

Не прихлопнет ли в таком случае хостер весь репозиторий, если его припрёт правообладатель?

KRoN73
()

посоветуйти музыку

 

Собственно, посоветуйте нечто спокойное медитативно-классическое, под которое приятно трассировать пп.
Что-то типа такого: http://www.jamendo.com/en/artist/337307/sydney-poma

Линукс при том, что он будет работать на том, что я трассирую.

AiFiLTr0
()

Годных js-библиотек тред

 ,

Осваиваю разработку веб-морд, открыл для себя jQuery, underscore.js и date.js. Что ещё посмотреть полезное/универсальное? Must have, одним словом.

ollowtf
()

Мечта параноика

 

Proof-of-concept: зашифрованный /boot! То, чего так не хватало тем людям, которые хотели полностью зашифрованную систему на одном разделе или опасались, что их нешифрованный /boot изменят, засунут в initrd трояна и таким образом получат доступ ко всем остальным данным.

Рецепт:

  • Свежий GRUB, не старше 2011-07-07 (grub-2.00 с официального сайта вполне подошёл)
  • Сборка руками, ничего интересного, но много build-dependencies.
  • grub-install оказался недостаточно умным, чтобы сработать автоматически.
    • Во-первых, эксперимент проводился на /dev/loop0, что у GRUB не было никаких шансов заметить, пришлось править .../boot/grub/device.map:
      dd if=/dev/zero of=luks.img bs=1M count=100
      losetup /dev/loop0 luks.img
      fdisk /dev/loop0
      cruptsetup luksFormat /dev/loop0p1
      cryptsetup luksOpen /dev/loop0p1 test
      mke2fs /dev/mapper/test
      mount /dev/mapper/test /mnt
      mkdir -p /mnt/boot/grub
      echo '(hd0) /dev/loop0' > /mnt/boot/grub/device.map
    • Во-вторых, по умолчанию GRUB даже не пытается открывать зашифрованные устройства:
      # share/grub/grub-mkconfig_lib
        if abstractions="`"${grub_probe}" -t abstraction "$path"`" 2>&1 ; then 
            :
        else
          return 1
        fi
      
        if [ x$GRUB_CRYPTODISK_ENABLE = xy ]; then
            return 0
        fi
        
        for abstraction in $abstractions; do
            if [ "x$abstraction" = xcryptodisk ]; then
                return 1
            fi
        done
      Чтобы он сделал такую попытку, необходимо установить переменную окружения GRUB_CRYPTODISK_ENABLE в «y».
    • В-третьих, разработчики не зря спрятали это за переменную окружения, поскольку получившийся core.img не смог прочитать таблицу разделов и увидеть зашифрованный раздел. Решилось это ручным добавлением модуля к grub-install.
    В итоге команда установки выглядела так:
    sudo env GRUB_CRYPTODISK_ENABLE=y ~/grub2/sbin/grub-install --modules=part_msdos --root-directory=/mnt/ /dev/loop0

Резюме: после обработки напильником уже работоспособно, но без напильника обойтись пока нельзя. Джедаи могут поставить даже на основную систему. Нужно найти время и отправить багрепорты/патчи.

А на самом скриншоте смотреть почти нечего, да.

AITap
()

Открываю исходники платформы разработки торговых алгоритмов

 , , ,

День добрый сообществу.

Я занимаюсь автоматизацией торговли и аналитикой финансового рынка (роботостроительство/алготрейдинг) и планирую открыть часть своего наработанного инструментария для совместной разработки и обмена опытом в технических вопросах. Больше всего меня интересует имеются ли подобные специалисты на ЛОРе, интересует ли кого-либо подобное сотрудничество.

Вначале немного расскажу о специфике проектов. Для специалиста в данной сфере не секрет, что большинство расширяемых платформ являются очень неудобными для гибкой и экзотической разработки торговых систем. Действительно удобные платформы привязаны к конкретному брокеру (и к его котировкам) или являются платными и закрытыми (чаще всего все вместе). MT4 со своим MQL адаптирован на классический тех. анализ, имеет во флаконе ущербную систему генетических алгоритмов для оптимизации торговых систем и вообще всячески поддерживает жульничества со стороны дилинговых центров (те, кто видел мастер-пакет MT4, поняли о чем я).

Поэтому для себя я создал цепочку проектов для разработки, тестирования, оптимизации и использования торговых систем. В данный момент проект берет котировки у швейцарского банка и торговой площадки Dukascopy. Качество котировок изумительное у них, скажу я вам. Все честно, открыто и качественно. Далее эти котировки попадают в БД под управлением postgreSQL. Сразу нарезаются на всяческие TF, графики Renko, хранятся в чистом виде (тики), есть поддержка гибридных TF (например S441 = 441 second), а так же прочая экзотика. Те кто серьезно занимается роботостроительством поймут зачем все это. Так же, систему очень легко расширить добавив новые правила формирования данных, например таких как квантовые графики, скоростные графики и прочее.

Основной примочкой системы является гибкое использование разнообразных сущностей классического и продвинутого тех. анализа. Поясню на примере написания простейшего торгового алгорима:

Простейший пример торгового алгоритма - это класс, наследующий все необходимые базовые примочки у родителя пустого торгового алгоритма. Класс имеет инициализационный конструктор, а так же ряд методов аля newTick(double bid, double ask, long time), newBar(Bar previous), newEvent(Event e)... У торгового ядра есть легко расширяемый ряд примочек. Существующие примочки: легкое и гибкое извелечение всяческой информации о исторических ордерах (реальных с торгового сервера, демо-ордеров при тестировании, вирутальных ордеров), поддержка библиотеки тех. анализа TA-LIB, построители графиков, анализаторы отчетов (мат. ожидание, профит-фактор, дисперсия, среднеквадратическое отклонение, процентные соотношения, анализ доходности по теории Винса, Вильямса). Поддержка смешанных и скрещенных алгоритмов, возможность подключение бриджов для разнообразных брокеров, дубликаторов сигналов (для цепочки инвестиционных счетов), подключение систем к гибко-конфигурируемым генетическим алгоритмам с целью оптимизации, выполнение полного перебора и прочий инструментарий. Легкое использование трала или другого функционала (например, перевода в безубыток):

Position p = trader.buy(Instruments.EURUSD, ...);
p.addTrailingStop(Indicators.ParabolicSAR(0.001, ...), ...);

Все это я разрабатывал чисто для себя и добился довольно серьезного уровня понимания специфики, технологий и обеспечил существенный финансовый доход. Однако, со временем я начал ощущать, что варюсь в собственном соку хоть и всячески стараюсь читать книги/статьи... Я ищу партнеров с которыми можно будет обмениваться техническими тонкостями, создать какого-то рода узкое сообщество по интересам, а так же выпиливать удобные инструменты для работы. Развиваться, смотреть что люди делают в мире. Буду рад услышать мнение от профессионалов, любителей и совсем новичков подобного рода деятельности.

База: Java + TA-LIB + postgreSQL. Java была выбрана из-за специфики использования автоматизированных торговых систем на разнообразных ОС, а так же из-за интерфейса API торговой площадки Dukascopy.

Еще имеется ряд дополнительных инстурментариев для экзотического анализа и выполнения специфичеких операции: нейросеть распознавания образов, алгоритмы паттерн-матчинга, системы дублирования торговых операций, генераторы отчетов, генераторы детальной информации о точках входа, специфические тестеры точек, анализаторы фундаментальных событий на базе fuzzy logic, календари экономических событий и прикладной софт, анализаторы качества котировок, анализаторы волатильности, визуализаторы работы нейросети/ГА, утилиты для анализа и визуализации ценового стакана. Все не вспомню сейчас, но многое согласен открыть при условии совместного активного развития проектов.

Подготовку исходников и открытие проекта планирую на конец текущего года. Конечно, при условии позитивного резонанса сообщества.

Приглашаю для обсуждения всех, кто некоторым образом интересовались подобной спецификой в предыдущих тематичных топиках:

ixrws winddos ZenitharChampion Root-msk ns_ramesses Made_in_China inline X10Dead qrck iBliss Kroz capricorn20 trex6

observer
()

XGetInputFocus возвращает неверное значение

Всем привет. У меня есть вот такой кусок кода:

#include <stdio.h>
#include <stdlib.h>
#include <X11/Xlib.h>
#include <X11/Xutil.h>

int main ()
{
	char **name;
	Display *dsp = XOpenDisplay(NULL);
	Window wnd;
	XTextProperty text;
	int param;
	XGetInputFocus(dsp,&wnd,&param);
	XGetWMName(dsp,wnd-1,&text);
	Xutf8TextPropertyToTextList(dsp,&text,&name,&param);
	printf("%s\n",*name);
	return 0;
}

И он работает верно, но! Но почему-то XGetInputFocus всегда возвращает ID активного окна, но на 1 больше, чем реальный ID. Поэтому потом приходится делать в XGetWMName wnd-1. Попахивает плохим кодом.

p.s. Можно ли использовать XGetInputFocus для поиска активного окна? Некоторые делают через атомы, но это сильно увеличивает код. В чем минусы данного решения?

fillo
()

Астрономии тред

 , ,

Будучи вдохновлён тредом о покрытии Луной Юпитера и покупкой длиннофокусного (300 мм) объектива, решил создать общеастрономический топик, в котором бы ЛОРовцы смогли бы выкладывать какие-то свои астрономические впечатления, достижения и новости космического плана.

Для начала парочку своих фото:
Луна в фазе полумесяца (самая интересная, с точки зрения наблюдателя фаза)
Луна в фазе 3/4
Полнолуние (самая скучная фаза из-за отсутствия теней и «исчезновения» кратеров)
Венера в фазе полумесяца
Сатурн
Юпитер
Фото не подвергались обработке, только обрезка.

На радостях сделал простенький телескоп:
Доставка канализационной трубы, с внутренним диаметром 75 мм, на велосипеде (обошлась 1,2$ за 1,5 м)
Держатель объектива сделанный из укороченного по окружности участка трубы. Фокусное расстояние линзы = 1 м
Объектив в процессе сборки
Вырезание из листовой никелированной латуни от глянцевателя диафрагмы для объектива (благодаря огромной светосиле окуляра можно щедро диафрагмировать объектив минимизируя цветовые аберрации
Диафрагма в спаянном виде
Покраска диафрагмы чёрной матовой краской для предотвращения бликов
Предварительная эксплуатация показала, что яркие объекты (Луна, Венера, Юпитер) нуждаются в ещё большем диафрагмировании чтобы более комфортно было смотреть и ещё больше снизить цветовые аберрации.
Была разработана сменная диафрагма
Диафрагма в состоянии заготовки
Диафрагма 26 мм
Диафрагма 12 мм
Отбраковка
Вид на диафрагму изнутри трубы сквозь линзу объектива
Крепление использовал от фотоаппарата «Киев 19»
Окуляр делал из носика крана и объектива от немецкого микроскопа
Линза объектива микроскопа имеет рекордное фокусное расстояние 6...8 мм, таким образом увеличение телескопа составило не менее 1000 мм / 8 мм = 125 крат
Спайка крана и объектива
Выпиливание держателя окуляра из толстенного бруска
Заготовки
Держатель окуляра в полусборе
Окуляр в сборе
Телескоп вместе с наблюдателем :)
Смена диафрагмы
Я на Шатских озёрах с сабжем перед Луной
Вместе со знакомым астрономом и телескопами
Оценка степени увеличения В реальности всё чётче и выразительнее.

ШТАТИВ ДЛЯ ТЕЛЕСКОПА:
Помучившись со стандартным фото/видео штативом, понял, что так дальше жить нельзя. Как и театр начинается с вешалки так и телескоп начинается со штатива.
За основу взят всё тот же стандартный штатив
Заготовка гильзы для поворотной оси
Гильза в законченном состоянии
Поворотная ось
Осевая петля
Зажим из ручки крепления блока молоточков от фортепиано Украина
Обратная сторона штатива
Лекало для карты неба на киль
Макет карты. Планеты представлены в масштабе
Телескоп со штативом в снаряжённом состоянии
Телескоп со штативом в собранном для транспортировки виде

МОДЕРНИЗАЦИЯ ТЕЛЕСКОПА:
По знакомству на астрономическом форуме был куплен в Одесской области ахроматический объектив от телескопа ТАЛ-100 (100 мм входная линза; 1000 мм фокусное расстояние; относительное отверстие 1:10)
Вырезка, расклёпка и спайка держателя объектива
Для расплавки длинных паянных швов использовал газовую горелку
В середине держатель покрыт чёрной матовой краской
Держатель объектива снаружи
Объектив в сборе
В качестве основы для окуляра я взял объектив от неисправной камеры видеонаблюдения (фокусное расстояние 3,6 мм) и всё тот же носик от крана :)
Окуляр в сборе в сборе
Окончательная версия телескопа в снаряжённом состоянии
Телескоп в собранном для переноски состоянии

В окончательном варианте я получил такие параметры:
Апертура - 100 мм;
Фокусное расстояние - 1000 мм;
Светосила 1:10;
Увеличение ~ 280 крат;
Разрешающая способность - 1,4";
Предельная звёздная величина - 12,5;
Минимальный размер кратеров на Луне - 2 км;


Перечень основных астрономических событий на 2013 год
Анимированная интерактивная модель солнечной системы с возможностью ввода даты, просмотра фаз Луны и отображения в докоперническом миропредставлении (SWF файл запускать на любом браузере с поддержкой Flash)
Моя самостоятельная сводка по планетам Солнечной системы в ODS

В тред традиционно приглашается KRoN73.
Linux тут при том, что для всех прогнозов состояния звёздного неба я использую Stellarium под Ubuntu 12.04 LTS.

vilisvir
()