oleg_log
1.74K subscribers
1.88K photos
131 videos
9 files
2.82K links
Shelter for antisocial programmers "Oleg"

halp: @olegkovalov
web: https://olegk.dev
fov: @oleg_fov
chat: @oleg_log_blabla
podcast: @generictalks
Download Telegram
Check your invocation logs!
Duration: 333.72 ms Billed Duration: 334 ms

Вот это уже сильно. Даже если тарификация будет по 10мс....ох...значит это не будет так смешно https://xn--r1a.website/oleg_log/3846 (считайте я был инициатором изменения тарификации)

https://www.reddit.com/r/aws/comments/k48mzy/lambda_just_got_perms_billing
А вот и понятное объяснение что там случилось. А то лень читать стену текста. А кстати канал советую.

UPD: там на канале продолжение
«Все хуже и хуже... Добавление новых мощностей привело к тому, что на всех серверах число необходимых потоков превысило количество, разрешенное операционной системой»

https://xn--r1a.website/profunctor_io/5907
А вообще такая проблема и у нас была. Годика 1.5 назад. У нас начал кашлять желтым статусом Elasticsearch (а он здоровый у нас)(ну был, ща я уже не там).

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

Ну вот эластик прилёг, очередь наполняются и продюсеры Кафки начинают приближаться к ООМ и убийству супервизором. Пришлось прыгать в ssh и менять конфиг с рестартом.

Можете не спрашивать, почему мы их не отбрасывали, мне кажется было связано с аналитикой (чтобы потом сравнить HDFS с Kafka и что вышло из неё, но могу быть чуть неправ).

Шо, тред ваших историй с переполнениями данными?
В коментах говорят есть решение лучше ×/ ⌷∘data¨ ⍸data∊⍨2020 - data

Я не уверен, где заканчивается код и начинает комментарий к решению, но вроде бы вот так.

https://twitter.com/code_report/status/1333822419996446725
3ч дебага вчера и еще 1.5ч местами не прошли даром. Получилось затащить ПР в phonenumbers (эт такой парсер-валидатор телефонов, переписанный на го с жс/жава/цпп от гугла).

Если вам будет скучно, если вы думаете, что у вас сложный таск с монго, посмотрите какая там ифология, регулярки и кучи комментариев. О, еще тесты гляньте. Веселья на 7 2х недельных спритов.

https://github.com/nyaruka/phonenumbers/pull/71

(кстати ребятки оказались отзывчивыми, очень радует)
go-ruleguard теперь умненький и ловит такие (редкие надеюсь) случаи:

mu.Lock()
defer mu.Lock() // <- bad one


Спасибо Искандеру за ревью и подсказки.

лайк-репост-колокольчик https://twitter.com/oleg_kovalov/status/1334522123449217025
Как этот пост красиво перекликается с постом выше, прям ах
Год назад AWS представили CodeGuru (я изложил тогда свое мнение об этом).
Это сервис по автоматизации поиска ошибок в Java-сорцах.

Работает оно не как статический анализатор, а на базе AI. Таких сервисов не один и это довольно скользкий путь. Все же знают про garbage in - garbage out?

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

Прошел год и говорят, что AWS сделали CodeGuru для Python...
❤️
Почему стоит подумать про альтернативы для сбора метрик Прометеуса в го. Или просто подумать.

https://github.com/prometheus/client_golang/issues/822

(альтернатива это VictoriaMetrics/metrics конечно же, хз есть ли другие)
Надо ли мониторить и исследовать этику в ИИ ? (понимайте как хотите)

(очередной скандал в гугле, но вопрос интересный по себе, а толстота в коментах будет выжжена)
Anonymous Poll
49%
да
27%
не
25%
хз
Пью чай, слушаю умного Блоу и все больше и больше ощущаю, что говорящий "переизобретает" Go.

Нет-нет, не в понятиях фич языка, скорее философии. Про модули, про поддержку, про повторяемость результатов (reproducible builds которые), про то, что хорошо бы уметь запускать свой код через 10-20 лет.

Конечно же не все слово в слово, но вот как бы идеи прям трутся щечками друг о друга. Не думаю, что это плохо, но скорее это показатель того, что от прошлых (10-20-30 летних) устоев надо со временем отказываться. Хотя есть проверенные, от которых и не надо. YMMV хех
Если вы еще молоды и пишете матан временами, то стоит ознакомиться с советами, как правильно писать мат. нотации. Другими словами handwriting FiraCode :D

TLDR в пикче, остальное — комментарии. Иди и учись. (с) Гиллель

http://www.johnkerl.org/doc/ortho/ortho.html

❤️ https://github.com/tonsky/FiraCode
Turkey test вашего кода. Я думал дело в индейке, но оказывается в турецкой локализации. Ну и любимом юникоде.

Большинство проблем юзер-инпут скорее всего можно решить жестким требованием формата. Как один из жизненных примеров: требовать отдельно код страны и сам номер, а не 1 поле (в принципе с адресом тож самое).

Но и этого может быть недостаточно. И все же придется тестировать :(

http://www.moserware.com/2008/02/does-your-code-pass-turkey-test.html

Еще меня напрягает наличие i18n в сравнении строк в .net, такое предчувствие, что кто-то писал спецификацию к Вселенной, что по себе глупо и не герметично(я о текущих абстракциях). Мнения есть?