понедельник, 29 июля 2013 г.

Защитное ограждение

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

Монах организовал встречу с автором, на которой он вежливо выразил своё разочарование.

"Печально, но это Ваш просчёт", - с поклоном ответил автор. "Если бы Вы прочитали обширную документацию, что я предоставил, Вы бы знали, что вложения должны добавляться только после установки тела сообщения. И в метод setMessageText, который принимает нетипизированный Object, Вы должны передавать либо массив строк, либо объекты типа DomNode или BufferedInputReader. Кроме того, Вы пропустили, что некоторые адреса назначения просто игнорируются"...

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

Учитель Суку прослышала об этом и вызвала автора.

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

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

"Слева от Вас есть выступ, примерно такой же широкий, как Ваша нога", - объяснила Суку. "Осторожно дойдите по краю до противоположной стороны колодца. Там Вы найдёте железные ступени, установленные в стене и ведущие вниз к воде, где кости аббата ждут Вас. Обратите внимание: выступ - скользкий от влаги, каждый третий камень установлен на несколько сантиметров выше, каждый пятый - ниже, а каждый седьмой - отсутствует. Но если Вы будете держать это всё в голове, то путь будет довольно простым".

Original: Guardrails

День алконавта

По пути на работу было отвратно спускаться в подземный переход, ведущий в метро, ибо там было наблёвано сверху до низу. Я сам так и не понял, кто это мог так постараться, так как для одного - чересчур, но на работе мне напомнили, что вчера был День ВМФ.

воскресенье, 28 июля 2013 г.

Эх, дороги...

На фотографии обычный участок Средневыборгского шоссе, на которое я жаловался в прошлый раз:
По пути назад я остановился, чтобы пофотографировать. Через пару минут за мной ещё чел встал. Я подумал, что он остановился мне помочь, а он прошёлся по противоположной обочине, нашёл свой колпак с колеса, приладил его и уехал...
Итого: на дорогу в лагерь и обратно мы потратили часа 4, за которые проехали всего 238 км со средней скоростью 63.3 км/ч и сожгли 20.8 литра бензина, т.е. 8.7 литров на сотню. И это несмотря на то, что по КАДу мы ехали с хорошей скоростью 40% пути.

Шашлык на озере

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

Шашлыки получились отличные, с лёгкой хрустящей корочкой. Жарили, как и в прошлый раз, на решётке. Единственный минус - её гораздо сложнее отмывать: тогда даже посудомойка с первого раза не справилась.

Ностальгировал по детству. У нас вокруг Таллинна большинство мест для отдыха именно такие: сосны, песочек и холодная вода...

Родительский день

Сегодня у Мишки в лагере "родительский день", когда можно не просто навестить чадо, но и поучавствовать в лагерной жизни. После торжественной линейки мы пошли прыгать на батуте. В основном, конечно, Лёшка.

суббота, 27 июля 2013 г.

Невская уха


В преддверии Дня ВМФ у нас на набережной устроили ежегодные народные гуляния.

Народ стоял в очереди за бесплатной ухой, а мы просто отдыхали. Лёшка прыгал на Мадагаскаре, так как на Трактор мы его не пустили. Запускали змея, но он полетал совсем недолго, пока порыв не закончился. Похоже, что погода улучшается...

пятница, 26 июля 2013 г.

Hangouts заменил Talk

Хотя, как замена, он никуда не годится. Я понял, чем меня бесит Hangouts: в отличии от Google Talk он не показывает online-статус. Как узнать, стоит ли человеку писать или лучше позвонить?

Океанариум

Этим летом Юля с Лёшкой, когда они были в Москве, ездили развлекаться в океанариум на Чистых Прудах.

А сейчас они, снова вдвоём, звонили из нашего океанариума. Юля говорит, что в Питере на порядок лучше сделано и гораздо интереснее, чем в Москве.

четверг, 25 июля 2013 г.

Велосипедист

Сегодня видел более-менее адекватного велосипедиста на Лермонтовском, который не скакал хаотично, а ехал в общем потоке, всем видом показывая знания ПДД. Хотя и у него были затычки в ушах и не было зеркал заднего вида...

среда, 24 июля 2013 г.

Company of Heroes 2

Основано на "реальных" событиях фильма Враг у ворот:


Режиссёр фильмов Предстояние и Цитадель апплодирует стоя:


Дело Геббельса живёт и процветает:


Кстати, одна из причин, по которой я перестал покупать игры серии Call of Duty, это наличие развесистой клюквы. Первые две части были отличные, хотя и там начало Сталинградской битвы было показано как в фильме Враг у ворот.

Чёрная эмалированная коробка

Учитель Баван поставил перед своими разработчиками дилемму:

"При исследовании странного поведения на производстве, нашим самым мощным оружием всегда были отладочные сообщения: чем они более многочисленные и подробные, тем лучше. Тем не менее, при широком использовании, формирование таких сообщений становится ресурсоёмким - настолько ресурсоёмким, что мы отключаем отладочные сообщения, когда мы не занимаемся исследованием проблем. Итак, какой путь лучше? Безопасный, но медленный? Или беспечный, но быстрый?"

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

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

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

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



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

Внезапно, на экранах каждого пользователя стали печататься исключения NullPointerException. Система стала полностью непригодной для использования. Пока монахиня в ужасе стояла среди этого хаоса, учитель Баван незаметно подошёл к ней и прошептал: "А теперь достань чёрную коробку".

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

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

Original: The Black Enamel Box

понедельник, 22 июля 2013 г.

Найди то - не знаю что

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

воскресенье, 21 июля 2013 г.

Тачки 2

Собрал упрощённую конфигурацию гоночного трека:

Lightning McQueen теперь не вылетает, но ездит заметно медленнее Francesco Bernoulli. Не то, что в мультфильме...

Туда и обратно

В лагерь ехали по Скандинавии, а потом свернули налево к Победе и проехали километров 20 по раздолбанной дороге. Обратно возвращались через Приморское шоссе, но 17 километров Средневыборгского шоссе разбиты ещё сильнее.

Такое ощущение, что на КАД убрали камеры. Народ несётся 150 км/ч, подпирает задний бампер и мигает фарами, сгоняя с левой полосы тех, кто идёт на пределе разрешённой скорости. А мне очень не нравится маневрировать на таких скоростях...

Лагерная жизнь


Посетили Мишку и накормили его запрещёнными чипсами. Он сильно скучает, но уезжать не хочет. Ему интересно, что там дальше будет...
За командный рисунок они получили первое место, но построить ракету и запустить ему не удалось. Зато хвастался, как прыгать на батуте научился: может с попы на ноги встать. У Лёшки тоже хорошо получается, так как у Мишки учится:

суббота, 20 июля 2013 г.

Ливень

    Возвращались мы из Ленты,
    Шли по улице домой.
    И внезапно ливень начал
    Заливать нас всех водой.

    Под зонтом мы схоронились
    И решили переждать,
    А он всё не прекращался,
    Продолжая поливать...


Я потом зонт Юле с Лёшкой отдал, а сам насквозь промок вместе с рюкзаком.

Хромаем потихоньку

Google Chrome опять показал такое окно. Где обновление? Очень не хочется отказываться от привычного браузера.

пятница, 19 июля 2013 г.

Мишка в лагере

Пришли первые фотки из лагеря. Мишке там нравится.

Телефоны для общения с родителями им выдают в тихий час и он рассказал Юле, что один мальчик из их палаты постоянно хнычет по телефону. Юля предположила, что тот мальчик скучает по дому, на что Мишка серъёзно заметил: "Я тоже скучаю, но ведь держусь".

Расширения Chrome

Ни с того, ни с сего пропали кнопки хромированных расширений, показываемых в toolbar. Вместо них появилось выпадающее меню с теми же кнопками. Естественно, я стал пропускать все нотификации, например, от GMail или Google+.

Помучившись недельку и не найдя способа вернуть кнопки на toolbar, я решил попробовать сначала сказать disable всем расширениям. Выпадающее меню пропало и после того, как я сказал enable, все кнопки появились как положено.

Java.net blog post

Хотел написать очередную статью, но сказать нечего в связи невостребованностью моей реализации интерфейса Map, использующей Reference разного вида.

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