🧠 UnisonDB - экспериментальная база, которая убирает боль синхронизации в распределённых системах
Главная идея простая, но мощная:
все узлы хранят одно и то же состояние, и оно автоматически синхронизируется без конфликтов — даже оффлайн.
Как это работает
- Используются CRDT — структуры данных, которые сами разрешают конфликты
- Вся система построена как event log (каждое изменение — событие)
- Данные сначала пишутся локально, потом догоняют сеть
- Нет «главного сервера» — каждый узел может быть источником истины
Что это даёт
- Мгновенные локальные обновления (даже без интернета)
- Автоматическая консистентность без ручных merge
- Идеально для приложений, которые должны работать оффлайн и в real-time
Где это полезно
- мобильные и edge-приложения
- коллаборативные редакторы
- распределённые системы без единого центра
- автономные агенты и IoT
Почему это интересно
Это не просто база данных - это попытка пересобрать модель хранения данных под эпоху распределённого ПО, где сеть ненадёжна, а приложение должно всегда работать.
https://github.com/ankur-anand/unisondb
#databases #crdt #distributedSystems #eventSourcing #edgecomputing #backend #systemdesign
Главная идея простая, но мощная:
все узлы хранят одно и то же состояние, и оно автоматически синхронизируется без конфликтов — даже оффлайн.
Как это работает
- Используются CRDT — структуры данных, которые сами разрешают конфликты
- Вся система построена как event log (каждое изменение — событие)
- Данные сначала пишутся локально, потом догоняют сеть
- Нет «главного сервера» — каждый узел может быть источником истины
Что это даёт
- Мгновенные локальные обновления (даже без интернета)
- Автоматическая консистентность без ручных merge
- Идеально для приложений, которые должны работать оффлайн и в real-time
Где это полезно
- мобильные и edge-приложения
- коллаборативные редакторы
- распределённые системы без единого центра
- автономные агенты и IoT
Почему это интересно
Это не просто база данных - это попытка пересобрать модель хранения данных под эпоху распределённого ПО, где сеть ненадёжна, а приложение должно всегда работать.
https://github.com/ankur-anand/unisondb
#databases #crdt #distributedSystems #eventSourcing #edgecomputing #backend #systemdesign
❤19👍14🔥4🤯2
🔒 Защита контейнеров с Runtime Radar
Runtime Radar — это открытое решение для мониторинга событий безопасности в реальном времени в контейнеризованных средах. Оно предлагает доступные инструменты управления и защиту от угроз на уровне выполнения, упрощая интеграцию с другими системами безопасности.
🚀 Основные моменты:
- Гибкая настройка мониторинга событий с веб-интерфейсом.
- Централизованное управление для многокластерных установок.
- Интеграция с системами безопасности через syslog, SMTP и webhook.
- Написан на Go.
- Внутри удобные инструменты для анализа инцидентов в веб-интерфейсе.
📌 GitHub: https://github.com/runtime-radar/runtime-radar
Runtime Radar — это открытое решение для мониторинга событий безопасности в реальном времени в контейнеризованных средах. Оно предлагает доступные инструменты управления и защиту от угроз на уровне выполнения, упрощая интеграцию с другими системами безопасности.
🚀 Основные моменты:
- Гибкая настройка мониторинга событий с веб-интерфейсом.
- Централизованное управление для многокластерных установок.
- Интеграция с системами безопасности через syslog, SMTP и webhook.
- Написан на Go.
- Внутри удобные инструменты для анализа инцидентов в веб-интерфейсе.
📌 GitHub: https://github.com/runtime-radar/runtime-radar
❤5👍5🥰3
⚡️ Docker2exe превращает Docker-контейнеры в самодостаточные исполняемые файлы для Windows. Полезно, когда нужно быстро упаковать сервис и запустить его на машине без Docker.
Преимущества: простая развёртка, переносимость, удобно для тестов и демо.
Минусы и предостережения: убедитесь, что внутри контейнера нет секретных корчей и что вы выполняете только знакомый код.
https://github.com/rzane/docker2exe
Преимущества: простая развёртка, переносимость, удобно для тестов и демо.
Минусы и предостережения: убедитесь, что внутри контейнера нет секретных корчей и что вы выполняете только знакомый код.
https://github.com/rzane/docker2exe
🔥31🤔11👍9❤7😱1
Они объединяют эффективность существующих высокоуровневых функций набора соединений с возможностью отмены через Dialer.DialContext — то есть будут быстрее и надёжнее при работе с сетевыми вызовами.
Для тех случаев, когда вы точно знаете сеть (TCP, UDP, IP или Unix-сокет) и хотите:
- минимальные расходы (без лишнего разрешения адресов)
- контроль таймаута/отмены через context
- современный тип адресов из netip
В целом это шаг к более гибкому, эффективному и контролируемому сетевому подключению в Go.
Пример использования:
var d net.Dialer
ctx, cancel := context.WithTimeout(context.Background(), 5*time.Second)
defer cancel()
raddr := netip.MustParseAddrPort("127.0.0.1:12345")
conn, err := d.DialTCP(ctx, "tcp", netip.AddrPort{}, raddr)
if err != nil { log.Fatalf("Failed to dial: %v", err) }
defer conn.Close()
http://antonz.org/accepted/net-dialer-context/
@Golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍67🔥14❤13
🎉 Go исполнилось 16 лет
Go отметился важной датой шестнадцатой годовщиной с момента когда язык впервые стал открытым. За эти годы Go превратился в один из самых надёжных и понятных инструментов для разработки и продолжает расти без потери своей философии простоты.
Что произошло за последний год
- вышли Go 1.24 и Go 1.25
- появился пакет testing synctest который помогает тестировать конкурентный код без боли
- улучшены механизмы работы внутри контейнеров что - делает Go ещё стабильнее в продакшене
- представлен экспериментальный сборщик мусора Green Tea который снижает затраты на GC до сорока процентов
криптографические пакеты проходят сертификацию и усиливают безопасность экосистемы
Что ждёт Go дальше
- оптимизация под многопроцессорные системы
более глубокая интеграция в инфраструктурные и ИИ сервисы
- усиление вклада сообщества при сохранении стабильного релиз-цикла
Шестнадцать лет спустя Go остаётся языком который ценят за скорость простоту и предсказуемость. И похоже он только начинает новый виток роста.
https://go.dev/blog/16years
@Golang_google
#golang
Go отметился важной датой шестнадцатой годовщиной с момента когда язык впервые стал открытым. За эти годы Go превратился в один из самых надёжных и понятных инструментов для разработки и продолжает расти без потери своей философии простоты.
Что произошло за последний год
- вышли Go 1.24 и Go 1.25
- появился пакет testing synctest который помогает тестировать конкурентный код без боли
- улучшены механизмы работы внутри контейнеров что - делает Go ещё стабильнее в продакшене
- представлен экспериментальный сборщик мусора Green Tea который снижает затраты на GC до сорока процентов
криптографические пакеты проходят сертификацию и усиливают безопасность экосистемы
Что ждёт Go дальше
- оптимизация под многопроцессорные системы
более глубокая интеграция в инфраструктурные и ИИ сервисы
- усиление вклада сообщества при сохранении стабильного релиз-цикла
Шестнадцать лет спустя Go остаётся языком который ценят за скорость простоту и предсказуемость. И похоже он только начинает новый виток роста.
https://go.dev/blog/16years
@Golang_google
#golang
👍62❤23🎉15🔥9🤯4
Подходит для игр, симуляций и любых проектов, где нужна быстрая и точная физика.
#golang
https://github.com/jakecoffman/cp
Please open Telegram to view this post
VIEW IN TELEGRAM
❤17👍4🔥4
package main
import "fmt"
func main() {
s := []int{1, 2, 3, 4}
t := s[1:3] // t = [2, 3]
t = append(t, 99) // возможно, меняет s[3]
s[2] = 42 // изменяем s напрямую
fmt.Println("s:", s)
fmt.Println("t:", t)
}
Ответ :
t: [2 42 99]
⚡️ Запустить код: https://go.dev/play/p/96RGE1ea6Sq
Please open Telegram to view this post
VIEW IN TELEGRAM
👍32❤9🔥7🤔3
📚 Go Styleguide для эффективного программирования на Go ⚙️
Репозиторий предлагает рекомендации и лучшие практики для написания чистого и поддерживаемого кода на Go. Основывается на опыте и вдохновении от конференций, дополняя "Effective Go".
🚀Основные моменты:
- Структурированное логирование для упрощения отладки.
- Избегайте глобальных переменных для повышения тестируемости.
- Используйте семантическое версионирование для управления зависимостями.
- Применяйте линтеры и goimports для поддержания качества кода.
- Следуйте принципам тестирования и написания читаемого кода.
📌 GitHub: https://github.com/bahlo/go-styleguide
#go
Репозиторий предлагает рекомендации и лучшие практики для написания чистого и поддерживаемого кода на Go. Основывается на опыте и вдохновении от конференций, дополняя "Effective Go".
🚀Основные моменты:
- Структурированное логирование для упрощения отладки.
- Избегайте глобальных переменных для повышения тестируемости.
- Используйте семантическое версионирование для управления зависимостями.
- Применяйте линтеры и goimports для поддержания качества кода.
- Следуйте принципам тестирования и написания читаемого кода.
📌 GitHub: https://github.com/bahlo/go-styleguide
#go
❤26👍4🔥2🥰1
🚀 Warpnet: децентрализованная сеть для обмена данными
Warpnet — это платформа, позволяющая пользователям безопасно обмениваться данными в децентрализованной сети. Она построена на Go и использует Wails для создания интерфейсов. Проект активно развивается, и сообщество приветствует новые идеи и улучшения.
🚀 Основные моменты:
- Децентрализованный обмен данными
- Построен на Go и Wails
- Открытый для вкладов и предложений
- Поддержка тестовой сети
- Активное сообщество в Telegram
📌 GitHub: https://github.com/Warp-net/warpnet
#go
Warpnet — это платформа, позволяющая пользователям безопасно обмениваться данными в децентрализованной сети. Она построена на Go и использует Wails для создания интерфейсов. Проект активно развивается, и сообщество приветствует новые идеи и улучшения.
🚀 Основные моменты:
- Децентрализованный обмен данными
- Построен на Go и Wails
- Открытый для вкладов и предложений
- Поддержка тестовой сети
- Активное сообщество в Telegram
📌 GitHub: https://github.com/Warp-net/warpnet
#go
👍10❤6🔥4🤔2
⚡ Sloggo - лёгкий и быстрый сборщик логов на Go по стандарту RFC 5424
Если вам нужен простой, минималистичный и быстрый инструмент для централизованного сбора логов — без тяжёлых ELK, Loki или огромных кластеров — Sloggo выглядит очень достойным вариантом.
Что делает Sloggo:
- принимает логи по TCP и UDP в формате RFC 5424
- хранит их в DuckDB — быстрой встроенной базе данных без лишней настройки
- даёт чистый и удобный веб-интерфейс для поиска и фильтрации
- весит всего ~10 МБ и работает как один процесс
- запускается за секунды, подходит для малых и средних систем
Где полезно:
- домашние серверы и дев-окружения
- небольшие продовые сервисы, которым не нужна тяжёлая лог-инфраструктура
- быстрый сбор логов во время отладки
- системы с минимумом ресурсов (VPS, контейнеры)
https://github.com/phare/sloggo/
Если вам нужен простой, минималистичный и быстрый инструмент для централизованного сбора логов — без тяжёлых ELK, Loki или огромных кластеров — Sloggo выглядит очень достойным вариантом.
Что делает Sloggo:
- принимает логи по TCP и UDP в формате RFC 5424
- хранит их в DuckDB — быстрой встроенной базе данных без лишней настройки
- даёт чистый и удобный веб-интерфейс для поиска и фильтрации
- весит всего ~10 МБ и работает как один процесс
- запускается за секунды, подходит для малых и средних систем
Где полезно:
- домашние серверы и дев-окружения
- небольшие продовые сервисы, которым не нужна тяжёлая лог-инфраструктура
- быстрый сбор логов во время отладки
- системы с минимумом ресурсов (VPS, контейнеры)
https://github.com/phare/sloggo/
1❤21👍14🥰2🤔1
🔧 Scriggo
Scriggo - интерпретатор языка Go, разработанный командой Open2B.
Он позволяет запускать Go-скрипты без предварительной компиляции, упрощая быстрые прототипы, автоматизацию и интерактивную работу.
Поддерживает большинство синтаксиса Go, библиотеки, пакеты, и предоставляет среду, близкую по уровню к REPL-инструментам.
🚀 Кому полезен:
- Разработчикам на Go, которым нужен быстрый запуск кода.
- Автоматизаторам и DevOps-инженерам, создающим скрипты на Go.
- Тем, кто хочет изучать Go и экспериментировать без привычной компиляции.
📌 Почему стоит внимания:
- Ускоряет цикл разработки: не нужно собирать бинарник — просто запускаете скрипт.
- Открытый проект — можно смотреть, как устроен интерпретатор, вносить свои изменения.
- Хорошая возможность для обучения: увидеть структуру интерпретатора, понять, как язык Go может быть реализован.
GitHub: https://github.com/open2b/scriggo/
Scriggo - интерпретатор языка Go, разработанный командой Open2B.
Он позволяет запускать Go-скрипты без предварительной компиляции, упрощая быстрые прототипы, автоматизацию и интерактивную работу.
Поддерживает большинство синтаксиса Go, библиотеки, пакеты, и предоставляет среду, близкую по уровню к REPL-инструментам.
🚀 Кому полезен:
- Разработчикам на Go, которым нужен быстрый запуск кода.
- Автоматизаторам и DevOps-инженерам, создающим скрипты на Go.
- Тем, кто хочет изучать Go и экспериментировать без привычной компиляции.
📌 Почему стоит внимания:
- Ускоряет цикл разработки: не нужно собирать бинарник — просто запускаете скрипт.
- Открытый проект — можно смотреть, как устроен интерпретатор, вносить свои изменения.
- Хорошая возможность для обучения: увидеть структуру интерпретатора, понять, как язык Go может быть реализован.
GitHub: https://github.com/open2b/scriggo/
🤔27👍16❤6🔥4😁1
На платформе SourceCraft от Яндекса со встроенным AI-ассистентом можно писать код, управлять версиями, тестировать, развертывать и деплоить в облако за пару кликов.
💸 Активируй грант 6 000 ₽ и используй облачные сервисы Yandex (API-gateway, функции, контейнеры) для своего API-проекта.
Все начинается здесь
Сделай шаг от идеи до работающего прототипа с поддержкой SourceCraft.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8🤬7😁6❤4🔥1
🔥 bettercap - один из самых мощных Swiss-Army-Knife инструментов для безопасности
Если коротко: это универсальная платформа, которая закрывает почти весь спектр задач по разведке и активным атакам в сетях. Легко расширяется, кроссплатформенная, быстрая — идеальна для исследователей и тестировщиков.
Что умеет bettercap:
- 📡 Wi-Fi-разведка и атаки:
деаутентификация, PMKID-атаки без клиентов, автоматический захват WPA/WPA2 рукопожатий.
- 🔵 Bluetooth Low Energy:
сканирование устройств, анализ каналов, расширенная разведка.
- 🖱 2.4 ГГц устройства и MouseJacking:
инъекция HID-кадров, поддержка DuckyScript.
- 🌐 Сетевой OSINT и разведка:
пассивный и активный сбор данных по IP-узлам.
- 🎭 MITM-модуль:
ARP-, DNS- и DHCPv6-спуферы для полноценных Man-in-the-Middle атак.
- 🔁 Прокси уровня пакетов, TCP и HTTP/HTTPS:
расширяются через лёгкие плагин-скрипты на JavaScript.
- 👁 Мощный сниффер:
сбор учёток, анализ трафика, протокольный фаззинг.
- 🚀 Быстрый сканер портов
(особенно полезен в связке с MITM).
- 🖥 Удобный встроенный веб-интерфейс
для управления всеми модулями.
✨ И это далеко не весь функционал - bettercap признан одним из самых универсальных инструментов в offensive-безопасности.
🔗 Репозиторий: https://github.com/bettercap/bettercap
🔗 Автор: https://www.bettercap.org/
⚠️ Использовать только в образовательных целях или для тестирования своих систем.
Если коротко: это универсальная платформа, которая закрывает почти весь спектр задач по разведке и активным атакам в сетях. Легко расширяется, кроссплатформенная, быстрая — идеальна для исследователей и тестировщиков.
Что умеет bettercap:
- 📡 Wi-Fi-разведка и атаки:
деаутентификация, PMKID-атаки без клиентов, автоматический захват WPA/WPA2 рукопожатий.
- 🔵 Bluetooth Low Energy:
сканирование устройств, анализ каналов, расширенная разведка.
- 🖱 2.4 ГГц устройства и MouseJacking:
инъекция HID-кадров, поддержка DuckyScript.
- 🌐 Сетевой OSINT и разведка:
пассивный и активный сбор данных по IP-узлам.
- 🎭 MITM-модуль:
ARP-, DNS- и DHCPv6-спуферы для полноценных Man-in-the-Middle атак.
- 🔁 Прокси уровня пакетов, TCP и HTTP/HTTPS:
расширяются через лёгкие плагин-скрипты на JavaScript.
- 👁 Мощный сниффер:
сбор учёток, анализ трафика, протокольный фаззинг.
- 🚀 Быстрый сканер портов
(особенно полезен в связке с MITM).
- 🖥 Удобный встроенный веб-интерфейс
для управления всеми модулями.
✨ И это далеко не весь функционал - bettercap признан одним из самых универсальных инструментов в offensive-безопасности.
🔗 Репозиторий: https://github.com/bettercap/bettercap
🔗 Автор: https://www.bettercap.org/
⚠️ Использовать только в образовательных целях или для тестирования своих систем.
❤18🔥13👍3🤔3
Forwarded from Go tests
This media is not supported in your browser
VIEW IN TELEGRAM
package main
import (
"errors"
"fmt"
)
type myError struct{}
func (m *myError) Error() string {
return "something went wrong"
}
func returnsNilError() error {
var e *myError = nil
return e
}
func main() {
err := returnsNilError()
fmt.Println("err == nil:", err == nil) // неожиданно false
fmt.Println("err:", err)
}
Вывод:
err: something went wrong
⚡️ Заплатить код: https://go.dev/play/p/lrw5DEthEvS
@golangtests
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥13👍10❤7🤔2
🐳 Упрощаем сборки cgo в Go с помощью Docker
Главная идея: вместо того чтобы мучиться с разными системными настройками для cgo (C/C++ зависимости), можно собирать проект внутри Docker — и все разработчики получают одинаковую, предсказуемую среду.
🔥 Почему это полезно
- cgo ломает «магическую простоту» Go
- каждому разработчику обычно нужно настраивать:
- CGO_LDFLAGS
- CPPFLAGS
- компиляторы под Mac/Linux/Windows
- итог: хаос, разные ошибки на разных OS, боль и страдания
Docker решает проблему — среда всегда одинаковая.
---
Как это работает
1. Создаёте скрипт сборки, который принимает комбинации OS/ARCH
2. Запускаете его внутри Go-образа:
Docker-образ содержит:
- нужный компилятор
- консистентные версии библиотек
- стабильную среду для cgo
⭐ Главные плюсы
- никаких локальных настроек — подходит даже для Windows
- единая среда для CI / локальной машины / сервера
- один образ = один результат сборки
идеальный вариант для open-source
⚠️ Недостатки
- сборка может быть чуть медленнее
- нужен Docker-образ нужной версии Go
- больше инфраструктурной регуляции — но это окупается
💡 Вывод
Если ваш Go-проект использует cgo, то сборка через Docker - лучший способ избежать конфликтов сред, нестабильных флагов и разных ошибок на разных машинах.
Единая среда → стабильная сборка → меньше сюрпризов.
https://www.dolthub.com/blog/2025-11-21-easy-cgo-builds-with-docker/
@Golang_google
Главная идея: вместо того чтобы мучиться с разными системными настройками для cgo (C/C++ зависимости), можно собирать проект внутри Docker — и все разработчики получают одинаковую, предсказуемую среду.
🔥 Почему это полезно
- cgo ломает «магическую простоту» Go
- каждому разработчику обычно нужно настраивать:
- CGO_LDFLAGS
- CPPFLAGS
- компиляторы под Mac/Linux/Windows
- итог: хаос, разные ошибки на разных OS, боль и страдания
Docker решает проблему — среда всегда одинаковая.
---
Как это работает
1. Создаёте скрипт сборки, который принимает комбинации OS/ARCH
2. Запускаете его внутри Go-образа:
docker run --rm \
-v `pwd`:/src \
golang:"$go_version"-trixie \
/src/scripts/build_binaries.sh "$os-$arch"
Docker-образ содержит:
- нужный компилятор
- консистентные версии библиотек
- стабильную среду для cgo
⭐ Главные плюсы
- никаких локальных настроек — подходит даже для Windows
- единая среда для CI / локальной машины / сервера
- один образ = один результат сборки
идеальный вариант для open-source
⚠️ Недостатки
- сборка может быть чуть медленнее
- нужен Docker-образ нужной версии Go
- больше инфраструктурной регуляции — но это окупается
💡 Вывод
Если ваш Go-проект использует cgo, то сборка через Docker - лучший способ избежать конфликтов сред, нестабильных флагов и разных ошибок на разных машинах.
Единая среда → стабильная сборка → меньше сюрпризов.
https://www.dolthub.com/blog/2025-11-21-easy-cgo-builds-with-docker/
@Golang_google
👍21❤11🔥6😁1
Codenire - это лёгкая open-source платформа, которая позволяет запускать код прямо в браузере без установки окружения.
Что важно:
- Код запускается в изолированных Docker-контейнерах с gVisor — безопасно для серверов.
- Поддерживает множество языков: Go, Python, C/C++, Rust, PHP, JS и другие.
- Работает не только с одиночными файлами — можно запускать целые проекты.
- Гибкая архитектура: легко расширяется через API и собственные конфиги.
Зачем это нужно:
- Онлайн-песочницы
- Обучающие платформы и курсы
- Быстрый запуск кода без настройки среды
- Безопасный backend для «run code» кнопок
Минималистичный playground, который можно встроить куда угодно.
▪Github
@Golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
👍19❤9🤔4🔥3🥰3
Когда-то интернет был другим. Возможно, более медленным и нестабильным, но куда более камерным и очаровательным. А его недостатки старались исправить разработчики-энтузиасты, которым было не всё равно.
Этим постом мы запускаем спецпроект «Наши любимые петы». В следующие недели мы продолжим рассказывать про личные проекты яндексоидов. Оставайтесь на связи!
Подписывайтесь:
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤12👍4🥰2