пятница, 21 декабря 2012 г.

Анабиоз

Компанию бардов выселили из гостиницы не за то, что они пели песни под гитару, а за то - что у костра. (С)

Осознал, что не смогу жить в теплом климате. Нет, я не снегурочка, и на костре меня не вертят. И нигде южнее Челябинска и Воронежа пока не был. Честно говоря, я и плавать не умею. Если представить себя, лежащим на берегу моря, то воображение само дорисовывает некоторые детали: белые тапочки, венки, плачущие люди, и я такой лежу на берегу моря, все вокруг меня ходят.

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

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

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

Летом - все что более 23 - жарко. Выше 25 спать с одеялом довольно затруднительно. Больше 28 - невозможно уснуть. Для этого изобрели и поставили кондиционер. Правда, сбить можно только до 23, выключить и уснуть. Проснуться, опять 25.

Зимой в некотором смысле проще. Поднять выше 23 уже не получится. Опустить до абсолютного нуля можно только в физических лабораториях. Диапазон в 21.5... 22.5 - идеален. Все что ниже 21 в летней форме (футболка/шорты) в течение пары неподвижных часов и вы тоже научитесь отделять каждые полградуса. Если после движения переодеться в летнее, то не почувствуете разницу между 17/19/21 (первые несколько минут).

На ночь открываю окно по минимуму. Сначала бывало с утра 16.8, 15.8, 14.3. Сегодня очередной минимум в 12.8. Когда утром вас будит будильник, вы первым делом закрываете окно, и только потом выключаете будильник. Минут через 10-15 становится теплее и все восстанавливается. 

Зимой я сплю на боку, одно ухо упирается в подушку, другое закрыто одеялом. На поверхности только органы дыхания. Разницы между 12 и 18 в такой ситуации ночью неразличимы. Причем спишь без движений, так как просыпаешься в точности такой же позе. Любое движение приводит к соприкосновению с неотопленной частью одеяла. В общем, поэтому я назвал пост именно так.

В такие морозы сплю в футболке, и сейчас даже в носках, с ними комфортнее. В памяти холодом в сердце вырезаны две командировки: Пермь-2006 и Петрозаводск-2012. Сейчас дома просто закрываешь окно и температура восстанавливается. В тех кошмарах такое не прокатывает, там и так все закрыто. Тогда у меня не было с собой электоронных часов с градуснинком, но подозреваю что это было не более 15, причем постоянно. В Перми я спал в 2-х футболках, штанах, шапке и шарфе.

На улице я все время в движении, обычно мне надо дойти от абстрактной точки А до абстрактной точки Б. Летом мне комфортно в 15-17 при небольшом ветре. Зимой все сложно, потому что три слоя одежды. Рубашек с длинным рукавом у меня не было класса с пятого-шестого, именно по этой причине. Да, у меня есть пиджак, который я одевал не более десятка раз. И никакая мама не сможет убедить меня что это некрасиво. Прагматика важнее.

Не то, чтобы я люблю холод. Просто не могу спать в духоте и жаре. Свежий воздух при 20 меня бы удовлетворил. Не знаю простых способов этого достичь, поэтому получается некоторый изврат. Втянулся.

четверг, 13 декабря 2012 г.

Этикет

Согласно нормам этикета мужчины должны пропускать женщин при входе/выходе. Не совсем так... Оказывается, если дверь открывается на себя - то да, иначе мужик должен пройти первым. Все бы ничего, но как быть с двойными дверями, когда идут две последовательно двери, открывающиеся в разные строны? Дэд лок, прямо.

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

С дверьми я предпочитаю так. Если впереди или наравне идет женщина или физически не очень сильный человек (дети, старики/старухи, депутаты ГосДумы 6-го созыва), то имеет смысл немного обогнать и пройти первым. Так я могу пройти на нормальной (максимальной) скорости, при этом открыв дверь позади идущим. Экономия 10 секунд на итерацию, 40 секунд в день (вход/выход  * обед), в 200 рабочих дней в году это уже два с гаком часа.

Иначе бывают вообще случаи: человек хватается за ручку, тянет на себя. Фэйл. Толкает вперед. Тоже фэйл. Хватается за соседнюю дверь. Уже толкает от себя. Да сколько можно - фэйл. Тянет на себя - бинго! Подходит ко второй двери. Ну, тут вы уже поняли... и по аналогии опять 3 неуда. Хотя на каждой двери четко русским языком написано "на себя", "от себя". Убивал бы.

В штатах еще надо аккуратнее быть. Вот пропустил ты женщину, и все - харассмент. А если не пропустил, столкнулись, у нее синяки, еще и дверью ее тра стукнул, то ничего. Ну как, тяжкие телесные или причинение вреда здоровью повлекшее смерть одного человека. Главное, что не харассмент.

А в наших реалиях с нашими все-таки видать тяжелыми дверьми, считаю что правильно делаю, что стараюсь идти первым. Вы бы видели как большинство женщин дверь открывает. Захват, толчок, рывок, потом ногу подставит, вскрикнет от боли, толкнет бедром, тело пролезло, двумя руками толкает, сумочка еще не прошла, еще рывок. Первая дверь пройдена. На вторую уже разбега может не хватить.

Кроме шуток, а после Беслана в некоторых школах поставили двери покрепче. Сам видел как первоклашка, может и пришедший точно к началу занятий, не смог открыть дверь. И стоит минут 5 до случайного прохожего.

Так что французам с их этикетом (а согласно википедии, они первые начали писать всякие правила на карточках-этикетках) в современном мире предлагается идти. Или переписывать правила. 

воскресенье, 2 декабря 2012 г.

Богатый внутренний вакуум или части тела

Тут по городу в нескольких местах висит реклама на щитах, видимо, недвижимости в Докше. Если кто не местный, то это вроде поселка на берегу Камы. Но почему-то половина рекламы занимает женская попа #опа.

Осталось придумать нормальный слоган, вроде "Купи дачу в #опе", "свяжись с нами - попади в #опу", "заключи договор - и мы тебя нагнем" или "купи недвижимость - недвижимость в подарок". Был тут у нас котеджный поселок "Европа", но они так не креативили.

В углу рекламы висит то самое "18+". То есть дети, идущие утром в школу, увидев рекламный щит, должны разыскать в верхнем левом углу ограничение на возраст, закрыть глаза и пройти 150 метров думая о чем-то прекрасном.

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

Реклама всяких шурупов и винтов выполена в двух цветах и без картинок. Если бы они знали английский, то тоже могли обыграть слово "screw". Может они и знают, но просто решили остаться людьми?

четверг, 29 ноября 2012 г.

Ух ты!

А вы помните свое первое "ух ты!"? Я - да.

Мне было 3, а может и 2. Но точно не 4. Меня взяли на огород, а назад мы возвращались на автобусе. Точно не помню, ехал ли я впервые в жизни на автобусе. Я слабо представлял как оно ездит. Меня посадили в правой части автобуса, может почти у кабины водителя.

Так я видел, что машины въезжают в автобус спереди, и выезжают сзади. Мой детский мозг не мог понять - как это? Да еще на дикой скорости, вжи-и-к так. Автобус же громадный, когда туда залезал я же видел насколько он огромный. А машинки маленькие. Как же так? Въезжают спереди, потом с ними что-то дикое происходит, потом как-то обратно превращаются в машинки и выезжают сзади?

И ведь даже не спросишь ни у кого. Просто еще вопросы формулировать не умеешь, только показывать пальцем, и говорить как Эллочка тридцатью словами. В грамматике еще не было вопросительных фраз. И вот, я догадался подойти к окну в левой части автобуса, видимо залез на сиденье. У тут было мое первое в жизни "ух ты!" причем не wow Одна из следующий мыслей была: "вот же люди придумали". Там просто дорога, где по левой части ехали встречные машинки, а по правой ехал автобус.

Таки это ближе к двум.

А где-то уже в 4 уже зарождались рекурсивные философские вопросы. В детском саду были популярны диалоги и фразы уровня: "а у меня сто; а у меня мильон; а у меня сто питсот мильонов: а у меня мильон мильон мильонов; а у меня больше чем у тебя на один; а у меня больше чем у тебя на мильон". Тут уже в последних двух фразах чувствовалось противоречие. "Да как же так, я же первый сказал что у меня больше чем у тебя на один!" Потом даже использовали понятие о бесконечности, но там тоже прав, кто первый скажет.

Но это еще ничего. Дальше в голове была какая-то мини-модель вселенной, понятие о причинно-следственных связях и детерминированности. Вся вселенная состояла из микробов, они были маленькие. То что мы употребляли в пищу - это тоже микробы, но они полезные. Если руками копаться в земле - то поймаешь вредных микробов и надо мыть руки. Сам ты тоже состоишь из микробов, а думаешь ты мозгом, который тоже состоит из микробов. И так, твое мышление определяется состоянием микробов в мозгу. А то, что ты думаешь о микробах в мозгу, это же микробы как-то по-хитрому "работают". И далее, что ты думаешь о том, что ты думаешь о микробах в мозгу - это вообще какие-то хитрые микробы! Так вот уже чувствовалась рекурсия на 1-2 ход. Дальше, естественно, понимаешь, что тут мильон раз можно думать, о том что думаешь, что думаешь ... и понимаешь, что тут та самая бесконечность. А как она тут бесконечность, ведь мозг состоит из конечного числа микробов. Как оно там все помещается?

Это точно в 4. Я уже в другой садик ходил, переехали когда мне 3 было.

Нет, куайнов в 5 я не писал, что то первое, похожее на компьютер ("компаньон"), появился только в 7. Об существовании куайнов классе в 8..9-ом узнал, но это уже глубокая старость. 

среда, 28 ноября 2012 г.

scala

Год назад МТИ и Принстон запустили по курсу. Прошел год, теперь на coursera их чуть более 200 (программистских штук 40-50, лично мне интересных - менее десятка). Не смог пройти мимо scala. Все остальные курсы я видел в названии и меня не цепляло. Иногда я даже смотрел содержание и внутренности, все равно не цепляло. Других источников полно...

И так - scala. Язык как язык. Но с прикольными фенечками. Функционально краток, с нормальной нетривиальной типизацией, ковариантностью и медсестрами.

Вся ценность курса в заданиях. Ибо посмотреть базовый синтаксис для любого языка можно за несколько часов.

Одно из самых долгих было первое задание - поставить все среды разработок, систему сборки и отправки задания. Сделал я это за 2 вечера, потом сдал первое задание за 5 минут. Все задания понравились, было их 6 штук. Классический Хафман заходит в 5-6 килобайт, помню еще про классику - задача о переливаниях.

Пусть у нас есть два сосуда, вместимости 9 и 4 литра соответственно. Необходимо набрать 6 литров воды, неважно в какой сосуд. Мартин раза два эту фразу повторил.
Я останавливал плеер и ржал минуты по 3. Математический юмор со стороны кажется, наверно, вообще диким!"; но вы попробуйте набрать 6 литров в емкость вместимости 4. Может это не задумывали как шутку...

В итоге у scala оказался очень приятный REPL, во всяких python/ruby/etc оно тоже есть по определению, но тут все типизированно!

IO без всяких монад, которые я увы пока не понимаю. На haskell-е я как-то пробовал скрестить тривиальную БД + web-морда. Отдельно сходить в БД получилось - получаю какую-то монаду. Отдать в морде строку тоже получилось - там другая монада. Как это скрестить я за два дня не разобрался, плюнул, вытер монитор, пошел жить дальше. Отдельные вещи, как State/Rand, части  IO я понимаю, но в целом картину не вижу. Но это оффтопик.

Можно синтаксически в сигнатуре у функции указывать стратегию вычисления аргументов. Или лень, или активно. Мелочь, а приятно.

Еще есть некоторая (пока) странность. Как во всем цивилизованном мире в качестве параметра у функции можно подать подтип. Это пока не странность. Но зачем-то можно указать минимальный тип, менее которого подавать нельзя. Тут я пока не понял практической значимости этого.

Еще я было подписался на курс по python. Но после того, как они 15 минут рассказывали как устроены числа, я таки решил больше этого не слушать.

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

А так, я обычно lektorium.tv смотрю. Домашних заданий и практик конечно нет, но выбор огромен и крутые люди. Тот же компиляторный курс крут - где вы еще про проекции Футамуры услышите, и адекватно про семантику? Обычно компиляторный курс - это баян про синт анализ, с небольшим введением во внутренность машины и оптимизации кода. Так и на coursera сейчас, согласно описанию компиляторного курса.

На coursera курсы непонятного уровня. Есть курс про автоматы, читает сам Ульман. Но смотришь содержимое и понимаешь, что по большей части уже все знаешь. Всякие IR/ML курсы состоят из 75% терВера (по рассказам очевидцев), и тоже непонятного уровня. Остерегайтесь подделок.

Может и втянусь. Кое-что там полезное есть, только определять надо.

четверг, 15 ноября 2012 г.

64-битное

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

Я второй год сижу на третье доске. Тут реально скучно, я собираю все. На второй я тоже сидел два года, там есть один нормальный соперник, но я что-то очень сильно нервничаю и роняю еще где-нибудь 1.5 очка, причем все время из выигрышной. Поменялись с 3-ей доской (он там тоже на 3-ей все собирал), он и на второй все (или -1) собирает.

В прошлом году было вообще жестоко. У нас женщина уронила 2.5(?), еще на первой доске мы потеряли одно. В итоге командно мы заняли 2-ое (!!!) место. За девять туров потерять 3.5 очка из 36. Разрыв в одно очко в последнем туре. Если бы женщина не уронила последнюю партию, то по коэффициенту мы бы даже обошли.

В этом году мы закрыли эту дырку, зато суммарно уронили 3. Ну как уронили, 2 из них было ожидаемо, что можем не взять. Еще одно, да там немного просчитались. В итоге все равно +2 ко второму командному месту. Все-таки считаю, что если у вас в команде есть международный гроссмейстер, то без вариантов.

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

На третье реально скучно. Ходу на втором уже виден уровень соперника, к десятому иногда есть фигурка, или в развитии ты уже ходов на 5 впереди. И тут есть засада, что когда ты играешь с более слабым соперником, то начинаешь ждать ошибки. Нехорошо это, я по интернету насобачился, и сейчас менее торможу. Скучнее всего, наверное, было международному гроссмейстеру. Но это командное-внутреннее. Тут 3 почти равных команды и 6 халявных. Драйва тут немного по определению, но просто так ронять нельзя, ибо на финише может не хватить в сумме.

среда, 31 октября 2012 г.

Криминальная хроника

На юго-западе Москвы совершено дерзкое ограбление. В результате перестрелки убит инкассатор Банка Данных. Нападавшие использовали недетерминированные конечные автоматы и скрылись на машине Тьюринга. Похищено 140 ТБайт информации. Суммарный ущерб оценивается в 10-12 человеко-лет работы. Ведется следствие.

Журналисты уже окрестили это происшествие как Millenium Problem и относят его к NP-сложным. Разрешившему это дело оперативнику достанется ACM Award.

ГУВД г. Москвы и Московский уголовный розыск направили лучшие команды оперативников на разрешение данного происшествия. Этими командами не более чем полгода назад были разрешены BPP-трудные происшествия "ограбление коммивояжера с рюкзаком на складе" и "труп китайского почтальона в кососимметричном графе".

По оперативной информации, найдены гильзы от автомата с магазинной памятью и от недетерминированного конечного автомата калибра $6/\pi^2$. Стрелявшие скрывались за B-деревом и за бором из деревьев Штейнера.

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

Свидетелям данного происшествия просьба обратиться по адресу 0xCF65E или 0x38F. Реверсивность гарантируется.

ЗЫ. Ну не умею я писать про драконов...

понедельник, 29 октября 2012 г.

Завернули

http://pastebin.com/WP1zGZKX

Нашел в твиттере, мне религия не позволяет ретвитить. Так что тут.

Скорее всего это куда-нибудь переедет, все равно найти можно будет по заголовку "Милая леди талантливого программиста".

Я к тому, что пытаюсь читать категорщиков. Медленно, страниц шесть (или чуть меньше, хотя куда уж...) прочитал. Сложно их понимать, какие-то стрелочки/диаграмки, эндофункторы в когомологиях.

Потом видимо, чпок! и тебя перестают понимать. Зато с теми пятью на одном языке. И можешь генерить связные тексты про... точнее ко-тексты"; комбинаторно смотреть в неподвижную точку в смирительной рубашке.

Что-нибудь на "Я"

Посвящается одному вопросу.

Идея - сделать годовой календарь, где каждый месяц с соответствующей картинкой. Назвать:

Гадкий год

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

Я не знаю слов из унылой психологии и окрестностей на букву "Я". Поиск из нетривиального пока знает только то нетривиальное слово. Может кто другое знает?

Можно некоторые заменить на

фрустрирующий
депривативный
девиативный
скучный
самоубийственный
нонконформативный
отчужденный

ЗЫ. Нам не прочитали период, в течение которого нельзя ничего обсуждать. Специально спросили - не было. 

суббота, 20 октября 2012 г.

Кто эти люди?

На работе у меня запущено (тут можно было бы поставить точку и на этом закончить пост) 4 IM-клиента: skype, gtalk, pidgin и сейчас добавился psi. Pidgin обслуживает внутренне-рабочий jabber, все остальное - внешнее. В последний я добавил 2 соц. сети (Вконтакт и facebook), у них работает внешний jabber. Дома запущен skype и iChat, в котором агрегированны все аккаунты, кроме внутрикорпоративного.

В итоге получается что в скайпе у меня порядка 7-8 десятков контактов, gtalk - 2-3 десятка, вконтакт - 7-8 десятков, facebook - 5-6 десятков, рабочий джаббер - 3, в телефоне еще 7-8 десятков, в почте суммарно 100-150 каких-то адресов, аську я не запускал года 4. Оно конечно все пересекается, круг общения все равно из десяти человек состоит.

Лет 5 назад было проще, была некоторая путаница с телефонами, многие еще переходили от одного оператора к другому. Сейчас, чтобы достать человека, я уже знаю примерное время ожидание ответа в каждом из возможных путей доступа. В зависимости от времени суток, времени года и других весьма тонких параметров.

С почтой все просто, можно посмотреть историю писем и понять - "кто это?" Сложнее с телефоном, есть например контакт "Елена Валентиновна ***". Хоть убейте (напомним про 105 УК РФ) не знаю кто это, есть несколько входящих и несколько исходящих звонков, то есть я даже вбил номер как контакт... Про сотню каких-то звонков я промолчу, раз они однократные, то и смысла добавлять в контакты нет. Но "Елена Валентиновна" - кто это?

В Петрозаводске этой зимой, в комнате жюри Gassa обращается к одному из двух человек. 
-Андрей
-Какой? 
-Андрей Сергеевич
-Какой?
-Андерей Сергеевич, питерский
-Какой?
Это только Лопатин со Станкевичем могут так троллить.

У меня же наиболее популярное имя в контактах - "Дмитрий Кузнецов". Их 4 или 5, если проинтегрировать. Классические Ивановы/Петровы/Сидоровы нынче не в тренде.

Еще у меня в отправленных смс-ках есть такая, которая заканчивается "Целую. Муж." Вот и давай свой телефон в знакомые руки.

После того, как сагрегировал соц. сети в единый клиент, оказалось что я не знаю пару человек (когда-то, видимо, знал). У девочек есть такое свойство как смена фамилии. А если имя распространенное и на аватарке абстрактное котообразное, то надо идти и смотреть там общих знакомых. Пусть так и будут в "неизведанном". Во Вконтакте я разлогинился, чтобы залогиниться и вспомнить пароль, от facebook помню, так что соц. сетей я не посещал пару-тройку месяцев. Есть правда подозрение, что из-за jabber-клиента я там выгляжу как online круглые сутки, там вряд ли есть варианты "отошел/не доступен".

Скайп я раз в год немного очищаю, ибо если имя вообще не щелкает, то явно прошло более года от разговора.

Память на лица у меня странная, возможно как и всех. Вне ориала обитания бывает увидишь знакомое лицо, а потом минут через 10 вспомнишь что видел человека всего лишь год назад в течение 5 минут там-то. Память на числительные у меня более прокаченная.

И я не смог придумать финала. Да тут и накала страстей не получилось...

воскресенье, 14 октября 2012 г.

Лицом в R^4

Оказывается, можно не думать. А все свои фразы комбинаторно строить из уже сказанного. Для этого даже сделали небольшой сервис, который по вашим твитам формирует новый. Если даже все ваши твиты состоят только из слов "да" и "нет", то просто увеличив длину сообщения все равно можно сгенерить "Войну и мир" (хоть и в битовом представлении).

Сервис вот тут находится http://yes.thatcan.be:7080/my/next/tweet/

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


Страуструп в еду? Радикально...

Ощущения не зашло. Я слабо понимаю, как меня интерпретировать. Фрейд Не Магритт.

Ферзевый эндшпиль при стирке, уменьшите дозы кокаина, перейдите на свете... банально, дюймы.

Спасибо, что новые школы строят только две хохочущих женщины с каждым годом уменьшается… То ли мне чаю?

За три недели втянулся в еду? Радикально...

В многопоточном коде - явился трудоспособным. Причем именно в электричку, он с кишками это междометие!

Кушать вредно после 6. Тривиально дорефакторился до Берлина в поездах дальнего следования.

Девочкам важно выглядеть", мальчикам - лейкопластырь. 

Метод запатентован #2011610805 от Акинфеева. Играть прикольнее. 

Лицом в R^4.

За три недели втянулся в 2:35 ночи. Сударь-с, да это когда в 70% дочек РН падает расчет по знаменателям…?

Рецепт Жанна ДАрк с кац-а увидел. Одна девочка за еду... вторые, в интеллектуальном творчестве.

У тестеров есть тестовое задание - явился трудоспособным. Причем именно в 2:35 ночи.

Один математик так я злой и делай сонный вид, это Паша А.' У пластических хирургов и то, это утро.

Рекурсивный перебор с неправильной топологией после смерти отправляют в ушедший трамвай, я транзитивно?

Только сообщения отчисленных вами студентов... Лучше позже, чем мне так симпатичны шахматистки:они могут?

Фраза живем только в R^4. В человеке должны быть мысли час думал, что отрезанную голову лошади вас!

Вместе мы фруктовый сад!? Я - там совсем зажрались, олигархи! Женский разговор в микроволновке.

И прочее...

Моя иногда и так писать, и не думать. Здесь нет смысла извиняться за орфографию. Но сколько смысла появилось!

среда, 10 октября 2012 г.

Равенство

Если бы я был женщиной, я бы был феменисткой... А так, я, видимо, феменист.

Далее о равенстве не только полов, но всех и вся.

Начнем все-таки с полов с плавным переходом к крыше. Да, мальчики сильнее физически, девочкам рожать детей. Я не видел ни одной девочки, которая сильнее меня физически (они есть в тяжелой атлетике, но не знаком ни с одной лично). Я видел девочку, которая 100м бегает быстрее меня - 12.0, я тихо плачу в стороне со своими 13.5. У меня в классе был один мальчик, он бегал за 12.6, и то он пошел в школу милиции.

Мир стремительно меняется, еще каких-то пятьдесят лет назад в Америке негров афро-американцев били ногами, сейчас там такой президент. Сила нужна была лет 100 назад, в полях и деревнях. В современное время нужна голова. Хотя после этой фразы большая часть женщин все равно будет говорить "Но я же женщина!" К этой части у меня только один ответ: "хрен с вами, я тогда вас даже за людей считать не буду".

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

Есть кучка психологов и нейро-ученых, которые всю разницу объясняют ферментами/белками, в общем физиологией. Не верю я им, считаю что вся разница в стереотипах и воспитании. Когда вам с детства внушают что место женщины на кухне, а мужчины - за компьютером, что женщине нужно "как можно скорее выйти замуж, нарожать детей и никуда не рыпаться", а мужчинам "ты - мужи-и-ик", то в итоге это и получается. Тестостерон не причем. Стереотипы тоже умирают, пройдет еще сотня лет и что-то изменится.

Я как бы не совсем радикален - раздевалки и бани должны быть отдельные. Сейчас делают туалеты общие и с закрытыми кабинками; мне там как-то не уютно. Есть множество гендерных отличий в языке (особенно, в русском), "жениться - замуж", "баран-овца", в русском вообще род есть, мужской и женский. Заметьте, в английском практически различий нет "he/she" и это почти все. Где-то сделали в анкетах"первый родитель/второй родитель". А про детей рожать, ну так ушла во вторник на обед чуть пораньше и делов-то.

Важно понимать, что равенство прав влечет равенство ответственности.

Национальные и рассовые стереотипы то же есть. Евреи - жадные и умные, хохлы любят сало, макаронники смотрят футбол, некто с балалайкой и ручным медведем пьет водку из горла. Согласитель, банально. Мне тут немец в одной социальной сети (для изучения иностранных языков) написал. У него жена местная, с этого же города. Раз в год он сюда приезжает к  "babuschkas", ему скучно и он ищет людей погонять футбол. В следующий раз он приедет в июле 2013 года, и спрашивает буду ли я в городе? Ну как бы да, различие в национальности таки есть.

Оно проявляется именно на больших объемах, каждый человек в одиночку является уникальным человеком. В масштабе региона приобретаются другие навыки. Это явно воспитание и образование, а никак не уникальность питания или наличие гор в стране.

Табор цыган vs один цыган в межнациональном коллективе. Армяне хорошо играют в шахматы, китайцы выигрывают олимпиады по информатике и прочие примеры - это все не от генотипа, а от экономико-социального окружения.

Возрастных ограничений тоже нет. Я видел человека в 89 лет и абсолютно чистым мозгом без ограничений. Да, ему уже не 20 лет и он уже не бегает стометровку. Тут даже не то, что если я доживу до 89 лет, то хочу иметь такой светлый ум. Я и сейчас хочу иметь такой светлый ум. Член-корреспондент, он такой.

Когда-то мне надо было получить информацию от двух человек, одному около 50 лет, другому только что исполнилось 65. Я одновременно написал им двоим по письму, с надеждой что получу ответ за пару дней. Первый ответил через пять минут, второй через 15. Осознал кое-что.

А еще с месяц назад я видел две истерики. Это можно было бы поместить в начало поста про женщин, но понял, что это возрастное. Стандартная схема, сопли/слезы, убежать с места, ждать полчаса пока тебя обратно приведут за руку. Я думал, что это только в 5 лет бывает. В 25 тоже, и женская составляющая тут не при чем. Просто физиология уже от 25 летней, а уровень интеллекта как-то не соответствует. И в 60 лет тоже самое будет. И ладно бы причина была, так ведь уровень 5-ти летних детей - без рациональной причины.

Тут опять же стереотипы, "мы уже старые", "СССР", "у меня уже внуки". Я уже тоже иногда так говорю племяннице, что мне сложно ее на плечах таскать. И не то чтобы постарел, просто ей уже 7 лет и весит она чуть более чем ранее.

Есть еще различие между богатыми и бедными (финансово). Оно проявляется только для богатых во втором поколении, тот кто был бедным и поднялся никогда не заметит границы. Дети богатых, кому досталось все нахаляву, создают разность потенциалов.

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

PS
Вот тут есть картинки по теме доклада: http://bigpicture.ru/?p=124211 

вторник, 2 октября 2012 г.

Проект gvartira.ru

Таки дошел http://gvartira.ru до ручки беты (альфы, смотря как смотреть).

Вообще, в чем смысл? В каждом регионе есть местный форум с объявлениями недвижимости. Выглядит это довольно убого, что-то найти или сделать обзор - нереально. Примерно как объявления на столбах, просто висит номер.

Что предлагается: предоставить простой доступ к созданию и поиску объявлений недвижимости.

- не в промышленных масштабах (1-2 объявления с человека) размещение без каких-либо финансовых и других ограничений

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

- минимализм (без всяких реклам/банеров), простота интерфейса

- без привязки к конкретному региону (весь мир)

- актуальность (жизнь объявления ограничена 2-4 неделями)

 регистрация/авторизация через публичные сервисы (надо нажать на стрелочку в центре строки над картой)
 После входа сверху доступно меню
 ваш список объявлений
 поиск

Можно даже потестировать.

Главное, я ищу как минимум двух человек со следующими ролями/обязанностями:

- понимающий в интернет-проектах, людях, предметной области, "с подвешанным языком". Не конкретно СЕО, конкретно "все".

- frontend программист, понимающий что такое красиво и способный сделать красиво (все что связано с клиентом и бразером).

Все что связано с серверной частью и любой производительностью - на мне.

Если вы тот самый, или знаете тех самых, то свяжитесь со мной.

Если вы просто из этой предметной области и вас что-то заинтересовало, не стесняйтесь.


О рынке и конкурентах.

В моем городе с населением в 600+ тысяч человек суммарное количество объявлений составляет порядка 5000. В Москве это порядка 200 тыс объявлений. То есть вся Россия - порядка миллиона.

Есть московский http://cian.ru , платный прием объявлений (их много). Идейно хочется быть гораздо лучше их.

Есть Яндекс.Недвижимость http://realty.yandex.ru/  У них идея в поиске, то есть собирать информацию с тех же регионов и выдавать агрегированный поиск.

У меня другая идеология: быть проще и ближе.

PS. При открытии страницы вы по-умолчанию попадаете на свой текущий город. Если вы находитесь в городе, отличном от моего родного, то скорее всего вы просто увидите карту без объявлений. Их, как минимум надо занести, хотя бы тестовые.
http://gvartira.ru/?id=3 (или http://test.gvartira.ru/?id=3, у меня еще одна доступная машина так)попробуйте так.

http://test.gvartira.ru/?u=2
http://gvartira.ru/?u=2 - это объявления по пользователю (тестовому).

PPS. Объявления так же появляются только при достаточном наезде на карту, в масштабе страны показываться не будет. Если вы авторизуетесь и добавите объявление, то будет более понятно.

----

Техническое.

Трудно сказать, насколько это все будет жизнеспособно. Буду стараться.

С точки зрения дизайна - есть куча убогостей. Работает пока только под ff || chrome || safari. Куча мелких разъехавшихся деталей. Но нужно разбираться в вещах, которые мне менее интересны.

Архитектура пока тривиальная:
серверная часть = хоть кто, кто способен дойти до базы и сформировать тривиальный xml.
БД = пока не критично. Используется psql, там есть какие-то геоиндексы, которые при росте могут и не потребоваться (написал за вечер квадродерево, и миллион поисковых запросов на миллионе объявлений я могу делать за секунды, так как все в памяти и быстро. Правда, полный путь от клиента до внутренности замедлит на пару порядков).
Клиент = jq, hands. Но клиента уже нужно рефакторить.

google maps api рулез. Надо будет еще yandex maps api подключить. Прикольно, но есть разница в координатах от яндекса и гууга: один и тот же маркер отличается по север/югу метров на 15.

Идея пришла (не нова), как сейчас помню, конец июня 2010 г (тогда и реализовал текущий вариант). Я только что прочитал книгу "Викиномика" и посмотрел лекцию Юры Лившица про рынки в яндексе. Решил размяться. Ушло два месяца вечеров, для меня почти все с нуля. Недели две чисто на домен с регистрацией. Купить домен просто, понять как подключить nameserver - нетривиально.

Все денежные затраты на текущий момент составляют 120 рублей в год на домен. Есть вещи, которые нельзя купить - это затраченное (надеюсь не потерянное) время.

суббота, 15 сентября 2012 г.

Абстракция

Краткое содержание предыдущей серии: неделю назад я утверждал, что большие системы - плохо. Система - это, в принципе, почти, хорошо. Но вот большие - они большие и противоречивые (оказывается, есть даже теорема Тарского, из которой теорема Гёделя получается как частный случай. Философски она звучит как "истинность невыразима", формально еще 4-5 формальных слов. А я, лошара, знал только другую теорему Тарского, ту которая про геометрию).

 Кодексы и законы по жизни противоречивы. В них так и пишут: "если что, смотреть в более крутом кодексе". Меня потряс тот пример (не знаю сколько там процентов лжи и правды), что законодательство в области иммиграции в Англии полу-формализовали на Прологе и понаходили дырок.

С большими системами борются самой же системой. Смотреть "Итальянская забастовка".

Другой пример, который мне рассказали, про религию. Арабы, которые шахиды в Израиле, часто делали свои плохие дела в различных магазинчиках/кофешках. Врываются они в замкнутое пространство и с криком "Кто ел из моей миски" делают, даже можно сказать, мокрое дело. А евреи те еще, они ж прочитали, что арабы и свиньи вообще не совместимы (одним религия запрещает есть других). Оказывается, что если повесить шкурку животного у себя в магазинчике при входе, то правильный араб не имеет право там взрываться, ибо если части мяса араба попадут на вышеупомянутую шкурку животного, то араб не попадет в свой рай с 40 девственницами. Не знаю, есть ли у них ад, но попадет (или вообще не попадет) не туда. Короткий анекдот "возвращается как-то камикадзе с успешно выполненного задания" был раньше, не знаю источника.

Собственно, если система большая и непонятная, то борются с этим абстракцией. Абстракция - это когда проводят черту и говорят: "как-то работает". Можно сказать, что разбиение на подсистемы, но дальнейшее нас малоинтересует. Алгеброиды, физики и ООП-шники может и называют это по-разному, но суть одна. Программисты могут использовать слово "интерфейс", но лучше "контракт". То есть мы знаем что получается, но как именно - нет.

Открываете холодильник, а там свет. Вы задумывались об этом? Думаю, и не стоит.

Предположим, что вы - "полу"-программист. То есть понимаете на высоком уровне, что происходит, если в языке высокого уровня написать i = i + 1. Внутри там все довольно не просто, на книжку хватит.

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

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

Далее нужно загрузить значение, прибавить 1, записать в память. Обращение в память, если страница у вас в кеше процессора, то все замечательно. Иначе, лучше бы вы этого не знали. Скорее всего, у процессора более одного кеша. Начинается раскрутка, можно дойти вплоть до свопа на диске. Тут самый ад, там еще и всякие прерывания будут. То, что у каждого процесса своя виртуальная адресация - семечки. Некоторые куски памяти "напрямую" отображаются на реальные физические устройства. А когда у вас несколько ядер на процессоре, они ж чуть ли не отдельным проводком на шине как-то говорят друг другу, что данные в кеше этих страниц хранить не надо, а брать каждый раз с памяти.

В общем, там ну очень много всего происходит. i = i + 1. Это у математиков просто прибавление единицы. А переполнение?  В многопоточном коде, если это синхранизацией не обернуто, может все что угодно произойти. А еще я ни слова не сказал, откуда мы получили код выполнения, про сегментацию памяти по областям, и кучу всего и я сам не знаю.

А так хорошая абстракция, после выполнения строки i = i + 1 у нас что-то увеличится на единицу. Скорее всего. Абстракция и нужна, чтобы скрыть весь этот ужас.

У всяких математиков/физиков/химиков/биологов примерно так же.

То есть есть какой-то суммарно очень большой УЖАС. Специалисты проводят и отсекают какие-то куски, проставляя там абстракции. Хочешь копать - копай, вскроешь все на этом уровне - уткнешься в новые абстракции. Можешь своих нагенерить.

Ладно, пойду я, салат доем. Открою холодильник и не буду задумываться, как же там свет появляется.

Четыре ноги - хорошо, две ноги - плохо. Абстракция - хорошо, большие системы - плохо.

понедельник, 27 августа 2012 г.

Бытовое

О жизни за последние 3 месяца.

Естественно, есть некоторая просадка по еде. Завтракать я так и не научился. Кушать стараюсь каждый день - были выходные мороженного (800 г в сутки) как единственнго блюда. Так долго не протянуть. Огуречно/помидорная неделя - не то что пытка. Я могу спокойно 2-3 дня полноценно не есть. Потом все-таки голод перевешивает лень, иду готовить. Это минут 50, хватает на 3 дня.

Раньше мама говорила "что это все у тебя из-за того, что ты много за компьютером сидишь". А сейчас "ты так похудел". Первое месяц все было нормально, пузико все там же. Но потом что-то в зеркале в плечах стали косточки проявляться. Я даже начал себя фотографировать (на телефон :) ), но после второй фотки понял что это зло и все удалил. Понятно чем, это похоже на банальные снимки людей на розовый Айфон в туалетах.

Стал тупо покупать сливочное масло и есть больше бутербродов с маслом/сыром к чаю. Все вернулось. Внешним спортом пока тоже за лето не занимался. Надо понять что с весом.

Еще я открый и прямой человек. Написал родителям в джаббер слово "котлеты", с явным умыслом. У них сразу же буйная фантазия, представили человека в пустыне, почти в предсмертной агонии ползет на коленях и хрипит:"котлеты".

Заходила соседка, Зоя Ивановна. Она самая страшная старая старшая по подъезду. Получила 6 экземпляров моей подписи, от детелоскопии я отказался. Пожаловалась мне, что у нее перестал показывать первый канал. Я ее поздравил, не оценила. Перечислила несколько передач, которые она там смотрит. Я уже где-то слышал про "Давай поженимся", даже боюсь спросить, про что это? Если я все-таки доживу до 65 лет и у меня будет маразм, то телевизорный маразм мне не грозит. Людей, смотрящих телевизор, я ставлю в одну очередь с наркоманами и убийцами. Люди Нелюди, смотрящие первый канал, о чем можно с ними говорить? В начале года было #НТВЛжет. Чуваки, #ТелевизорЛжет #ВсеЛгут, первый канал Никому не верьте, мы всегда воевали с Остазией.

Внешний мир. Телевизор я не смотрю где-то лет 5. Максимум был некоторый спорт, типа биатлона. Сейчас у меня нет принципиально ни ящика для овощей, ни радио, ни стационарного телефона. За все лето я не видел ни одного матча сборной России по футболу на ЧЕ, ни одного кадра с олимпиады. Скачал первые две партии встречи Сталев-Сагындыков где-то за 2008г, не удержался.

Не захожу в Вконтакт. Как источник информации - там ничего нет. За лето ко мне в контакты добавился человек, которого я видел суммарно часа два в своей жизни. Странно как-то. Еще надо было пробить координаты человека, которого у меня нет в контактах. На планшете есть приложение от них, и даже если мне зачем-то там написать, это у меня выскочит в реальном времени. Так что делать там нечего.

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

Твиттер. Меня там прорвало где-то с апреля. До этого я шел в нормальном темпе, одна неделя - один твит. Не знаю как заткнуться. Создал кеш-L1, даже он забит. Качество твитов явно упало. Причем прикольно, я пишу чаще, чем его читаю. Суммарно подписан на более чем 80 контактов, в моем случае все это можно прочитать менее чем за 5 минут за пятидневку (я технически вижу только публичные оригинальные сообщения, то есть не вижу ретвиты и сообщения-чаты-другим-пользователям).

Основной источник информации - агрегатор блогов. Суммарно я подписан на 401 источник, это где-то 20 минут в день (чуть менее 200 постов в день). По-любому лучше, чем телевизор.

Я еще не очень потерян, хоть и отрубаю все ненужные внешние источники. Земля все так же стоит на трех китах, киты на черепахах, Солнце вертится вокруг нас, так еще и не прочитал, как же люди ходят на головах в южном полушарии.

Соседи по этажу - все пенсионеры. Все относительно, но таки здесь довольно тихо (тьфу 3 раза), пару раз просыпался из-за того, что с утра приезжает мусоровоз. Где-то потенциально есть собака, я ее слышал раз пять. У кого-то есть телевизор, его иногда слышно по выходным. На этой неделе был шок - соседи в час ночи минут 10 громко слушали музыку, потом утром в вс опять свою дискотеку 80-х. Надеюсь, что это однократно. Еще лезгинку тут кто-то в час ночи на улице танцевал. Но это в соседнем доме. Все равно ложусь в 2, просто не понятно.

Стирать в стиральной машине - даже я справляюсь. Мама мне угрожает утюгом. Говорит что купит. В ее голове не помещяется, как можно не гладить и спать на неглаженном постельном белье. Мне опять ее не понять. Мой ответ: "И че?"

Посуду мою в женском стиле, сразу после еды.

Когда ко мне приходят гости, мне приходится заправлять постель. Когда мне родители поставляют огородные продукты в вс я тупо закрываю дверь в комнату, это если мама. С папой проще. Он не считает меня охламоном.

Начал логировать свои расходы. Просто логировать, а не экономить. По еде получаетя 80р/день (тут надо учитывать лето, промышленные поставки овощей с огорода идут бесплатно). В какой-то момент у меня холодильнике было 2.4 кг мороженного. Если выкинуть расходы на орехи/мороженное/алкоголь(роспита только одна бутылка красного), то вообще рублей 50 получится. Я в магазин по большому только раз в неделю хожу. А так в будни (или даже через день) только хлеб, меньше минуты в магазине - там отдельно хлебный отдел и очередь из 0-2 человек. Непродовольственные затраты суммарно такие же. Если выкинуть расходы на шуруповерт(!), то папа бы остался без подарка. Еще есть коммунальные платежи. Суммарно в прожиточный минимум я наверное даже влезу.

Из одежды мальчикам ничего не надо. Купил пять пар носок и (простите за подробности) две пары трусов. За прошлый год мне досталось 5 халявных футболок + 2 сумки, в этом году 4 халявные футболки + классная сумка. Потребности более чем покрыты.

В общем, ЖиВ. Спасибо.

воскресенье, 26 августа 2012 г.

Системный экстаз

Мне по жизни хочется все упрощать, поэтому не люблю большие системы. Когда система простая (соответственно, не большая), она способна полностью уложиться в голове (головушке).

Взять какой-нибудь НДС из налогооблажения. Любой русский бухгалтер обязан понимать, как он считается. Но вот в штатах НДС как сущность отсутствует, их в раза 1.5 больше по населению, а по численности бухгалтеров и налоговых в те же 1.5-2 раза меньше. Вопрос "Нужна ли такая система?" лежит вне системы. Правительство, увы, уже ничего поделать не может, системно.

Тут далее можно нагенерить аналогичных примеров с системы образования/здравоохранения/науки/спорта/любой_другой_большой_отрасли.

К российской власти. У нас, как и во многих цивилизованных странах, власть формально поделена на исполнительную, судебную и законодательную. Внимание вопрос: какой властью обладает президент Российской Федерации? Насколько я знаю правильный ответ: к этим трем перечисленным - никакой.

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

Еще в ту же кучу сваливается религия и политика. Религия - это тоже большая малопонятная система, с кучей аксиом и практически без правил вывода. Если обобщить все религии, то абстрактная сводится к
- не ешь ***
- будь хорошим человеком

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

Да, кстати, стоит различать веру, религию, фанатизм, тараканов и заскоки. Это все тонкие философские грани, но разница между ними есть. Хуже всего когда это заскоки.

Бесит вмешательство в свободу вероисповедания. Когда на улице к тебе (к вам) пристают религиозные-бабки-фанатики. Я же к ней со своим неологическим конструктивизмом и бытием по Хайдегеру не пристаю. Ну и пусть она где-нибудь со своим поясом шахида вылечит хотя бы себя.

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

Плавно подходим к заключению. Система - что-то большое, со своими аксиомами и правилами. Состоит обычно из частей, которые в отдельности не дают таких свойств. Смысла в самой системе как таковой быть не может. Это механическая система, со своими целями, но без смысла. Смысл появляется при метапереходе, выходе из системы. Сама система должна быть досупной для понимания (простой). Тогда это устойчиво и способно "правильно" развиваться. Иначе это религия. И не надо ничего смешивать.

Смысла вообще нет, есть только интерпретация.

вторник, 14 августа 2012 г.

Город Зеро

Я не кинокритик. Даже не режисер. Хотя в третьем классе был в школьном тетральном кружке. Бред, конечно, но зачем-то понадобился человек, для участия в школьном утреннике на Новый год, на роль мальчика "Паши". Класс был, видимо, очень ограниченный. Решили, что раз нужен мальчик на роль "Паши", то должен быть именно Паша. Согласитесь - дибилизм какой-то.

Еще в 6 или 7-ом классе я так же участвовал в вечернике в школе для родителей - играл роль кого-то из двух основных героев из "Денискиных рассказов" Драгунского. Ладно, я вообще-то хотел сказать, что я не кинокритик.

Но вот хочется порекомендовать "Город Зеро". Это полный бред абсурд, слово сюр применимо, но оно немножко "не vernacular" (instead, native).

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

О чем этот фильм? На википедии идет 4 абзаца текста, а в конце фраза: "Фильм Карена Шахназарова - об этом". Люблю такие формулировки, невозможно придраться.

Состав звезданутый: Филатов, Басилашвили, Меньшов, Джигарханян, Евстигнеев. Голливуд может собрать в одном фильме Сталлоне со Шварнеггером, они могут даже сделать это смешно. Но они не смогут сделать это абсурдно и противоречиво. Наши сейчас тоже не смогут, видимо, нужна переходная эпоха. Поздний, почти предсмертный СССР. Сделать это в более раннем СССР - невозможно, позже - тоже.

Что-то копится в эфире. Совсем поздние Стругацкие - другие люди, малопохожие на "до", начало (скорее рассвет) русского рока начинается с перестройкой. Я хожу в детский сад и не замечаю "ветер перемен". Потом все так резко поменялось, что стал ходить в школу.

Сейчас мир как-то то ли в стабильности, то ли в застое. Чувствуется.

Совсем концовочку фильма можно было бы и выжать, но вся ценном во всем, а не в концовке. Здесь вам не Колобок.

Не читайте википедию, лучше посмотрите.

вторник, 7 августа 2012 г.

Четверг тестирования

Религиозный войны emacs vs. vi мне как-то сложно понять. Конечно emacs, остальные фанатики пусть сдохнут путем самосожжения в женском туалете!!!

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

Если размер проекта не велик, то пишите хоть в машиных кодах. Бумажки/mc/Far/etc хоть nano || joe. Ваша религия - ваша бумажка.

Но вот у меня стало 20 сущностей (а так как, например, в плюсах принято выделять заголовочный файл, то есть более 40 файлов) то я даже с emacs-a с радостью слез на тот же XCode.

Да, конечно emacs - это больше чем какой-либо редактор. Но как-то язык не поднимается назвать его средой разработки (да, религиозные фанатики, можете закидать меня камнями). Для многих языков (не входящих в топ-10) emacs - возможно лучшее что есть. Но это часто свой напильник, свои макросы/клавиши. Первые два года, вместо использования языка вы пилите emacs до среды.

Подсветки синтаксиса не хватает. Нужна нормальная навигация по проекту (кто от меня зависит, от кого я завишу, все сущности модуля), билд/дебаг (это если у вас 2кб кода, то можно писать правильно и без ошибок. У меня же 20+мб кода и писать правильно слету просто не получается. Да и пару недель отладки многопоточности в нормальной среде дает понимание, что иначе нельзя). Еще автокомлит и проверка типизации в момент написания. Все, хомячку минимум обеспечен и его не рвет.

Жутко бесит, когда я не могу одним движением разбить на части и понять, как это работает. Например, Linq. Поставить внутрь брек-пойнт и отладить. Нет - только частями, перекомпилируя и запуская вновь. У меня компиляция всего занимает 1 минуту 20 сек в идеальных условиях. Да, забыл: то есть хомячку еще хочется как минимум REPL.

JB нагенерили сред, они уже настолько круты что могут за неделю к четвергу написать новую для конкретного языка. Они уже настолько круты, что говорят "нафига нам писать еще одну очередную среду. Давайте писать язык, очередной (Kotlin)".

Нормальной среды для плюсов по определению никогда не будет.  Проще язык выкинуть. Компиляторщики стандарт догоняют за пятилетку, куда уж остальным. Как жить с препроцессингом и темплейтами, когда надо уже "какую-то лямбду" реализовывать?

Разработка среды разработки (слова разработка и разработки тут не лишние) стоит денег, и это в любом случае будет для мейнстрима. Фанатики в любом случае без напильников не останутся. Все как всегда, видимо. А хочется как у компиляторщиков, как с LLVM. Хоть что-то единое и общее. Нет, не emacs.

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

PS. Если среда разработки, и четверг тестирования... то пятница - внедрение и развертывание или все-таки баг-фикс после четверга?

PPS. Для очередных сексуальных извращений в свободное от всего (даже сна и еды) время решил что это проще на Питоне сделать. Среда от JB - класс. Но вот к статической типизации я как-то очень даже привык. Хоть минимальную.

суббота, 4 августа 2012 г.

Синтетические задачи

На всяких (полу)программистких мероприятиях иногда происходит "баттл" на непонятных задачах. Хотя само мероприятие иногда состоит из понятных задач. Под это дело часто есть призы/спонсоры.

Правда, я в них почти не участвую. Там все близко к магии, так как задачи непонятны и плохо формализованы (вообще плохо, начиная от постановки. Функция оценки, тесты и все остальное обычно еще хуже).

Это не дорожки TREC-a, там явно профессионалы и готовят и участвуют. Но и круг немного очерчен.

 Есть Яндекс с его интернет-математикой. Яндекс бывает и без интернет-математики, что аж тоже стыдно и непонятно. За последние 4 года я видел 2 соревнования по пробкам на дорогах.

Я, кстати, уже в голове примерно отличаю IR от ML от AI (information retrieval, machine learning, artificial insemination intelligence). В первом случае пишутся такие статьи: вот есть такие-то данные и такая-то задача, мы сделали так-то и получили такую-то погрешность. Свои данные мы вам не дадим, сделать как мы вы все равно не сможете, ибо реализация закрыта и даных нет, но все крута-а-а. Во втором случае есть задача, абстрактный набор данных и вот тут наши идеи как оно будет уменьшать погрешность. Ну, или мы взяли и сгенерили набор данных (который мы вам не дадим) на нем все зашибись. Другие данные мы не генерили (или там не все зашибись, не скажем), но с некоторой вероятностью наши идеи должны и на нем работать, мало ли (а вдруг). А в третьем варианте: а давай-те Каспарова в шахматы обыграем.

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

Вторая задача была такова: по данным движения выбрать популярный маршрут у водителей. Типа, водители не дураки, ездят по правильным и быстрым путям. Опять же с точки зрения IR - нормальная задача, с точки зрения жизни - большинство водителей стоят в пробках. Это и будет популярным маршрутом. 

Яндекс для той же Москвы сделал хорошую штуку, они показали узкие места. Даже в интернет-новостях это было года 2 назад. Но их городские власти, похоже, уже в маразме. Разумно как раз в больше системе ликвидировать бутылочные горлышки и оно должно стать лучше. Я, например, за последние несколько лет вынужден был около универа привести суммарно недели 2. Там по данным все того же Яндекса и есть узкое место, вечером с центра по Вернадского(?) пробочка, после Ломоносовского(? или как оно там, около метро универа, которая горизонтальная) уже пусто. Так бага и решение видно невооруженным глазом. Там остановка общественного транспорта прямо на углу, в квадранте где сам универ. По горизонтальной улице по светофору кое-как успевают выехать длинные автобусы и троллейбусы. И они все не вмещаются на остановку, а последние вообще перекрывают 2-3 полосы по Вернадского(?). Вечарками там пробочка до горизонтика из машиночек. Банальщина, но если остановку перенести в глубь метров на 100, то проблемы не будет. Им вообще похоже это нравится. Ладно, это их проблемы. На конец мая 2012 там все так же.

Есть куча игровых стратегий. Есть мир, где надо вырастить колонию, добыть ресурсы и замочить конкурентов. Челлендж интересен, если вы будете это прогать не более 5 часов, дальше уже скучно. Таких вариаций только в соревнованиях я видел штук N.

В этом году от Интела видел такую классику, найти lcs (longest common substring) для длинных строк. Там типа идея должна быть в параллельности, контест на это. Посидели с Денисом и покурили пол-дня, пришли к линейному(!) решению, которое должно почти полностью влезть в память. Почти полностью - это потому что ограничения не четко даны. Многопоточить там можно вообще малую часть, если это имеет смысл. На форумах там люди обсуждали SSE, оказывается есть конвейерный поиск подстроки.

Пару лет (а может быть и 3) назад на ЧУ в качестве игровой стратегии была стандартная задача на минимакс. Лидеры сделали даже альфу-бету (первая тройка), Паша тоже реализовал альфа-бету (они были в тройке). За 5 часов. Разница между первым и вторым местом была в глубине расчета, у первых стояло 9, у вторых - 8. Там все на грани ТЛ было. В итоге распределение мест по крутизне, кто знает что такое минимакс и альфа-бета и способен это реализовать. Опять же это немного скучно.

А во всех других контестах получается по формуле, как повезет. Очень часто выигрывает наиболее тупое решение. В других случаях - слабина тестов, точнее ты угадал в тесты. Что-то из IR...

PS. С названием московских улиц я угадал, там если в гугловых картах посмотреть, даже в свободный день стоит и куча общественного транспорта. 

вторник, 24 июля 2012 г.

Ни о чем

peril - опасность, риск. Как-то относится к русскому "перила".

баян, про jeopardy - опасность. Русский леопард? :)

sober - трезвый.
somber - мрачный, унылый.

noose - петля, узы супружества, ловушка, казнь через повешение, аркан.
Хорошую вещь так не назовут.

tumble - падать, tumbler - выключатель, акробат.

fencing - фехтование, fence (fencing) - забор.

Kill two birds with one stone - ну не стреляют они в зайцев...

patent - очевидный.

среда, 11 июля 2012 г.

В последнюю осень

Прощальным костром догорает эпоха.
И мы наблюдаем за тенью и светом,
В последнюю осень...
(С) Юра, музыкант.

Попытался выдрать эпиграф из "Весны" того же автора, не нашлось подходящего.

Хотя я опять немного о педофилии студентах. Не о графах, я даже весной рассказывал что-то, что в расписании называется "Анализ информационных технологий". Первое слово, как я уже говорил (я уже говорил, что я никогда не повторяюсь?) мне сильно не нравится. Подозреваю, что в каких-то больших Вузах есть строгие учебные планы, шаг влево рассматривается как попытка подрыва государственного строя и карается УК РФ, статья 282 пункт 2. 


Здесь же несколько проще - обычно, что хочешь. Есть даже какие-то чудаки, которые тупо по бумажке сканы читают. Я захотел что-то поближе к тестированию и верификации. Рассказывать про "информационные технологии", которые наверняка сдохнут через 2 года, просто бессмысленно. Это было магам первого курса, то есть если бы не Болонь, то они эквивалентны 5-ти курсникам. Причем я с ними пересекался 2 года назад с большой частью и могу сказать что они адекватные. 


Пару/тройка лекций ушло на воду, зачем это все нужно, методологии разработки, динамическое тестирование/TDD/элементы ООП. Человечно, на 80% из воды.


Далее 3-4, на статическую верификацию. Тут уже с элементами математики. Флойд с Хоаром, непонятно для кого тривиальные задания на верификацию. По крайне мере есть как минимум один человек, у кого оно в голове осталось.


Еще около трех лекций я, как Валдис Пельш, рассказывал про model checking. Тут тоже с какими-то элементами математики, что-то о темпоральных логиках, как оно внутри доказывается, больше на автоматах. Тут я для себя много нового узнал. 


А на практике мы рисовали игрушки. Хотелось показать что такое ООП. Делали довольно абстрактную игру для двух игроков (человек-машина) с полной информацией. За этой фразой скрыто крестиники-нолики-20х20 (5 в ряд), реверси, и подобное. Полноценный минимакс на произвольную глубину. Вынесли еще с пяток абстрактных сущностей (оценка позиции, генераторы ходов). То есть перейти от крестиков-нуликов к реверси - подменить вот эти пяток сущностей, делается за пару часов.


С технологий делали на .net, немного unit-тестов и прочих мелких плюшек.


Результатом практики я даже доволен, обыграть машину в реверси оказалось нереально для человека. С крестиками я немного увел студентов в не совсем правильную функцию оценки позиции. Оно не совсем адекватно иногда ходит, но там один класс заменить и будет тоже на уровне человека рубить. Уверен. 


Реверси успевает считать на 6 полуходов, крестики - на 2-3. Там бы еще минимакс распараллелить, да и альфа-бета сделать, вообще у меня тогда шансов не будет, как человека.


Я первоначально даже хотел свою версию написать, тут для меня работы на вечер. Но как-то заломало, я даже начал писать. Но минут через 15 понял, что студентов то я побью, а конкуренции им не сделаю (и они мне). И себя не прокачаю. Забил, скучно когда не в первой. 


Жалко, что последующие потоки студентов напоминают потоки шлака. И меня там не будет. В последнюю осень...

понедельник, 2 июля 2012 г.

Пару слов о valgrind

Все круто.

valgrind что-то ругался, писал про кусок кода, где сортировка с компаратором, что тут типа неопределенный jmp в неинициализированной памяти. Подумал, что у них там в stl что-то криво, вот и ругается. У меня ведь тесты идут.

Проверяю на linux (не все же под маком тестить). И оба-на, тест зависает. Полчаса копал, оказалось неспроста valgrind ругается. И в самом деле после new int[] стоит как-то туда записать. для определенности.

Только valgrind промахнулся со строчкой кода. Темплейты таки нагенерили такого, что он немного промахнулся.

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

[update 02.07.2012] Почесав голову... Да и ругался он поди правильно. Он же по нативному коду смотрит. Там не совсем stl, там это называется "перегруженный оператор () с двумя int-ами". А как эта штука внутри компилируется одному gcc известно.

Еще вопрос, почему под маком это все работало? Версия про то, что компилятор как бы при выделении памяти принудительно пишет 0  не пройдет, иначе бы valgring не ругался бы. То есть он выделяет память из уже 0. Странно как-то, везение? Скорее неуд, на неделю раньше бы наступил.

воскресенье, 1 июля 2012 г.

Недояблочник

Некоторые ощущения после второго устройства, так как месяц назад у меня появился Ipad.

Некоторые мне говорили, что ранее за мной такого не замечали. Переспрашиваю, "чего такого?" Говорят, что типа "яблочник" или "фанат". Возникает такое ощущение, что обозвали пидорасом чем-то плохим.

Никакого фанатизма и приверженности нет. В данный момент на доступном рынке лично мне это показалось наиболее адекватным.

Air - он легкий. Это очень удобно, когда мне надо было целый день (4 часа) в Москве стоять ногами в польское посольство со всеми вещами, а потом после того как меня послали, идти в ближайший ресторан (думал кафе, а ведь нет) и решать проблемы по wifi. При это у меня был всего лишь заплечный рюкзак, с ноутом и планшетом, плюс стандартный набор из тапочек/шорт/зубной пасты. С точки зрения массы можно взять всякие недобуки, но Air даже можно сказать что мощный. Все также сидишь в консоле, g++/Makefile, занимаешься неприлично чем с линкером, иногда даже среду для python запускал. В остальном ноутбук как ноутбук.

Ipad 3 крут своим экраном. Когда я брал год назад штуку на Android-е, она была не хуже второго (по пикселям даже лучше). Сейчас 2048х1536 делает всех. Такие мелочи, что видеоплеер сохраняет местоположение просмотра просто радуют. В остальном планшет как планшет.

Телефон той же фирмы мне точно не нужен. Два/три каких-то звонка в неделю, 100 рублей на полгода хватает, только в поездках бюджет растет. Будильник/календарик/навигация/детектор_металла/компас/джедайский_меч есть в любом уже устаревшем телефоне. В чем фишка iphone-ов я так и не понял. Телефон как телефон, в остальном.

вторник, 26 июня 2012 г.

О страшном и ужасном

Хотел было назвать пост "О великом и могучем", но не решился.

Моя речь пойдет о формальном С++, плоском С, и еще кое о чем.

Знакомство ограничивалось спортивными задачами (размерами в несколько Кб), и двумя-тремя проектами в несколько десятков Кб (сущностей по 50). Решил улучшить качество этих проектов, чуть выше коленки.

В свои спортивные годы мы писали скорее на чистом С, без использования stl (максимум использовали bitset). Хеши писали вручную в 3 минуты, qsort тоже самопальный. Может конечно и глупо, но хватало. Времена такие были.

Коротко, что я узнал за последние недели.
- ссылки. Это показывает мой нулевой уровень. Ссылки - это те же самые указатели, только с сахаром и не пустые.

- раздельная компиляция, makefile. Все равно это медленно работает. Как сказал Андрей Б. из JB: "есть куча медленно компилируемых языков. Например, есть язык, название которого начинается на "С" а заканчивается на "плюс плюс".

- как это компилируется и линкуется.  С другими платформами/языками обычно адекватно ругается компилятор. Тут же можно заниматься непристойными вещами не только с компилятором, но и с линкером. Адекватности в сообщениях об ошибках замечено не было, больше похоже на черный ящик.

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

- перегрузка операторов. Оказывается, (->) и (*) тоже можно перегрузить. Так они сделали "умные указатели". Внезапно. [] тоже переопределяется, но это не get/set как в C#; тут в одну сторону, обычно возвращается ссылка. Обновить всю структуру может быть затруднительно. Создавать свои операторы язык как-то не позволяет, это вам, блин, не Haskell.

Оказывается в плоском С можно почти моделировать исключения. Есть низкоуровневая функция, которая запоминает положение текущей команды/инструкции. Затем мы вызываем функцию, еще функцию, а затем можем продолжить с того запомненного места. Низкоуровнево тупо пишем в ip. Если бы я был царицею морскою писал компилятор чего-нибудь с исключениями, то тут можно голову поломать "как быть с типизацией", кидать нужно на один уровень и там как-то обрабатывать. Нетривиальная штука.

Религиозные споры на счет того, надо ++i или же i++. Вот для итераторов желателен прединкремент, подумайте 30 сек зачем. Для простых типов (int) на некоторых(!) архитектурах говорят, что прединкремент на одну/две инструкции быстрее. Я таки считаю, что это пусть компилятор решает, это его задача и в этой области он (компилятор) должен быть умнее программиста. Ставить или нет inline человеку тоже бессмысленно, нормальный компилятор умнее и все сделает за вас.

Темплейты... Далеко не дженерики в современных. Нужны исходники, иначе инстанцировать темплейт не получится, эта штука не компилируется в объектный код. То есть чуть выше #define, да и с их помощи можно много чего натемплейтить. Зато можно копаться в исходниках stl или boost. Ибо, как уже отмечалось, компилируется это медленно.

Указатели на функции были давно. Новые \lambda-функции синтаксически так же уродски, как и все остальное. Но довольно сильные, там еще прикольный механизм связывания переменных.

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

Говорят, что какой-то магией даже call stack организовывать. Но раз это магия, то такты считать уже будет  не принято.

Плоский С принято хвалить за то, что как написано, так и откомпилируется (плюс-минус пара оптиимизаций). В современных плюсах та же lambda будет компилироваться не_понятно_во_что. Во всяких C# тот же yield/linq и прочие функциональные штучки компилируются нетривиальным образом. Потом дебагерром это даже нормально не отладишь.

auto для плюсов - это просто прорыв. Они до сих пор называют это выводом типа, я все равно плююсь. Но для плюсов это реально прорыв.

valgrind - крутая штука для поиска memory leak, можно как и профайлер. Рекомендую. Очень рекомендую. Очень, очень. (Замыкание по Клини*).

Общее впечатление у меня пока только формируется и сильно undefined behaviour. Если очень нужна скорость (выполнения), то даже использование stl как-то выглядит для меня несколько глупым (про какой-нибудь boost промолчу). Если уже нужно понятие надежности, то явно находимся не в той области. Какая-то грань между скоростью и надежностью... зыбкая... больше к скорости. Видимо, что-то очень большое и больше скорость. Хотя терпимо, втянуться можно.

вторник, 19 июня 2012 г.

Закон Гука на людях

Профессиональная деятельность меняет людей. У каждых свои шуточки, жаргонизмы. Некоторые не понимают друг друга, на некоторых закон Гука выполняется, некоторые проходят точку невозврата и ломаются.

Однажды в поезде я ехал с женщиной-воспитателем из детского сада. Любую фразу она повторяла как минимум 6 раз. Вы даже не представляете. Немного переставляя слова, она повторяла любую фразу раз 6. Когда я что-то слышу от собеседника во второй раз в течение минуты, мне уже хочется плюнуть в лицо/хуком слева сделать непоправимое. А тут она все по 6 раз. Как она провела день на вокзале и никуда не могла отойти. Я даже не знаю, как она повторяет фразы из 2-х слов, из 3 как раз уникальные комбинации получаются (3! = 6). В общем, так я узнал УК РФ 105, 110 (как в активном, так и в пассивном залоге) и часть пунктов совершенных в состоянии аффекта. Причем она еще принадлежит такому классу людей, которые общаются сами с собой: сядет и говорит в пустоту, ей никто не отвечает, ну а она все равно по 6 раз. Это не профессиональная деформация, это превышение предела прочности.

Люди, у которых есть маленькие дети, тоже по этому признаку отличаются от мат. ожидания. Повторяют они раза по 2-3, при этом все время, причем часто смотрят в глаза и спрашивают "ты меня слушаешь?".

Есть люди, вступившие в ипотеку. Они редко смеются, мало едят, думают о своем (своей ипотеке). Английское слово mortgage (ипотека) пришло с итальянского/испанского и созвучно переводится как что-то связанное с "посмертный" (mort, momento mori). Российские реалии недалеки. Сильно меняет людей.

Если о личном, то я люблю тишину и спокойствие. Точнее громкие звуки и нервные ситуации меня просто бесят. Поэтому у меня нет (и не будет) телевизора, радио и стационарного телефона, даже часы на стене у меня электронные, звук перебежек электронов не доступен моему слуху.

Еще мне нравится прохлада, другие называют это "тебе не холодно?". Пяток лишних килограммов, средняя ходьба по улице со скоростью 6.61 км/ч, преобразует любую погоду из >15C в жаркую. Улица - это не только расстояние от рабочего компьютера до домашнего, но применимо и к кондиционеру.

Адски ненавижу очереди. У меня есть черный список магазинов, где можно простоять в очереди. Белого и серого списков нет в природе, есть просто черный, абсолютно черный. Так же такая же ненависть к стоящим (мешающим проходу слева) людям на эскалаторе. Даже в московском метро я ходом успеваю сделать по 100 шагов, и это выигрыш в полторы-две минуты. И это только вверх, вниз я не считаю.

Иногда слышу фразы уровня "ничего, привыкнешь". Причем в тех ситуациях, когда мир и окружающую среду можно немного подвинуть и не надо ни к чему привыкать. Это животные привыкли, у верблюда вырос горб на спине, у жирафа получилась длинная шея. Человек тем и отличается, что способен изменять, а не приспосабливаться. Люди, говорящие фразу "привыкнешь" просто привыкли ее говорить.

Свои отклонения он норм поведения считаю профессиональными. Не могу оценить, перешел ли я где предел прочности, или если снять нагрузку, то меня "выправит"? Жирафу видней, он - большой.

воскресенье, 17 июня 2012 г.

Сезонная раздача

Есть подарить:
  • КПК HP(какие четыре цифры). Разрешение 320х240, внешняя карта на 4Гб, winmobile. Если у вас нет на телефоне навигации, то Navitel может оказаться очень полезным. Скайп, календарик, записная и прочее не нужные вещи. Wifi, никаких других мобильных вещей там нет. Кофе не варит. Четыре года назад он был современен, сейчас уже года два лежит на полке. 
  • Wifi Dlink6xx роутер, на числе торрентов больше 20 начинает зависать. Других недостатков не успел заметить. 
  • Мой первый персональный компьютер, PentiumIII-500. 320 Mb оперативы, 80Gb винт, стоит Debian. Главная фишка этой машины в handMade термодатчике(срабатывает при превышении порога), в ненагруженном состоянии машина бесшумна. Сам два проводочка паял :) . Под сетевую маршрутизацию, или под всякие git/hg по смыслу должен подходить идеально. Лет 7 стоял у меня в комнате при 100% uptime, раз в три месяца перегружался, из-за некотонтролируемых выключений электричества.
  • Тупой свич на 8 портов. 
  • Другой незначительный хлам.
Самовывоз. В подарок.

Менее года назад отдал планку 2Гб Паше для стационарного. В тот же день он звонит мне и спрашивает диск с ОС. В итоге оказалось, что при установке кулер на проце выдернулся, при включении минуты через 2 по температуре вырубался. Всего лишь.

Планшет, которому меньше года, думаю, нашел более активное применение. 

суббота, 16 июня 2012 г.

Нечто сферическое

Как бы о политике, но слабо относящееся к реальности... и российской и мировой. Из серии "Если б я был утопистом".

Лозунг "за честные выборы" ущерблен в принципе, на уровне "голосуй сердцем". Проблема, как мне видится, совершенно в другом. Отсутствует обратная связь, понятия управления вообще нет. Поясняю. Вот вы едете на машине за рулем. Каждые одну-две секунды поправляете руль, чуть повернули налево - машина берет чуть левее. Вы управляете.

А теперь вам дали выстрелить из лука по мишени за 50 шагов. Как стрелять из лука все видели в книжках/фильмах. Все просто - натянул, отпустил. Только делаем мы это раз в 5-6 лет. Управления отсутствует. Летит. Ctrl-Z не нажать, поправить нельзя - не автомобиль. Даже не долетит. Это не "власть народа", это называется "демократия".

Есть профессиональные спортсмены-лучники, и даже бильярдисты (там тоже все решается в моммент выстрела). Но на то они и профессионалы, каждый день по несколько сотен выстрелов. Они то все контролируют.

Далее про ограничения по возрасту. Если вам нет 18(16?) лет, то голосовать вы не имеете права, так же как будучи заключенным. Но почему-то обитателям "желтых домов" никаких ограничений нет.

Чтобы окончить школу (право на возможность поступление в вуз), надо сдать экзамены. Чтобы получить водительское удостоверение (право на возможность управления машиной), надо сдать экзамен. Чтобы получить избирательное право надо всего лишь дожить до определенного возраста. Что-то мне кажется (и должно казаться), что избирательное право должно влиять на судьбу человека больше, чем окончание школы. Достается же это право "бесплатно".

Право подразумевает ответственность и обязательства. Даже право на жизнь подразумевает. Сдал экзамен - получи избирательное право. Доказал что ты компетентен в какой-либо области - имеешь право голоса в этой предметной области. Это более адекватно, чем "быть проданным за 100 рублей и висеть с улыбкой на всех рекламных плакатах на красном фоне".

Таки все равно должен быть один (или очень малое число) человек, принимающий критические решения. Когда была войнушка с Грузией в 2008, решение было принято быстро одним человеком. Даже собрать/обзвонить ночью 3..5 человек это нетривиально.

БольшАя часть вопрос так же не может быть отдана на волю народа. Попробуйте изменить пенсионный возраст, если половина "голосующих" пенсионеры... Если находится внутри системы, то ее (систему) не видно. Желательно быть "вне" или "над", шире видишь когда не винтик.

Взгляды мои больше относятся к либерально-аристократическим. Аристократия модифицированная, не по признаку наличия денег или родителей, а наличие компетенции и ответственности. Как доказывать адекватность? Я не знаю, тут я не адекватен. Это точно не надо сравнивать со сдачей ЕГЭ по русскому языку.

Заметьте, кстати, что как две недели назад у нас в стране вернули выборы губернаторов. Тихо, многие и не заметили. Шаг с моей стороны достойный, но до моего идела еще управления и контроля далеко. Хотя бы потому, что я сам плохо вижу этот самый идеал.

вторник, 12 июня 2012 г.

Парам-парам-пам

Мальчишки и девчонки,
А так же их родители.
Увидеть не хотите ли?

Так как я переехал (почти весь), то меня можно тупо навестить. Готовить я все равно не умею, так что смогу предложить чай. Тот который в пакетиках - его практически невозможно испортить. Их там штук двадцать осталось, предложение ограничено (чаем).

Географически - город тот же, чуть на север от магазина Океан.

Называется, пустить козла в огород родителей делать ремонт. Конечно, им Большое спасибо. Несколько слов о них. Психиатры поставят диагноз уже после посещения огорода. Так как вы не были у нас на огороде, то тоже несколько слов.

Однажды меня посчитали за олигарха. Была осень, я что-то перекапывал и был одет по холодной погоде. Проходившая мимо старушка, посмотрев на меня (видимо я еще был не брит и выглядил утомленным) риторически спросила: "Что, хозяева совсем не кормят?" Я не понял ситуацию и честно ответил "Не понял..." Она или не расслышала мой ответ, или не так проинтепретировала: "Что и по-русски не говоришь?" Теперь я осознал ситуацию и четко ответил: "Я и есть хозяин". Вот тут ее надо было фоткать. Такие эмоции на лице я ни до, ни после, не видел.

Еще года 3 назад у нас на с/о массиве был сабантуй на тему юбилея с/о массива. И почти неожиданно нам вручили приз за лучший участок. Если в течение 15-20 лет что-то делать, то это обычно начинает получаться. Хотя на нашей улице тоже появилось кучка прокаченных домиков, но там сразу видно что люди с финансами, буквально за год/два сделано. У нас же все хэнд-мэйд.

В общем, папа - человек у которого руки растут из какого-то места, из очень положительного. Иногда это правда сказывается на голове, ибо заносит с такими руками.

В квартире трезвые строители поставили стену с уклоном в 10см. В общем - не поверите. В битве "папа vs стена" проигравший сейчас находится в абсолютно вертикальном состоянии. Я ж говорил, что не поверите. Нормальному человеку в голову не придет двигать стену(!) в доме, мне бы не пришло. Все бы сказали "блин, трезвые строители". Не на того нарвались.

Ладно, в общем, пишите/звоните/связывайтесь. 

вторник, 29 мая 2012 г.

Низкое

Я, конечно, слоупок во всем близком к железу и низкоуровнему сетевому. Так что пинать ногами за некомпетентность надо, а еще лучше меня просвещать разговорами на эту тему. Что не мешает первому потоку. Тонкости перехода из режима ядра и режима пользователя мне пока мало подвластны.

Как-то странно там устроено. Правда, все странности вылазят через несколько лет. Вот есть *86 процессор. Сейчас мне уже непонятно, зачем на стеке вместе с локальными переменными держать код возврата (ip aka instruction pointer). Он как-то малоотличим от локальной переменной. Шаг влево, или вправо, и все - ты вирус. Все ошибки "переполнения буфера" / перезаписи кода возврата из-за этого. Любой "безобидный" scanf или вход от внешней среды рассматривается как ящик Эболы.

Сейчас есть методы, которые переставляют параметры на стеке / добавляют пустоты в стеке. Вирусы просто так уже не пройдут, даже есть у вас есть gdb и запас маны. Перестановка при каждом запуске своя, рандомная. Хотя, если перехватить randseed...

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

Атаки на хип... а есть такие? Темный я что-то. Небольшой род многолетних травянистых растений семейств капустных его знает. Как ОС выделит память в хипе, известно даже не ей, и Богу из машины только randseed первоначальный дан. Да и что там ловить, ведь instruction pointer все равно в стеке.

Сейчас-то легко говорить. Можно еще Хоару null-ы припомнить и ничего взамен путного не предложить. Как бы видеть такие вещи лет на 30 вперед, а то Ванга какую "все тот же из семества капустных" нагадала. Не то что косяки, просто могло быть без этих шероховатостей. Хотя обжигаться об сковородку надо как минимум для иммунитета.

четверг, 24 мая 2012 г.

Инструкция после поездки зарубеж

Я вчера закончил ковку, 
Я два плана залудил, 
- И в загранкомандировку 
От завода угодил.
(С) Володя.

Видимо, тем кто будет на Евро-2012 в Польше будет что-то новое.

Так получилось, что наши (местоимение наши не имеет никаго политического подтекста) прошли в финал ACM ICPC. Так как, возможно, это будут читать люди, не знаю что это такое, то стоит объяснить. Это командные студенческие соревнования по программированию. Есть личности, которые поедают гамбургеры за время. Здесь же за время решают алгоритмические задачи. Девизы те же самые - "пришел, увидел, победил", "быстрее, выше, сильнее". Я называю это спортом. 

Так получилось, что визы делал я. И кое-какую (может нечто большее, чем кое-какую) организацию поездки то же. Получение визы - много фана. Стоять 2.5 часа на снегу на улице у посольства (конец марта), где после всего этого тебя "посылают" из-за того что нехватает подписи персон. А 4 из 5 персон находятся в 1200 км от тебя. Вообщем много фана, но я все порешал. Хотя, этот косяк можно повесить только на меня. 

Поляки те еще фашисты. При оплате пошлины за визу некоторых разворачивали, "у вас купюры мятые". Мы как бы по науке, оказалось это бесплатно. 

Еще я допустил два более мелких косяка, мы на всякий случай делали нотариальные доверенности на подачу документов. И я сообщил свои некорректные паспортные данные. Копи-паст = зло. Причем вручную я написал правильно. Косяк распространился только на 1 человека. Еще один косяк был в том, что я неправильно при подаче визы указал свою дату рождения (!!!). Это вообще атас. Свою... Там нерусская дата (месяц-день-год/год-день-месяц) и я накосячил с месяцем. Причем числа внешне похожи. Три косяка за месяц для меня это слишком. Вообще как женщина с телефоном на автомобиле, стыдно.

Это не турагенство, тут все вручную и ощущения те самые.

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

Финал, фигли. Вас встречают в аэропорту. Автобусом от оргов доставка до гостиницы. Регистрация, тут нам дают футболки Г цвета. Г видимо от грин. Нельзя поручать выбор цвета футболок человеку, у которого проблемы со зрением. Не цвет, а Г.

Ездили по городу на автобусах, суммарно я насчитал где-то 11 штук. Причем круто, впереди нас шли (нет, не полицаи) стражи с мигалками. Один раз даже на альфа-ромео.

В первый день был IBM TechTreck. Это АД!!! Я в поезде обычно смотрю лекции с планшета. На второй лекции про квантовые вычисления я заснул на 5-ой минуте, в поезде еще качает туду-туду. На ТехТреке меня вынесло где-то на 3-ей минуте. Я поспал где-то полчаса, потом кое-что послушал, потом начались какие-то непонятки со временем. Вы когда-нидудь видели, чтобы стрелки механических часов шли обратным ходом. В общем, прошло только 6 минут 27 секунд. Весь трек длился 2 часа. Асанов опытный - из 10 финалов на ТехТреке был только на первом. На youtube есть ролик про ТехТрек этого года, там 3 минуты. Полагаю оператор тоже слег после 3-х.

Потом нас отдали в музей Коперника. Не то что бы музей, там очень много прикольных штук/опытов/экпериментов. Очень клево, часа на 2-3. Я там даже купил кубик на 5.

Вечером было открытие в центре культуры и науки. Мим только в концовке разошелся, а сама официальная часть чем-то веселее ТехТрека, но все равно хуже неофициальной. Узнали, что на польском "фига" есть "держать пальцы с скрещенном положении". Между ужином и открытием я гулял, и внизу Пучер здоровался за руку с каким-то ВИП-ом (тоже в пиджаке, а не в той футболке, которая у вас остается на остаток жизни). Это оказался премьер-министр страны. У президента что-то сорвалось... Будет ли так же в Питере?

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

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

Вечером был ужин в Техническом университете. Кормили какой-то ботвой, реально травы было много. Узнал новое слово - "продолбал" от пока что единственного на тот момент присутствующего абсолютного двукратного чемпиона мира. Они/мы сидели за одним столом.

На улице видели Дена Слейтора. Я бы даже не вспомнил кто это. Дима сказал, что это тот чувак, который с Тарьяном много чего придумал. И в правду, он как тренер от Карнеги-Мелон. И согласно вики еще и автор амортизационного анализа. Кстати, очень прикольно видеть людей, аватарки которых ты только видел на топКодере. Тот же bmerry.

На пробном туре к нашим подходил американец и говорил "this is eclipse". И он засмеялся. Eclipse для плюсов - это какое-то затмение (даже не буду извиняться за каламбур pun). ИТМО - java, все остальные из наших, пишущие на плюсах, перешли на vim || emacs.

На следующий день был главный контест. Съел штук 6 мороженных, послушал задачи по телевидению. ИТМО - чемпион, ФизТех - жжет, а мы по-прежнему ... как в песне ДДТ. Ладно, в принципе сам выход в финал для студентов - это уже очень круто, при условии что вуз вообще нисколько не вложился. Увы, там нам и место. Может чуть ниже чем мат. ожидание. Белоруссы тоже жгут.

Предыдущие лет 7-8 финалы я смотрел/читал по интернету. В жизни тоже прикольно.

Закрытие в библиотеке, потом в том же здании (!) ночной клуб, боулинг, бильярд/пул и прочее. У нас в здании РАН, которое с башенками, в Москве тоже что попало творится. Я и там был.

В продленный день (спасибо спонсорам, http://fastdev.se/en/ как минимум день гостиницы за их счет) пошли гулять. Опять в центр культуры и науки, там обзорная площадка на 30-м этаже. На вопрос внизу "could you tell me. Where is obzornay ploshadka?" меня поняли :) . Старый город, я еще по музеям немного побегал. Позитивно, в общем. Из музеев можно сказать хорошее про уже упомянутого Коперника, а так же Шопена. Есть нейтральная ссылка на Кюри (но он маленький и стоит 100р) и две отрицательных (не ходите туда, просто не ходите по отрицательным ссылкам). Поели в сети "babooska". Чисто по названию выбирали. Там официантки знают русский.

Зачем-то купил Айпад3. Взял 2 черные футболки, тоже не знаю зачем.

Детали о городе/стране. У них златы, никаких евро. Курс примерно 9.1 рублей к одному злату (или злоту?). Те кто хорошо считает, могут умножать на 9. То кто плохо - на 10. Поменять рубли там проблема, лучше ехать с евро. Карточкой почти везде можно, но на мелочевку наличка все равно предпочтительней.

Язык. Отдельные фразы можно понять на польском. Когда они считают деньги, то это выглядит как "сто, двести, триста, четыреста". Волонтеры в автобусе про свободное место говорили "еще две персоны". Все остальное цельно понять сложно. Много шипящих звуков "щшжхч". Я даже не знаю, как они шипят друг на друга. Английский базовый почти везде более-менее понимают. Только не надо спрашивать "do you speak english?" Ответят отрицательно. Если сразу вопрос задашь, то скорее всего поймут. Только раза 3-4 нарвались на уровня охранников с полным непонимаем английского. Чисто русский где-то возможен, но маловероятен.

Транспорт. В Варшаве есть метро, но оно чисто символическое - одна ветка с юга на север. Просто для факта, что у них есть метро. Довольно развит общественный - автобусы и трамваи. Для автобусов отдельная полоса. Пробки есть, но оно движется. Не Москва все таки. Центр относительно маленький, все пешком можно обойти. Легко ориентироваться по высоткам в центре.

Цены и магазины. Цены дешевле московских. Можно даже сказать, что приемлемые. Как тут в городе. Продуктовые после 9 вечера почти все закрыты. Не бухают. В 10 вечера и позже - полумертный город.

Готовятся к Евро-2012. Перекапывают грядки асфальт, кладут/ложат плитку. Рекламы на улицах по сравнению с нами гораздо меньше.

Взрослые люди на внешность малоотличимы от наших, дети какие-то другие. То ли череп иной, то ли прически другие, сразу видны отличия от наших.

Если дочитали до этого места, то круто. Я уже закругляюсь. Как будут фотки, немного разбавлю.

Было очень. Было очень жалко. Было очень жалко, что придется возвращаться. Чего-то у меня в последние 2-3 года это ощущение часто возникает. Может даже это и хорошо?

Update[14.06.2012]. Фоток суммарно 800+. Требовать личного досмотра.

Старшее поколение не знает жест. Дубля с третьего смогли сделать задуманное

Такая карточка должна быть у каждого

Контест закончился, Паша ест

Поляки на втором месте. Мировые идексы падают.

Не знаю, что я там показывал

Взгляд

Я насчитал 6 спящих людей в кадре. IBM TechTreck

Смотреть на пешеходные переходы в виде клавиш

Паша идет *ь

Вот Леха немного кадр не вытянул

Вот так надо было, чтобы сверху здание полностью влезло.