Size: a a a

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

2018 April 30
Go (Golang) Дайджест
Если кто знаком с "удивительным" миром PHP 🤢, то возможно вы знаете, что в Laravel есть вполне неплохой реквест валидатор.
Собственно что-то похожее запилили для Go. Можно легко завернуть в мидлверчик.
https://github.com/thedevsaddam/govalidator
источник
Go (Golang) Дайджест
Шарился я тут по блогу Вильяма Кенеди, и наткнулся на хорошую статью, которая посвящена тому, как читать стек трейсы. 📚🤓
Все ви видели вот такие замечательные строчки:

main.Example(0x2080c3f50, 0x2, 0x4, 0x425c0, 0x5, 0xa)

Но все ли вы знаете что они означают? 😦
https://www.ardanlabs.com/blog/2015/01/stack-traces-in-go.html
источник
Go (Golang) Дайджест
Совсем недавно я писал про ресурс бандлинг библиотеку parcello. 📦
Спасибо читателю @favoretti, который подкинул еще пару ссылок, и тему бандлеров я решил поинвестигейтить немного детальней. И вот сегодня наткнулся на статью с хорошим сравнением подобных библиотек.
http://tech.townsourced.com/post/embedding-static-files-in-go/
источник
2018 May 01
Go (Golang) Дайджест
Эй, пираты ☠️🤟
Вышла новая версия GoLand 2018.1.2 🎉🤩
https://blog.jetbrains.com/go/2018/04/27/goland-2018-1-2-is-out/
источник
2018 May 02
Go (Golang) Дайджест
Юхххххху! 🎉👏 Вышел новый релиз Go 1.10.2 и 1.9.6 😍
Изменения минорные, в основном мелкие багфиксы.
https://golang.org/doc/devel/release.html#go1.10.minor
источник
Go (Golang) Дайджест
Также рад сообщить, что вчера вышел новый JustForFunc #33, в котором Франциск рассказывает про протокол под названием CORBA, который уже давно забыт. 😒

❗️❗️❗️Спойлер: этот выпуск посвящен просто истории протокола, и ничего про Go там не рассказывают. 😢
https://youtu.be/zgSZNCltUD0
источник
Go (Golang) Дайджест
Маленький очерк про часто допускаемые ошибки при работе с канкаренси. 🤓
https://go101.org/article/concurrent-common-mistakes.html
источник
Go (Golang) Дайджест
Писать cliшки на Go очень просто, быстро, весело. 🤓
Иногда они приносят пользу и часто используются, иногда мы пишем их просто ради фана.
Эта статья как раз об этом. 👇
https://blog.carlmjohnson.net/post/2018/go-cli-tools/
источник
Go (Golang) Дайджест
Немного о борьбе с мемори ликами 🤓
https://blog.cosmos.network/debugging-the-memory-leak-in-tendermint-210186711420
источник
2018 May 03
Go (Golang) Дайджест
Блинский, 🤦‍♂️ уже все написали про gVisor, а я нет. Ну короче, Google запилили изолированый рантайм для контейнеров. Все супер секьюрно, 👮‍♂️как утверждают умные мужы из корпорации. И конечно же соответствует всем стандартам OCI. Уже можно собрать и использовать с Docker. Уже доступен в качестве эксперементальных фич в k8s. И конечно же - написан на Go. 😉
https://github.com/google/gvisor
источник
Go (Golang) Дайджест
Хотите серверлес мап редьюс фреймворк на AWS Lambda? 😏 Конечно же, написано все на Go. ☺️ Встречайте - Corral
https://github.com/bcongdon/corral

А вот и блог пост о том, откуда и зачем все это.
https://benjamincongdon.me/blog/2018/05/02/Introducing-Corral-A-Serverless-MapReduce-Framework/
источник
2018 May 04
Go (Golang) Дайджест
Приветики. 🖖 Просыпаемся, 😴 идем за кофе. ☕️
Предлагаю прочитать за завтраком цикл из 3 статей, который посвящен исполнению Go кода очень маленьких железных девайсах.

👉 https://ziutek.github.io/2018/03/30/go_on_very_small_hardware.html

👉 https://ziutek.github.io/2018/04/14/go_on_very_small_hardware2.html

👉 https://ziutek.github.io/2018/05/03/go_on_very_small_hardware3.html
источник
2018 May 07
Go (Golang) Дайджест
Привет. 🖖
Ловите выступление Раса Кокса на GopherCon SG 2018.
Посвящено, конечно, версионированию зависимостей, vgo и всей депенденси менеджмент движухе. 📦
https://youtu.be/F8nrpe0XWRg
источник
2018 May 08
Go (Golang) Дайджест
Всем, кто пересел с JetBrains на VS Code, и кому так не хватало вьюшек со структурой функций.
Вот вам плагинчик. 😏✌️
https://marketplace.visualstudio.com/items?itemName=766b.go-outliner
источник
Go (Golang) Дайджест
Недавно вышел новый выпуск подкаста Go Time – Episode #79 🎉👍 В нем Стив Франчия, известный как spf13, раскажет нам о новом брендинге Go.
https://changelog.com/gotime/79
источник
2018 May 10
Go (Golang) Дайджест
Мэт Раяр, пацан, написавший Go programming blueprints, делится опытом, как писать APIшки, которые он пишет уже 7 лет. 😒
https://medium.com/@matryer/how-i-write-go-http-services-after-seven-years-37c208122831
источник
Go (Golang) Дайджест
Хотел бы поделится с вами постом отличного инженера. 👨‍🔧 devopsfactors - плод труда многих крутых пацанов. Добавте себе в закладочки, лишним не будет. ☺️
источник
Go (Golang) Дайджест
Что делать? Как правильно поступить? DevOps Factors 😱

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

Нигде нету готового пресета, по которому можно было следовать, и говорить - это ок, а это такое себе. А это - вообще очень плохо. 🤓

Определенный промежуток времени, особенно вначале карьеры, эту функцию лично для меня выполнял Джез Хамбл и его библия “Непрерывное развертывание ПО”.  😎

Как должен выглядеть CI процесс? Должен ли он делать гит пулл на конечных серверах? Или передавать готовые артефакты? Какой процесс деплоя оптимален? Сколько времени максимум может занимать сборка приложения?

Это все простые вопросы, и ответы на них есть в книге. Где-то очевидно и прямо, где-то между строк.

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

Еще очень сильно вымораживало то, что подобные наборы рекомендаций есть почти у всех кроме нас. У Scrum методологии - скрам гайд, у программистов - 12 factor app:

https://www.scrumguides.org/
https://12factor.net/ru/

А у нас нету такой штуки. Казалось бы - методология, у которой нету рекомендаций. Как хочешь - так и делай.

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

Это переросло в 10 пунктов, которые мы с ребятами из UkrOps очень детально проработали и описали.

На данный момент это выглядит вот так:
https://github.com/Mykolaichenko/devopsfactors

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

А пока предлагаю Вам посмотреть на эту выжимку,  если поддерживаете - звезду на гитхабе и лайк, если нет - форкайте и предлагайте правки 😂
источник
Go (Golang) Дайджест
Миллионеры меряются крутыми тачками, 🚗💎💵 а Go кодеры 👨‍💻👩‍💻 - бенчмарками. Такое чувство, что для того что бы приуспеть в Go комьюнити, и стать крутым оупенсорс штрихом, нужно написать логер, который будет валить быстрее чем Усейн Болт ⚡️🏃🏿‍♂️ стометровку, при это оставлять полние ничего сборщику мусора. И знаете что? 🤨 Это таки круто. 🤓

Встречайте очередной логер - onelog. Автор заявляет что он быстрее Zap от Uber и Zerolog Оливера Поэтри из Netflix
https://github.com/francoispqt/onelog
источник
Go (Golang) Дайджест
Майк Джулиан, автор довольно известного в DevOps кругах дайджеста Monitoring Weekly, утверждает, что распределенный трейсинг это просто гора. 💩
Ну, наверное, у него есть на то свои причины. 🤷‍♂️ Но даже он не смог удержатся от своеобразного комплимента в сторону улучшеного трейсинга в Go 1.11 😏 о котором писала JDB.
https://medium.com/observability/debugging-latency-in-go-1-11-9f97a7910d68
источник