oleg_log
1.77K subscribers
1.86K photos
129 videos
9 files
2.77K links
Shelter for antisocial programmers "Oleg"

halp: @olegkovalov
web: https://olegk.dev
fov: @oleg_fov
chat: @oleg_log_blabla
podcast: @generictalks
Download Telegram
oleg_log
Вспомнилась класика: эстимации задачи методом Бобука-Бацека (2008)
Сегодня снг-шники учили поляков и китайцев этой формуле, на гошном митапе в Варшаве. Похоже на возрождение коммунизма 🤔
Идеально, Russ Cox вернулся к моему предложению перемешивать тесты. Правда уже идея свелась к другому, но вдруг к 1.14 случится 🎉

https://github.com/golang/go/issues/28592#issuecomment-511977430
LinkedIn запили еще одну систему для stream processing.
Даешь еще одну Кафку.

https://engineering.linkedin.com/blog/2019/brooklin-open-source

https://github.com/linkedin/Brooklin/
Forwarded from Undefined Nation
Приз на самого внимательного погромиста-аутиста (внезапно из 50 человек еще никто не заметил)
oleg_log
Приз на самого внимательного погромиста-аутиста (внезапно из 50 человек еще никто не заметил)
О, из доп 200 чел сразу появились ответы: пробел после 1го иф.

В общем это странно, что при добавлении новых изменений автор не нажал форматирование кода.

Соотв кто-то тут не скаут и не выполняет правила.
Все время забывал рассказать про 1 карго-культ. У нас есть метрики, алёрты, PagerDuty который умеет в слак/смс/звонок/мобилочку и...ноль контекста, где произошла проблема.

Ведь в описание оповещения мы не собираемся добавлять префикс prod/test/dev, чтобы быстро намекнуть дежурному всепропало/ланщас/лол.

В итоге каждый алёрт это пойти на страницу самого алерта, нажать cmd+F и найти желанное слово dev и забить. В общем ток ща рещили добавить префикс. Прошло лишь пару лет (возможно 5, я не уверен).
👑🕯 17.07.2019 https://libmustdie.dev/
Сейчас поднялась волна очередного "ой наши данные уходят в левые руки", в этот раз из-за FaceApp и старения. Видите ли они данные отдают на сервер и непонятно, что там будет.

Ну...а в чем новость? почему залив фоточек в вк/телегу/в удаленную графану-сервис не делает того же самого?

Возмужения по поводу "они собирают данные для нейронки, чтобы построить модель для старения и поиска нас при помощи камер" как минимум смешно звучит после ФБ и 10years challenge.

Альо ребятки.
oleg_log
Хм, жависты-сишарповцы, а у вас есть тулы для race detection? Вот чтобы я мог быстро проверить, все ли красиво между тредами и никакие данные не пересекаются? аля Go race detector / C++ ThreadSanitizer, если знаете что это. Быстрый гуглеж как-то не сильно…
Недавно спрашивал для тулзы для race detection и вот что подкинули:
Решение от FB для Java, C/C++, Objective-C, но это все статический анализ
https://fbinfer.com/
https://github.com/facebook/infer

ReSharper - естественно для .Net и тоже статика (платное как помню)

CHESS Microsoft Research. По описанию как раз, что надо - проверка на баги в рантайме.
http://research.microsoft.com/en-us/projects/chess/
(еле нашел репу https://github.com/LeeSanderson/Chess)

Для C/C++/Fortran еще Helgrind
http://valgrind.org/docs/manual/hg-manual.html

Итог чуток ожидаемый и стремный (для меня) - как можно спокойно писать потокобезопасный код, без использования чего-то автоматического для проверки? Бррр
каждый раз кек
Столкнулся с ADHD-driven development в личном проекте.
(ADHD = Attention deficit hyperactivity disorder
= Синдром дефицита внимания и гиперактивности)

Я вроде как хочу что-то сделать, но все это происходит неструктурированно. В голове есть фичи, есть понимание, как должно выглядеть.

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

Возможно стоит делать более мелкие и детализированные таски.

Не помню такого у себя ранее. Хм..
Вот очень бесящая вещь int sessionLifetimeSeconds потому-что стрельба себе по ногам.

Часто происходят ошибки конвертации (ой, а как минуту в секунду, а часы? а тут делить надо, или умножить? почему не корень из числа?).

Потом это раздутое имя, этож просто lifetime, какая разница в чем мы хотим хранить ВРЕМЯ ?

Ну и во всех[citation needed] есть тип для длительности времени аля time.Duration. Смысл переизобретать?

Пожалуй одно место где надо это в конфиг-файле(ямл, жсон). Чтобы не долбаться с префиксами можно сделать lifetimeSeconds: xxx и норм. Но вот по коду гонять суффикс -Seconds - зашквар.

#бесит_в_коде
(заведу новый тег что ли, в закладках уже 5 вещей лежит)