👔 Роль крупных компаний в развитии IT-индустрии
В мире технологий существует устоявшееся мнение, что крупные корпорации — это непоколебимые лидеры инноваций и драйверы индустрии. Но давайте посмотрим трезво.
• Часто за красивыми презентациями и маркетингом скрывается консерватизм. Новые идеи не всегда приживаются, если они угрожают прибыльности или текущим бизнес-моделям.
• В больших организациях бюрократия и формальные процедуры порой загоняют проекты в рамки, где инновации превращаются в рутину и формальность.
• Монополизация рынков и контроль над ключевыми сегментами IT создают барьеры для молодых стартапов и независимых разработчиков.
В итоге мы получаем стабильность и масштаб, но платим за это снижением гибкости, замедлением темпов внедрения действительно новых технологий и ограничением свободы выбора.
💬 Кто видит в крупных компаниях источник прогресса, а кто — фактор стагнации? Ждём ваши мысли в комментариях 👇
🐸 Библиотека Go-разработчика #междусобойчик
В мире технологий существует устоявшееся мнение, что крупные корпорации — это непоколебимые лидеры инноваций и драйверы индустрии. Но давайте посмотрим трезво.
• Часто за красивыми презентациями и маркетингом скрывается консерватизм. Новые идеи не всегда приживаются, если они угрожают прибыльности или текущим бизнес-моделям.
• В больших организациях бюрократия и формальные процедуры порой загоняют проекты в рамки, где инновации превращаются в рутину и формальность.
• Монополизация рынков и контроль над ключевыми сегментами IT создают барьеры для молодых стартапов и независимых разработчиков.
В итоге мы получаем стабильность и масштаб, но платим за это снижением гибкости, замедлением темпов внедрения действительно новых технологий и ограничением свободы выбора.
💬 Кто видит в крупных компаниях источник прогресса, а кто — фактор стагнации? Ждём ваши мысли в комментариях 👇
Please open Telegram to view this post
VIEW IN TELEGRAM
🥱3❤2
Inline Type Info — это встроенная возможность в GoLand (и некоторых JetBrains IDE), которая показывает тип переменной или выражения прямо в коде, над строкой или рядом с ней
Пример:
data := fetchUserData() // 👈 IDE покажет: data → UserData
for _, item := range data.Items {
fmt.Println(item.Name) // 👈 item → UserItem
}
Рядом с data и item будет ненавязчиво показан их тип, даже если они выведены через «
:=
»Как включить Inline Type Info в GoLand
1. Открыть настройки и перейти в раздел
Editor → Inlay Hints → Go → Types
2. Проставить галочки
☑️ Show for local variables
☑️ Show for range variables
☑️ Show for function result types
В VS Code с расширением Go by Google также есть похожая настройка:
"gopls": { "ui.inlayHints": true }
в settings.json. Показываются типы, параметры, возвращаемые значения.Please open Telegram to view this post
VIEW IN TELEGRAM
👍6❤2😁2🔥1👾1
📰 Cup O’ Go эпизод №112
Ведущие снова собрались, чтобы обсудить самые свежие новости и ключевые тренды из мира Go разработки.
В центре внимания:
• Обновлённый дефолт для GOMAXPROCS с учётом лимитов CPU, который улучшит управление ресурсами;
• Свежие подходы к работе с большими языковыми моделями (LLM) на Go, представленные Rory Malcolm;
• Релиз версии 9.0.0 клиента go-elasticsearch от Elastic с новыми возможностями;
• Инновационный Green Tea Garbage Collector, оптимизирующий сборку мусора;
• И другие новости, включая обзор с Google I/O и обновления популярных библиотек.
🎧 Слушать эпизод
🐸 Библиотека Go-разработчика #свежак
Ведущие снова собрались, чтобы обсудить самые свежие новости и ключевые тренды из мира Go разработки.
В центре внимания:
• Обновлённый дефолт для GOMAXPROCS с учётом лимитов CPU, который улучшит управление ресурсами;
• Свежие подходы к работе с большими языковыми моделями (LLM) на Go, представленные Rory Malcolm;
• Релиз версии 9.0.0 клиента go-elasticsearch от Elastic с новыми возможностями;
• Инновационный Green Tea Garbage Collector, оптимизирующий сборку мусора;
• И другие новости, включая обзор с Google I/O и обновления популярных библиотек.
🎧 Слушать эпизод
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥3👍2
⏰ Последние 2 дня скидки на курс «AI-агенты для DS-специалистов»
Пока большинство дата-сайентистов строят модели и делают аналитику, рынок уже требует специалистов, которые создают автономные системы на базе ИИ-агентов.
Для этого мы подготовили специальный курс и собрали кучу дополнительного контента, который поможет погрузиться в тему еще глубже. Но чтобы получить все плюшки, успевайте до 1 июня.
🎁 Что вы получите при оплате курса до 1 июня:
— Промокод PROGLIBAIна 10 000 ₽ на курс, чтобы изучать AI-агентов еще выгоднее
— Эксклюзивный лонгрид по API и ML от Proglib
💡Что разберем на курсе «AI-агенты для DS-специалистов»:
— Реализацию памяти в цепочках langchain
— Полный пайплайн RAG-системы с оценкой качества
— Основы мультиагентных систем (MAS)
— Протокол MCP и фреймворк FastMCP
Промокод также действует на курсы «Математика для Data Science» и «Алгоритмы и структуры данных».
👉 Успейте до 1 июня: https://clc.to/Cttu7A
Пока большинство дата-сайентистов строят модели и делают аналитику, рынок уже требует специалистов, которые создают автономные системы на базе ИИ-агентов.
Для этого мы подготовили специальный курс и собрали кучу дополнительного контента, который поможет погрузиться в тему еще глубже. Но чтобы получить все плюшки, успевайте до 1 июня.
🎁 Что вы получите при оплате курса до 1 июня:
— Промокод PROGLIBAIна 10 000 ₽ на курс, чтобы изучать AI-агентов еще выгоднее
— Эксклюзивный лонгрид по API и ML от Proglib
💡Что разберем на курсе «AI-агенты для DS-специалистов»:
— Реализацию памяти в цепочках langchain
— Полный пайплайн RAG-системы с оценкой качества
— Основы мультиагентных систем (MAS)
— Протокол MCP и фреймворк FastMCP
Промокод также действует на курсы «Математика для Data Science» и «Алгоритмы и структуры данных».
👉 Успейте до 1 июня: https://clc.to/Cttu7A
🥱3❤2
Please open Telegram to view this post
VIEW IN TELEGRAM
😁35❤29👍6🔥5
🧩 iota, iota уйди на Федота
Представьте, что маленький ребёнок вдруг спросил вас: «Что такое iota?» Как объяснить ему эту непонятную штуку простыми словами, без сложных терминов и программного жаргона?
Мы попробуем первыми:
💬 Как бы вы объяснили, что такое «iota»? Поделитесь своими примерами из реальной жизни 👇
🐸 Библиотека Go-разработчика #междусобойчик
Представьте, что маленький ребёнок вдруг спросил вас: «Что такое iota?» Как объяснить ему эту непонятную штуку простыми словами, без сложных терминов и программного жаргона?
Мы попробуем первыми:
Представь, что у тебя есть коробка с разными игрушками, и ты хочешь каждой игрушке дать свой номер, чтобы потом легко их находить. Вместо того чтобы самому писать номер на каждой игрушке, ты берёшь специальную машинку, которая сама ставит номера — сначала 0, потом 1, потом 2, и так дальше, автоматически и по порядку.
💬 Как бы вы объяснили, что такое «iota»? Поделитесь своими примерами из реальной жизни 👇
Please open Telegram to view this post
VIEW IN TELEGRAM
🥱13❤4🤔4👍3🌚1
🚨 Что на самом деле происходит с увольнениями в ИТ
Каждый день в чатах разработчиков появляются сообщения «ищу работу», «команду сократили», «проект закрыли». Но никто не говорит о причинах и масштабах катастрофы. Мы запустили большое исследование, чтобы раскрыть правду!
🎯 Что мы выясним:
→ Реальные причины увольнений
→ Сколько времени нужно на поиск работы
→ Самые безумные истории смены работы
Понимая реальную ситуацию, мы сможем принимать взвешенные решения о карьере и не попасться на удочку HR-сказок.
👉 Пройдите опрос за 3 минуты и помогите всему сообществу: https://clc.to/yJ5krg
Каждый день в чатах разработчиков появляются сообщения «ищу работу», «команду сократили», «проект закрыли». Но никто не говорит о причинах и масштабах катастрофы. Мы запустили большое исследование, чтобы раскрыть правду!
🎯 Что мы выясним:
→ Реальные причины увольнений
→ Сколько времени нужно на поиск работы
→ Самые безумные истории смены работы
Понимая реальную ситуацию, мы сможем принимать взвешенные решения о карьере и не попасться на удочку HR-сказок.
👉 Пройдите опрос за 3 минуты и помогите всему сообществу: https://clc.to/yJ5krg
📰 Дайджест недели
Что прошло уже не вернуть, но стоит ознакомиться с нашей подборкой прошедшей недели.
— Монолит: хороший, плохой и уродливый
Анализ трёх типов монолитов: модульного (готового к масштабированию), распределённого (маскирующегося под микросервисы) и традиционного (трудного в сопровождении).
Рассматриваются их особенности, преимущества и недостатки, а также влияние на поддержку и развитие систем.
— Нативная поддержка FIPS 140-3 без сторонних библиотек
Go 1.24 представил встроенную поддержку FIPS 140-3, устраняя необходимость в сторонних криптобиблиотеках. Это упрощает соответствие требованиям безопасности для государственных и регулируемых отраслей.
— Как защитить API: 6 ключевых аспектов безопасности
— Revive v1.10.0
— Cup O’ Go эпизод №112
🐸 Библиотека Go-разработчика #свежак
Что прошло уже не вернуть, но стоит ознакомиться с нашей подборкой прошедшей недели.
— Монолит: хороший, плохой и уродливый
Анализ трёх типов монолитов: модульного (готового к масштабированию), распределённого (маскирующегося под микросервисы) и традиционного (трудного в сопровождении).
Рассматриваются их особенности, преимущества и недостатки, а также влияние на поддержку и развитие систем.
— Нативная поддержка FIPS 140-3 без сторонних библиотек
Go 1.24 представил встроенную поддержку FIPS 140-3, устраняя необходимость в сторонних криптобиблиотеках. Это упрощает соответствие требованиям безопасности для государственных и регулируемых отраслей.
— Как защитить API: 6 ключевых аспектов безопасности
— Revive v1.10.0
— Cup O’ Go эпизод №112
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Библиотека задач по Go | тесты, код, задания
Anonymous Quiz
76%
Когда на слайс нет ссылок
4%
Когда программа завершается
3%
Когда слайс пустой
17%
Сборщик мусора не очищает слайсы
🤔10
Senior Developer BE Golang — от 300 000 ₽, Гибрид (Москва)
GoLang-программист — Гибрид/Офис (Волгоград)
Разработчик в S3 — от 300 000, Удаленно (Москва/Санкт-Петербург/Новосибирск)
Software Engineer (Golang) — от 3 650 €, Удаленно (Испания, Сербия, Кипр — помощь с переездом)
Senior Go developer — Удаленно (Москва).
Бустер — Удалёнка по всей планете Земля.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2🔥1
🧑💻 Ускоряем разработку на Go
В Go есть встроенный инструмент
Генерация кода помогает избегать рутинного написания однотипного кода, поддерживать DRY и улучшать структуру проектов. Разберёмся как это применить.
1. Добавляем директиву
В нужном файле добавьте комментарий с инструкцией генерации. Пример для генерации моков с помощью
2. Запускаем генерацию
В терминале в каталоге с исходным файлом выполните:
3. Использование с другими инструментами
Также можно использовать собственные скрипты на Go или Bash для генерации конфигураций или шаблонов.
Пример:
Запустив
💡 Советы по использованию
• Помещайте директивы
• Сохраняйте сгенерированные файлы рядом с исходниками и не редактируйте их вручную.
• Добавляйте сгенерированные файлы в систему контроля версий, если они нужны для сборки без дополнительной генерации.
• Используйте
💬 Используете генерацию кода или предпочитаете ручной контроль всех строчек кода? Делитесь мыслями в комментариях 👇
🐸 Библиотека Go-разработчика #буст
В Go есть встроенный инструмент
go generate
, который генерирует код по директивам в коде.Генерация кода помогает избегать рутинного написания однотипного кода, поддерживать DRY и улучшать структуру проектов. Разберёмся как это применить.
1. Добавляем директиву
//go:generate
В нужном файле добавьте комментарий с инструкцией генерации. Пример для генерации моков с помощью
mockgen
://go:generate mockgen -source=service.go -destination=mock_service.go -package=yourpackage
package yourpackage
type Service interface {
DoSomething(input string) error
}
2. Запускаем генерацию
В терминале в каталоге с исходным файлом выполните:
go generate
3. Использование с другими инструментами
go generate
запускает любую shell-команду, поэтому можно использовать stringer
для генерации методов String() по константам: //go:generate stringer -type=MyEnum
. Также можно использовать собственные скрипты на Go или Bash для генерации конфигураций или шаблонов.
Пример:
package colors
//go:generate stringer -type=Color
type Color int
const (
Red Color = iota
Green
Blue
)
Запустив
go generate
, будет создан файл color_string.go
с реализацией метода String()
для перечисления Color.💡 Советы по использованию
go generate
• Помещайте директивы
//go:generate
непосредственно перед декларацией, к которой они относятся.• Сохраняйте сгенерированные файлы рядом с исходниками и не редактируйте их вручную.
• Добавляйте сгенерированные файлы в систему контроля версий, если они нужны для сборки без дополнительной генерации.
• Используйте
go generate ./...
для запуска генерации рекурсивно во всех поддиректориях.💬 Используете генерацию кода или предпочитаете ручной контроль всех строчек кода? Делитесь мыслями в комментариях 👇
Please open Telegram to view this post
VIEW IN TELEGRAM
👍21❤8⚡2🔥2
Зачем ждать взлома, если можно предотвратить атаки заранее? В карточках — основные аспекты, которые помогут надёжно защитить ваш API и избежать распространённых ошибок.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12🥱4❤3🔥2
Часто при работе с большими репозиториями нужно увидеть количество изменений, а не построчную разницу. Для этого есть команда:
git diff --stat <commit1> <commit2>
Это покажет статистику изменений между двумя коммитами, в каком файле сколько строк изменено, создано или удалено.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍18❤4🔥3
Команда разработки Go столкнулась с трудностями при попытке упростить этот процесс через синтаксические изменения языка.
За последние несколько лет разработчики пытались улучшить обработку ошибок через:
• Механизм
check/handle
в 2018.• Функцию
try
в 2019.• Предложение с оператором «
?
» в 2024.Предложенные механизмы не получили поддержки сообщества, и разработчики решили сохранить текущую модель обработки ошибок.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍64😢12❤6😁3👾2