Category : golang

golang
Книга: «Основы Go»

Привет, Хаброжители!Язык Go востребован в разработке облачных сервисов и распределенных систем благодаря простоте, высокой производительности и встроенной поддержке конкурентности. Книга выходит за рамки синтаксиса и фокусируется на проектировании гибких и масштабируемых архитектур.Вы сразу приступите к созданию проекта, который будет постепенно изменяться и усложняться от простых скриптов до полноценного клиент-серверного приложения. В процессе работы вы познакомитесь с конкурентным программир…

  • пятница, 14 августа 2026 г. в 00:00:30
golang
Восемь раз я думал, что сломал код. Это была платформа

В начале августа я сел делать игру для мессенджера MAX – обычный вордли, слово из пяти букв, шесть попыток. Мини-приложение на ванильном JS, сервер на Go, самый дешёвый VPS. По моим прикидкам всё должно было заработать, за три вечера.Первый вечер целиком ушёл на то, чтобы сервер вообще смог поговорить с API мессенджера. Не на игру, не на словарь, а на TCP-соединение.Дальше было ещё семь таких мест. Каждое выглядело как мой баг, но каждое оказалось особенностью платформы, и ни одного из них нет …

  • пятница, 14 августа 2026 г. в 00:00:29
golang
Горутины изнутри, часть 1

Эта серия для тех, кто выучил синтаксис Go, написал первые go func() и хочет понять, что за ними стоит. Многопоточность знать не нужно: начнем с того, что такое поток. К концу первой части ты будешь понимать, почему поток операционной системы дорогой, что такое горутина физически и как Go пришел к схеме GMP.План серии:Почему потоки ОС не масштабируются и как Go придумал GMPПереезжающий стек, сигнал SIGURG и жизнь горутины. Скоро…syscall, netpoll, полный круг планировщика и свежий Go Скоро…TL;DR…

  • пятница, 14 августа 2026 г. в 00:00:27
golang
Алгоритм был правильным. Ошибка была в контракте графа

Мне нужен был сервис, в котором должны были работать несколько разных алгоритмов. Часть математики я помнил, часть понимал поверхностно, часть собирался восстановить по ходу работы. Чтобы быстрее получить прототип, я подключил LLM к генерации бойлерплейта, интерфейсов и первых реализаций.Через несколько дней (говно)кода стало много — вменяемого сервиса не получилось.Один BFS принимал map[string][]string. DFS жил на другом типе графа. В одной реализации направленность задавалась на уровне графа,…

  • пятница, 14 августа 2026 г. в 00:00:26
golang
Кэш — это холодильник: TTL, инвалидация и cache stampede

Объясню кэш через холодильник, а потом покажу, где эта аналогия ломается, и что с этим делают в проде.Статья для тех, кто кэш уже ставил, но не разбирался, почему он иногда роняет сервис вместо того, чтобы его ускорять.ХолодильникЗахотел есть — открыл холодильник, взял. Пара секунд. Это кэш: нужное лежит рядом.Холодильник пустой — идёшь в магазин. Одеться, дойти, очередь, обратно. Это запрос в базу: дальше, медленнее и дороже.Смысл кэша ровно в этом: то, что нужно часто, держим поближе.func (s …

  • пятница, 14 августа 2026 г. в 00:00:20
golang
От десктопа к Android и в роутеры

Всем привет, возможно, вы уже пользовались моими L×Box или Sing-box Launcher, я про них уже писал. Если нет, то коротко: на сегодня это уникальные VPN клиенты, которые предоставляют гибкую машрутизацию на множестве VPN соединений одновременно, поддерживают сложные сценарии туннелирования, адаптированы прод экстремальные сценарии использования и обладают широкой диагностикой.Я сегодня расскажу про развитие ядра этой экосистемы (первая часть тут) Ядро тоже OpenSource https://github.com/Leadaxe/s…

  • пятница, 14 августа 2026 г. в 00:00:18
golang
Код написали за нас. Как упростить ревью и сколько это стоит в рантайме

Последнее время я почти не пишу код руками: значительную часть реализации берут на себя AI-агенты. Но работы меньше не стало — она сместилась от написания к постановке задачи, определению ограничений, ревью и оценке результата. И чем быстрее агент производит код, тем острее становится вопрос: как проверить, что он построил именно ту систему, которая была задумана, не восстанавливая её устройство по тысячам сгенерированных строк?В предыдущей статье я рассуждал о том, что между намерением разрабо…

  • четверг, 13 августа 2026 г. в 00:00:25
golang
Пятнадцать месяцев финтеха агентами: кривая качества по всей истории проекта

У меня 12 лет опыта в Go. И я больше не имею права назвать себя программистом: мой код не пройдёт ту планку качества, которую я выставил для своих агентов. Хотя честнее так: они сами её выставили, я лишь ставил цели.Заявление громкое, но у меня есть график. Красная пунктирная линия на нём: уровень моего лучшего рукописного кода. Синяя кривая: код, который пишут агенты. В апреле 2026 кривая ушла под красную линию и продолжает падать.Статический анализМеня зовут Александр, я удалённый разработчик…

  • среда, 12 августа 2026 г. в 00:00:22
golang
HLS Lazy Muxing 2.0 Как срезать 80% CPU и не остановить запись архива

Привет, хабарчане! Это третья статья про разработку RUSEON-core, Zero-Copy сервера потокового видео для AI-платформ и Edge-видеоинфраструктуры. В предыдущих статьях (первая и вторая), были разобраны моменты с оптимизацией раздачи потоков при больших одновременных нагрузках, а также узкие места ОС в контексте потоковой записи на диск. В этой же статье, я хочу рассказать, о другой более специфичной проблеме – HLS-мультиплексировании.Если кто то, когда-либо занимался видеопотоками поверх интернета…

  • среда, 12 августа 2026 г. в 00:00:21