Митап для Go-разработчиков от МТС
11 сентября | 19:00
Офлайн в Москве | Онлайн
О чем поговорим:
🔹LLM для конкурентного Go кода;
🔹WaitGroup Pitfalls;
🔹Эффективное использование sync.Map в Go;
🔹Разработка Cloud Controller Manager: интеграция Kubernetes с облаком MWS.
Воркшоп, доклады и нетворкинг на баскетбольной арене.
Присоединяйся! Для участия зарегистрируйся по ссылке.
11 сентября | 19:00
Офлайн в Москве | Онлайн
О чем поговорим:
🔹LLM для конкурентного Go кода;
🔹WaitGroup Pitfalls;
🔹Эффективное использование sync.Map в Go;
🔹Разработка Cloud Controller Manager: интеграция Kubernetes с облаком MWS.
Воркшоп, доклады и нетворкинг на баскетбольной арене.
Присоединяйся! Для участия зарегистрируйся по ссылке.
❤11
📂 filesql — SQL для ваших файлов прямо в Go
Хотите писать SQL-запросы к CSV, TSV или LTSV без лишней возни? 🚀
Инструмент позволяет использовать привычный синтаксис SQLite прямо поверх файлов — даже сжатых (.gz, .bz2, .xz, .zst).
✨ Основные фишки:
🟢 Поддержка CSV / TSV / LTSV
🟢 JOIN между файлами и рекурсивный обход папок
🟢 Полный синтаксис SQLite: CTE, оконные функции, агрегаты
🟢 Безопасность: INSERT/UPDATE/DELETE работают только в памяти — исходники не трогаются
🟢 Экспорт изменений функцией DumpDatabase()
🛠 Пример кода на Go:
📦 Установка:
🔥 Идеально для быстрых аналитических задач, скриптов и прототипов — SQL-сила без базы данных!
▪ Github
@golang_google
Хотите писать SQL-запросы к CSV, TSV или LTSV без лишней возни? 🚀
Инструмент позволяет использовать привычный синтаксис SQLite прямо поверх файлов — даже сжатых (.gz, .bz2, .xz, .zst).
✨ Основные фишки:
🛠 Пример кода на Go:
db, _ := filesql.Open("data.csv")
rows, _ := db.Query("SELECT name, age FROM data WHERE age > 25 ORDER BY name")
defer rows.Close()
📦 Установка:
go get github.com/nao1215/filesql
🔥 Идеально для быстрых аналитических задач, скриптов и прототипов — SQL-сила без базы данных!
▪ Github
@golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤22🔥12👍10
Тест для Golang-разработчиков, проверьте свои знания, готовы ли вы к обучению на курсе.
💻 Ответьте на 20 вопросов за 30 минут и проверьте, готовы ли вы к обучению на онлайн-курсе «Golang Developer. Professional» от OTUS. Сейчас Go становится все востребованнее, благодаря своей производительности, масштабируемости и экосистеме.
После 5 месяцев обучения вы сможете:
— Писать production-ready код, многопоточные и конкурентные программы.
— Понимать синтаксис и внутреннее устройство языка Go.
— Разворачивать микросервисы с помощью Docker.
— Проектировать и реализовывать микросервисную архитектуру на Go.
Также вас ждет прокачка навыков на реальных коммерческих кейсах и под руководством экспертов в этой области. Возможна рассрочка.
👉 ПРОЙТИ ТЕСТ: https://otus.pw/jQx5Y/?erid=2W5zFJ5e6tQ
Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963.
💻 Ответьте на 20 вопросов за 30 минут и проверьте, готовы ли вы к обучению на онлайн-курсе «Golang Developer. Professional» от OTUS. Сейчас Go становится все востребованнее, благодаря своей производительности, масштабируемости и экосистеме.
После 5 месяцев обучения вы сможете:
— Писать production-ready код, многопоточные и конкурентные программы.
— Понимать синтаксис и внутреннее устройство языка Go.
— Разворачивать микросервисы с помощью Docker.
— Проектировать и реализовывать микросервисную архитектуру на Go.
Также вас ждет прокачка навыков на реальных коммерческих кейсах и под руководством экспертов в этой области. Возможна рассрочка.
👉 ПРОЙТИ ТЕСТ: https://otus.pw/jQx5Y/?erid=2W5zFJ5e6tQ
Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963.
😁6🤬3❤2🤯2
🔥 Упрощение DLL-хайкинга с DllShimmer
DllShimmer позволяет легко добавлять код в экспортируемые функции DLL без нарушения работы программы. Он генерирует C++ и DEF файлы, которые обеспечивают корректное взаимодействие с оригинальной DLL, сохраняя ее структуру.
Экспортируемые функции DLL — это функции, которые библиотека DLL (Dynamic Link Library) делает доступными для использования другими программами.
Когда вы пишете код вы можете собрать его не только в обычный исполняемый .exe, но и в динамическую библиотеку .dll. Такая библиотека хранит набор функций и данных, которые могут вызываться другими приложениями во время выполнения.
🚀Основные моменты:
- Простое создание прокси DLL для внедрения кода.
- Поддержка динамической и статической компоновки.
- Не требует реверс-инжиниринга.
- Сохраняет оригинальные имена и порядковые номера функций.
- Поддержка только x86-64 архитектуры.
📌 GitHub
@golang_google
#go
DllShimmer позволяет легко добавлять код в экспортируемые функции DLL без нарушения работы программы. Он генерирует C++ и DEF файлы, которые обеспечивают корректное взаимодействие с оригинальной DLL, сохраняя ее структуру.
Экспортируемые функции DLL — это функции, которые библиотека DLL (Dynamic Link Library) делает доступными для использования другими программами.
Когда вы пишете код вы можете собрать его не только в обычный исполняемый .exe, но и в динамическую библиотеку .dll. Такая библиотека хранит набор функций и данных, которые могут вызываться другими приложениями во время выполнения.
🚀Основные моменты:
- Простое создание прокси DLL для внедрения кода.
- Поддержка динамической и статической компоновки.
- Не требует реверс-инжиниринга.
- Сохраняет оригинальные имена и порядковые номера функций.
- Поддержка только x86-64 архитектуры.
📌 GitHub
@golang_google
#go
👍11❤6🔥3
Что нужно сделать первым делом, когда открыл офис в новом городе? Устроить вечеринку! 😀
Так поступили и Авито в Нижнем Новгороде — зовут инженеров 3 сентября на IT-квест по городу, который завершится вечеринкой с нетворкингом и Fuckup Night в секретном месте.
Пересылайте пост друзьям, с которыми пойдёте, и не забудьте зарегистрироваться по ссылке.
Так поступили и Авито в Нижнем Новгороде — зовут инженеров 3 сентября на IT-квест по городу, который завершится вечеринкой с нетворкингом и Fuckup Night в секретном месте.
Пересылайте пост друзьям, с которыми пойдёте, и не забудьте зарегистрироваться по ссылке.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤4🥰2
🧠 CasCache — CAS-безопасный кэш для Go с валидацией чтения и «bulk»-наборов
Что это
- Кэш «как CAS»: записи защищены поколениями (generation). Запись проходит только если поколение ключа не изменилось.
- Singles: никогда не вернёт «протухшее» значение; битые/чужого типа записи самовосстанавливаются (самоочистка).
- Bulk: кэширует набор ключей; при чтении каждый элемент сверяется с актуальным поколением — если хоть один устарел, весь набор отбрасывается и читается по одиночке.
- Подключаемые провайдеры значений: Ristretto / BigCache / Redis.
- Подключаемые кодеки: JSON/Msgpack/CBOR/Proto (можно навесить компрессию/шифрование).
- Distributed GenStore (опционально): хранит поколения в Redis для корректности между репликами и переживания рестартов.
Зачем это нужно
- Без «грязных» чтений при гонках читателя/писателя.
- Нулевая «write amplification» при чтении — валидация только на чтении.
- Гибкий выбор провайдера/кодека, можно начать локально и дорастить до кластера (с общим GenStore).
Быстрый старт
📌Репозиторий: github.com/unkn0wn-root/cascache
Что это
- Кэш «как CAS»: записи защищены поколениями (generation). Запись проходит только если поколение ключа не изменилось.
- Singles: никогда не вернёт «протухшее» значение; битые/чужого типа записи самовосстанавливаются (самоочистка).
- Bulk: кэширует набор ключей; при чтении каждый элемент сверяется с актуальным поколением — если хоть один устарел, весь набор отбрасывается и читается по одиночке.
- Подключаемые провайдеры значений: Ristretto / BigCache / Redis.
- Подключаемые кодеки: JSON/Msgpack/CBOR/Proto (можно навесить компрессию/шифрование).
- Distributed GenStore (опционально): хранит поколения в Redis для корректности между репликами и переживания рестартов.
Зачем это нужно
- Без «грязных» чтений при гонках читателя/писателя.
- Нулевая «write amplification» при чтении — валидация только на чтении.
- Гибкий выбор провайдера/кодека, можно начать локально и дорастить до кластера (с общим GenStore).
Быстрый старт
import (
"context"
"time"
"github.com/unkn0wn-root/cascache"
rp "github.com/unkn0wn-root/cascache/provider/ristretto"
)
type User struct{ ID, Name string }
func buildCache() cascache.CAS[User] {
rist, _ := rp.New(rp.Config{
NumCounters: 1_000_000,
MaxCost: 64 << 20,
BufferItems: 64,
Metrics: false,
})
cc, _ := cascache.New[User](cascache.Options[User]{
Namespace: "user",
Provider: rist,
Codec: cascache.JSONCodec[User]{},
DefaultTTL: 5 * time.Minute,
BulkTTL: 5 * time.Minute,
// GenStore: nil → локально; для кластера подключите Redis GenStore.
})
return cc
}
func readUser(ctx context.Context, c cascache.CAS[User], id string) (User, bool) {
if u, ok, _ := c.Get(ctx, id); ok { return u, true }
obs := c.SnapshotGen(id) // снять поколение ДО чтения БД
u := loadFromDB(id)
_ = c.SetWithGen(ctx, id, u, obs, 0) // запись пройдёт только если поколение не изменилось
return u, true
}
📌Репозиторий: github.com/unkn0wn-root/cascache
👍11❤8🔥5
Workshop по Go для тех, кто хочет собрать своего собственного кодинг-агента.
Это практический гайд — шаг за шагом показывают, как из Go сделать среду для генерации кода.
По сути похоже на Roo Code, Cline, Amp, Cursor, Windsurf или OpenCode, но в этом гайде упор идет на то, чтобы понять механику изнутри.
@golang_google
#go #golang
Please open Telegram to view this post
VIEW IN TELEGRAM
👍17❤6🔥6
TaskWing — это инструмент для разработчиков, который позволяет вести список задач прямо в терминале и подключать к этому процессу искусственный интеллект (Claude Code, Cursor) через протокол MCP.
- Подключается к AI и помогает создавать, менять и искать задачи.
- Не требует сложной настройки — всё хранится локально.
- Умеет отслеживать зависимости между задачами, чтобы не было конфликтов.
- Делает работу удобной: минимум переключений между редактором и терминалом.
Как использовать:
go install github.com/josephgoksu/taskwing.app@latest
taskwing init
taskwing add --title "Fix auth bug" --priority urgent
📌 Github
Please open Telegram to view this post
VIEW IN TELEGRAM
❤8👍3🔥3😢2😁1
@golang_google
#go #golang #Kubernetes
Please open Telegram to view this post
VIEW IN TELEGRAM
❤7👍6🔥3
This media is not supported in your browser
VIEW IN TELEGRAM
🚀 LeetSolv — инструмент для тренировки алгоритмов прямо в терминале
LeetSolv — это консольная утилита, написанная нп Go для подготовки к собеседованиям по алгоритмам и структурам данных.
Инструмент помогает повторять задачи по умному расписанию (алгоритм SM-2) и не забывать то, что уже решал.
⚡ Что умеет:
- Лёгкий CLI без лишних зависимостей (написан на Go).
- Планирует повторения задач с учётом:
- насколько хорошо ты знаешь задачу,
- насколько она важна,
- насколько сложно её понять.
- Автоматически выставляет приоритеты: что решать сначала, что можно отложить.
- Полный набор команд: добавить, удалить, редактировать задачи, откатить изменения.
- Все данные хранятся только у тебя локально.
- Два режима работы:
- интерактивный (вопрос-ответ в терминале),
- командный (`add`,
📦 Установка:
📌 Github: https://github.com/eannchen/leetsolv
LeetSolv — это консольная утилита, написанная нп Go для подготовки к собеседованиям по алгоритмам и структурам данных.
Инструмент помогает повторять задачи по умному расписанию (алгоритм SM-2) и не забывать то, что уже решал.
⚡ Что умеет:
- Лёгкий CLI без лишних зависимостей (написан на Go).
- Планирует повторения задач с учётом:
- насколько хорошо ты знаешь задачу,
- насколько она важна,
- насколько сложно её понять.
- Автоматически выставляет приоритеты: что решать сначала, что можно отложить.
- Полный набор команд: добавить, удалить, редактировать задачи, откатить изменения.
- Все данные хранятся только у тебя локально.
- Два режима работы:
- интерактивный (вопрос-ответ в терминале),
- командный (`add`,
list
, search
и т.п.). 📦 Установка:
curl -fsSL https://raw.githubusercontent.com/eannchen/leetsolv/main/install.sh | bash
📌 Github: https://github.com/eannchen/leetsolv
❤27👍7🤔4🔥3
@Golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9❤5🔥3😁1
Библиотека zek позволяет автоматически генерировать Go-структуры из XML-документов.
Полученные структуры идеально подходят для чтения и парсинга XML.
🔗 Repo: https://github.com/miku/zek
#golang #xml #devtools
@Golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
👍29😁16🔥4❤3
🗄️ SQL-редактор в браузере
Запускается как Go HTTP-сервер и открывается прямо в браузере.
Подходит для простых ETL-задач:
- перенос данных между базами
- работа с Excel-таблицами
- поддержка JSON и CSV
⚡ Удобный инструмент, когда нужно быстро и без лишних настроек управлять данными.
👉 https://github.com/a-le/db-portal
#golang
Запускается как Go HTTP-сервер и открывается прямо в браузере.
Подходит для простых ETL-задач:
- перенос данных между базами
- работа с Excel-таблицами
- поддержка JSON и CSV
⚡ Удобный инструмент, когда нужно быстро и без лишних настроек управлять данными.
👉 https://github.com/a-le/db-portal
#golang
👍8❤7🤔3🥰2
VK JT = Java + Go!
16 сентября VK приглашает Go‑ и Java‑разработчиков на VK JT Meetup в Санкт-Петербурге.
В программе:
— Максимально практические доклады от техлидов VK о трансформации ВКонтакте, переходе части сервисов на Go и об устройстве и развитии единой видеоплатформы VK
— Командные бэкенд-баттлы под менторством опытных разработчиков VK — кейсы, вдохновлённые реальной архитектурой VK
Задавайте вопросы экспертам, ищите лучшее командное решение кейса и оставайтесь на афтепати: нетворкинг, фуршет, свободное общение с коллегами.
Только офлайн, в офисе VK на Мойке.
🎟 Участие бесплатное, почитать подробнее и зарегистрироваться вы сможете на сайте
16 сентября VK приглашает Go‑ и Java‑разработчиков на VK JT Meetup в Санкт-Петербурге.
В программе:
— Максимально практические доклады от техлидов VK о трансформации ВКонтакте, переходе части сервисов на Go и об устройстве и развитии единой видеоплатформы VK
— Командные бэкенд-баттлы под менторством опытных разработчиков VK — кейсы, вдохновлённые реальной архитектурой VK
Задавайте вопросы экспертам, ищите лучшее командное решение кейса и оставайтесь на афтепати: нетворкинг, фуршет, свободное общение с коллегами.
Только офлайн, в офисе VK на Мойке.
🎟 Участие бесплатное, почитать подробнее и зарегистрироваться вы сможете на сайте
😁7🤬4👍3
@golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13❤6🔥2
ИТ-специалисты Петербурга, общий сбор
6 и 7 сентября пройдет ИТ-фестиваль «Сезон кода» для опытных разработчиков, ML-инженеров, архитекторов, специалистов по информационной безопасности и других ИТ-специалистов.
Спикеры из Т-Банка и других компаний зовут слушать доклады, обмениваться опытом и знакомиться с единомышленниками. Развлечения и музыка тоже будут.
В первый день:
— Разберетесь в архитектуре систем, надежности и работе с данными.
— Узнаете, как технологии помогают решать задачи клиентов и бизнеса.
— Поймете, как идеи становятся инструментами и продуктами.
Во второй день:
— Услышите про актуальные подходы к обеспечению информационной безопасности в разработке.
— Узнаете про backend-принципы, которые помогают работать эффективнее.
— Увидите, как работают LLM и куда все это движется.
Выбирайте один из дней или посетите оба. Встреча пройдет в новом ИТ-хабе Т-Технологий в Санкт-Петербурге.
Успейте зарегистрироваться до 5 сентября
6 и 7 сентября пройдет ИТ-фестиваль «Сезон кода» для опытных разработчиков, ML-инженеров, архитекторов, специалистов по информационной безопасности и других ИТ-специалистов.
Спикеры из Т-Банка и других компаний зовут слушать доклады, обмениваться опытом и знакомиться с единомышленниками. Развлечения и музыка тоже будут.
В первый день:
— Разберетесь в архитектуре систем, надежности и работе с данными.
— Узнаете, как технологии помогают решать задачи клиентов и бизнеса.
— Поймете, как идеи становятся инструментами и продуктами.
Во второй день:
— Услышите про актуальные подходы к обеспечению информационной безопасности в разработке.
— Узнаете про backend-принципы, которые помогают работать эффективнее.
— Увидите, как работают LLM и куда все это движется.
Выбирайте один из дней или посетите оба. Встреча пройдет в новом ИТ-хабе Т-Технологий в Санкт-Петербурге.
Успейте зарегистрироваться до 5 сентября
❤3🤬1
🛠 Go tip: как правильно использовать sync.Pool
sync.Pool — это потокобезопасный пул временных объектов в Go. Он помогает переиспользовать объекты, снижая аллокации и нагрузку на GC. Отлично подходит для буферов и временных структур.
⚡ Важные моменты:
- GC может очистить пул — он не вечное хранилище.
- Объекты нужно сбрасывать перед возвратом, иначе вернутся «грязные» данные.
- Для больших или сильно разных по размеру объектов может привести к перерасходу памяти.
✅ Рекомендации:
- Использовать только для короткоживущих и предсказуемых объектов.
- Сбрасывать или обнулять состояние перед Put.
- Профилировать приложение (`pprof`, `MemStats`) и смотреть эффект.
📌 Пример:
👉 Подробнее
sync.Pool — это потокобезопасный пул временных объектов в Go. Он помогает переиспользовать объекты, снижая аллокации и нагрузку на GC. Отлично подходит для буферов и временных структур.
⚡ Важные моменты:
- GC может очистить пул — он не вечное хранилище.
- Объекты нужно сбрасывать перед возвратом, иначе вернутся «грязные» данные.
- Для больших или сильно разных по размеру объектов может привести к перерасходу памяти.
✅ Рекомендации:
- Использовать только для короткоживущих и предсказуемых объектов.
- Сбрасывать или обнулять состояние перед Put.
- Профилировать приложение (`pprof`, `MemStats`) и смотреть эффект.
📌 Пример:
var bufPool = sync.Pool{
New: func() interface{} {
return make([]byte, 1024) // создаём буфер 1КБ
},
}
func process() {
buf := bufPool.Get().([]byte)
defer bufPool.Put(buf[:0]) // сброс длины перед возвратом
// работа с buf...
}
👉 Подробнее
👍12❤6🔥1
🤯 Вышли Go 1.25.1 и Go 1.24.7!
🔐 Security: исправлена уязвимость в
📣 Анонс: https://groups.google.com/g/golang-announce/c/PtW9VW21NPs/m/DJhMQ-m5AQAJ
⬇️ Скачать: https://go.dev/dl/#go1.25.1
#golang #security #release
@golang_google
🔐 Security: исправлена уязвимость в
net/http
(CVE-2025-47910). 📣 Анонс: https://groups.google.com/g/golang-announce/c/PtW9VW21NPs/m/DJhMQ-m5AQAJ
⬇️ Скачать: https://go.dev/dl/#go1.25.1
#golang #security #release
@golang_google
1👍19❤9🔥3