Новости
Логическая репликация
Я тут начал ковырять как работают всякие инстументы для репликации данных из постгри куда-то еще. И это можно делать красиво на гошке. Можно наколбасить свой CDC фреймворк и наслаждаться. Для затравки закинул не свежую статью(но все еще актуальные) как ребята ...
Либы для моков не нужны
Да! Либы для моков действительно не нужны. Наконец это кто-то озвучил. Использование либ для создания моков часто приводит к плохо продуманным тестам и увеличивает время адаптации к кодовой базе. Старые добрые ручные моки намного понятней и больше подходят ...
Нейрослоп линукс
Вайбкодинг вышел на нновый ровень. Автор создал "Pure Go" среду Linux с помощью Claude. Ну ладно, не совсем прям с нуля создал. Просто вдохновившись примером Армина Роначера, автор попросил Клода перенести эмулятор системы TinyEMU RISC-V Фабриса Беллара с C на...
SQL Драйвер
Учимся писать свой SQL драйвер. Точнее, ребята из dolt покажут как они писали драйвер для своей базы. А вся магия возможна благодаря прекрасному пакета database sql driver в Go, который позволяет определить подключение к базе данных, которое любая программа на...
VictoriaLogs
В статье про VictoriaLogs. Это ресурсоэффективное, быстрое и лёгкое схема-независимое хранилище логов, работающее в виде единого бинарного файла без конфигурации. Оно автоматически индексирует все поля логов, что позволяет мгновенно выполнять запросы на языке ...
Дженерики в методах
В этом пропозале описывается как можно было бы объявлять параметризованные методы для конкретных типов в Go. Методы смогут объявлять свои собственные параметры типа, как это уже делают функции, но привязанные к получателю. При этом такие методы не смогут удов...
Плавающие точки
Расс Кокс в этой статье рассказывает про новый быстрый и простой алгоритм для преобразования чисел с плавающей точкой в десятичные строки и обратно. Основная идея - использовать операцию масштабирования без округления, которая приближённо вычисляет x * 2^e * 1...
Свой компилятор
Автор покажет как сделать простой компилятор, который умеет превращать арифметические выражения в объектные файлы Поддерживаются операции сложения и умножения, можно использовать скобки, чтобы менять порядок вычислений. Константы пока не работают - только ц...
Файловое хранилище
Видос на 10 часов в котором узнаем, как создать децентрализованную, полностью распределённую систему хранения файлов с контентной адресацией на Go, которая умеет работать и стримить даже очень большие файлы. В этом курсе мы разберём проектирование системы, низ...
Пердолинг Wii
Максимально бесполезная статья, но очень увлекательная. Автор нашел способ публиковать новости в новостных каналах на Wii. И еще немножко Go для этого исопльзовал Вот откуда у людей столько времени?
Лучший менеджер пакетов
Вот вам мысленный эксперимент. Что, если бы в Ruby был require "github.com/rails/rails" и вы использовали go get для его получения? Укажите в GOPATH путь к загрузкам Ruby пакетов, и модули Go станут вашим транспортным уровнем. Команда Go не планировала этого д...
Система сборки Go
Наверное, вы десятки раз в неделю набираете go build или go run, не особо вдаваясь в детали. Со стороны это похоже на магию: нажал Enter - и код компилируется, собирается, а иногда и сразу запускается. Но за этой простотой скрывается продуманная система, котор...
Локи или атомики?
Являются ли атомарные операции более быстрыми и эффективными, чем мьютексы? Это зависит от ситуации В этой статье рассмотрим атомарные операции и мьютексы, их различия в производительности и поведении, а также случаи, когда что уместно использовать Начнё...
Пишем блокировки
Простота блокировки делает её полезной для защиты общего состояния в многопоточных программах. Но реализовать её не всегда просто. В этой статье автор покажет, как реализовать блокировку несколькими способами на Go, и рассмотрим, как можно добиться различны...
Парсер грамматики на Go
А вот еще свежая статейка про написание лексера и парсера на Go. Автор решил обойтись без яков и бизонов, а написать свое простое решение