вторник, 1 января 2030 г.

О блоге

Более двадцати лет я занимался разработкой ПО, в основном как программист и тим-лид, а в 2012-2014гг как руководитель департамента разработки и внедрения ПО в компании Интервэйл (подробнее на LinkedIn). Поэтому в моем блоге много заметок о работе, в частности о программировании и компьютерах, а так же об управлении.

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

пятница, 27 марта 2015 г.

[prog.bug] Динамическая типизация рулит и бибикает...

Просто обожаю, когда такие вещи выскакивают на боевой системе:

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

Казалось бы, причем здесь динамическая типизация? Наверное при том, что в статике какая ошибка в код едва ли просочилась бы.

PS. Причем там поломалось что-то еще хитрее. Даже при попытке сменить фотографию для мероприятия выскакивает почему-то неработающий диалог выбора места проведения мероприятия.

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

четверг, 26 марта 2015 г.

[prog.sobjectizer] Внезапный юзкейс для лимитов сообщений

При реализации run-time мониторинга потребовался тест, в котором агенты бы отсылали друг-другу кучу сообщений. Решил использовать идею "писем счастья": когда агент получает сообщение, он рассылает его по N адресам. Получатели сообщения так же рассылают его по N других адресов и т.д. Адреса рассылки для агентов задаются случайным образом, так что большинство агентов оказывается загруженными более-менее одинаково.

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

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

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

Сами по себе лимиты уже реализованы и даже более-менее задокументированы (#1, #2). Ждут завершения работ над версией 5.5.4 и релиза где-то в первых числах апреля.

среда, 25 марта 2015 г.

[life] Совок остается и исчезает совсем не там, где хотелось бы...

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

Пара свежих примеров.

пятница, 20 марта 2015 г.

[project.management] Планирование обратно от часа Ч

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

[project.management] Обалденный доклад о UX. Но далеко не только о UX

Вот:

Ведение коротких, сложных и серьёзных кросс-медийных дизайн-проектов в условиях военного времени, Антон Уткин.

Крайне рекомендую посмотреть это видео всем, кто имеет отношение к софтверным проектам. Поскольку то, что человек говорит про UX, практически точь-в-точь переносится и на собственно разработку, тестирование и внедрение.

Видео короткое, всего 21 минута. Сам доклад в два раза короче, остальное вопросы, которые так же полезно послушать. Но первые 11-12 минут выступления просмотреть нужно обязательно.