@hirthwork

Тег wrok в блоге hirthwork

hirthwork

process(lock, doc);
С намёком на «Не грози Южному Централу»

hirthwork

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

hirthwork

Лучшим техническим решением этого квартала остаётся очистка /var/cores/ при деплое новой версии

hirthwork

Проблемы можно разделить на два типа:
1. Когда строка становится длиннее после to_upper
2. Когда строка становится длиннее после to_lower

hirthwork

Основное достижение за неделю: заебал коллег и они откатили нестабильный релиз

hirthwork
  • коммитишь мем
  • запускаются тесты
  • тесты замигали
  • замигало за окном
hirthwork

Current mood: Облачно, местами бигдато

hirthwork

Искусство программирования: допустить адскую багу, которая за счёт грамотного сall flow не влияет на корректность работы программы

hirthwork

Да что ж за день-то такой

ЧИНИШЬ RACE CONDITION В ПРОЕКТЕ "А"
@
ПОЧИНИЛ, МОЛОДЕЦ, ТЕПЕРЬ ОН ТАКОЙ ЖЕ НАДЁЖНЫЙ КАК ПРОЕКТ "Б"
@
НАХОДИШЬ ЕЩЁ ОДИН RACE CONDITION В ПРОЕКТЕ "А"
@
И ЕЩЁ ОДИН
@
… ИНТЕРЕСНО, А КАК ЖЕ Я В ПРОЕКТЕ "Б" ЭТО ОБОШЁЛ?
@
А НИКАК!

hirthwork

НАХОДИШЬ У СЕБЯ БАГУ
@
НАХОДИШЬ ЕЩЁ ОДНУ
@
РЕШАЕШЬ ДОБАВИТЬ В CORE-КОМПОНЕНТУ ПРОВЕРКУ, ЧТОБЫ ЛОВИТЬ ТАКИЕ БАГИ В АВТО-ТЕСТАХ
@
ПАДАЕТ 6 ЮНИТ-ТЕСТОВ

hirthwork

В регулярках джавы можно сделать named capturing groups (если вы не знаете что это такое, то вам не сюда, а в кружок кройки и шитья), и по имени группы из Matcher'а можно доставать captured подстроку. Но при этом из скомпиленной регулярки нельзя достать список имён этих самых capturing groups, которые были заданы в регулярке. Второтег

hirthwork

Иногда ты используешь type erasure, а иногда type erasure имеет тебя

hirthwork

Из всех видов хуйни самой хуёвой является неконсистентная хуйня. Отака хуйня, малята :(

hirthwork

— Это я слепой или в <service name> нельзя сделать <feature name>?
— Увы, ты не слепой, но мы это скоро исправим.

hirthwork

Интересно было бы посчитать как за последние две недели изменилось количество фейсбучных френд-реквестов у пользователей Яндекса от иностранцев. Затем сделать срезы по возрасту и полу. Но мне лень.

hirthwork

О! Ещё одну багу в проде нашёл!

hirthwork

Когда-нибудь я напишу книгу: «100 простых способов знатно объебаться в продакшене»

hirthwork

Берёшься за проект, который «с нуля» написать в срок точно не получится и нужно отыскать готовую библиотеку поверх которой нагородить свои хотелки.
@
Берёшь ту, которую посоветовал когда-то коллега.
@
Проверяешь библиотеку. «Из коробки» 90% нужного функционала уже есть.
@
Смотришь внимательнее. Чтобы сделать оставшиеся 10% придётся по хардкору патчить исходники библиотеки.
@
Смотришь ещё внимательнее. Оказывается, авторы все checked exceptions оборачивают в RuntimeException.
@
В офисе начинает вонять горелой обивкой офисного кресла.
@
Читаешь дальше публичное API. Вместо Map<String, String> там используется List<? extends String>, где по чётному индексу лежит имя атрибута, а по нечётному — его значение.
@
Начинаешь думать, о том чтобы переписать эту либу с нуля, но по нормально.
@
Начальник успевает вовремя отговорить.
@
Приходишь утром в офис со свежей головой. Начинаешь думать с чего начать патчинг.
@
В КОДЕ БИБЛИОТЕКИ ОТСТУПЫ ПО ДВА ПРОБЕЛА. ЭТО ПОСЛЕДНЯЯ КАПЛЯ.
@
Лезешь на stackoverflow в поисках аналогов.
@
Находишь 2 библиотеки.
@
ИЗ КОРОБКИ КАЖДАЯ ИЗ НИХ ИМЕЕТ 10% НУЖНОГО ФУНКЦИОНАЛА.
@
Возвращаешься к исходной библиотеке. Обречённо идёшь за ещё одной кружкой кофе.

hirthwork

Хотели себе занять во внутренней сети доменную зону с именем подходящим нашему проекту
@
ХОСТ С ТАКИМ ДОМЕННЫМИ ИМЕНЕМ УЖЕ ЗАНЯТ
@
НЕ МОЖЕМ ПРИДУМАТЬ ДРУГОГО ХОРОШЕГО ДОМЕННОГО ИМЕНИ
@
ВСЁ НАХУЙ, ЗАКРЫВАЕМ ПРОЕКТ

hirthwork

Я хотел починить, а в итоге доломал.

Добавить пост

Вы можете выбрать до 10 файлов общим размером не более 10 МБ.
Для форматирования текста используется Markdown.