Библиотека Go-разработчика | Golang
23.3K subscribers
2.08K photos
42 videos
87 files
4.45K links
Все самое полезное для Go-разработчика в одном канале.

По рекламе: @proglib_adv

Учиться у нас: https://proglib.io/w/32d20779

Для обратной связи: @proglibrary_feeedback_bot

РКН: https://gosuslugi.ru/snet/67a4a8c2468
Download Telegram
С недавних пор Go Tour имеет темный режим. Это, конечно, дело вкуса, но все-таки👇

Вы какой предпочитаете?

🌚 — темный
🤩 — светлый
🌚231🤩525💯4🤔3
#холивар

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

💬А вы помните свои впечатления от первого проекта и стек, на котором он был написан? Как бы вы подошли к своему первому проекту с нынешним опытом?
6
#новости #чтопроисходит

📌Новости и обновления популярных инструментов: подборка для Go-разработчика

🔥Perfectly Reproducible, Verified Go Toolchains: новая статья в блоге Go от Russ Cox
🔥Soft Serve (автономный Git-сервер на базе Go от разработчиков Charm) теперь поддерживает Git LFS
👨‍🏫VK Education открывает набор на бесплатные курсы по Go, Python и технической поддержке

🤔 proposal: slices: function for count specific value on slice
🤔 proposal: syscall/js: Add SetSymbol method on js.Value
🤔 proposal: net/http/pprof: respect timeouts set using http.ResponseController
🤔 proposal: os: add application data directory functions (i.e. os.UserDataDir and os.DataDir)
🤔 proposal: encoding: add AppendText and AppendBinary

TinyGo 0.29.0 — Go-компилятор на базе LLVM для микроконтроллеров, WASM/WASI и CLI-инструментов. В новой версии среди прочего добавлена поддержка Go 1.21 и новой опции GOOS=wasip1.
Excelize 2.8 — библиотека для чтения/записи файлов электронных таблиц Excel
Wazero 1.5 — zero dependency WASM runtime для Go-разработчиков
Toxiproxy 2.6 — TCP-прокси для имитации хаотичных сетевых условий
FerretDB 1.9 — совместимая с MongoDB база данных на базе Postgres
GoCV 0.34 — пакет для компьютерного зрения с использованием OpenCV 4+
Roaring 1.5 — Go-версия структуры данных «Roaring bitmap»
Fiber 2.49 — веб-фреймворк, вдохновленный Express
pdfcpu 0.5 — библиотека обработки PDF-файлов, написанная на Go и поддерживающая шифрование
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥13👍52🤔1🥱1
Самые полезные каналы для программистов в одной подборке!

Сохраняйте себе, чтобы не потерять 💾

🔥Для всех

Библиотека программиста — новости, статьи, досуг, фундаментальные темы
Книги для программистов
IT-мемы

Java

Библиотека джависта — полезные статьи по Java, новости и обучающие материалы
Библиотека Java для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Java — код, квизы и тесты
Вакансии для java-разработчиков

👾Data Science

Библиотека Data Science — полезные статьи, новости и обучающие материалы
Библиотека Data Science для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Data Science — код, квизы и тесты
Вакансии по Data Science, анализу данных, аналитике, искусственному интеллекту

🦫Go

Библиотека Go разработчика — полезные статьи, новости и обучающие материалы по Go
Библиотека Go для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Go — код, квизы и тесты
Вакансии по Go

🧠C++

Библиотека C/C++ разработчика — полезные статьи, новости и обучающие материалы по C++
Библиотека C++ для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по C++ — код, квизы и тесты
Вакансии по C++

💻Другие профильные каналы

Библиотека фронтендера
Библиотека шарписта
Библиотека мобильного разработчика
Библиотека хакера
Библиотека питониста
Библиотека devops’a
Библиотека тестировщика
Библиотека пхпшника

💼Каналы с вакансиями

Вакансии по питону, Django, Flask
Вакансии по фронтенду, джаваскрипт, React, Angular, Vue
Вакансии по C#, .NET, Unity
Вакансии по PHP, Symfony, Laravel
Вакансии по DevOps & SRE
Вакансии для мобильных разработчиков
Вакансии по QA тестированию
InfoSec Jobs — вакансии по информационной безопасности

📁Чтобы добавить папку с нашими каналами, нажмите 👉сюда👈
👍61🥱1
semgrep-go — набор правил для статического анализа кода Go, которые выявляют распространенные или потенциальные ошибки. В настоящее время поддерживаются semgrep и ruleguard.

$ semgrep -f path/to/semgrep-go/rule.yml .
$ semgrep -f path/to/semgrep-go/ .
$ ruleguard -c=0 -rules path/to/semgrep-go/ruleguard.rules.go ./
🔥8👍3
#tip

Когда вам нужно инициализировать большие структуры, легко случайно пропустить необходимое поле. Компилятор не выдаст ошибку!

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

Линтеры идут на помощь! Линтер exhauststruct проверяет, что структура была полностью инициализирована. Мета-линтер golangci-lint включает в себя этот линтер, поэтому если вы уже используете golangci-lint, вы легко можете включить exhauststruct.

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

Если определение структуры находится под вашим контролем, вы можете избежать ложных срабатываний линтера, добавив тег поля структуры exhaustruct:"optional" к необязательному полю.

type Shape struct {
Length int
Width int
volume int
Perimeter int `exhaustruct:"optional"`
}


Следующая инициализация будет помечена как некорректная, потому что отсутствует volume:

var b Shape = Shape{
Length: 5,
Width: 3,
}
👍322🤔1
Мини-гайд об организации кода gRPC и protobuf в проекте на Go

Автор кратко рассматривает, как использовать protoc и плагины с правильным импортом и структурой проекта.

🔗 Читать
🔥8👍42🥱2
Владимир Балун, старший разработчик в Яндекс, разбирает по полочкам задачу с Go-собеседования. Точнее, которую могут спросить на собеседовании.

👀 Смотреть
Please open Telegram to view this post
VIEW IN TELEGRAM
14🥱13👍2🔥2🤔2
#холивар

🌟Привет, подписчики! Вспомните свой профессиональный путь и ответьте на пару вопросов:

💬На какой стадии вашей жизни вы приобрели самые ценные знания и навыки, которые стали ключевыми для карьеры в IT?
💬Было ли это ещё в школьные годы, во времена колледжа/университета/института, в процессе самообразования или уже прямо на рабочем месте?

📌И самое главное — какие это были знания и навыки?

Делитесь опытом в комментариях👇
4
Forwarded from Библиотека программиста | программирование, кодинг, разработка
🔥🕑 10 признаков того, что пора увольняться

«Быть или не быть?», «Уйти или остаться?»: делаем вдох-выдох и принимаем важное решение.

🔗 Читать статью
🔗 Зеркало
👍2
🎉 Представлены выпуски Go 1.21.1 и 1.20.8

🔐 Новые релизы включают исправления безопасности для cmd/go (CVE-2023-39320), html/template (CVE-2023-39318, CVE-2023-39319) и crypto/tls.

🔗 Подробнее
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13
✍️ Библиотека программиста» находится в поиске авторов оригинальных статей

Языки
● C#, Go, SQL.

Тематика
● Data Science (Python), базовые и продвинутые концепции языков C#, Go, SQL.

Объем
● от 7 до 15 тыс. знаков.
● 3-4 статьи в месяц.

Оплата
● 4к руб. за статью.
● Работаем с самозанятыми, ИП.

Статья публикуется на сайте proglib.io, в группе ВК (424к подписчиков), на канале «Библиотека программиста» (77к подписчиков) и в одном из профильных тг-каналов: Библиотека Шарписта, Data scientist’а, Go-разработчика.

➡️ Заполнить анкету ⬅️

Я хорошо программирую, но пишу «так себе». Что делать?
Если вы хорошо программируете, но навыки письма немного отстают, пройдите наш бесплатный курс на Степике «Статьи для IT: как объяснять и распространять значимые идеи».
👍6😁6
#инструменты

⚒️CLI Mate — инструмент, который позволяет упростить создание CLI-инструментов на Go. Он поддерживает вложенные подкоманды, глобальные/локальные флаги, генерацию справки из godocs, предложения по опечаткам и многое другое. Вдохновлен Python-fire и разработан на базе Cobra.

🔗 GitHub
👍832🥱1
#холивар

🤔Когда говорят о Go 1.18, обычно вспоминают про дженерики и незаслуженно забывают об остальных изменениях. Например, о fuzzing-тестировании, которое раньше можно было запустить только с помощью открытых библиотек.

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

💬А вы пользуетесь встроенным fuzzing-тестированием или используете сторонние библиотеки? Если второй вариант, то какие?
👍2
📕 ТОП-9 книг по языку программирования Go в 2023 году: от новичка до профессионала

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

🔗Читать статью
🔗Зеркало
🔥154