о компах
2.5 года
Лирушечка. Давно. Посты с лолкартинками, ссылками на жж-журналы и постами о программировании. Тогда было чуть больше, чем полгода Личкрафту, и я отчетливо помню, как втыкал в MVC, и это было трудно.
Это сейчас все очевидно.
Это тогда все очевидно, но другое все.
Это сейчас для меня 01:09 - самый разгар работы, а тогда в это время дико хотелось спать.
Это ведь тогда трагедией было, если ничего не ел за 12 часов. А сейчас - сутками без еды, и ничего.
Это мысли и идеи, которые тогда показались неверными, были выброшены, но потом найдены, отмыты и заново использованы. Те же мысли.
Это непривычное кофе.
Это я еще слушал 7 Расу. И The Offspring. И Jane Air.
Это да, помню, как ехал в трамвае с компьютерного рынка с новым альбомом JA в ушах и какой-то железкой за спиной.
Это я уже терпеть не мог Linkin Park.
Это скриншот моего десктопа того времени.
Это уже зачатки планов по порабощению мира - Физические ускорители... кое-кто хочет перебросить работу с них на видеокарты. "Физика через GPU" и "физика через жопу" как-то созвучно получается... .
Это я уже тогда был красноглазым. Поднимал svn на машине и прочую хреноту.
Это первый раз в руки взял паяльник.
Это основы того, что есть сегодня.
Это сомнения, такие детские, такие милые, такие смешные сегодня. Все пройдет, и правда. Когда-нибудь я буду так же смотреть на свои сегодняшние искания.
Это уже тогда писали, что я очень клевый парень, хороший человек и редко таких встречают. А я и забыл.
Это уже периодически накатывающее чувство уверенности в себе, только тогда я еще не мог его осознать.
Это уже сублимация потребности в заботе, потребности в том, чтобы дарить тепло и эту самую заботу, сублимация всего этого в программирование. Кажется, это никогда не изменится.
Это еще обучение методом тыка, потому что у меня было слишком мало опыта, чтобы по-быстрому прогонять в уме все варианты поведения.
Это я еще вспоминал бабушку.
Это любовь к многоточиям.
Это уверенность в том, что знаешь, что такое любовь.
Это тогда было удивительно, что у меня в рюкзаке LiveUSB с линухой, а у других - резинки всякие.
Это тогда парень, который за неделю может двоих подряд склеить, казался мне Мастером.
Это знакомство с Пашей, да. Первые впечатления. Мне до сих пор довольно странно, что мы с ним общаемся, и что все ничотак.
Это первая большая переоценка системы ценностей. Оказывается, секс рядом.
Это имя класса NativeTask, с которым и был весь секс.
Помню, как в этом летнем лагере сидел с Зильбером за его машиной, ибо у него был интернет через жопорез, а пока грузилась очередная страница лирушечки, разговаривали. Да, помню это странное чувство, что с людьми тоже интересно. Кажется, это все и заставило тогда искать людей, искать тусовку.
Растем? Растем. Нормально. Главное - не начать бегать сейчас с воплями "Как я рад, что все так сложилось". Такие дела итоги.
Все в одном!
И ведь таки сделал! Теперь все настройки в одном месте - в Сточной Яме Настроек (SettingsSink). При этом получилось и рыбку съесть, и не подавиться, объединив все преимущества предыдущего подхода с немного повысившейся юзабельностью.
![]()
(Кликабельно, 216kB)
Также, теперь при запуске LC показывает на сплэшскрине, что именно он инициализирует. Бессмысленная мелочь, но мой geek-глаз радуется. А, еще я научился пользоваться градиентами сделал сплэш чуть более красивым:
![]()
(Кликабельно, 114kB)
Чтобы поймать скрин, пришлось замедлять LC, пуская его из-под valgrind.
Также, за сегодня пофиксил пару багов в слиянии моделей закачек из разных плагинов, добил ее же в CSTP, сделал вообще довольно много мелких улучшений и в уме набросал концепцию обобщенного поиска контента - что на The Pirate Bay, что через Gnutella, что гуглом.
Ыоно со мной говорит!!11
Интерфейс IHaveSettings. В коде тоже ничотак смотрится:
return PluginManager_->GetAllCastableTo<IHaveSettings> ();
Поспать бы.
Shell-2
Плагины аккуратненько распиханы по папочкам. Узнать, в каких упоминается класс XmlSettingsDialog и вывести, учитывая, что упоминаться может далеко не один раз?
grep -R XmlSettingsDialog * | gawk 'BEGIN { FS="/" } { print $1 }' | sort -u
Примерный вывод:
22:25:02 d34df00d deadnote ~/Programming/leechcraft/trunk/src/plugins % grep -R XmlSettingsDialog * | gawk 'BEGIN { FS="/" } { print $1 }' | sort -u aggregator cstp poshuku torrent
Линугзы прекрасны
Описался, в ~20 исходниках поставил using LeechCraft; вместо using namespace LeechCraft;. Что делать?
for i in `ls *.cpp`; do sed "s/using /using namespace /g" $i > $i.new; mv $i.new $i; done
Мои волосы снова мягкие и шелковистые.
Также, т.к. музыка слушается с большого компа, а поваляться на кровати с ноутом хочется, очень удобна комбинация ssh + dcop --user d34df00d amarok player volumeUp
Ну или volumeDown. Или playPause. Или next. Не важно :)
PDF + Pocket PC
Adobe Reader для PPC не умеет отображать то ли только формулы, то ли латинские символы вообще в русском тексте, в связи с чем он был безжалостно выкинут и заменен на расово верный опенсорс PocketXpdf. Рекомендую.
Опенсорс
Можно было бы провести забавный эксперимент по переводу сокамерников на опенсорс, благо условия позволяют. Привезти сюда машину с линухой, на остальные компы поставить OpenOffice вместо MSO, GIMP вместо Adobe Photoshop и прочее, прочее, прочее. А от винды все равно никуда не денешься, потому что линейка, варик, фар край и прочая хренота.
Олсо, этот пост целиком и полностью написан из LeechCraft::Poshuku. Последние несколько дней работа с интернетами вообще ведется почти что целиком и полностью из этого самого LeechCraft::Poshuku. Надо бы поставить снапшоты Qt 4.5 на ноут, посмотреть, как там WebKit, а то в 4.4 все же недопиленный он слегка.
По наблюдениям
Ноуты перегреваются, чтобы их владельцы не загамывались. По наблюдениям за сокамерниками, двое из которых уже часов 8 почти что подряд задрачиваются в линейку.
Хотя, а сам-то. За последние двое суток прошел Left 4 Dead и начал Far Cry.
Security through obscurity
Сразу раскрою алгоритм сокрытия сохраненных паролей в Poshuku. Пароль с добавленным в рандомной позиции урлом сайта, и все это в base64.
8 месяцев
Очень забавно смотреть на презенташку, сделанную более полугода назад и рассказывавшую про собственные достижения в программировании, а также заработавшую мне 60 килорублей. Непередаваемо ощущение, возникающее при мысли, что сейчас здесь все нахрен перефигачить будет, потому что другая конференция, другие цели и другие масштабы.
Ытак
Пишем свой торрент-трекер с парой хитромудрых фишек. Таки С++ (ибо performance-critical), таки Wt (ибо я ленивый), таки libsqlmm (ибо MIT license, а трекер будет проприетарным). В ближайшие пару недель точно никаких исходников, ибо на ближайшее время нечто, подобное NDA.
Олсо, классно играть на гитарке, особенно когда пальцы привыкают, жрать кофе и кидаться из окна снежками, высовываясь наполовину в одних джинсах и шапке.
OpenGL
Начал учить сабж. Даже не сильно сложно, веселенько так. Вот что уже есть (текстура нафотошоплена в гимпе за 4.6 секунд):
![]()
(Кликабельно, 142kB)
Ну или с уже светившимися в этом чяте блоге сиськами, QImage'у пофиг, что грузить:
![]()
(Кликабельно, 292kB)
Внезапно тут
Очень сильно захотелось сделать ошибку переполнению буфера, чтобы потом ее пофиксить. Наверное, по ночам лучше спать.