Telegram Web
🧑‍💻 Как собрать TUI на Go

Большинство CLI-инструментов ограничивается списком флагов и короткой справкой. Но вы можете построить полноценный пользовательский интерфейс прямо в терминале.

Для создания современного CLI-приложения на Go вам нужны три вещи:

• Bubble Tea — фреймворк для построения UI на терминале с архитектурой MVU.

• Lip Gloss — инструмент стилизации. Поддержка цвета, шрифтов, отступов и контейнеров.

• Cobra — для описания CLI-команд, флагов, подсказок.

➡️ Как это работает на практике? Смотрите видео

🐸Библиотека Go разработчика #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
🕖 Почему база данных тормозит ваше приложение и как это исправить

Когда приложение начинает «тормозить», несмотря на тщательно оптимизированный код и обновлённые библиотеки, причина часто кроется не в логике приложения, а в базе данных.

Запросы к БД могут занимать секунды, превращая миллисекундные операции в узкое место производительности.

Если не решить эту проблему, API будет медленным, пользователи — недовольными, а система — нестабильной при высокой нагрузке.

➡️ Узнать как решить проблемы с БД

🐸Библиотека Go разработчика #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
🖥 VPN vs Удалённый рабочий стол

С одной стороны — скорость. С другой — централизованный контроль.
А посередине — ты, страдающий при любом раскладе.

Работа через VPN это:


— Привычная среда, с любимыми тулзами и на своём железе. Всё быстро и удобно, пока туннель не обрывается из-за плохого Wi-Fi или очередного «тайм-аута».

— Позволяет делать локальные билды, открывать тяжёлые IDE, и вообще чувствовать себя настоящим специалистом.

— Если что-то пойдёт не так — сам себе DevOps и саппорт.

С удалённым рабочим столом вас ждёт:

— Работа через видеотрансляцию: вроде как «в офисе», но только наблюдаете за своей же мышкой.

— Все ресурсы сервера под контролем ИТ, зато ничего не упадёт, кроме вашего терпения.

💬 А как обстоят дела с безопасностью у вас на работе? Дают выбор или заставляют работать через что-то одно? Делитесь болью в комментариях 👇

🐸Библиотека Go разработчика #междусобойчик
Please open Telegram to view this post
VIEW IN TELEGRAM
📰 Еженедельный дайджест

Отобрали для вас лучшее за неделю.

Microsoft выпускает обновлённые сборки Go 1.24.3-1 и 1.23.9-1
Эти обновления включают важные исправления безопасности и доступны для загрузки.

Предложение по добавлению GOOS=none
Обсуждается внедрение новой целевой платформы GOOS=none — для запуска Go-программ на «голом железе», без участия ОС.

Новый выпуск подкаста о Go
В этом эпизоде обсуждаются подходы к конфигурации приложений на Go, тонкости работы с bare metal и создание собственных response writers.

7 архитектурных паттернов, которые должен знать каждый программист

Почему база данных тормозит ваше приложение и как это исправить

🐸Библиотека Go разработчика #свежак
Please open Telegram to view this post
VIEW IN TELEGRAM
Что выведет код

Пишите свои варианты в комментарии 👇
Please open Telegram to view this post
VIEW IN TELEGRAM
👍 Топ-вакансий для Go-разработчиков за неделю

Golang Developer — от 240 000, Офис/Гибрид (Москва)

Middle Golang Backend Engineer — до 437 000 ₽, Удаленно (Филиппины)

Golang Developer — от 3 000 €, Удаленно (Белград)

Senior Golang-разработчик — от 250 000 ₽, Удаленно (Москва)

Бустер — удалённо (не только Москва)

➡️ Еще больше топовых вакансий — в нашем канале Go jobs
Please open Telegram to view this post
VIEW IN TELEGRAM
🛠 Очерёдность SQL запросов

Подготовили для вас шпаргалку по запросам к БД. Нарисовали что за чем следует и как от этого меняются данные.

🐸Библиотека Go разработчика #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
Грин-флаги в вакансиях: 10 признаков хорошего работодателя

Пока одни сосредоточены на том, как произвести впечатление на работодателя, опытные соискатели внимательно читают вакансии и ищут признаки того, что перед ними достойная компания.

В статье подробно о том, как распознать хорошего работодателя ещё до собеседования, просто внимательно вчитавшись в текст вакансии.

📎 Читать статью

🐸Библиотека Go разработчика
Please open Telegram to view this post
VIEW IN TELEGRAM
🛠 Как использовать новую директиву tool

До Go 1.24, чтобы «закрепить» зависимости на CLI-инструменты, разработчики использовали такой хак:
// tools.go
//go:build tools

package tools

import (
_ "github.com/golang/mock/mockgen"
)


Теперь всё намного проще

1. Добавьте инструмент в go.mod:
go get tool github.com/golang/mock/[email protected]


2. Это создаст запись:
tool github.com/golang/mock/mockgen v1.6.0


Инструмент не будет включён в go build — он «за кадром», только как зависимость для разработки.

Важно:

• tool не устанавливает инструмент — он лишь фиксирует его как зависимость.
• Команда go mod tidy не удаляет такие записи.
• Отлично подходит для корпоративных и командных проектов, где важна единая версия

🐸Библиотека Go разработчика #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
🔄 go-size-analyzer v1.9.0

Инструмент для анализа размера скомпилированных Go-бинарников, go-size-analyzer, получил обновление, включающее экспериментальную поддержку WebAssembly и улучшения в стабильности.

Теперь можно анализировать файлы WebAssembly, сгенерированные с помощью go gc. На данный момент реализован только анализатор pclntab; поддержка анализаторов symbol и dwarf пока отсутствует.

➡️ Почитать о релизе

🐸Библиотека Go разработчика #свежак
Please open Telegram to view this post
VIEW IN TELEGRAM
📋 Чек-лист по синтаксису Go

Для разработчика на Go важно не только написать работающий код, но и сделать его понятным, чистым и соответствующим идиомам языка.

Составили для вас чек-лист, который поможет ускорить разработку в разы за счёт правильного и чистого кода.

Основы синтаксиса

• Используется правильный package — каждый файл начинается с корректного определения пакета
• Импорты сгруппированы и отсортированы (стандартная библиотека, внешние пакеты, внутренние)
• Константы и переменные объявлены с типами, где это необходимо (var и const)
• Используется короткое объявление переменных := в локальной области

Функции и методы

• Функции имеют четкие и понятные имена (глаголы для действий)
• Используется явный возврат значений (не прячем error)
• Обработка ошибок — всегда проверяется if err != nil
• Используются именованные возвращаемые значения для улучшения читаемости (по необходимости).
• Методы объявлены с указателем *Type для изменения состояния (если нужно).

Циклы и условия

• Циклы for написаны лаконично и с понятной логикой (без лишних вложенностей).
• Используется switch вместо цепочек if-else там, где это уместно.
• В условных выражениях нет лишних скобок — Go этого не требует.

Структуры и интерфейсы

• Структуры и интерфейсы объявлены с понятными именами.
• Используются теги для JSON, если структура используется для сериализации (json:"fieldName").
• Методы интерфейса определены минимально и по назначению.
• Композиция структур вместо наследования, где это возможно.

Работа с ошибками

• Ошибки возвращаются явно из функций (return err).
• Используются кастомные типы ошибок или fmt.Errorf с %w для обёртки ошибок.
• Важные ошибки логируются или обрабатываются на уровне вызова.

Чистота кода и стиль

• Форматирование соответствует gofmt / goimports.
• Лишние комментарии и неиспользуемые переменные удалены.
• Функции не слишком длинные — каждая отвечает за одну задачу.
• Использование defer для освобождения ресурсов и закрытия файлов/соединений.
• Нет глобальных переменных, если это можно избежать.

Работа с пакетами

• Пакеты не слишком большие, разделены по функционалу.
• Используются правильные уровни видимости: экспортируемые (с большой буквы) и неэкспортируемые элементы.
• Пакеты имеют README с описанием назначения (по возможности).

Оптимизация и производительность

• Используются срезы и карты эффективно (избегаем ненужных копирований).
• Избегается выделение памяти в горячих циклах.
• Используются каналы и горутины с правильным управлением (контекст, тайм-ауты).

Документация

• Публичные функции, типы и пакеты имеют комментарии в формате GoDoc.
• Документы объясняют назначение и использование, а не только перефразируют имена функций.

🐸Библиотека Go разработчика #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
🚨 Смешные новости про IT теперь в одном канале

Мы запустили @hahacker_news — наш новый юмористический IT-канал.

Туда будем постить лучшие шутки до 19го мая, которые вы присылали на конкурс.

👉 @hahacker_news — голосование уже идёт, переходите, читайте, угарайте и оставляйте реакции
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🧑‍💻 Расслабление и концентрация на коде

Zen Mode — это специальный режим работы в GoLand, который минимизирует визуальные отвлекающие элементы и позволяет полностью сосредоточиться на написании кода.

В этом режиме скрываются все панели, вкладки и прочие элементы интерфейса, которые могут отвлекать внимание.

Как его включить

1. Вызовите Find Action — Ctrl+Shift+A
2. Введите в поиске команду «Zen Mode».
3. Активируйте её — интерфейс перейдёт в минималистичный вид.

Как работать без вкладок

• Используйте Navigation Bar (включается через Alt+Home или по команде) — это компактная строка навигации по проекту и файлам.

• Воспользуйтесь поиском файлов (Ctrl+Shift+N / Cmd+Shift+O) для быстрого открытия нужного файла.

• Используйте быстрые переходы, чтобы переключаться между последними файлами.

Важно освоить эффективные методы навигации, чтобы компенсировать отсутствие привычных элементов интерфейса.

🐸Библиотека Go разработчика #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
⚙️ Простыми словами о планировщике

Go умудряется масштабировать тысячи горутин с минимальной нагрузкой на систему благодаря уникальной архитектуре своего планировщика.

В основе работы планировщика лежит модель GMP — связка из горутины (G), потока ОС (M) и абстракции процессора (P). Именно она позволяет Go удерживать баланс между легковесностью и управляемостью.

Чтобы понять, как Go так эффективно распределяет задачи, нужно заглянуть под капот его механизма выполнения.

➡️ Подробнее про работу планировщика

🐸Библиотека Go разработчика #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
🎮 Что мы загадали в ребусе

Попробуйте отгадать слово из go в комментариях 👇

P.S. Слова на английском языке

🐸Библиотека Go разработчика #междусобойчик
Please open Telegram to view this post
VIEW IN TELEGRAM
📰 Дайджест недели

Без лишнего: мы собрали для вас только лучшее

Свежий выпуск подкаста Cup o' Go
Обсуждение ухода Иэна Лэнса Тейлора из команды Go и беседа с Кевином Хоффманом из SparkLogs, который делится своими взглядами на важность эмпатии в разработке и находит радость в процессе логирования.

Интеграция PostgreSQL в Go
Описывается использование драйвера pgx с пулом подключений, управление миграциями с помощью инструмента tern, организацию кода через паттерн репозиториев и настройку среды разработки с использованием Makefile и Docker.

Грин-флаги в вакансиях: 10 признаков хорошего работодателя

go-sandbox
Веб-инструмент, предоставляющий опыт разработки на Go, приближенный к полноценной IDE.

go-size-analyzer v1.9.0

goimapnotify 2.5
Вышла новая версия утилиты goimapnotify — IMAP IDLE-клиента на Go, позволяющего выполнять скрипты при изменениях в почтовом ящике.

В обновлении добавлена поддержка команды IMAP ID и шаблонов в конфигурации, а также улучшена обработка нестандартных ответов серверов.

Смешные новости про IT теперь в одном канале

🐸Библиотека Go-разработчика #свежак
Please open Telegram to view this post
VIEW IN TELEGRAM
2025/05/18 17:11:30
Back to Top
HTML Embed Code: