вторник, 10 июня 2014 г.

Монеты вместо мигрантов

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

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

Удачи на дорогах

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

КАД не стоял, но был загружен так, что фуры в третьем ряду ехали. Я ехал за BMW в левом ряду, когда мне на хвост упал какой-то идиот. Он аж до Пулковского висел у меня на заднем бампере почти вплотную, потом обогнал, подрезав так, что мне притормозить пришлось, и повис на бампере у BMW вплоть до съезда на ЗСД.

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

PS. ЗСД, кстати, подорожал с тридцати рублей до сорока.

понедельник, 9 июня 2014 г.

Тонкое искусство

Когда эта история дошла до ушей любопытной монахини Сато, она отыскала учителя Бавана.

Сато сказала: "Мой учитель рассказывал о Тонком Искусстве Кэширования, которому должны учиться все разработчики Храма. Что это за тонкое искусство?"

Баван ответил: "Тысяча свежих апельсинов на дальнем рынке; три старых в той миске на моём столе. Чем я должен завтракать в этом месяце?"

Сато обдумала это и сказала: "Когда горечь плодов превышает горечь путешествия, мы отправляемся за покупками".

Баван ответил: "Мой брат хранит в миске изюм, а моя сестра - сырую рыбу. Как часто нам троим приходится ходить на рынок? С каким количеством чаш, и в какое время суток?"

Сато сказала: "Такие простые вопросы, но для ответа на них я должна спросить ещё".

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

Сато спросила: "Это и есть та сложность, что делает кэширование тонким искусством?"

Баван покачал головой: "Сложность делает его только искусством. Это кажущаяся простота делает искусство тонким. Как просто объявить статическую хэш-таблицу, но как опасно! В первую очередь, главной проблемой Тонкого Искусства является осознание того, что она вообще существует".

Original: Subtle Art

воскресенье, 8 июня 2014 г.

Cut the Rope 2

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

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

Продолжение банкета

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

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

пятница, 6 июня 2014 г.

В стране невыученных уроков

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

Население

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

Согласно статистике, население Советской Эстонии постоянно росло, а после развала СССР оно стабильно падает.

Каждый охотник желает знать

Я тут уже предлагал идею широко распространить OpenID и расширить этот протокол, добавив поддержку Profile. Однако, Yahoo! решили совсем прикрыть возможность логиниться через Facebook и Google, добавленную 4 года назад. Видимо, каждый хочет владеть персональной информацией. Хотя, раз за 3 месяца не прикрыли, то может передумали?

Тридцатилетие

Сегодня старой русской игре Тетрис исполнилось 30 лет.

По этому поводу смотрите подборку соответствующих рисунков.

среда, 4 июня 2014 г.

Стол Бавана

Группа поддержки пользователей Храма, известная как клан Бесконечной Печали, стала получать жалобы о конкретном приложении Корзина Покупок. Изменения контактной информации поставщика сразу появлялись в базе данных, но на некоторых серверах в этом приложении в течение нескольких дней по-прежнему отображались старые данные поставщиков. Мастера Бавана послали разобраться.

"Перезапустите этот сервер", - приказал Баван, когда появилась очередная жалоба. - "Затем, пусть пользователь снова войдёт в систему".

"Вашим первым действием является Последний Жест Отчаяния?" - спросил ответственный учитель Иши-Шинг.

"Моя цель - диагностика", - ответил Баван, скрестив руки.

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

"Вы знаете дорогу к Потерянному Скиту?" - спросил Баван.

"Я никогда не слышала о нём", - сказала монахиня.

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

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

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

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

Иши-Шинг кивнул: "Ошибка понятна. Бумага стоит дорого, а некоторые вещи меняются очень редко".

"Совершенно не случайно, что редко и никогда - два разных слова", - сказал Баван.

Original: Bawan's Table

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

Не просто треугольник

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

Java.net blog post

Таки написал очередную статью. Пишите комментарии...

Тут я переписал с использованием лямбд пример бисерной сортировки из предыдущей статьи. Забавно, но не более.

Если интересно познакомиться с лямбдами поближе, начните с Хабра: раз, два и три; а также видео можно глянуть.

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

Game of Thrones

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

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

суббота, 31 мая 2014 г.

Вечерняя игра

Сегодня мы с детьми играли в Portal 2 по сети. Toshiba продолжает разочаровывать, так как её WiFi-модуль всегда отваливается от роутера при большом количестве устройств на последнем. У нас прерывается игра, как только Юля выходит в инет!

Гаражи

Сегодня вдоль гаражей вкапывали столбы. Судя по этому и отсутствию информации на КГА, сносить гаражи пока не планируют.

пятница, 30 мая 2014 г.

Асоциальная сеть

Нашёл на Хабре статью про то, что Google+ так и не смог добиться такой популярности, как у Facebook. Там в комментариях народ устроил срач на тему сравнения этих социальных сетей, но мне тут подумалось, что они не совсем правы. На мой взгляд, Google+ является расширенной версией Twitter, плотно связанной с остальными сервисами Google.

Может я и ретроград, но я совсем не понимаю, зачем нужны всякие социальные сети. Среди всех своих коллег я знаю только пару человек, кто активно общается ВКонтакте. Себе я оставил только LinkedIn и Одноклассники, на котором по разным историческим причинам больше людей из Прибалтики и, следовательно, моих одноклассников. И то я туда захожу очень редко. Google+ я использую только для совсем малозначительных сообщений, которые чем-то зацепили, но про которые лень писать на блоге.

Я думаю, что сейчас надо развиваться в другом направлении. Помимо OpenID надо разработать протокол OpenProfile, чтобы в тех сетях и/или форумах, куда ты регистрируешься, все бы видели твои данные, которыми ты хочешь поделиться. Достало, что надо вводить школы и работы в разных соц.сетях. Ну и сделать вход через OpenID на максимальном количестве ресурсов. А то даже какой-нибудь клуб любителей красных тапок с пумпонами требует отдельной регистрации с придумыванием логина, так как привычный обычно занят, и пароля, чтобы для безопасности не повторялся.

Mercurial

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

Ну и постоянно создаваемые головы надоедают страшно. У нас запрещено их в пространсто пихать, поэтому commit приходится делать непосредственно перед push. Привыкнуть, конечно, можно, но... Я тут на днях продолбал файл с изменениями в JDK 9, которые обычно прививал в JDK 8 командой patch. Воспользовался командами export и import (вторая делает commit), скомпилировал, протестировал, а запушить не дают, так как за это время меня уже кто-то опередил. Кучу времени на этом потерял...

среда, 28 мая 2014 г.

Модель коробки

Монахиня Жинг вернулась в свой домик в низине под утёсом, на котором возвышался Храм. Однако, удалённая работа не изолировала её от интриг, происходящих в Храме, и вскоре старший монах Вангохан стал засыпать её жалобами на своего давнего соперника, на монаха Ландву.

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

Я написал много модульных и функциональных тестов;
Ландва - ни одного, и ещё он игнорирует исключения,
скрывая их вывод на экран...

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

Я сгенерировал простой HTML согласно стандарту;
Ландва слепил вместе разные плагины JQuery,
доверяя браузеру отобразить это месиво...

Мы представили наши системы сегодня утром.
Вся хвала несправедливо досталась Ландве.
Никто не пришёл ко мне.

Жинг вспомнила о склонности Вангохана к отравлению тех, кто его раздражает.* Чтобы спасти Ландву от неприятной ночи в туалете, она ответила:
Отправьте мне URL обеих ваших систем.
Я должна разобраться.



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

На пакете рукой Жинг было написано:
Выбери и съешь.
На дне найдёшь ответ.
Вангохан проглотил содержимое лакированной коробки, но был озадачен отсутсвием какой-либо записки на дне. Он раздумывал о том, достаточно ли он голоден, чтобы съесть содержимое второй коробки, когда острая боль в животе прогнала эту мысль (да и все остальные) у него из головы.



Следующим вечером Вангохан, по прежнему прикованный к постели, получил ещё один пакет от монахини. Его он открыл с некоторым беспокойством.

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

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

Представление не является частью пищи,
но всё же оно является частью блюда;
нашим введением, нашим интерфейсом.

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


* См. случаи 84 и 120. Или просто избегайте его специй.

Original: Box Model

вторник, 27 мая 2014 г.

Pink Floyd

К двадцатилетию альбома The Division Bell:

Шикарные виды Земли из космоса сменяются кадрами из Припяти, которые я узнал по играм серии S.T.A.L.K.E.R. Особо доставляет архивное видео советских времён. И музыка...

понедельник, 26 мая 2014 г.

Чемпионат мира по хоккею

В этот раз россияне не проиграли ни одного матча.

Внук не подвёл деда.