🦫 Самоучитель по Go для начинающих. Часть 5
Продолжаем освежать в памяти основы Go. На этот раз карточки про условия и циклы.
➡️ Самоучитель часть 5
🐸 Библиотека Go-разработчика #буст
Продолжаем освежать в памяти основы Go. На этот раз карточки про условия и циклы.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥 Последняя неделя перед стартом курса по AI-агентам
Старт курса уже 5го числа! Если вы планировали вписаться — сейчас ПОСЛЕДНИЙ шанс забронировать место
На курсе:
— разложим LLM по косточкам: токенизация, SFT, PEFT, инференс
— соберём RAG и научимся оценивать его адекватно
— построим настоящую мультиагентную систему — архитектуру, которая умеет расти
— разберём CoPilot, сломаем через prompt injection (спасибо Максу)
— и наконец, посмотрим, как это работает в MCP и реальных кейсах
📍 Это 5 живых вебинаров + раздатка + домашки + чат с преподавателями
И главное — возможность реально разобраться, как проектировать системы на LLM, а не просто «поиграться с API»
👉 Курс здесь
Старт курса уже 5го числа! Если вы планировали вписаться — сейчас ПОСЛЕДНИЙ шанс забронировать место
На курсе:
— разложим LLM по косточкам: токенизация, SFT, PEFT, инференс
— соберём RAG и научимся оценивать его адекватно
— построим настоящую мультиагентную систему — архитектуру, которая умеет расти
— разберём CoPilot, сломаем через prompt injection (спасибо Максу)
— и наконец, посмотрим, как это работает в MCP и реальных кейсах
📍 Это 5 живых вебинаров + раздатка + домашки + чат с преподавателями
И главное — возможность реально разобраться, как проектировать системы на LLM, а не просто «поиграться с API»
👉 Курс здесь
Please open Telegram to view this post
VIEW IN TELEGRAM
Составили для вас мини-гайд из 10 ключевых пунктов по обеспечению безопасности Go-приложений.
• Регулярно обновляйте модули через
go get -u
и проверяйте go.mod на устаревшие версии.• Используйте
go mod tidy
для удаления ненужных пакетов.• Интегрируйте govulncheck для поиска известных уязвимостей в зависимостях.
• Настройте регулярный SAST/DAST-сканинг (например, GitHub Advanced Security).
• Минимизируйте права сервисных аккаунтов и контейнеров.
• Отдельные роли для чтения и записи данных в хранилище.
• Проверяйте и экранируйте все внешние данные (формы, JSON, URL-параметры).
• Используйте подготовленные выражения (prepared statements) для запросов к БД.
• Всегда передавайте context.Context в сетевых и длительных операциях.
• Задавайте адекватные дедлайны и таймауты (context.WithTimeout).
• Не храните ключи и пароли в коде или репозитории: используйте Vault, AWS Secrets Manager или переменные окружения.
• Применяйте современные алгоритмы из пакета crypto (AES-GCM, SHA-256, ECDSA).
• Используйте последние версии TLS (1.2+) и строгие cipher suites.
• Проверяйте сертификаты и избегайте
InsecureSkipVerify=true.
• Запускайте приложение с флагом -race в процессе тестирования.
• Избегайте гонок при доступе к разделяемым переменным: применяйте
sync.Mutex
или каналы.• Интегрируйте
go test --fuzz
для автоматической генерации некорректных входных данных.• Проводите стресс-тесты сетевых и критичных компонентов.
• Логируйте события безопасности (неудачные аутентификации, ошибки валидации) с уровнем Warn/Error.
• Настройте алерты по подозрительным паттернам и аномалиям (Prometheus Alertmanager, Grafana).
Насколько безопасны ваши приложения? Проверьте по списку
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👀 Что там в новом Go
Обновления это всегда хорошо, а обновления любимого языка — ещё лучше!
Все ключевые фичи и экспериментальные флаги обновления уже ждут.
➡️ Смотреть видео
🐸 Библиотека Go-разработчика #буст
Обновления это всегда хорошо, а обновления любимого языка — ещё лучше!
Все ключевые фичи и экспериментальные флаги обновления уже ждут.
Please open Telegram to view this post
VIEW IN TELEGRAM
Route 256 — бесплатные курсы Ozon Tech для качественного роста в профессии.
Курсы длятся 2 месяца. За это время вы исследуете возможности языка микросервисов в условиях работы с высоконагруженными системами.
Чтобы попасть, зарегистрируйтесь и пройдите отборочный контест 3 августа: https://s.ozon.ru/NAeaXuM
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
Go-пикник? Да, вам не послышалось!
17 июля Go-разработчики собираются на Avito Grill & Go, чтобы понетворкать, сыграть в кастомные игры и, конечно, вкусно поесть.
В чилловой обстановке участники смогут:
➡️ поучаствовать в мемном Fast food System Design;
➡️ почелленджить над кодом;
➡️ обсудить карьерные треки;
➡️ а также перенять экспертизу напрямую от разработчиков Авито.
Участие бесплатное, но регистрация обязательна →
17 июля Go-разработчики собираются на Avito Grill & Go, чтобы понетворкать, сыграть в кастомные игры и, конечно, вкусно поесть.
В чилловой обстановке участники смогут:
Участие бесплатное, но регистрация обязательна →
Please open Telegram to view this post
VIEW IN TELEGRAM
Безопасность приложения не должна делаться в последнюю очередь. Интеграция Google SSO с Keycloak — это решение, которое стоит изучить для защиты вашего проекта.
Интересно, что при правильной настройке можно значительно упростить процессы управления пользователями и маппинга их атрибутов.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
📣
В мире Go-разработки постоянно идут споры: нужно ли всегда явно вызывать
Явный
• Освобождает внутренний таймер сразу после выхода из функции, а не дожидается таймаута или сборки мусора.
• Немедленно отменяет все дочерние операции и горутины, слушающие этот контекст.
• Делает код предсказуемым и единообразным в масштабных сервисах с долгим временем работы.
Пропуск
• Таймер автоматически сбросится при наступлении таймаута, так что в «одноразовых» сценариях утечек практически не будет.
• В простых CLI-утилитах или скриптах с коротким жизненным циклом явный cancel может быть избыточным.
• Минимизирует «шум» в коде, когда контекст не передаётся дальше и не порождает дополнительных горутин.
💬 Какой подход предпочитаете вы? Делитесь в комментариях 👇
🐸 Библиотека Go-разработчика #междусобойчик
cancel
для context.WithTimeout()
обязательно или избыточноВ мире Go-разработки постоянно идут споры: нужно ли всегда явно вызывать
cancel
после создания контекста с таймаутом.Явный
cancel
— гарантия чистоты ресурсов• Освобождает внутренний таймер сразу после выхода из функции, а не дожидается таймаута или сборки мусора.
• Немедленно отменяет все дочерние операции и горутины, слушающие этот контекст.
• Делает код предсказуемым и единообразным в масштабных сервисах с долгим временем работы.
Пропуск
cancel
— упрощение там, где это не важно• Таймер автоматически сбросится при наступлении таймаута, так что в «одноразовых» сценариях утечек практически не будет.
• В простых CLI-утилитах или скриптах с коротким жизненным циклом явный cancel может быть избыточным.
• Минимизирует «шум» в коде, когда контекст не передаётся дальше и не порождает дополнительных горутин.
💬 Какой подход предпочитаете вы? Делитесь в комментариях 👇
Please open Telegram to view this post
VIEW IN TELEGRAM
Представляем подборку материалов и новостей недели.
— Продвинутый gRPC в микросервисах
В обзоре на уровне архитекторов рассматриваются реальные кейсы от Dropbox и Netflix.
Как введение явных таймаутов устранило каскадные задержки, как gRPC-перехватчики помогают унифицировать мониторинг и аутентификацию, и какие стратегии балансировки нагрузки подходят для высоконагруженных кластеров.
— Обзор линковки Go-бинарников и приёмов кросс-компиляции
В ролике рассказывают, как собрать полностью статический Go-бинарник с помощью
CGO_ENABLED=0
или тега netgo
, а затем уменьшить его размер, убрав отладочные символы флагами -s -w
.— Новый эпизод Cup o’ Go
Ведущие обсуждают новости и проводят интервью о подготовке Go West Conf и работы Forge Utah Foundation.
— Расширенный выбор окружений Go и поддержка golangci-lint v2
Стало доступно расширение vscode-go для VS Code с улучшенным UI выбора SDK — теперь разделитель помогает быстро увидеть, какие версии уже установлены, и какие можно загрузить.
Расширение официально поддерживает golangci-lint v2: его можно установить через «Go: Install/Update Tools», переключать по рабочим областям и перенастраивать с помощью
go.lintFlags
— Еженедельный буст канала
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Библиотека задач по Go | тесты, код, задания
❓ Что происходит, если несколько каналов в select готовы для операции одновременно
Anonymous Quiz
5%
Все каналы выполняются одновременно
26%
select выбирает первый канал по порядку в коде
4%
Выбирается канал с минимальной длиной очереди
65%
Выбирается случайный канал, если несколько готовы