понедельник, 2 июня 2008 г.
эх, красота
Кайф, это среди ночи и желтых фонарей проноситься по лужам, километрах эдак на 35, когда поднимаемые тучи брызг сливаются с каплями дождя, превращаясь в прохладную водяную подушку, и из всех звуков слышать только шелест воды и гул покрышек велосипеда.
хочется странного
class ActionHolder def initialize @my_id = rand(100000) @actions = [] end def add_action(&block) @actions.push( block ) end def process @actions.each{ |a| a.call } end end ah = ActionHolder.new ah.add_action{ puts "I'm the action" puts "my holder ID is: #{@my_id}" } ah.process Можно код передавать строкой и эвалить внутри класса, но: - теряется проверка синтаксиса до эвала - в редакторе не подсвечивается синтаксис внутри строки - бэктрэйс с эвалами труднопонимаем
class ActionHolder def initialize @my_id = rand(100000) @actions = [] @@Getter = proc do |var_name| raise "instance variable '#{var_name}' not defined" \ if !self.instance_variables.include? var_name self.instance_variable_get( var_name ) end end def add_action(&block) @actions.push( block ) end def process @actions.each{ |a| a.call( @@Getter ) } end end ah = ActionHolder.new ah.add_action{ |obj| puts "I'm the action" puts "my holder ID is: #{obj['@my_id']}" } ah.process
пятница, 30 мая 2008 г.
четверг, 29 мая 2008 г.
вторник, 27 мая 2008 г.
grrrrrrr
Туклипсы
понедельник, 26 мая 2008 г.
сортировка версий
есть множество строк:
Есть несколько множеств типа:
strs = ['1.10.1.0','1.1.13.0','1.2.3.4','1.20.3.1','1.24.1.1','1.3.6.7','1.1.6.7','1.3.3.7', '0.0.0.1', '0.1.0.0']
В разных множествах колличество чиселок, разделенных точками может различаться (2-5).
В одном множестве все строки с одинаковым колвом чиселок
все чиселки: 0 <= чиселко <= 9999
strs = ['1.10.1.0','1.1.13.0','1.2.3.4','1.20.3.1','1.24.1.1','1.3.6.7','1.1.6.7','1.3.3.7', '0.0.0.1', '0.1.0.0'] puts strs.sort.join("\n") puts " - " String.class_eval(%Q{ def ver_to_i total = 0 self.split('.').reverse.each_with_index{|d,i| total += d.to_i * 1000 ** (i+1) } total end }) puts strs.sort{|a,b| a.ver_to_i <=> b.ver_to_i}.join("\n")п.с. ruby 1.9
воскресенье, 25 мая 2008 г.
Выхи
Выхи, окончились, теперь я могу поспать :)
Приобрел вело-мульти-тул. теперь, как белый человек с собственным инструментом ездить буду, да еще и со спицевым(аж 3мя вариантами) ключем.
Нацепил, новую красненькую мигалочку под седло, в замен потерянной месяц назад(просто отвалилась, пока по ухабам скокал). Аж 7 светодиодов сфокусированно светят на 180, 225, 270, 315, 0 (ну, всмысле, 90 - вперед)
Прилепил вело-комп. Теперь знаю как же я езжу, крейсерская - 26-28 км/ч. Подумал, что такую штуку не прикольно покупать просто в магазине, решил найти на velopiter.spb.ru. Нашел. Дядечко продавал нужный девайс, но во Всеволожске. "О", подумал я, это целый квест: узнать дорогу, доехать, встретится с мужиком... В общем, интересно приобретать интересно. Пока настраивал, выяснил, что мои колеса - 2011мм.
Только что подарили непонятные загогулинки для педалек, с ними, типа педали станут "контактными". Педали с этими штуками превратились в совершенно невразумительные агрегаты. Ну, завтра попробую, как это жать педальки не только вниз но и во все остальные стороны.
Сегодня покатали с kreomarcell за Юноной, нашли совершенно Сталкеро-подобный ландшафтик. речка-говнотечка + горы непонятных отходов производства + безжизненные проплешины + невнятный подлесок + индустриальные постройки вдали + очень интересные дорожки(местами настолько, что с вела чуть не падал :) ). Вообще, на Юнону мы ездили за новыми педалями (начали вдруг жутко щелкать). Но, как выяснилось в процессе диагностики болезни пересадкой органов между нашими железными коняшками, надо было просто разобрать и собрать обратно, как росло.
Велик радует все больше и больше. Прямо наркотик какой-то.
Вчера, до 6 утра играл в шашки. Счет 1-много не в мою пользу. шашки - зло.
пятница, 23 мая 2008 г.
how to remove bom from unicode file
четверг, 22 мая 2008 г.
using modules
module Sim def puts(str) Kernel.puts "hello #{str}" end end puts('world') # Kernel::puts here begin Sim.puts('world') # private method called rescue puts $! end include Sim # don't want _include_ them all, just use them puts('world') # I want Kernel::puts here!!! Sim.puts('world') # just right # ???
Фсе Фтопку
Гоняешь бажки потихоньку...
А потом оказывается, что уже 2 дня все на ушах от террористов взорвавших все АЭС в радиусе 20000 км. И вообще, заставляют йод пить ведрами (фу, бяка какая).
Хороше в танке... где там мои наушнечки. :)
вторник, 20 мая 2008 г.
понедельник, 19 мая 2008 г.
Indication of the popularity of programming languages
http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html
пока на 9м ;)
пока на 9м ;)
среда, 14 мая 2008 г.
Google again
Открыл сегодня для себя "Просмотр улиц" и "Википедия" на maps.google.
Немогу подобрать челюсть и от восторга пупаются мысли :) Возможность проехаться по улицам совершенно далеких (во всех смыслах) городов (пускай только и американских) просто потрясает. Википедия - не так масштабно выглядит, но тоже очень даже интересно.
Надо новый гугл ерс скачать...
блин... где там моя челюсть...
вторник, 13 мая 2008 г.
тривиальные действия
Кажется я всетаки начинается перелом мозга. Такие вещи начинают казаться вполне естественными :(
debian# for FILE in $(svn status | grep ? | sed -re {s/^.{7}//}); do svn add $FILE; done
Музло
Захотелось тут чегото нового послушать. За последнюю неделю в "любимые" записаны:
Anneke Van Giersbergen (ex. The Gathering)
The Gathering - Mandylion особеноо The Starnge Machines
Ayreon - 0101100178 (прямо целиком.)
28
Anneke Van Giersbergen (ex. The Gathering)
The Gathering - Mandylion особеноо The Starnge Machines
Ayreon - 0101100178 (прямо целиком.)
28
Старенькая песенка, которая мне очень понравилась пару лет назад. правда услышал я её в электричке, в исполнении одного знакомого. наконец нашлась. :)
http://lleo.aha.ru/pesni/mashina.mp3
http://lleo.aha.ru/pesni/text/mashina.shtml
http://lleo.aha.ru/pesni/mashina.mp3
http://lleo.aha.ru/pesni/text/mashina.shtml
понедельник, 28 апреля 2008 г.
первая звезда
Сегодня утром по дороге на работу сбил какую-то недобрую тётю. Ну не сбил... затормозить я всетаки успел нормально, но контакт был. В принципе довольно стыдно т.к. вина моя, к тому же услышав 3х этажный мат в мою сторону (стоило ожидать), ошалел и даже не извинился, пробурчав что-то на счет светофора. Поворачивал на лево на равнозначном перекрестке с улицы с одной полосой в каждую сторону. Машин небыло. Тетя переходила тоже на зеленый. Как я её там не увидел - хз. Ну небыло её там!
Вои и смотри по сторонам после этого, перед собой надо было смотреть. :)
суббота, 26 апреля 2008 г.
четверг, 24 апреля 2008 г.
как бы покороче...
cабж.
@data.last.last.kind_of?( String ) ? \ @data.last.last += opened_file.readchar.chr : \ @data.last.last = opened_file.readchar.chr
вторник, 22 апреля 2008 г.
воскресенье, 20 апреля 2008 г.
Необходимо получить 1846kB архивов. После распаковки 5116kB будет занято.
Хотите продолжить? [Y/n/?] Y
ПРЕДУПРЕЖДЕНИЕ: будут установлены версии ненадёжных пакетов!
Ненадёжные пакеты могут скомпроментировать безопасность системы.
Продолжайте установку, если только вам точно это нужно.
gcc-4.1-doc gcc-doc gcc-doc-base
Хотите игнорировать предупреждение и продолжить?
Чтобы продолжить, наберите фразу "Да"; для отмены введите "Нет": Y
Неверный ввод. Требуется "Да" или "Нет".
Хотите игнорировать предупреждение и продолжить?
Чтобы продолжить, наберите фразу "Да"; для отмены введите "Нет": Yes
Неверный ввод. Требуется "Да" или "Нет".
Хотите игнорировать предупреждение и продолжить?
Чтобы продолжить, наберите фразу "Да"; для отмены введите "Нет": Да
Запись информации расширенных состояний... Готово
:)
Хотите продолжить? [Y/n/?] Y
ПРЕДУПРЕЖДЕНИЕ: будут установлены версии ненадёжных пакетов!
Ненадёжные пакеты могут скомпроментировать безопасность системы.
Продолжайте установку, если только вам точно это нужно.
gcc-4.1-doc gcc-doc gcc-doc-base
Хотите игнорировать предупреждение и продолжить?
Чтобы продолжить, наберите фразу "Да"; для отмены введите "Нет": Y
Неверный ввод. Требуется "Да" или "Нет".
Хотите игнорировать предупреждение и продолжить?
Чтобы продолжить, наберите фразу "Да"; для отмены введите "Нет": Yes
Неверный ввод. Требуется "Да" или "Нет".
Хотите игнорировать предупреждение и продолжить?
Чтобы продолжить, наберите фразу "Да"; для отмены введите "Нет": Да
Запись информации расширенных состояний... Готово
:)
среда, 16 апреля 2008 г.
откуда эксепшн?
Добрый день всем.
Ищу-ищу, немогу найти инфу.
Как вытащить имя файла и номер строки кода райзевшего эксепшн, когда его(эксепшн) обрабатываешь?
Или эти данные самому надо в эксепшн записывать? Где-то, по этому поводу, инфу видел, а сейчас уже второй день не могу найти.
Помогите ссылочкой или советом.
Ищу-ищу, немогу найти инфу.
Как вытащить имя файла и номер строки кода райзевшего эксепшн, когда его(эксепшн) обрабатываешь?
Или эти данные самому надо в эксепшн записывать? Где-то, по этому поводу, инфу видел, а сейчас уже второй день не могу найти.
Помогите ссылочкой или советом.
Решиение проблемы:
def my_func
raise "blah"
end
begin
my_func
rescue
puts $!.backtrace.join("\n")
end
def my_func
raise "blah"
end
begin
my_func
rescue
puts $!.backtrace.join("\n")
end
понедельник, 14 апреля 2008 г.
don't wanna be dumb!! :)
Посоветуйте мне какую-нибудь "умную" книжку, я давно не читал.
Is there any body out there?
Is there any body out there?
среда, 9 апреля 2008 г.
Мантра
воскресенье, 6 апреля 2008 г.
Начало летне-активного
Сегодня подтвердил начало сезона отличными покатушками в Саблино. Покатали и по асфальту и по жижуке (особенно приятно :)) и в отличной компании. Велик в говне, настроение зашкаливает, ноги убиты... :). Предвкушение отмокания особенно приятно подкрепляется горячим чайком. День - супер.
Upd: выложил фотки тут.
Upd: выложил фотки тут.
среда, 2 апреля 2008 г.
Вело-тошноты, вело-гопнеги и все-все-все. и я.
Тошноты - скорость 5 км/ч велосипед разваливается.
Тошнот+ - скорость 8 км/ч, вклосипед разваливается, зато наглости хоть отбавляй - "это что - машины? кто их на дорогу пустил".
Гопнег - скорость >25 км/ч, велосипед >средней пАнтовости, ездят кучками, постоянно прыгают на тротуар и обратно на проезжую, светофоров не видят, признаков здравомыслия не подают. Был бы я водителем, из-за последних считал бы всех велосипедистов уродами :).
Надо срочняк что-то решать с одеждой, всю сменную брать с собой и переодеваться на работе как то не охота, ходить в грязных джинсах - тоже безпонт. Надо приобрести мешок на рюкзак, а то все, кто его видят - спрашивают, "что с ним?".
Повезло с работой - нашел место для стоянки велика в соседнем офисе(там предбанник есть и люди все знакомые), теперь хоть не приходиться думать, как там - не сперли еще? Вообще, очень нравится думать, что у меня есть свое средство передвижения и мне нужно самому добираться туда, куда мне надо. Не просто "сяду в метро и доеду", а сяду на велик и доеду так и вот так. Нравится, что не надо ждать никакого транспорта, то, что езжу где хочу... в общем все нравится. С воздухом у нас правда проблемы, дышать зачастую тяжело, хоть респиратор надевай.
Цепь похоже была новая, а кассета не очень. Сейчас цепь притирается потихоньку, 6,7 звезды уже лучше её держат. Думаю, вот, поменять все или пусть живет, пока совсем не помрет. До сих пор не приобрел себе запаску и рем. набор, надо.
воскресенье, 30 марта 2008 г.
Велик
Свершилось, наконец-то! Купил себе велик (7т.р.) не новый, но хороший, небольшое обслуживание и будет вообще отличный :)
Уже прикатил на работу на нем. Думаю постоянно ездить, осталось только всякими причиндалами полезными обзавестись... типа спец. одежды :), а то после поездки по нашему "мега-полису" чистыми остаются только уши, и то только потому, что я волосат :) В общем, счастья полные штаны.
ПыСы: отдельное спасибо 'у, за поддержку при покупке сего девайса.
суббота, 22 марта 2008 г.
среда, 19 марта 2008 г.
riva 128 pci
Всегда любил эту железку. Больше не люблю. GLX драйверов для неё нет. :( или я туплю пол-ночи.
суббота, 8 марта 2008 г.
Memory remains.
На их концерт хотел сходить больше 10ти (! самому не верится) лет. Сегодня, наконец, блестящая бумажка (1,5КРуб.) у меня в рюкзаке.
Впереди почти полгода ожидания(до 18 июля) и попыток не прое..терять этот самый билет. Решил впасть в детство и обзавелся нашивкой на куртку с, понятно какой, символикой :). Совершенно детский восторг и неописуемо приятное предвкушение. Давно уже эту музыку не "заслушиваю", вкус поменялся уже не один раз, но это совершенно не важно.
четверг, 6 марта 2008 г.
среда, 27 февраля 2008 г.
rake target task
Здравствуйте.
Вопрос по rake.
как можно узнать, что текущий таск - тот, который запрошен из командной строки?
Например:
Надо, чтоб так получалось:
Совсем чего-то в документации закопался, нучего не нахожу :(
x-post to
Вопрос по rake.
как можно узнать, что текущий таск - тот, который запрошен из командной строки?
Например:
rakefile:
task :t1 do
...
puts "T1 is what you want." if chtoto_tipa_final_task?(:t3)
end
task :t2 do
...
puts "T2 is what you want." if chtoto_tipa_final_task?(:t3)
end
task :t3 => [:t1, :t2] do
...
puts "T3 is what you want." if chtoto_tipa_final_task?(:t3)
end
-rakefile
Надо, чтоб так получалось:
cmd line:
>rake t1
T1 is what you want.
>rake t3
T3 is what you want.
x-post to
upd:
порадовало:
порадовало:
# File lib/rake.rb, line 403
403: def needed?
404: true
405: end
upd2:
Rake::application.top_level_tasks
среда, 20 февраля 2008 г.
Долой баги из svn-dump'ов
SOURCE_FILE = 'dmp.bin' CUTTED_FILE = 'dmp_cutted.txt' cutarray = [ [1433, 'Editors/TMMatEditor/Res/preview.bmp'], [1621, 'Editors/TMMatEditor/Res/Toolbar.bmp'] ] File.open(SOURCE_FILE, 'r'){|f| File.open(CUTTED_FILE, 'w'){ |tf| f.binmode tf.binmode cntr = 0 curr_rev = 0 skip_node = false header = true node_text = '' while !f.eof? if header 5.times do tf.puts(f.gets) end header = false end ln = f.gets node_text += ln if ln[':'] n,v = ln.split(': ') if (n == 'Content-length') if skip_node puts " skipping content " node_text = '' f.read(v.to_i + 1) cntr += 1 else tf.puts node_text node_text = '' tf.write(f.read(v.to_i + 1)) end elsif n == 'Revision-number' skip_node = false curr_rev = v.to_i print " #{curr_rev}" elsif n == 'Node-path' skip_node = false cutarray.each{ |c| skip_node = true if (c[0] == curr_rev) and (v.chomp == c[1]) } end end end puts "\nNodes cutted: #{cntr}" } }
суббота, 9 февраля 2008 г.
кто здесь?
Если я, как обычный быдлочитатель - долго слежу за каким-нибудь изданием и, вдруг, оно портится я складываю на него пару матов и нахожу себе другое :) И вообще завел себе жж, нравится - читай, не нравится - с глаз долой, из френдов вон.
Но стоит человеку получить место в обществе, заслужить Эн премий Икс, как вдруг оказывается, что (Боже мой!) газеты то портятся, СМИ опускаются в жопно-сортирные глубины и на заборах, оказывается, написано вовсе не где ближайшая библиотека и вообще, вокруг СТОЛЬКО говна, от которого так страдает хрупкая психика интеллигенции!
Некоторые вещи делаются для казуалов и быдломассы, популяризация, знаете ли. Расстраиваться по этому поводу... или пытаться изменить содержание Массовых изданий и передач, путем воздействий на редакторов... Мне просто это смешно. Когда Некоторые являются "уважаемыми" людьми - смешно вдвойне.
В хлеву - грязно, не вини фермера, что у него грязные сапоги.
среда, 30 января 2008 г.
Сцуконах, баги, не баги?
_MSVS_PATH = 'C:\Program Files\\Microsoft Visual Studio 8\\' _MSVS_CONSOLE = 'VC\\vcvarsall.bat' _SS_PATH = 'C:\\Program Files\\Microsoft Visual SourceSafe' open('paths_upd.bat', 'w') { |f| f.puts "call \"#{_MSVS_PATH + _MSVS_CONSOLE}\"" f.puts "set PATH=%PATH%;#{_SS_PATH}" f.puts "set" } str = `paths_upd.bat` str.each_line{ |l| k,v = l.split('=') ENV[k] = "#{v}" }перестает работать eval :( заколебался уже.
puts `echo "blah"`выдает:
d_client.rb:57:in ``': Invalid argument - echo "blah" (Errno::EINVAL)
воскресенье, 27 января 2008 г.
Бэтмэны разбушевались
http://www.biertijd.com/mediaplayer/?it emid=4262 на всякий случай, вдруг, кто на ru_wunderluft не подписан. Дух захватило. :)
суббота, 26 января 2008 г.
простотак
Зачем люди пишут "боян"? Немогу понять.
Немогу понять, зачем писать "боян", если уже написали до тебя, что это "боян"
Ну видел тему, ну несколько раз видел... ну и молодец, возьми с полки пирожок и свали в туман. Зачем боянить своими боянами? :( Для чистки сообществ есть модераторы!
Я зол. :)
те, кто бояны постят - тоже, конечно, не особо мудрые люди... но с ними можно смириться.
четверг, 24 января 2008 г.
ПО
Как, всетаки, приятно обнаруживать, что в новой версии маленькой, совтинки исправлены как раз те баги, которые докучали больше всего :). Мало того, еще и добавлены полезные фичесы. Ну и последняя приятность узнал я об этом не из автоматического сообщения, а из живого письма разработчика, пусть и в майлинг лист.
Причина поста: билд редактора geany-0.13svn_r2188.
вторник, 22 января 2008 г.
towers
http://www.candystand.com/games/vector_tdx/vectortdx.swf
Еще одно мозгоедство, я пока на 31 уровне дохну. :)
понедельник, 21 января 2008 г.
10 лет почти.
Некоторые вещи не уходят годами, иногда пропадая на время... десятиминутка Q3 (TDM) после обеда и 20 минут в конце рабочего дня.
среда, 16 января 2008 г.
среда, 9 января 2008 г.
Подписаться на:
Сообщения (Atom)