oleg_log – Telegram
oleg_log
1.78K 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

about: https://news.1rj.ru/str/oleg_log/3200
Download Telegram
Сегодня обратил внимание на жавовское Arrays.asList(...). IDEA подсказывает, что при передачи одного элемента лучше использовать Collections.singletonList(...), что вроде логично.

А теперь самое прикольное: в каждой из этих фций используется своя имплементация интерфейса List. То есть на пустом месте созидаются сущности, которые выполняют одно и тоже, не несут никакой уникальности, да еще и приватные, то есть живут только в этих фциях.

ООПГМ ass is.
Пришлось на ревью расчехлять стайлгайд для sql. Меньше всего ожидал, что это понадобится мне (прост с БД не работаю), но вот, советую иметь под рукой.

https://www.sqlstyle.guide/
Forwarded from Undefined Nation
Хм, ребятки, а закиньте меня в свои чаты около айтишные(хотя можно и простые), хочу небольшую статистику собрать, веду себя прилично, к лотку приучен, заранее спасибо.
@olegkovalov
Вспомнилась класика: эстимации задачи методом Бобука-Бацека (2008)
Какая же ламповая лекция от Отцов Юникса из AT&T, и Ритчи, и Кернига, и Томпсон, даже Ахо есть(правда его знают по алгоритму Ахо-Корасик), а также Лоринда Черри.

На самом деле Bell labs и его поглотитель AT&T дали слишком много для этого мира. Жаль рыночек порешал их.

https://www.youtube.com/watch?v=tc4ROCJYbm0
О, в гошечку вмержили новый escape analysis, теперь ждем в 1.13 меньше вещей в хипе 🎉
Заметил одну особенность во многих командах - изолированность от мира.

Возникла проблема Х с какой-то либой, никто в тиме не знает, что спровоцировало проблему и как её фиксить. На стековерфлоу тоже не то. Сидим и превознемогаем, ну и пишем манагеру или пользователям - in progress, фикс вотвот будет.

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

Не понимаю этой логики затворничества, совсем.
Не перестаю выпадать в осадок от этих спецов уже неделю без перерыва:
- ну у нас тут кафка на трех машинах, всего 420рпс, мы готовы ко всему
- ну у нас тут шардированный редис на 4 машинах, пока данных 700мб, но чуть что - все ништяк
- ну у нас тут 2я версия продукта на подходе, правда мы 1ю еще не релизнули, но ща будет миграция
- (upd) ну у нас тут кубы стоят, правда пока на одной машине, но ща мы скейлится на первомай будем

Вот честно, откуда они лезут и почему они активизировались весной?
ArtMoney as a language agnostic supervisor
Короч я зафейлил 1й собес на codility.
Не делайте собесы от балды, если не уверены в своих силах.
А еще нужно начать практиковаться, ток зачем, все равно на работе надо будешь эксель заполнить или кнопошку на 12пх пододвинуть.
Эт вам не контеншон в многопоточном спагетти уменьшать 😥
Узнал интересный инфраструктурный паттерн - работоспособность деплоя зависит от работоспособности жыры.

То есть для запуска новой версии нужно пойти в жыру, посмотреть какие-то ишусы в какой-то версии и если она не вернула 500(а в больших фирмах эт не редко) или вернула в теч 5 сек - делаем деплой.

Как вы могли догадаться - деплой эт рулетка. Зато есть время для пс4/хбох. Smaaart.
LegacyAuthKeyCachedRepository - и вот что делать с этим экскопаемым?
Живет с 2017, в коммитах явно говорится, что старье, но при этом используется везде и ответственность с этого никуда не ушла.
И шо с ним делать, писать рядом новое или расширять легаси.
Расширять легаси хоть в CV бери😡
Осознал, что uncle bob это дедушка горох 🤔
Things my CS degree didn’t teach me:
- Debuggers
- Infrastructure
- Server mgmt
- Cert mgmt
- Datastores
- Secure coding

Things my CS degree DID teach me:
- Recursion

Twitter: jessica_schalz
Какое занятное чтиво с утра!

Убер 81 раз деплоил приложение, чтобы гит-бисектом найти коммит с регрессией (привет монорепе, куче коммитов и зависимости в зависимости).

В итоге они форкнули компилятор, чтобы выводить чуток больше информации о runtime.newstack (так-что заголовок чуток желтый :)

ТЛДР: пулл горутин полезен

https://eng.uber.com/optimizing-m3/
Узнал что-то новое, в Ерланге есть orelse и andalso.

Expr2 is evaluated only if necessary. That is, Expr2 is evaluated only if:
- Expr1 evaluates to false in an orelse expression.
- Expr1 evaluates to true in an andalso expression.

Returns either the value of Expr1 (that is, true or false) or the value of Expr2 (if Expr2 is evaluated).

UPD: при and и or в ерланге оба выражение вычисляются