Value type semantic

Вот еще одна область, которую грех не знать, но я туда не лезу – боюсь голову сломать.

http://zabivator.livejournal.com/320052.html

Стыдно мне, стыдно.
Вот закончу с жабаскриптом, поставлю себе наконец Schema и разломаю все упражнения к SICP. А потом можно и к семантике перейти, и стандарт .Net наконец прочитать.

Баги, которые нас окружают

Симбиоз человека и багов = жизнь вечная.

У прошлом годе купили домой телефон Uniden TRU9488. База на 100 номеров, отдельно своя на трубе и на базовом телефоне.

Так вот, как только наш телефонный список перевалил за 50 номеров, функция “скопировать все номера” перестала работать. Правильное шаманство – стираешь все номера на принимающем конце, после чего выполняешь “скопировать все номера” на отдающем конце.

Такой приличный UI у телефона, а надо же – базу копируют по-тупому, не “принял один, проверил, отбросил копию”, а “скопировал все, проверил, отбросил копии”. Логично что 51+50 больше ста.

Мораль: Куляй лабысло тудой сюдой итуюмомэ!

Why I hate MIDL

Вчера билд сломал. midl : error MIDL9008 : internal compiler problem
Разбираясь, нашел много интересного.
Во-первых, у midl-а есть предел на длину файла, что-то типа 64K. LOL WTF. Мокрософт говорит, что оно by design. Не делайте больших библиотек, используйте import а не include… В итоге в нашем IDL коде, который by design построен на include-ах, появились следующие дефайны: _SKIP_IDL_PART1, SKIP_IDL_PART2… :)

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

А теперь я добавил к одному из IDL-ов новую зависимость.

Та-да, 58 solutions failed to build! Internal compiler error!

Хорошо, что COM мертв, а то бы я его сам приговорил…

Голова болит

третий день уже, то накатит, то отпустит. Это что-то новенькое, раньше такого не было.

вот JSON – хороший, а AMF – говно. Точнее даже так: реализация AMF3 – говно.

Вот что им стоило message envelope заново переписать и фильтровать пакеты по заголовку версии?

Не-ет, это было бы слишком сложно. В итоге пакет AMF выглядит так:

версия 03 (типа, готовьтеся, щас будет…)
далее все в формате AMF 0,
потом вдруг где-то в середине:
0×11 – следующий объект будет AMF3! А в AMF3 даже формат строк другой – byte-length не U16, a U29.

Чтобы толком разобраться с этим двуликим янусом, пришлось поставить BlazeDS и Charles, чтобы перехватить обмен между браузером и сервером. Распечатал hex dump, испохабил карандашом. Голова болит.

Последняя ложка

Знаете, как я приучил Валентина всегда съедать последнюю ложку?

Я показываю ему пустую тарелку, баночку или чашку, говорю – вот последняя ложка. А потом всегда уношу еду.

И ни дай бог соврать. Рухнет не только процесс еды, рухнет все доверие.

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

Вот, кстати: http://anaris.livejournal.com/432552.html

Первое апреля, никому не верю.

Люди с кнопочкой яндекса, вы уже оценили шутку?

Я, если честно, подумал, что баг. Потом понял, что в России уже первое :)

В других новостях: Warner Bros купила The Pirate Bay. В Афганистане подписан закон, позволяющий мужьям трахать жен без согласия оных. В Англии за нарушение копирайта оштрафована владелица конюшни, ставившая классическую музыку своим лошадям. Ну и, конечно, новость дня: Обама и Медведев одновременно подали в отставку.

Из новостей предыдущего абзаца две – не шутки.

Я забыл – а куда мы едем?

прям как про меня. Сразу видно, человека тоже работа удовлетворяет.

Со мной еще веселее бывает. Садимся в машину, веду я. Через пять минут я, устав напрягать память, устало спрашиваю: Ирина, я забыл – а куда мы едем?

Зато я вам могу в общих чертах про дотнет рассказать. Вообще я много про что могу рассказать в общих чертах, генералист хренов.

Games

Наконец кто-то выразил, почему я играю в игры, в одном предложении.
(абстракт)
Through two online surveys and four experimental studies, the researchers showed that people stayed glued to games mainly for the feelings of challenge and autonomy they experience while playing.

Ну и о допамине, конечно же:
(линк)
So we can say, with some simplification, that the pleasure centre is the reason why you enjoy videogames, in biological terms at least – but we can’t know without asking how you like to play videogames (your play style) nor which videogames you enjoy, which depends upon many other factors such as what kinds of settings, stories and art styles you enjoy. Every player is different – but every player’s enjoyment rests, at the neurological level, upon triggering the pleasure centre in the brain.

Я это к чему: Березин поднял тему, предложенную Пегасовым. (Почему люди перечитывают книги)

Сведя эту пару блогов вместе, на этом и успокоюсь.

Unity

Чем больше читаю, тем больше нравится. Хочется уже на какой-нибудь задачке ее обкатать. Сервак какой-нибудь написать… Есть идеи?

Пишут, MS увольняет кучу народа из MS Research. Надеюсь, Unity не заморозят, ибо вещь стоящая.

Расскажите мне про friendfeed, а?

В чем изюминка? Чем он лучше Google Reader? На их заглавной странице как-то мутно всё.

* подозрительно *
надеюсь, он не сильно напоминает Я.рушечку?

PS Twitter поломали, LinkedIn поломали… хе-хе, конец детства :)

Продолжаю просаживать обеденный перерыв

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

По теме:

Пока ты не поставишь галочку в консоли Firebug-a про “enable script debugging”, FF рендерит твою страничку “в релизе”. То есть, словно бы огнежука нету. Выводит дикую какашку вместо любовно выстроенного ломом и такой-то матерью layout-a.

Включаю script debugging – вуаля! Волшебным образом появляется layout и уже никуда не исчезает!

В-общем, выключайте Firebug напрочь и чистите кэш FF перед тестированием.

PS Microsoft Script Editor – тоже говно. И вообще, почему дебаггинг minified scripts – такая жопа? Нарочно сделано, да?

То-то я смотрю, все нормальные библиотеки две копии скриптов держат – minified и human-readable.

DDJ

Пришел свежий DDJ. Я его и IW выписываю в бумажной форме – удобно в сортире читать.

Тема номера – настало ли время для functional programming или нет. Чума на оба ваших дома, из принципа не буду книжку по Erlang покупать, пока навалившиеся завалы не дочитаю.

upd: y ivan_ghandi под это дело затеяли обсуждение.

PS Да, я ни черта не делаю. Чертов марафон по восстановлению компа совершенно выбил меня из колеи. В полночь воскресенья накатил последний патч, благословясь, забэкапил С:… и здох. Вяло гоняю Tomb Raider – Underworld. Странная штука была – хотел dead space, а оказался TRU. Не тру как-то совсем.

Байку разве что какую-нибудь рассказать…

Emperor of Japan прочитал до 12-й главы. Папаша Комэй и Токугава Иэясу приказали долго жить (в обратном порядке то есть), интрига раскручивается.

С легким удивлением обнаружил, что отношения между развитыми странами запада и Азией удивительно сильно напоминают первую “Цивилизацию”. “Наша могущественная цивилизация Ацтеков требует с вашей ничтожной цивилизации Римлян репараций в размере 240 УЕ!”. А не то разбомбим Кантон.

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

Неудивительно, что сёгунат, несмотря на ксенофобию патриотизм императора Комэя и лоялистски настроенных даймё, так и не решился открыть боевые действия против Британии и/или России. А позже папаша Комэй приказал долго жить и тут уж стало не до войны с Британией – свою бы жопу сохранить от лоялистов.

Ну и on something completely different: Как переживают невзгоды в Нью Гэмпшире

Петцольд, ты неправ!

Дядюшка Петцольд рассуждает, что от Visual Studio и Intellisense тухнут мозги.

Говорит, что Intellisense диктует метод программирования снизу-вверх.

А я вот программирую в Eclipse сверху-вниз именно при помощи Intellisense. Я сразу вижу все неопределенные методы и переменные и могу их определить двумя кликами мыши. Удобно!

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

Productivity Lost

Старый прогер жалуется на жизнь в интересном, хотя и несколько устаревшем IMO посте.

http://softwareindustrialization.com/AProgrammersDilemmaProductivityLost.aspx

Про отсутствие WYSIWYG в веб-апп: или мне кажется, или WPF решило эту проблему?

По основной теме статьи: есть истина в его словах, но “ведь я же работаю”. Это такой новый подход – для каждой задачи свой язык. Некоторые вообще DSL пишутъ и ничего.

* оглаживает взглядом книжку “M – The ‘OSLO’ modeling language’ *