@golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Истоки и проблемы: В Go 1.18 появились типовые параметры и ограничения, которые требовали введения core types для унификации операций над обобщёнными типами. Однако это добавило сложности как в спецификацию языка, так и в понимание работы некоторых операций (например, срезов и индексирования) даже для негeneric-кода.
Изменения в Go 1.25: В предстоящем релизе Go 1.25 концепция core types была полностью удалена из спецификации. Вместо этого теперь используются более явные и понятные правила, что упрощает изучение языка и повышает ясность спецификации без изменения поведения существующего кода.
Таким образом, пост подчёркивает, что отказ от core types делает спецификацию Go проще и понятнее, одновременно открывая возможности для будущих улучшений языка.
🔗 Читать
@Golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
В проектах с разными версиями Terraform, OpenTofu, Terragrunt или Atmos важно быстро и надёжно переключаться между ними.
tenv автоматизирует этот процесс и делает его максимально удобным.
Возможности:
• Гибкое управление версиями — легко переключайтесь между версиями OpenTofu, Terraform, Terragrunt и Atmos
• Автоматическое определение версии — анализирует все релевантные конфигурационные файлы и точно подбирает нужную версию
• Проверка подписи — поддержка PGP (через gopenpgp) и cosign
• Быстрее и стабильнее, чем tfenv и аналоги — написан на Go, без Shell-магии
• Кроссплатформенный — работает на Linux, macOS, Windows и других ОС
• Простая установка — доступен через Homebrew, APT, Chocolatey и другие пакетные менеджеры
• Использование как Go-модуля — предоставляет стабильный API через tenvlib для интеграции в собственные решения
tenv совместим с синтаксисом
tfenv / tofuenv,
но предлагает более надёжную архитектуру и современный подход к управлению версиями в DevOps- и SRE-процессах.@Golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
Бэкенд-разработчики, отзовитесь!
😎 Сразу три команды в Авито в поиске специалистов:
1️⃣ Бэкенд-разработчик в команду Авито Авто
Продукт, с которым вы будете работать, представляет собой платформу по обслуживанию транзакционных бизнесов вертикали Авито Авто. Вам предстоит решать задачи для широкого спектра бизнес-кейсов: от аренды спецтехники до подбора автомобилей под потребности пользователей.
2️⃣ Бэкенд-разработчик в команду Авито Работы
Ваша команда будет заниматься разработкой поискового движка и методами ранжирования. Совместно с техническим лидером проекта вам предстоит проработать архитектуру будущей поисковой системы, технический дизайн решения и создать поисковый движок для нового кластера.
3️⃣ Бэкенд-разработчик в команду финтеха
Продукт вашей команды помогает пользователям решать задачи, связанные с удобным и стабильным взаимодействием с платежами и финансовыми инструментами. В планах — разработка личного кабинета для управления финансовыми инструментами и увеличение конверсии успешных оплат с использованием AB-тестирования.
А ещё вас ждёт:
- прозрачная система премий, достойная зарплата — размер обсуждается на собеседовании
- возможность реализовать свои идеи в проекте с многомиллионной аудиторией
- талантливая команда, готовая поддержать ваши инициативы
- мощное железо, дополнительные мониторы и всё, что нужно для продуктивной работы
- личный бюджет на обучение, который можно тратить на книги, курсы и конференции
- забота о здоровье: с первого дня у вас будет ДМС со стоматологией, в офисе принимают терапевт и массажист
- удалённая работа и комфортный офис в двух минутах от метро «Белорусская»: панорамный вид на центр города, места для уединённой работы и зоны отдыха.
Откликайтесь по ссылкам!
Продукт, с которым вы будете работать, представляет собой платформу по обслуживанию транзакционных бизнесов вертикали Авито Авто. Вам предстоит решать задачи для широкого спектра бизнес-кейсов: от аренды спецтехники до подбора автомобилей под потребности пользователей.
Ваша команда будет заниматься разработкой поискового движка и методами ранжирования. Совместно с техническим лидером проекта вам предстоит проработать архитектуру будущей поисковой системы, технический дизайн решения и создать поисковый движок для нового кластера.
Продукт вашей команды помогает пользователям решать задачи, связанные с удобным и стабильным взаимодействием с платежами и финансовыми инструментами. В планах — разработка личного кабинета для управления финансовыми инструментами и увеличение конверсии успешных оплат с использованием AB-тестирования.
А ещё вас ждёт:
- прозрачная система премий, достойная зарплата — размер обсуждается на собеседовании
- возможность реализовать свои идеи в проекте с многомиллионной аудиторией
- талантливая команда, готовая поддержать ваши инициативы
- мощное железо, дополнительные мониторы и всё, что нужно для продуктивной работы
- личный бюджет на обучение, который можно тратить на книги, курсы и конференции
- забота о здоровье: с первого дня у вас будет ДМС со стоматологией, в офисе принимают терапевт и массажист
- удалённая работа и комфортный офис в двух минутах от метро «Белорусская»: панорамный вид на центр города, места для уединённой работы и зоны отдыха.
Откликайтесь по ссылкам!
Please open Telegram to view this post
VIEW IN TELEGRAM
Статья посвящена недавнему объявлению Microsoft о миграции компилятора TypeScript с JavaScript на Go с целью повышения скорости компиляции в 10 раз.
Основные моменты:
▪ Фокус на компиляторе, а не на языке: Улучшение касается именно скорости работы компилятора, а не быстродействия самого TypeScript-кода в браузере или Node.js.
▪ Архитектурные различия: Объясняется, что однопоточная модель Node.js с event loop не оптимальна для CPU-интенсивных задач, таких как компиляция, в отличие от Go с его легковесными горутинами и нативной поддержкой параллелизма.
▪ Причины повышения производительности: Скорее всего, 10-кратное улучшение связано с тем, что оригинальная реализация на JavaScript не была достаточно оптимизирована для вычислительно сложных задач, а переход на Go позволяет обойти ограничения event loop.
▪ Альтернативы и их сложности: Рассматриваются и недостатки использования worker threads в Node.js, где проблемы с обменом данными и накладными расходами остаются актуальными.
▪ Вопросы поддержки браузеров: Поднимается вопрос, как будет обеспечена работа TypeScript в браузерах, ведь Go не работает нативно в них – возможные решения включают WebAssembly или поддержание параллельной реализации на JavaScript.
Статья анализирует не только заявленный прирост производительности, но и более глубокие архитектурные аспекты, демонстрируя, почему выбор Go может быть оправдан для сложных, CPU-интенсивных задач, таких как компиляция TypeScript.
📌 Читать полностью
@golang_google
Основные моменты:
▪ Фокус на компиляторе, а не на языке: Улучшение касается именно скорости работы компилятора, а не быстродействия самого TypeScript-кода в браузере или Node.js.
▪ Архитектурные различия: Объясняется, что однопоточная модель Node.js с event loop не оптимальна для CPU-интенсивных задач, таких как компиляция, в отличие от Go с его легковесными горутинами и нативной поддержкой параллелизма.
▪ Причины повышения производительности: Скорее всего, 10-кратное улучшение связано с тем, что оригинальная реализация на JavaScript не была достаточно оптимизирована для вычислительно сложных задач, а переход на Go позволяет обойти ограничения event loop.
▪ Альтернативы и их сложности: Рассматриваются и недостатки использования worker threads в Node.js, где проблемы с обменом данными и накладными расходами остаются актуальными.
▪ Вопросы поддержки браузеров: Поднимается вопрос, как будет обеспечена работа TypeScript в браузерах, ведь Go не работает нативно в них – возможные решения включают WebAssembly или поддержание параллельной реализации на JavaScript.
Статья анализирует не только заявленный прирост производительности, но и более глубокие архитектурные аспекты, демонстрируя, почему выбор Go может быть оправдан для сложных, CPU-интенсивных задач, таких как компиляция TypeScript.
📌 Читать полностью
@golang_google
В этой игре вы бросаете фишки, стремясь составить линию из четырёх подряд по горизонтали, вертикали или диагонали.
Главная фишка проекта – AI противник, который оказывается неожиданно умным и сложным, заставляя вас применять стратегическое мышление и тактику.
ного интеллекта в играх.
📌 Github
@golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
@golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
Основные темы, рассмотренные в статье:
Что такое DNS и его значение:
DNS (Domain Name System) действует как телефонная книга интернета, преобразуя удобочитаемые доменные имена (например, google.com) в машинно-читаемые IP-адреса (например, 142.250.182.206), облегчая навигацию в сети.
Пошаговый процесс разрешения DNS:
1️⃣ Инициирование запроса: Локальный резолвер в операционной системе проверяет кэш на наличие IP-адреса запрашиваемого домена. Если адрес отсутствует, запрос направляется к рекурсивному DNS-резолверу.
2️⃣ Обращение к рекурсивному резолверу: Рекурсивный резолвер, такой как Google Public DNS (8.8.8.8) или Cloudflare DNS (1.1.1.1), принимает запрос и начинает процесс поиска.
3️⃣ Запрос к корневому DNS-серверу: Рекурсивный резолвер обращается к корневому серверу, который направляет его к соответствующему серверу верхнего уровня (TLD) для запрашиваемого домена.
4️⃣ Запрос к TLD-серверу: Сервер верхнего уровня (например, для доменов .com или .tech) указывает на авторитетный сервер конкретного домена.
5️⃣ Запрос к авторитетному серверу: Авторитетный сервер предоставляет окончательный IP-адрес запрашиваемого домена.
Создание собственного DNS-сервера на Go:
В статье вы найдите гайд по разработке простого DNS-сервера на Go, и предоставляет исходный код проекта для самостоятельного изучения.
Годное чтиво на выходные )
📌Читать
#junior #golang #go #dns
@golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
Получите оффер в Авито за одни выходные на Weekend Offer для опытных Go-разработчиков!
Что предлагают?
— работу над уникальными фичами и функционалом крупнейшего сервиса объявлений, включая разработку ML-моделей, VPN-решений и системы DDoS-защиты;
— конкурентную зарплату, ДМС и дополнительные дни отпуска;
— формат работы на выбор: офис или удаленка;
— мощное железо, опенсорс, ежегодный бюджет на обучение, а еще массажиста в офисе и премии.
Ждут в том числе бэкендеров с другим стеком, готовых переучиться на Go. Присоединяйтесь к масштабным проектам — регистрируйтесь до 23 апреля: https://u.to/6Is1Ig
Что предлагают?
— работу над уникальными фичами и функционалом крупнейшего сервиса объявлений, включая разработку ML-моделей, VPN-решений и системы DDoS-защиты;
— конкурентную зарплату, ДМС и дополнительные дни отпуска;
— формат работы на выбор: офис или удаленка;
— мощное железо, опенсорс, ежегодный бюджет на обучение, а еще массажиста в офисе и премии.
Ждут в том числе бэкендеров с другим стеком, готовых переучиться на Go. Присоединяйтесь к масштабным проектам — регистрируйтесь до 23 апреля: https://u.to/6Is1Ig
Разделы: HR-этап, техническое интервью, полезные ресурсы и топ вопросов по частоте.
Весь материал на русском, на основе опыта российских компаний. Бери и готовься!
🔗 Github
@golang_google
#devops #девопс
Please open Telegram to view this post
VIEW IN TELEGRAM
Готов к масштабному IT-событию?
GoCloud — конференция для разработчиков, инженеров, IT-руководителей и всех, кому интересны облака и AI.
На GoCloud тебя ждут три трека:
💻 Инфраструктура и сервисы
Доклады о K8s, Bare Metal, платформе данных и других облачных сервисах для ваших задач.
🧠 AI&ML
Погружение в будущее AI: инструменты, обмен опытом и анонсы продуктов, меняющих индустрию.
👨💻 Сценарии работы в облаке
Дискуссии и доклады о гибридных решениях, GenAI, безопасности и реальных кейсах клиентов.
30+ докладов, нетворкинг с экспертами и live-демо сервисов ждут тебя 10 апреля.
Регистрация по ссылке👈
GoCloud — конференция для разработчиков, инженеров, IT-руководителей и всех, кому интересны облака и AI.
На GoCloud тебя ждут три трека:
Доклады о K8s, Bare Metal, платформе данных и других облачных сервисах для ваших задач.
Погружение в будущее AI: инструменты, обмен опытом и анонсы продуктов, меняющих индустрию.
Дискуссии и доклады о гибридных решениях, GenAI, безопасности и реальных кейсах клиентов.
30+ докладов, нетворкинг с экспертами и live-демо сервисов ждут тебя 10 апреля.
Регистрация по ссылке
Please open Telegram to view this post
VIEW IN TELEGRAM
✍️ gosec — это инструмент статического анализа кода для Go, который выявляет уязвимости, сканируя AST и SSA-представление программы.
Вместо поверхностного поиска шаблонов он анализирует структуру кода, что позволяет находить сложные уязвимости, такие как SQL-инъекции, проблемы с криптографией или неправильные настройки TLS.
Инструмент можно легко настраивать: включать только нужные проверки, исключать определенные файлы и выводить отчеты в разных форматах.
🔐 Лицензия: Apache 2.0.
🤖 GitHub
@golang_google
Вместо поверхностного поиска шаблонов он анализирует структуру кода, что позволяет находить сложные уязвимости, такие как SQL-инъекции, проблемы с криптографией или неправильные настройки TLS.
Инструмент можно легко настраивать: включать только нужные проверки, исключать определенные файлы и выводить отчеты в разных форматах.
🔐 Лицензия: Apache 2.0.
🤖 GitHub
@golang_google
🆘 Notify — интрумент, представляющий способ получать мгновенные оповещения о критических событиях прямо в любимые мессенджеры и почту.
Проект подходит для любых сценариев уведомлений: от оповещений о завершении CI/CD-сборок до сигналов от домашних скриптов.
С недавних пор добавили поддержку
🤖 GitHub
@golang_google
Проект подходит для любых сценариев уведомлений: от оповещений о завершении CI/CD-сборок до сигналов от домашних скриптов.
С недавних пор добавили поддержку
Telegram, Slack, Discord
и других платформ через единый интерфейс. 🤖 GitHub
@golang_google
💡В мире технологий важно не просто следить за трендами, но и понимать, как они воплощаются в реальных проектах. Data Fusion 2025 — это конференция, где обсуждают практическое применение передовых ИТ-решений, от нейросетей до больших данных.
🚀 Что вас ожидает:
✅ 14 тематических треков — от искусственного интеллекта до кибербезопасности
✅ 250+ спикеров — эксперты индустрии, науки и бизнеса, готовые поделиться опытом и инсайтами
✅ 70+ сессий — глубокий анализ кейсов, обсуждение трендов и практических решений
💡 Почему это стоит посетить:
🔍 Поймёте, как выстраиваются передовые DS- и ML-системы — от пайплайнов до инфраструктуры
💬 Сможете задать вопрос тем, кто уже решает задачи на боевых данных, а не только пишет про них
🧩 Разберетесь в архитектурах, которые позволяют внедрять ИИ не “для отчёта”, а в реальные процессы
⚙️ Погрузитесь в лучшие практики DataOps, governance и synthetic data — с цифрами, метриками и кейсами
📅 Детали мероприятия:
🗓 16–17 апреля 2025 года
📍 Москва, технологический кластер «Ломоносов»
🎟 Участие бесплатно после прохождения онлайн-регистрации на официальном сайте в расширенной форме.
🔗 Подробнее о конференции и регистрация: data-fusion.ru
___
*DS — анализ данных (Data Science)
*ML — машинное обучение (Machine Learning)
*DataOps — операционное управление данными
*Governance — управление политиками и процессами работы с данными
*Synthetic data — синтетические данные
🚀 Что вас ожидает:
✅ 14 тематических треков — от искусственного интеллекта до кибербезопасности
✅ 250+ спикеров — эксперты индустрии, науки и бизнеса, готовые поделиться опытом и инсайтами
✅ 70+ сессий — глубокий анализ кейсов, обсуждение трендов и практических решений
💡 Почему это стоит посетить:
🔍 Поймёте, как выстраиваются передовые DS- и ML-системы — от пайплайнов до инфраструктуры
💬 Сможете задать вопрос тем, кто уже решает задачи на боевых данных, а не только пишет про них
🧩 Разберетесь в архитектурах, которые позволяют внедрять ИИ не “для отчёта”, а в реальные процессы
⚙️ Погрузитесь в лучшие практики DataOps, governance и synthetic data — с цифрами, метриками и кейсами
📅 Детали мероприятия:
🗓 16–17 апреля 2025 года
📍 Москва, технологический кластер «Ломоносов»
🎟 Участие бесплатно после прохождения онлайн-регистрации на официальном сайте в расширенной форме.
🔗 Подробнее о конференции и регистрация: data-fusion.ru
___
*DS — анализ данных (Data Science)
*ML — машинное обучение (Machine Learning)
*DataOps — операционное управление данными
*Governance — управление политиками и процессами работы с данными
*Synthetic data — синтетические данные
dbc4go
Это AI-генератор кода, который берет Go-код с контрактами (правилами), написанными прямо в комментариях, и создает новую версию кода.
▪️ Как работает?
Он "инструментирует" ваш код, добавляя в начало функций/методов блоки проверки, которые следят за выполнением контрактов во время работы программы.
▪️ Зачем нужно?
Чтобы автоматически проверять соблюдение условий (например, что функция получает правильные входные данные или возвращает ожидаемый результат) во время выполнения. Если контракт нарушен — программа упадет (panic), явно указывая на проблему.
▪️ Преимущество:
Контракты находятся в комментариях, поэтому исходный код остается валидным Go-кодом. Инструментированную версию можно использовать для тестирования (например, запустить go generate, а потом go test), чтобы повысить шансы на обнаружение багов, комбинируя тесты и контракты.
По сути, dbc4go помогает писать более надежный код на Go, внедряя проверки контрактов непосредственно во время выполнения.
📌 Github
@golang_google
Это AI-генератор кода, который берет Go-код с контрактами (правилами), написанными прямо в комментариях, и создает новую версию кода.
▪️ Как работает?
Он "инструментирует" ваш код, добавляя в начало функций/методов блоки проверки, которые следят за выполнением контрактов во время работы программы.
▪️ Зачем нужно?
Чтобы автоматически проверять соблюдение условий (например, что функция получает правильные входные данные или возвращает ожидаемый результат) во время выполнения. Если контракт нарушен — программа упадет (panic), явно указывая на проблему.
▪️ Преимущество:
Контракты находятся в комментариях, поэтому исходный код остается валидным Go-кодом. Инструментированную версию можно использовать для тестирования (например, запустить go generate, а потом go test), чтобы повысить шансы на обнаружение багов, комбинируя тесты и контракты.
По сути, dbc4go помогает писать более надежный код на Go, внедряя проверки контрактов непосредственно во время выполнения.
📌 Github
@golang_google
🎊 Выпущены версии Go 1.24.2 и 1.23.8!
Эти релизы являются минорными и в основном направлены на исправление проблем безопасности.
🔐 Безопасность: Содержит исправление безопасности для net/http (CVE-2025-22871).
📣 Анонс: https://groups.google.com/g/golang-announce/c/Y2uBTVKjBQk/m/cs_6qIK5BAAJ
📦 Скачать https://go.dev/dl/#go1.24.2
#golang #go #release
@golang_google
Эти релизы являются минорными и в основном направлены на исправление проблем безопасности.
🔐 Безопасность: Содержит исправление безопасности для net/http (CVE-2025-22871).
📣 Анонс: https://groups.google.com/g/golang-announce/c/Y2uBTVKjBQk/m/cs_6qIK5BAAJ
📦 Скачать https://go.dev/dl/#go1.24.2
#golang #go #release
@golang_google
🌐 GoDoxy — лёгкий и быстрый reverse proxy с Web UI.
Особенности:
— простая настройка;
— многоузловая конфигурация с агентами;
— понятные сообщения об ошибках;
— авто SSL через Let's Encrypt (DNS-01);
— горячая перезагрузка при изменениях;
— маршруты из Docker-контейнеров;
— idlesleeper: спящий режим при простое;
— резервный HTTP-прокси и перенаправление TCP/UDP;
— поддержка OpenID Connect;
— middleware и кастомные страницы ошибок;
— Web UI: управление, редактор, мониторинг, логи;
— работает на Linux/AMD64, Linux/ARM64.
🔗 Github
@golang_google
Особенности:
— простая настройка;
— многоузловая конфигурация с агентами;
— понятные сообщения об ошибках;
— авто SSL через Let's Encrypt (DNS-01);
— горячая перезагрузка при изменениях;
— маршруты из Docker-контейнеров;
— idlesleeper: спящий режим при простое;
— резервный HTTP-прокси и перенаправление TCP/UDP;
— поддержка OpenID Connect;
— middleware и кастомные страницы ошибок;
— Web UI: управление, редактор, мониторинг, логи;
— работает на Linux/AMD64, Linux/ARM64.
🔗 Github
@golang_google
Forwarded from Golang Books
В ней рассматриваются ключевые техники, сгруппированные в четыре основные категории:
1. Управление памятью и эффективность:
- Pooling объектов: Повторное использование объектов для снижения нагрузки на сборщик мусора и уменьшения накладных расходов на выделение памяти.
- Предварительное выделение памяти: Заранее задавать емкость срезов и карт для предотвращения дорогостоящих операций изменения размера.
- Выравнивание полей структур: Оптимизация расположения полей в структурах для минимизации заполнения и улучшения локальности данных.
- Избегание упаковки интерфейсов: Предотвращение скрытых выделений памяти путем отказа от ненужных преобразований типов к интерфейсам.
- Техники нулевого копирования: Минимизация копирования данных с использованием срезов и буферов.
- Эффективность памяти и сборщик мусора Go: Снижение нагрузки на сборщик мусора путем минимизации использования кучи и повторного использования памяти.
- Стековые выделения и анализ ускользания: Использование анализа ускользания для размещения значений в стеке, когда это возможно.
2. Конкурентность и синхронизация:
Пулы рабочих горутин: Контроль уровня конкурентности с помощью пулов фиксированного размера для ограничения использования ресурсов.
Атомарные операции и примитивы синхронизации: Использование атомарных операций или легковесных блокировок для управления общим состоянием.
Ленивая инициализация: Отсрочка выполнения затратных операций до момента, когда они действительно необходимы.
Совместное использование неизменяемых данных: Безопасное совместное использование данных между горутинами без блокировок путем обеспечения их неизменяемости.
goperf.dev
Эффективное управление контекстом: Использование пакета context для передачи тайм-аутов и сигналов отмены между горутинами.
3. Оптимизация ввода/вывода и пропускная способность:
Эффективное буферизирование: Использование буферизованных читателей/писателей для минимизации вызовов ввода/вывода.
Группировка операций: Объединение нескольких мелких операций для уменьшения количества раунд-трипов и повышения пропускной способности.
4. Оптимизация на уровне компилятора и настройка:
Использование флагов оптимизации компилятора: Применение флагов сборки, таких как
-gcflags и -ldflags,
для настройки производительности.Стековые выделения и анализ ускользания: Анализ того, какие значения переходят в кучу, чтобы помочь компилятору оптимизировать размещение памяти.
goperf.dev
Эти техники помогают разработчикам Go создавать более эффективные и производительные приложения, снижая задержки, улучшая использование памяти и повышая эффективность конкурентных операций.
🔗 Читать
@golang_books
Please open Telegram to view this post
VIEW IN TELEGRAM