Golang Backend | YeaHub
636 subscribers
181 photos
19 videos
1 file
307 links
Теория, подготовка к интервью и курсы для Golang разработчиков

YeaHub — это платформа для IT-специалистов, объединяющая обучение, карьерный рост, развитие и сообщество единомышленников.

Платформа: https://yeahub.ru

Для связи: @ruslan_kuyanets
Download Telegram
This media is not supported in your browser
VIEW IN TELEGRAM
#полезное
🛞 Outrig — Observability-инструмент для Go

Outrig — это open-source инструмент для разработчиков на Go, позволяющий:

🟠 В реальном времени искать по логам
🟠 Отслеживать goroutines
🟠 Следить за переменными и метриками рантайма

Всё работает локально — никакие данные не покидают вашу машину.

Поддержка: macOS и Linux (Windows — скоро)

Идеален для дебага, мониторинга и глубокого понимания поведения Go-приложений.
Гитхаб

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
#Собес #bash
🤔 Как скопировать файлы в Bash?

Чтобы скопировать файл, используйте команду ср :
cp source_file destination_file

Для копирования папки используйте -r :
cp -r source_directory destination_directory


👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
🤷‍♂1
#полезное
😘 if err != nil остаётся с нами

Команда Go официально закрыла тему синтаксического сахара для обработки ошибок:
https://go.dev/blog/error-syntax

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


👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
😁1
#полезное
👍 Gollama — терминальный менеджер для Ollama-моделей. Этот инструмент с TUI-интерфейсом упрощает работу с локальными LLM: от сортировки по размеру и квантованию до редактирования Modelfile прямо в терминале. Горячие клавиши позволяют быстро запускать модели, выгружать их из памяти или копировать на удалённые серверы через функцию "spit".

Инструмент имеет интеграцию с LM Studio для автоматического создания симлинков и расчёт потребления vRAM под разные контексты. Проект активно развивается: недавно добавили поддержку Hugging Face-моделей в калькуляторе памяти.
Гитхаб

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
#Собес #bash
🤔 Что означает S? в Bash?

$? содержит код завершения последней команды:
- 0 - успешное выполнение.
- 1 и другие - ошибка.
Пример:
ls / nonexistent_folder
echo $? # Выведет 2 (ошибка)


👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
1
#полезное
😊 konf — простая и гибкая библиотека для работы с конфигурациями в Go!

Она поддерживает загрузку конфигурации из различных источников, включая файлы, переменные окружения, флаги и облачные сервисы (AWS, Azure, GCP). Библиотека позволяет отслеживать изменения конфигураций, а также уведомлять об этих изменениях через нотификаторы. Конфигурационные источники можно легко менять, что делает её удобной для различных приложений, требующих гибкости в настройке.
Гитхаб

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
#статьи
😬 Построение анализатора разделов диска на Go

Задумывались ли вы, что происходит, когда вы запускаете fdisk -l или открываете "Управление дисками" в Windows? Эти утилиты считывают необработанные данные с диска, чтобы отобразить информацию о разделах.

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

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
1
#полезное
😐 Быстрая альтернатива файлообменникам — Gokapi

Gokapi — это минималистичный, self-hosted сервис для временного обмена файлами, написанный на Go. Его цель — быть лёгкой и приватной заменой таким сервисам, как WeTransfer.

Возможности:
🟠 Загрузка и скачивание файлов через веб-интерфейс
🟠 Временное хранение (срок жизни настраивается)
🟠 Одноразовые или многоразовые ссылки
🟠 Поддержка паролей
🟠 Простота установки — бинарник и всё

Без лишнего функционала, без регистрации, без отслеживания — только удобный и быстрый обмен файлами.
Гитхаб

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
1
#Собес #bash
🤔 Разница между одинарными и двойными кавычками в Bash

Одинарные кавычки ' ' предотвращают интерпретацию переменных и команд, а двойные " " позволяют их подставлять.
VAR="world"
echo 'Hello $VAR' # Выведет: Hello $VAR
echo "Hello $VAR" # Выведет: Hello world


👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
#полезное
❤️‍🔥 RuleGo — легковесный rule-движок на Go для гибких систем. Когда бизнес-логика становится слишком сложной для хардкода, а традиционные workflow-движки кажутся громоздкими, этот проект предлагает элегантное решение. Инструмент позволяет описывать правила обработки данных в виде JSON-цепочки с компонентами, которые можно пересобирать на лету без перезапуска приложения.

Проект имеет поддержку edge-вычислений — движок стабильно работает даже на Raspberry Pi с потреблением памяти около 19MB. Встроенные компоненты для HTTP, MQTT и JavaScript-трансформаций делают его идеальным для IoT-сценариев, а визуальный редактор RuleGo-Editor упрощает конфигурирование.
Гитхаб

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
#полезное
👨‍💻 Фреймворк, который позволяет писать логику состояния приложения на чистом Go, с хранением всех данных в памяти или на диске, не беспокоясь о масштабируемости и доступности
Гитхаб

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
#статьи
📞 Вы неправильно используете интерфейсы в Go — архитектурные запахи: неверные абстракции

Интерфейсы играют ключевую роль в архитектуре программного обеспечения. Их сила заключается в способности абстрагировать реализацию.

Одной из часто обсуждаемых тем на собеседованиях у разработчиков являются принципы SOLID. Интерфейсы покрывают большую часть практической реализации этих принципов. Например, чтобы следовать принципу открытости/закрытости или инверсии зависимостей, вам потребуется интерфейс.

Запомните простое правило: если вы хотите скрыть детали реализации от вызывающей стороны (клиента), скорее всего, вы будете использовать интерфейс.

Следовательно, если вы хотите абстрагировать один пакет от другого, интерфейс — подходящий инструмент.

Теперь давайте разберёмся, с какими проблемами использования интерфейсов мы сталкиваемся в Go-приложениях
Читать статью

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
1
#Собес #bash
🤔 Как экспортировать переменную в Bash и зачем это нужно?

Чтобы сделать переменную доступной для всех запущенных процессов, используется export :
export VAR="Hello"

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

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
#полезное
🤓 Schema — удобный инструмент для преобразования данных между HTML-формами и Go-структурами. Этот пакет из экосистемы Gorilla упрощает работу с веб-формами, автоматически связывая поля структуры с данными POST-запросов и наоборот.

Библиотека поддерживает базовые типы данных, позволяет задавать кастомные имена полей через тег schema и обрабатывать значения по умолчанию. Например, можно декодировать форму в структуру Person с полями Name и Phone всего парой строк кода.
Гитхаб

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
#полезное
😱 Gorsk — готовый стартовый набор для создания RESTful-сервисов на Go с акцентом на чистую архитектуру. Этот проект избавляет от рутинной настройки, предлагая сразу работающую основу с JWT-аутентификацией, RBAC, валидацией данных и Swagger-документацией.

Инструмент имеет модульную структуру, позволяющую легко заменять компоненты вроде Echo на другой фреймворк или ORM. В комплекте: CRUD для пользователей, тесты с моками и контейнеризованные запросы к БД.
Гитхаб

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
1👎1
#полезное
😵‍💫 Инструмент наблюдаемости с открытым исходником для разработки на Go

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

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
#Собес #bash
🤔 Как объявить переменную в Bash?

B Bash переменная объявляется без ключевого слова, просто через = без пробелов:
VAR=value

Значение переменной можно получить через $VAR .

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
#полезное
📞 Go-проект для развертывания контейнеризованных приложений в виде платформы веб-приложений для внутренних инструментов. Clace поддерживает Linux, Windows и OSX, предоставляя GitOps-подход для управления веб-приложениями
Гитхаб

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
#новости
😊 Эта статья объясняет логику работы одноразовых паролей (OTP) при оффлайн-генерации токенов!

Рассматриваются алгоритмы, такие как HOTP (основанный на счётчике) и TOTP (основанный на времени), их криптографические основы, включая использование HMAC, и процесс синхронизации между клиентом и сервером. Также обсуждаются преимущества и ограничения этих методов, а также их реализация в реальных системах безопасности.
Ссылка: *клик*

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
#полезное
😇 LotusDB — гибридный key-value движок на Go. Этот проект объединяет лучшее из двух миров — скорость чтения B+-деревьев и эффективность записи LSM-деревьев. Инструмент позиционируется как альтернатива Badger и BBolt, но с меньшими накладными расходами на чтение и дисковое пространство.

Проект поражает простотой интеграции: достаточно импортировать пакет и указать путь для хранения данных. LotusDB активно развивается, а в Slack-чате уже собирается сообщество энтузиастов.
Гитхаб

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1