Designing a composable rate limiter
https://clipperhouse.com/composable-rate-limiter/
Having used rate limiters a few times, I’ve observed that they must be thoughtfully designed. In particular, they are typically comprised of several policies which we wish to stack on one another. It can get messy.
So I decided to design a rate limiter that emphasizes composability, which I define as having the right primitives, where one can express arbitrary policies, and which can be combined in a way that is easy to reason about.
https://clipperhouse.com/composable-rate-limiter/
BillionMail
https://github.com/aaPanel/BillionMail
BillionMail is a future open-source Mail server, Email marketing platform designed to help businesses and individuals manage their email campaigns with ease. Whether you're sending newsletters, promotional emails, or transactional messages, this tool will provide full control over your email marketing efforts. With features like advanced analytics, and customer management, you'll be able to create, send, and track emails like a pro.
https://github.com/aaPanel/BillionMail
🚀 Хотите ускорить обработку во Flutter-приложениях, вынеся тяжёлые задачи на C, Rust или Go?
Приходите на открытый вебинар «Запускаем код C, Rust или Go через FFI» 6 августа в 20:00 МСК. На уроке мы покажем:
- Как написать простую функцию на C, Rust и Go и вызвать её из консольного Dart-приложения.
- Как интегрировать эту же функцию во Flutter-приложение.
- Работу со сторонними библиотеками и нюансы FFI-плагина.
- Примеры Makefile для автоматизации сборки под разные архитектуры.
❗️ Вы научитесь компилировать C/Rust/Go-бинарники, вызывать их из Flutter и создавать скрипты сборки. Всё это — надёжный способ оптимизировать обработку изображений, криптографию и другие ресурсоёмкие операции.
Этот урок проходит в преддверии старта курса «Flutter Mobile Developer» от OTUS. 🔥 Все участники получат записи трех прошлых уроков!
👉 Регистрация открыта: https://vk.cc/cOakBW
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru, erid: 2VtzqvxzuPE
Приходите на открытый вебинар «Запускаем код C, Rust или Go через FFI» 6 августа в 20:00 МСК. На уроке мы покажем:
- Как написать простую функцию на C, Rust и Go и вызвать её из консольного Dart-приложения.
- Как интегрировать эту же функцию во Flutter-приложение.
- Работу со сторонними библиотеками и нюансы FFI-плагина.
- Примеры Makefile для автоматизации сборки под разные архитектуры.
❗️ Вы научитесь компилировать C/Rust/Go-бинарники, вызывать их из Flutter и создавать скрипты сборки. Всё это — надёжный способ оптимизировать обработку изображений, криптографию и другие ресурсоёмкие операции.
Этот урок проходит в преддверии старта курса «Flutter Mobile Developer» от OTUS. 🔥 Все участники получат записи трех прошлых уроков!
👉 Регистрация открыта: https://vk.cc/cOakBW
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru, erid: 2VtzqvxzuPE
Scaling gRPC With Kubernetes (Using Go)
https://nyadgar.com/posts/scaling-grpc-with-kubernetes-using-go
https://nyadgar.com/posts/scaling-grpc-with-kubernetes-using-go
crush
https://github.com/charmbracelet/crush
The glamourous AI coding agent for your favourite terminal
https://github.com/charmbracelet/crush
ch.at
https://github.com/Deep-ai-inc/ch.at
A lightweight language model chat service accessible through HTTP, SSH, DNS, and API. One binary, no JavaScript, no tracking.
# Web (no JavaScript)
open https://ch.at
# Terminal
curl ch.at/?q=hello # Streams response with curl's default buffering
curl -N ch.at/?q=hello # Streams response without buffering (smoother)
curl ch.at/what-is-rust # Path-based (cleaner URLs, hyphens become spaces)
ssh ch.at
# DNS tunneling
dig @ch.at "what-is-2+2" TXT
# API (OpenAI-compatible)
curl ch.at/v1/chat/completions
https://github.com/Deep-ai-inc/ch.at
sentinel
https://github.com/sxwebdev/sentinel
Multi-protocol service monitoring system with real-time alerts and web dashboard. Supports HTTP/HTTPS, TCP and gRPC monitoring with Telegram notifications.
https://github.com/sxwebdev/sentinel
🔎 Ищете способы улучшить работу с данными в Go?
На открытом вебинаре разберемся, как использовать итераторы для работы с большими данными. Поймем, что изменилось с Go 1.23 и какие преимущества дают ленивые итераторы.
❗️ Изучите, как заменить стандартные циклы на более эффективные итераторы и оптимизировать свой код. Освойте лучшие практики разработки на Go!
Присоединяйтесь к открытому уроку 19 августа в 20:00 МСК: https://vk.cc/cOxPmy
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru, erid: 2Vtzqw9pLjB
На открытом вебинаре разберемся, как использовать итераторы для работы с большими данными. Поймем, что изменилось с Go 1.23 и какие преимущества дают ленивые итераторы.
❗️ Изучите, как заменить стандартные циклы на более эффективные итераторы и оптимизировать свой код. Освойте лучшие практики разработки на Go!
Присоединяйтесь к открытому уроку 19 августа в 20:00 МСК: https://vk.cc/cOxPmy
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru, erid: 2Vtzqw9pLjB
Be Careful with Go Struct Embedding
https://mattjhall.co.uk/posts/be-careful-with-go-struct-embedding.html
https://mattjhall.co.uk/posts/be-careful-with-go-struct-embedding.html
«System Design — как темный лес. Go — вроде бы знаю, но знания поверхностные. А собеседование снова провавил на задаче по concurrency»
Знакомо?
Даже у разработчиков с 2-5 годами опыта остаются такие пробелы, которые мешают чувствовать уверенность:
– знаю много паттернов и приемов, но не знаю где и когда их применять;
– на System Design интервью не получается спроектировать систему за час;
– кажется, что понимаю Go, но только до тех пор, пока не столкнусь с задачами на собеседованиях.
🎓 В телеграм-канале Балун Владимир есть материалы, которые помогают прокачать Go и подготовиться к собеседованиям — без воды и пересказов статей из интернета.
1⃣ Технические разборы:
– Итераторы в Golang
– Паттерны использования каналов в Go
– Внутреннее устройство аллокатора Go
– Внутреннее устройство мьютексов в Go и Linux
2⃣ Подготовка к собеседованиям:
– Concurrency задачи с Go собеседований
– Решение сложных задач с Go собеседований
– Как подготовиться к System Design интервью
3⃣ Карьера и опыт:
– Особенности Golang
– Карьера программиста в BigTech
– Путь от джуна до тимлида Яндекса
Если хочется разобраться в Go глубже, научиться объяснять сложные вещи и уверенно проходить собеседования — канал точно пригодится.
Автор канала - Владимир Балун. Разрабатывал высоконагруженные сервисы на С++ и Go в Тинькофф, Mail.ru и Ozon. Руководил командой распределенной трассировки запросов в Яндексе (11GB/s трафик) и провел больше ста технических интервью в разных компаниях. Сейчас создает образовательные проекты и делится опытом в телеграме.
Канал открыт. Без флуда. Только польза.
➡ Подписаться
Реклама. ИП Балун Владимир Николаевич, ИНН: 610111147548, erid: 2Vtzqv8938d
Знакомо?
Даже у разработчиков с 2-5 годами опыта остаются такие пробелы, которые мешают чувствовать уверенность:
– знаю много паттернов и приемов, но не знаю где и когда их применять;
– на System Design интервью не получается спроектировать систему за час;
– кажется, что понимаю Go, но только до тех пор, пока не столкнусь с задачами на собеседованиях.
– Итераторы в Golang
– Паттерны использования каналов в Go
– Внутреннее устройство аллокатора Go
– Внутреннее устройство мьютексов в Go и Linux
– Concurrency задачи с Go собеседований
– Решение сложных задач с Go собеседований
– Как подготовиться к System Design интервью
– Особенности Golang
– Карьера программиста в BigTech
– Путь от джуна до тимлида Яндекса
Если хочется разобраться в Go глубже, научиться объяснять сложные вещи и уверенно проходить собеседования — канал точно пригодится.
Автор канала - Владимир Балун. Разрабатывал высоконагруженные сервисы на С++ и Go в Тинькофф, Mail.ru и Ozon. Руководил командой распределенной трассировки запросов в Яндексе (11GB/s трафик) и провел больше ста технических интервью в разных компаниях. Сейчас создает образовательные проекты и делится опытом в телеграме.
Канал открыт. Без флуда. Только польза.
Реклама. ИП Балун Владимир Николаевич, ИНН: 610111147548, erid: 2Vtzqv8938d
Please open Telegram to view this post
VIEW IN TELEGRAM
Maybe the Fastest Disk Usage Program on macOS
https://healeycodes.com/maybe-the-fastest-disk-usage-program-on-macos
https://healeycodes.com/maybe-the-fastest-disk-usage-program-on-macos
Understanding reading all available things from a Go channel (with a timeout)
https://utcc.utoronto.ca/~cks/space/blog/programming/GoReadAllFromChannelWithTimeout
https://utcc.utoronto.ca/~cks/space/blog/programming/GoReadAllFromChannelWithTimeout
statsviz
https://github.com/arl/statsviz
Visualize real time plots of your Go program runtime metrics, including heap, objects, goroutines, GC pauses, scheduler and more, in your browser.
https://github.com/arl/statsviz
treeview
https://github.com/Digital-Shane/treeview
TreeView is a feature-rich Go library for displaying and navigating tree structures in the terminal. TreeView has full Bubble Tea and Lipgloss support, allowing you to build glamorous, interactive terminal applications.
https://github.com/Digital-Shane/treeview
dwarfreflect
https://github.com/matteo-grella/dwarfreflect
Enhanced reflection for Go using DWARF debug information to extract function parameter names, enabling automatic struct generation and semantic function calls.
https://github.com/matteo-grella/dwarfreflect
cors
https://github.com/jub0bs/cors
A principled CORS middleware library for Go, designed to be both easier to use and harder to misuse than existing alternatives.
https://github.com/jub0bs/cors
stormy
https://github.com/ashish0kumar/stormy
Minimal, customizable, and neofetch-like weather CLI inspired by rainy, written in Go
https://github.com/ashish0kumar/stormy