Size: a a a

Go (Golang) Дайджест

2020 January 14
Go (Golang) Дайджест
Тулза для континиус бенчмаркинга ваших бинарничков. 🤓

https://github.com/knqyf263/cob
источник
Go (Golang) Дайджест
Тем временем распределенная база rqlite, основанная на базе sqlite, достигла версии 5.1.0

https://github.com/rqlite/rqlite/releases/tag/v5.1.0
источник
Go (Golang) Дайджест
О, а вот о нагрузочном тестировании давно ничего не было слышно, но вот есть кое-что.

https://github.com/rogerwelin/cassowary
источник
2020 January 15
Go (Golang) Дайджест
Сейчас всем, к сожалению 😞, приходится работать Kubernetes. Вот вам списочек с продакшн бест практиками. 😗
Попытайтесь выполнить их для успешной жизни вашего приложения. 😜

https://learnk8s.io/production-best-practices
источник
2020 January 16
Go (Golang) Дайджест
Чуваки из JetBrains сделали свой шрифт. 🤓

https://www.jetbrains.com/lp/mono
источник
Go (Golang) Дайджест
Смотрите! 👀 Канкаренси в действии. 😸😹

https://www.reddit.com/r/gifs/comments/ep9nah/a_marmot_is_basically_a_bro_trapped_in_a_gopher
источник
Go (Golang) Дайджест
Зарелизили новую версию версию gojsonq - квери поверх json. 🙂

https://github.com/thedevsaddam/gojsonq
источник
2020 January 17
Go (Golang) Дайджест
Отличный материал про хендлинг UDP в Go. 🤓

https://ops.tips/blog/udp-client-and-server-in-go/#receiving-from-a-udp-connection-in-a-server
источник
2020 January 18
Go (Golang) Дайджест
Хо хо, автор популярного web фреймворка на Rust - Actix-web, забил на проект, из-за давления комьюнити.  😖😟

Такие ситуации свидетельствуют о не зрелом комьюнити, в котором не умеют находить компромис. 🤝

Я не понимаю срача. 🤷‍♂️🤷‍♀️
Не хочешь использовать unsafe - сделай пул реквест и предложи изменение.
Не приняли? Ну тогда не используй библиотеку, напиши свою, без unsafe.

Хорошие инженеры должны уметь видеть плюсы и минусы каждого используемого решения или библиотеки.

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

https://words.steveklabnik.com/a-sad-day-for-rust

https://raphlinus.github.io/rust/2020/01/18/soundness-pledge.html
источник
2020 January 20
Go (Golang) Дайджест
Вот тут бесплатно раздают курс по алгоритмам в Go. 😼

https://algorithmswithgo.com/
источник
Go (Golang) Дайджест
А вот тут канал с квизами по Go 😼

https://t.me/golangquiz
источник
Go (Golang) Дайджест
Fiber - еще один web фреймворк, вдохновленный семантикой Express.js, использующий под капотом fasthttp. Бенчмарки сразу на видном месте. 🤦‍♂️

https://github.com/gofiber/fiber
источник
2020 January 22
Go (Golang) Дайджест
Ребят, зацените 😲, @x1unix сделал альтернативу Go Playground! Выглядит очень круто! 👍 Поддержите звездочкой! ⭐️

URL: http://goplay.x1unix.com
GitHub: https://github.com/x1unix/go-playground
источник
2020 January 23
Go (Golang) Дайджест
Благодаря новым оптимизациям, компилятор 🤖 будет инлайнить вызовы defer, но только в статических случаях, например вызов defer в цикле останется без инлайнинга. 🤓

Смотрим пропоузал:
https://github.com/golang/proposal/blob/master/design/34481-opencoded-defers.md
источник
Go (Golang) Дайджест
А вот более простыми словами, от JBD. 😜

https://rakyll.org/inlined-defers
источник
Go (Golang) Дайджест
А у ребят недавно вышел свежий выпуск подкаста. 🥳
источник
Go (Golang) Дайджест
Богдан, Олег и Искандер опять собрались поговорить.

https://soundcloud.com/generictalks/0007-vashi-benchmarki-skoree-vsego-nichego-ne-znachat

Хотим напомнить, что лента подкаста находится в Телеграме, как и чат, где можно добавить вопросы и набросы: t.me/generictalks (инвайт в чат в описании)

00:00:00 - Посчитать размер объекта в Go. Что может быть проще? Зачем вообще это делать?
00:12:22 - Как ограничивают память другие известные проекты на Go. Разбираем подходы.
00:17:00 - Как понять что мы достигли предела по оптимизациям и пора внедрять другие подходы. Шипилев и его график)
00:20:22 - В бар заходит Искандер. Unsafe.Sizeof и отдельный пропозал.
00:29:40 - Рекурсивный обход структур в хипе для расчета размера, потенциальные использования рантайма и сборщика мусора.
00:33:46 - Как возможность расчета размеров в рантайме может открыть возможность для других оптимизаций.
00:47:11 - Pluggable GC в Go стоит ли форкать стандартный компилятор и рантайм?
00:50:11 - Говяжий язык. Beef - шаг вперед или очередной велосипед?
01:02:30 - Actix-web - open source, восприятие критики и мнения которые ничего не значат.
01:13:03 - Spinlock vs Mutex почему все так получилось? Почему так сложно правильно бенчмаркать?
01:24:00 - Erlang vs Go vs Java vs NodeJS бенчмарк серверов который не смог. Как сделать adaptive capacity limiter вручную для того чтобы выровнять latency. Говорим о том как анализировать результаты бенчмарков, делать выводы и проверять гипотезы.
01:37:25 - Затравочка будущих выпусков
источник
Go (Golang) Дайджест
Маленькая либка для парсинга yaml-конфиг файлов. 😏

https://github.com/kkyr/fig
источник
2020 January 25
Go (Golang) Дайджест
Библиотека 📚 для подсчета статистики. API простой и удобный. 📊📈

https://github.com/montanaflynn/stats
источник
Go (Golang) Дайджест
Ну а Джон Калхаунд запустил курс по алгоритмам на Go. 🧐

https://algorithmswithgo.com
источник