4gophers
3.52K subscribers
526 photos
4 videos
1.55K links
Язык программирования Go. Больше новостей про разработку тут https://kodikapusta.ru/

Реклама https://kodikapusta.ru/ads
Download Telegram
Forwarded from Код и Капуста
Ecoji 2.0 - тулза для кодирования данных в емоджи и обратно. Ну а почему нет?

Попробуйте как работает, есть время пока @sndkgram не запостил новую серию.

#golang

https://github.com/keith-turner/ecoji
Forwarded from Код и Капуста
Лучший #golang фреймворк - отсутствие фреймворка. Так считает автор статьи. А использование фреймворков - это создане монстра франкенштейна из подручных материалов.

https://threedots.tech/post/best-go-framework/
Forwarded from Код и Капуста
Наткнулся на статью о использовании Server Sent Events(SSE) в shopify. Как то не заморачивался раньше этой технологией - есть веб-сокеты и точка. Но если нужны только события от сервера, то стоит присмотреться.

Статья от shopify про SSE сервер на #golang https://shopify.engineering/server-sent-events-data-streaming

Дока по SSE в браузере https://developer.mozilla.org/en-US/docs/Web/API/Server-sent_events

И пара статей по использованию SSE в #android
- один https://proandroiddev.com/unidirectional-server-client-communication-using-sse-in-android-79b825aa0670
- два https://medium.com/@manoel.al.amaro/understand-kotlin-flow-coroutines-by-implementing-server-side-sent-sse-9e190ff5f24f
Forwarded from Код и Капуста
в #golang 1.20 появится возможность врапить несколько ошибок в одну. Может быть полезно для валидации в апишке, например.

https://lukas.zapletalovi.com/posts/2022/wrapping-multiple-errors/
Forwarded from Код и Капуста
Небольшой лайфхак как улучшить table tests в #golang

https://arslan.io/2022/12/04/functional-table-driven-tests-in-go/
Forwarded from Код и Капуста
Детективная история про криворуких хакеров.

Все уже давно используют #golang для написания малвари. Удобный и простой язык. На нем написали KmsdBot - стильный и молодежный криптоботнет.

Но какой приличный хакер будет проверять ошибки ввода? Ошибки - это возможность.

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

Галя, у нас отмена!

Статья про креш https://www.akamai.com/blog/security-research/kmsdbot-part-two-crashing-a-botnet

И статья про сам ботнет https://www.akamai.com/blog/security-research/kmdsbot-the-attack-and-mine-malware
Forwarded from Код и Капуста
Статья “A Guide to the Terminal, Console, and Shell”

Прям исторический очерк про терминал, шел и все все все

https://thevaluable.dev/guide-terminal-shell-console/
Forwarded from Код и Капуста
Авторизация для API через опу(Open Policy Agent) для #golang

“Go API authorization made simple”

https://medium.com/@mjoffre/go-api-authorization-made-simple-9ee65d23a2b3
Forwarded from Код и Капуста
Pushup - веб-фреймворк, который позволяет совмещать #golang код и html в одном файле

Когда упопролся и написал php на Go

https://pushup.adhoc.dev/
Forwarded from Код и Капуста
Игрушечный компилятор на #golang и llvm

Компилировать будем brainfuck. Golang тут будет работать как фронтенд для компилятора

https://ketansingh.me/posts/toy-compiler-with-llvm-and-go/
Forwarded from Код и Капуста
conc - позиционирется как “better structured concurrency for go”

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

#golang

https://github.com/sourcegraph/conc
Forwarded from Код и Капуста
Пред рождественская лекция по алгоритмам от Кнута

Don Knuth - Twintrees, Baxter Permutations, and Floorplans

Посмотрите как дед деревья врашает

https://www.youtube.com/watch?v=zg6YRqT4Duo
Forwarded from Код и Капуста
#golang версия 1.20 уже не за горами. Смотрим что нового нас ждет

https://blog.carlmjohnson.net/post/2023/golang-120-language-changes/
Forwarded from Код и Капуста
Пример встраивания react интерфейса в #golang бинарь

https://www.flipt.io/blog/embedding-react-in-go
Forwarded from Код и Капуста
Статья про написание игрушечного редиса на #golang

В статье нет ничего нового, но всегда полезно освежить знания по работе с TCP

https://blog.pjam.me/posts/toy-redis-go/
Forwarded from Код и Капуста
Статья обмазана джаваскриптом, но посыл правильный - автоматизируйте все что можно. И автоматизация должна быть понятна даже дураку

Fake it until you automate it

https://understandlegacycode.com/blog/fake-it-until-you-automate-it/

Кстати, для себя нашел два инструмента для автоматизации рутинных задач в своих проектах:

Task - замена make но на yaml. У меня не сложилось с make, я его терпеть не могу. И task просто спасение https://taskfile.dev/

Sup - очень простой инструмент для деплоя, когда лень настраивать плейбуки ансибла https://pressly.github.io/sup/

И оба инструмента на #golang
Forwarded from Код и Капуста
Большущая статья про то, как нужно писать библиотеки на #golang

Обязательно к прочтению

https://abhinavg.net/2022/12/06/designing-go-libraries/
Forwarded from Код и Капуста
Вторая статья про новинки в #golang 1.20. Тут уже и про арены

https://blog.carlmjohnson.net/post/2023/golang-120-arenas-errors-responsecontroller/
Forwarded from Код и Капуста
GoReplay - тулза на #golang для дублирования реального трафика на тестовое окружение

https://github.com/buger/goreplay
Forwarded from Код и Капуста
Еще одна статья про дженерики в #golang. Самое время взять и разобраться

И сказать себе, что код

func ProcessCommands[T Calculator[T, V], V any](calc Calculator[T, V], commands ...Command[T, V]) Calculator[T, V] {
// ...
}

func ProcessCommands[T any, V any](calc Calculator[T, V], cast func(*T) Calculator[T, V], commands ...Command[V]) Calculator[T, V] {
// ...
}

это нормально

Ведь нормально, да?

https://habr.com/ru/post/709438/