Category : golang

golang
Суть Go: Time

Статья о параллелизме Go, где с помощью интерактивных примеров раскрываем тему с нуля.В этой главе мы рассмотрим методы управления временем в параллельных программах.УдушениеПредположим, у нас есть куча задач. func work() { // Something very important, but not very fast. time.Sleep(100 * time.Millisecond) }Самый простой способ — это обрабатывать последовательно:func main() { start := time.Now() work() work() work() work() fmt.Println("4 calls took", tim…

  • четверг, 6 февраля 2025 г. в 00:00:08
golang
Сравнение кода от DeepSeek и ChatGPT по-гоферски

В поисках утреннего чтива на Хабре наткнулся на статью про сравнение кода на Swift, сгенерированного двумя действующими лицами - ChatGPT от OpenAI и его нашумевший "убийца" - DeepSeek, основателем которого выступает Лян Вэньфэн, про которого можно узнать в статье на VC. После прочтения статьи в голову вполне ожидаемо пришла идея сравнения сгенерированного кода на Go. Правила те же самые - использование одинаковых промптов для каждой модели. Если модель выдает неработоспособный результат…

  • понедельник, 3 февраля 2025 г. в 00:00:14
golang
Сравнение кода DeepSeek и ChatGPT(Golang)

Весь этот шум заставил меня заинтресоваться DeepSeek. Самое банальное сравнить с ChatGPT. Ну и плюсом, у меня сегодня выходной, можно и поиграть немного. Код пусть будет на Go. Модели GPT-o1 и Deepseek-R1. Заданием для нейронок будет написать две игры. Эти две игры это вообще первое что я когда либо написал в своей жизни, правда, это было не на Go. Задание 1: Игра "Пинг-Понг" на GoПромт:Напиши с нуля консольное приложение на Go. В приложении должна быть реализована игра "Пинг-Понг&…

  • понедельник, 3 февраля 2025 г. в 00:00:13
golang
Заговор разработчиков против корпораций: архитектура и принципы

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

  • воскресенье, 2 февраля 2025 г. в 00:00:15
golang
Как работает HTTP/2 и как использовать его в Go

Почему HTTP/2?HTTP/2 — это крупное обновление по сравнению с HTTP/1.1, и в наши дни он практически везде используется по умолчанию. Если вы открывали Chrome DevTools для проверки сетевых запросов, то, скорее всего, уже видели соединения по протоколу HTTP/2.Проверка подключений HTTP / 2 с помощью ChromeНо почему HTTP/2 так важен? Что не так с HTTP/1.1?В HTTP/1.1 была введена конвейерная обработка, которая на первый взгляд казалась значительным шагом вперед. Идея была проста: несколько запросов м…

  • суббота, 1 февраля 2025 г. в 00:00:08
golang
Язык программирования Go – для начинающих

Язык программирования Go, также известный как Golang, был разработан в Google в 2007 году Робертом Гриземером, Робом Пайком и Кеном Томпсоном. Он стал открытым исходным кодом в 2009 году.Go (или Golang) — это компилируемый, статически типизированный язык программирования, разработанный в Google. Он был создан для упрощения разработки масштабируемых и эффективных программ, особенно в многопоточной среде. Go обладает минималистичным синтаксисом, что делает его легким для изучения и использования.…

  • суббота, 1 февраля 2025 г. в 00:00:05
golang
Приручаем монстров в Go: боремся с разросшимся Makefile и монолитом — без распила на микросервисы

Мы в ответе за тех, кого разрастили. Go-разработчики из YADRO, Ви.Tech и Weborama  рассказали, как работать с проектами, которые без должного внимания стали бы техдолгом. А еще — поделились опытом генерации стабов и организации нетривиального стриминга данных на Go. Собираем проект на Go: от Make до MiseРассказал: Даниил Подольский, эксперт по разработке ПО, Go-евангелист, YADROКоротко о сути доклада: Команда Common Yadro Platform, в которой работает Даниил, вырастила настоящего монстра в виде …

  • суббота, 1 февраля 2025 г. в 00:00:04
golang
Эпическое программирование: пишем понятные и поддерживаемые саги

В мире микросервисов часто возникает необходимость сделать согласованные изменения в сервисах. Один из надёжных способов добиться этого — использовать паттерн «Сага», который помогает выполнять распределённые транзакции и при сбоях корректно откатывать изменения. Но, как всегда, есть нюансы, начиная от нереалистичных материалов на эту тему и заканчивая реальным опытом использования. Алексей Бакин ведёт канал «Заботливый разработчик» и занимается разработкой внутренних продуктов. Один из них — э…

  • пятница, 31 января 2025 г. в 00:00:10
golang
P2P на Go: библиотека libp2p

Привет, Хабр!Сегодня рассмотрим библиотеку libp2p в Go. libp2p — это модульная библиотека для построения P2P-сетей. Libp2p выросла из проекта IPFS, но теперь активно используется в блокчейнах, мессенджерах и других децентрализованных приложениях. Главная фича библиотеки — она даёт возможность полностью контролировать P2P-коммуникации.Libp2p разделена на несколько модулей, которые можно подключать по мере необходимости:Transport: низкоуровневое соединение (TCP, WebSocket, QUIC, WebRTC).Muxing: п…

  • четверг, 30 января 2025 г. в 00:00:15