Библиотека 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
🔧Фаззинг-тестирование — эффективный метод выявления граничных условий, которые классическое тестирование может не охватывать.

🧰 Автор статьи выводит фаззинг-тестирование на новый уровень с помощью дифференциального фаззинга, в результате использования которого находит XSS-уязвимость в пакете html.

💸Кроме всего прочего исследование показывает отличный пример того, как знания разработчика можно применить в сфере информационной безопасности.
Please open Telegram to view this post
VIEW IN TELEGRAM
7👍1
Go Gin vs Fiber_ HTTPS Hello World performance _ Tech Tonic.pdf
3.4 MB
Хоть лучший фреймворк Go — это отсутствие фреймворка, о производительности популярных решений стоит знать. Ловите мини-подборку на простых примерах:

🔸Go Gin vs Fiber: Hello World performance
🔸Go Gin vs Fiber: HTTPS Hello World performance
🔸Go: Gin vs Fiber vs Echo Hello World performance
👍8😁2🥱2
☁️🧩 ТОП-10 бессерверных фреймворков

Существует множество различных бессерверных фреймворков, каждый из которых предназначен для определенных задач. В этой статье рассмотрим 10 наиболее популярных из них.

Читать статью
🥱9👍32
🎃Собрали для вас несколько страшных историй по случаю Хэллоуина. Ждем ваши истории в комментариях👇
😁27🤔4🥱2
🎤Подходы к дебаггингу concurrency

Доклад Сергея Петрова из Selectel на конференции Подлодка Go Crew о том, что может пойти
не так при дебаге concurrency,
как понять, что возникли проблемы,
и где их искать в коде.

📌Что интересного узнаете из доклада:

☑️Где именно мы можем ошибиться
☑️Как работают горутины под капотом
☑️Инструменты для дебага из коробки
☑️Дебаггеры
☑️Полезные библиотеки

📺Смотреть
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥10👏2
💡Запускаем Go-бинари прямо из репозитория

Про возможность установки бинаря из репозитория через go install знают все. Менее известным фактом является то, что мы можем запускать двоичные файлы прямо из репозитория, например, так:

$ go run github.com/cosmtrek/air@latest

🤩Никакой установки, никакого клонирования, никакого Makefile, и ваш бинарь всегда в актуальном состоянии.

💬В таком случае нужно всегда быть онлайн?

☑️go run подключается к go proxy при каждом вызове для проверки на наличие более новой версии.

☑️Но мы можем обойти это поведение, заменив @latest фиксированным номером версии (например, @v1.45.0). Тогда команда будет нормально работать в автономном режиме.

#tip
Please open Telegram to view this post
VIEW IN TELEGRAM
👍35😁2
Вы когда-нибудь задумывались, как старые программы Unix все еще могут работать на современных компьютерах? Посетите новый проект Расса Кокса rsc/unix на GitHub — там много интересного👇

pdp11 — симулятор PDP-11
v6unix — симулятор Research Unix Sixth Edition (V6)
v6run — CLI для v6unix
v6web — веб-интерфейс для v6unix (копию можно посмотреть здесь)
🔥4
This media is not supported in your browser
VIEW IN TELEGRAM
💻🍏Apple представила новый MacBook Pro с процессорами семейства M3, которые делают один из лучших в мире профессиональных ноутбуков еще лучше. 14- и 16-дюймовые модели с M3 Pro и M3 Max доступны в новом цвете «черный космос». Хотите узнать подробнее? Смотрите презентацию Apple Scary Fast на русском и всего за 6 минут.

💡А мы недавно делали небольшую подборку ноутбуков для разрабов, где перечислили самые легкие, автономные и производительные. Скажем честно, не всем она понравилась. Так или иначе, поделитесь своим опытом 🔽

💬Какие характеристики для вас наиболее важны? Накидайте свой топ ноутбуков в комментарии👇

#холивар
🥱23🔥4
🗺️ Дорожная карта Go-разработчика в 2023 году

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

🔗 Читать статью
🔗 Зеркало
👍11😁5
Подборка лучших статей «Библиотеки программиста» за октябрь: сохраняй в заметки, чтобы не пропустить #самыйсок

📊 Эффективная работа с JSON в Go
🔝 Лучшие практики Go: путь к чистому коду
📚 ТОП-8 книг по DevOps в 2023 году
💪 6 сервисов для подготовки к техническим собеседованиям
🗺️ Карьерная карта: что это, как ее составить и почему она обязательно нужна разработчику
🛡️ 8 способов защиты от манипуляций на работе
👩‍💻 Женщины в ИТ: проблемы и преимущества сложной профессии
🤖 8 лучших бесплатных курсов по ИИ и глубокому обучению
👨‍💻 9 трендов в найме айтишников в 2023 году
🤔 9 мифов об IT и найме айтишников
🤖 25 бесплатных AI-инструментов для разработчиков
☁️ ТОП-10 бессерверных фреймворков
🚩 Итог одной валютной удаленки: проработал месяц бесплатно и ушел с долгами
💻 20 лучших ноутбуков для программиста в 2023 году
🧠 Как научиться критически мыслить: 6 эффективных способов
🔥3🤔1🥱1
Mastering_Type_Assertion_in_Go_A_Comprehensive_Guide_by_Jamal_Kaksouri.pdf
2.2 MB
Type assertion на практике: гайд для Go-разработчика

Type assertions (утверждения типа) представляют собой простой механизм, который обязательно должен быть в вашем наборе инструментов при работе с Go. Однако в нем есть некоторые важные особенности, о которых и пойдет речь в статье.

👉 Читайте на Medium или в PDF
👍6
🧰Обзор архитектуры быстрого сборщика логов на Go

Доклад Владимира Витковского из Ozon на HighLoad++ 2022 о лучших практиках, на которых основан быстрый сборщик логов, используемый в компании.

Владимир рассказывает, как c помощью этого инструмента удалось сократить издержки на сбор логов в 10 раз по CPU и добиться 100% доставляемости логов.

📌Вы узнаете:

✔️Как организована общая архитектура сборщика логов
✔️Как написать быстрый плагин для чтения логов из файлов
✔️Как оптимизировать внутреннюю обработку потока логов
✔️Как правильно распараллелить обработку
✔️Как гарантировать доставку
🔥8🤔5👍42
Forwarded from Библиотека программиста | программирование, кодинг, разработка
🧠⚙️ Как научиться критически мыслить: 6 эффективных способов

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

💬Считаете ли вы, что у вас развито критическое мышление?

👍 — да, и это очень помогает мне в жизни и работе
🤔 — да, но оно ничем не помогает
🥱 — нет
👍15🥱8🤔1
🧰Реализация обновляемой блокировки чтения и записи: гайд для Go-разработчика

Обычный RWMutex подходит в большинстве случаев. Но если задача требует долго удерживать блокировку записи, при этом большая часть времени уходит на подготовку к чтению, было бы здорово иметь блокировку чтения, которую можно «обновить» до блокировки записи.

Команда Upstash столкнулась с этой проблемой и разработала UpgradableRWMutex, улучшенную версию стандартного sync.RWMutex.
👍112😁2