Size: a a a

2019 August 09
oleg_log
о этот насыщенный гигабайтами жава-мир
(это кеши зависимостей на Трависе для maven & gradle)
источник
oleg_log
Во-первых это красиво...правда это не спасает от уголовной ответственности https://docs.perl6.org/type/atomicint#Operators

В коментах всплыл scalaz https://gist.github.com/folone/6089236
источник
oleg_log
и чуток истории от Вьюкова о го
источник
oleg_log
Еще советую пролистать Internal Architecture of Delve. Низкоуровневые вещи, но полезно.
https://speakerdeck.com/aarzilli/internal-architecture-of-delve #go
источник
oleg_log
Слайды моего доклада “Advanced debugging techniques in different environments” на Kyiv Go Meetup July 2019:

- демо проект link
- слайды файлом link
- slideshare link

Вопросы пиши в личку: @a_soldatenko
источник
oleg_log
источник
2019 August 10
oleg_log
Junior team lead это когда в экселе отчёты писать уже надо, а в баню с остальным начальством ещё не зовут
(c) анон
источник
oleg_log
Довольно неплохой разбор того, как нанимать джунов. Есть некоторые вещи для дебатов, но не помню похожих статей. Пожалуй пригодится.

https://habr.com/ru/company/wrike/blog/462787/
источник
oleg_log
В обновлением документа о генериках и конрактах все часто ссылаются на этот пост, о том что это плохо и ой выкиньте.
(сама статья https://ericgreer.info/post/my-case-against-go-contracts/)

Ну давай разберем по частям, тобою написанное ))

— Highly Variable Function Signtures
Приводится 3 фции...
func One(x string, b bool)(err error) 
func Two(type T)(x string, y T) error
func Three(x string)(bool, error)

А ведь люди с питона и джавы перешли, начали писать типы или имя параметра перед типом. Некоторые тоже жаловались.

Вот только что сложного? Мыж нормально читаем вот такое, почему никто не возмущается, что много скобочек?
func (m *Moo) Four(x string) (int, error)

— Too Similar to Interfaces
Привет duck-typing :) Только интерфейсы про реализацию, а конракты про тип. И похожи они будут из-за всего дизайна Го: для реализации интерфейса(конракта?) не надо будет это тащить в зависимости (для реалзации io.Reader не надо импоритть io)

— Function Signature Bloat
Теплое с мягким. Предлагается новый инструмент для написания кода, а люди хотят это zero-cost abst...в общем без изменений кода. Немного нагло звучит. Да, дженерики нужны, без них жить можно, это не противоречие.

func (c *Car) Drive(type T1 selfDriving, type T2 autoNavigation)(directions Directions, drivingCPU []T1, navigationCPU []T2) (t *Trip, err error) {}

func (c *Car) Drive(directions Directions, drivingCPU []T1, navigationCPU []T2) (t *Trip, err error) {}

Для меня эти 2 варината одинаково тяжело читаются. Ой..

— The Proposal is Huge
Без примеров статья будет меньше, а так, кстати, неплохо разжована и сравнение хорошее.

"Понравившиеся" фразы:
— Big function signatures increse cogntitive overhead and make us worse programmers.
ок, а в чем проблема с дженериками? Все оставшиеся фции останутся как были. Кстати, причем большая фция к большому(?) описанию? Так и документацию можно начать ругать, ведь в коде все написано.

— Let’s not forget that a contract also has a spec that you have to click into and understand.
ну так у Го и без конрактов есть спека))0))0))
источник
oleg_log
Надо ли "лонгриды" как выше выносить в бложек?
Анонимный опрос
14%
Да
11%
Да, на Medium
13%
Да, на личный (olegk.dev)
28%
Да, на телеграф
33%
Не, и так норм
0%
Другое? @olegkovalov
Проголосовало: 410
источник
oleg_log
Да, Медиум давно зашкварился с платной подпиской за бесплатные(лол) посты. Понять их можно, но удобств это не приносит. Да и интерфейс далеко не лучший.

Но многих бесит эта всплывающая штука: вы слишком много начитали, сходите за подпиской.

Если что, в инкогнито её нет, точнее её можно закрыть, кэк
источник
oleg_log
Во-перых, Bypass Paywalls, во-вторых Unpaywall
источник
oleg_log
Golden ratio saves, again.

(всегда множил на 1.5-1.6 и хватало)
https://twitter.com/TamasGorbe/status/1158348261683605504
источник
oleg_log
Oh that’s deep
источник
oleg_log
источник
2019 August 11
oleg_log
Laws, Theories, Principles and Patterns that developers will find useful.

Хорошее воскресное чтиво, не знал про Putt's Law. Короч советую ознакомиться.

https://github.com/dwmkerr/hacker-laws
источник
oleg_log
Как-то с лет 10(мож чуть меньше) смотрел выступление Александра Степанова, автора C++ STL, в Яндексе.

Кроме хороших мыслей и баек о computer science, он упомянул интересную вещь из жизни: большинство чисел, которые будут у вас в коде это 0, 1, 2.

А ведь действительно:
0: 1й элемент массива, просто начать итерацию по списку, сравнить на пустоту.
1: проверить что в списке 1 элемент, предпоследний, то длина-1
2: поделить на 2 во всяких divide & conquer, всякие масочки или бинарные штуки (хм, а больше я и не могу ща вспомнить).

Все же случаи, когда вам, к примеру, понадобится 17 - мало, хоть и число Ферма. Такие вот дела.

Внимание математика и давнее качество, возможен ушиб чувств.
Часть 1 https://youtu.be/QmuMHtbO4ug
Часть 2 https://youtu.be/uCGifwlgAQg
источник
2019 August 12
oleg_log
Вау, оказывается есть общие(?) хоткеи для навигации по командной строке. Некоторые в моем iTerm даже работают. Дадада, я не знал. (Спасибо подписчику :)
источник
oleg_log
Еще советуют глянуть .inputrc и настройки iTerm (если в Preferences->Profiles->Keys->Option Key->Esc+ поставить, то все будут работать (c) )

UPD и статью habr.com/ru/post/425137/

UBER-UPD: оно в нативных аппках на макоси должно работать (спасибо Михаилу)
источник
oleg_log
Ориджинал от @oleg_log <3
источник