Tunny — это библиотека, предназначенная для создания и управления пулом горутин. С помощью синхронного API она позволяет ограничить работу, исходящую от любого количества горутин.
https://proglib.io/w/b6979099
https://proglib.io/w/b6979099
GitHub
GitHub - Jeffail/tunny: A goroutine pool for Go
A goroutine pool for Go. Contribute to Jeffail/tunny development by creating an account on GitHub.
Статья описывает практические аспекты работы с goleak — инструментом, нацеленным на интеграцию с модульными тестами. Этот пакет отслеживает наличие утечек горутин в текущем тестируемом фрагменте кода.
https://proglib.io/w/29adfed9
https://proglib.io/w/29adfed9
Хабр
Go: детектор утечек горутин (Goroutine Leak Detector)
Перевод статьи подготовлен в преддверии старта курса "Golang Developer. Professional".Также приглашаем всех желающих на демо-занятие "Blockchain на Go". На этом...
За последнее время интерес к NFT-токенам стремительно увеличивается. Вы наверное слышали о таких крупных сделках, как картина Бенкси, портрет Сноудена или токен Нурмагомедова? Кажется, мода на цифровое искусство только набирает обороты, а тут кто первый, тот и выиграл.
Являясь медиа об IT, «Библиотека программиста» просто не могла пройти мимо тренда и решила внести свой вклад в развитие блокчейн-технологий и цифрового искусства. Любой желающий может приобрести первую статью на сайте (proglib.io), которая имеет более 470 000 просмотров.
Цена лота от 1 Ethereum, торги продлятся 3 недели.
Узнать больше можно по ссылке: https://proglib.io/w/874152a9
Являясь медиа об IT, «Библиотека программиста» просто не могла пройти мимо тренда и решила внести свой вклад в развитие блокчейн-технологий и цифрового искусства. Любой желающий может приобрести первую статью на сайте (proglib.io), которая имеет более 470 000 просмотров.
Цена лота от 1 Ethereum, торги продлятся 3 недели.
Узнать больше можно по ссылке: https://proglib.io/w/874152a9
Библиотека программиста
Материалы, которые научат и помогут программировать. Книги и лекции, видеоуроки и советы, тесты знаний и обсуждение горячих тем. Присоединяйтесь!
💻 Какие IT каналы в Telegram читаем мы?
Сегодня представляем вашему вниманию 5 каналов, которые действительно этого заслуживают. Подписывайтесь на наших друзей:
CodeCamp — Мастхэв канал для любого IT-специалиста: лучшие книги, полезные сервисы и отборные видеоуроки.
@bugfeature — Подлинный канал "Не баг, а фича", который раскрывает секреты социальных сетей, уязвимости приложений, а так же рассказывает об этичном хакинге, анонимности в сети и личной безопасности в интернете.
@front_end_dev – Актуальные материалы для веб-разработчика: статьи, туториалы, инструменты, фишки ЯП и лучшие практики.
@S_E_Book — Самая редкая и актуальная литература в сети, для ИТ специалистов любого уровня и направления, которая публикуется еще до момента выхода в официальных источниках.
GIT — Канал, где Вы найдете уникальные онлайн-сервисы и инструменты на все случаи жизни.
Сегодня представляем вашему вниманию 5 каналов, которые действительно этого заслуживают. Подписывайтесь на наших друзей:
CodeCamp — Мастхэв канал для любого IT-специалиста: лучшие книги, полезные сервисы и отборные видеоуроки.
@bugfeature — Подлинный канал "Не баг, а фича", который раскрывает секреты социальных сетей, уязвимости приложений, а так же рассказывает об этичном хакинге, анонимности в сети и личной безопасности в интернете.
@front_end_dev – Актуальные материалы для веб-разработчика: статьи, туториалы, инструменты, фишки ЯП и лучшие практики.
@S_E_Book — Самая редкая и актуальная литература в сети, для ИТ специалистов любого уровня и направления, которая публикуется еще до момента выхода в официальных источниках.
GIT — Канал, где Вы найдете уникальные онлайн-сервисы и инструменты на все случаи жизни.
Недавно мы разбирали тему создания веб-приложений на Go. Сегодня продолжим данную тему, но уже в видеоформате:
- Введение в язык Go - Смотреть
- Отслеживание URL адресов - Смотреть
- Создание структур (модели данных) - Смотреть
- Работа с HTML шаблонами - Смотреть
- Подключение MySQL - Смотреть
- Новостной сайт. Главные настройки - Смотреть
- Добавление данных через сайт - Смотреть
- Динамические страницы - Смотреть
- Публикация на сервер - Смотреть
- Введение в язык Go - Смотреть
- Отслеживание URL адресов - Смотреть
- Создание структур (модели данных) - Смотреть
- Работа с HTML шаблонами - Смотреть
- Подключение MySQL - Смотреть
- Новостной сайт. Главные настройки - Смотреть
- Добавление данных через сайт - Смотреть
- Динамические страницы - Смотреть
- Публикация на сервер - Смотреть
👍1
Вы профи в своём деле? Мы хорошо за это заплатим. Ищем экспертов для проведения мероприятия в Москве 22 и 23 мая. Темы следующие:
- Архитектура программного обеспечения
- Подходы к решению алгоритмических задач с собеседований Google и Яндекс
- Базы данных: модели, миграции, тестирование
- Практикум по рефакторингу
За один день платим от 20 до 30 тыс. ₽ (в зависимости от опыта и вовлеченности). Отклики с резюме кидайте сюда: @proglib_expert_bot
- Архитектура программного обеспечения
- Подходы к решению алгоритмических задач с собеседований Google и Яндекс
- Базы данных: модели, миграции, тестирование
- Практикум по рефакторингу
За один день платим от 20 до 30 тыс. ₽ (в зависимости от опыта и вовлеченности). Отклики с резюме кидайте сюда: @proglib_expert_bot
Разработчик из IVI делится практическими кейсами написания unit-тестов к приложениям на Go:
✔️Использование интерфейсов при разработке
✔️Используование генераторов моков
✔️Перехват логирования
✔️Подсчет покрытия кода тестами
✔️Подсчет покрытия при тестировании приложения как черного ящика
В конце статьи приводится несколько полезных статей о тестировании в Go:
- Unit-тестирование в Go с помощью интерфейсов
- 5 продвинутых техник тестирования на Go
- Golang тестирование за пределами gotour
✔️Использование интерфейсов при разработке
✔️Используование генераторов моков
✔️Перехват логирования
✔️Подсчет покрытия кода тестами
✔️Подсчет покрытия при тестировании приложения как черного ящика
В конце статьи приводится несколько полезных статей о тестировании в Go:
- Unit-тестирование в Go с помощью интерфейсов
- 5 продвинутых техник тестирования на Go
- Golang тестирование за пределами gotour
Хабр
Подсказки по написанию тестов в приложениях на Go
В нашей компании в стеке разработки есть язык Go. И иногда, при написании unit-тестов к приложениям написанным на Go, у нас появляются сложности. В этой статье м...
Russ Cox не смог пройти мимо, когда начал замечать разговоры вроде «вы не используете стандартный макет проекта Go».
Он инициировал конструктивное обсуждение, итогом которого должна стать «официальная» документация для макета проекта на Go.
Как вы считаете, текущий неофициальный макет отражает ту структуру, которая должна быть у проекта на Go? И вообще, вы придерживаетесь какого-то макета или каждый раз все по-новому?
Он инициировал конструктивное обсуждение, итогом которого должна стать «официальная» документация для макета проекта на Go.
Как вы считаете, текущий неофициальный макет отражает ту структуру, которая должна быть у проекта на Go? И вообще, вы придерживаетесь какого-то макета или каждый раз все по-новому?
GitHub
GitHub - golang-standards/project-layout: Standard Go Project Layout
Standard Go Project Layout. Contribute to golang-standards/project-layout development by creating an account on GitHub.
Про оптимизацию компоновщика, поддержку Apple M1 и новый пакет embed уже все знают. Давайте разберёмся с остальными глобальными изменениями Go 1.16:
✔️ Новые системы модулей. По умолчанию теперь требуется использование новой системы модулей с интегрированной поддержкой версионирования, которая пришла на смену средствам управления зависимостями на основе GOPATH. Переменная окружения GO111MODULE теперь выставлена в значение "on" по умолчанию и режим модулей используется независимо от присутствия файла go.mod в рабочем или родительском каталоге. В новом режиме сборочные команды, такие как "go build" и "go test", не изменяют содержимое go.mod и go.sum, а команда "go install" обрабатывает аргументы с указанием версии ("go install example.com/[email protected]"). Для возвращения старого поведение следует изменить GO111MODULE на значение "auto".
✔️ Добавлена поддержка inline-развёртывания. В компиляторе добавлена поддержка inline-развёртывания функций с сокращённым определением циклов "for", методом значений (method values) и конструкциями 'type switch'.
✔️Прекращена поддержка режима компиляции x87 (GO386=387). Поддержка процессоров без инструкций SSE2 теперь доступна через программный режим "GO386=softfloat".
Источник
✔️ Новые системы модулей. По умолчанию теперь требуется использование новой системы модулей с интегрированной поддержкой версионирования, которая пришла на смену средствам управления зависимостями на основе GOPATH. Переменная окружения GO111MODULE теперь выставлена в значение "on" по умолчанию и режим модулей используется независимо от присутствия файла go.mod в рабочем или родительском каталоге. В новом режиме сборочные команды, такие как "go build" и "go test", не изменяют содержимое go.mod и go.sum, а команда "go install" обрабатывает аргументы с указанием версии ("go install example.com/[email protected]"). Для возвращения старого поведение следует изменить GO111MODULE на значение "auto".
✔️ Добавлена поддержка inline-развёртывания. В компиляторе добавлена поддержка inline-развёртывания функций с сокращённым определением циклов "for", методом значений (method values) и конструкциями 'type switch'.
✔️Прекращена поддержка режима компиляции x87 (GO386=387). Поддержка процессоров без инструкций SSE2 теперь доступна через программный режим "GO386=softfloat".
Источник
go.dev
Go 1.16 Release Notes - The Go Programming Language
Авторы бесплатного курса по созданию веб-приложения на Go дополнили его следующими материалами по работе с MySQL:
- Установка MySQL для веб-приложения на Golang
- Установка MySQL драйвера для работы в Golang
- Создание пула подключений к MySQL в Go
- Проектирование модели в Go
- Выполнение SQL запросов в Golang
- Выводим запись из базы данных по её ID из URL
- Вывод последних записей из базы данных
- SQL Транзакции через Golang
- Установка MySQL для веб-приложения на Golang
- Установка MySQL драйвера для работы в Golang
- Создание пула подключений к MySQL в Go
- Проектирование модели в Go
- Выполнение SQL запросов в Golang
- Выводим запись из базы данных по её ID из URL
- Вывод последних записей из базы данных
- SQL Транзакции через Golang
Telegram
Библиотека Go разработчика
Создание веб-приложения на Go
Серия уроков проведёт вас по этапам создания сайта на Go. После ознакомления с материалами вы сможете создать небольшую CMS на Go и запустить свой сайт в интернете.
https://proglib.io/w/be810e29
Серия уроков проведёт вас по этапам создания сайта на Go. После ознакомления с материалами вы сможете создать небольшую CMS на Go и запустить свой сайт в интернете.
https://proglib.io/w/be810e29
«Отладка в два раза сложнее, чем написание кода с самого начала. Следовательно, если вы напишете код настолько умно, насколько это возможно, вы по определению недостаточно умны, чтобы его отлаживать», —
отмечает Брайан Керниган, канадский учёный в области компьютерных технологий, соавтор руководства «Язык программирования Си». Соавтор языка AWK. В соавторстве с Робом Пайком написал также известные книги «Практика программирования» и «UNIX. Программное окружение». Согласны с ним?
отмечает Брайан Керниган, канадский учёный в области компьютерных технологий, соавтор руководства «Язык программирования Си». Соавтор языка AWK. В соавторстве с Робом Пайком написал также известные книги «Практика программирования» и «UNIX. Программное окружение». Согласны с ним?
Один из способов ускорить Python заключается в том, чтобы переписать все на другом языке переписать медленный код на другом языке и вызвать этот код из Python. В качестве другого языка автором статьи был выбран Go. В своём материале Kevin Chung описал практическую сторону линковки Go к программе на языке Python, а также описал достоинства и недостатки такого подхода.
https://proglib.io/w/596032a0
https://proglib.io/w/596032a0
Kevin Chung
Faster Python with Go shared objects (the easy way)
There's no two ways about it, Python is slow. I felt this in particular when exploring how to sanitize potentially malicious HTML content in the CTFd content editor. The two options for sanitizing/processing HTML in Python both have some tradeoffs: Poorly…
Крупнейший сервис Телеграм-аналитики TGStat проводит исследование аудитории Телеграма. Опрос анонимный, занимает не больше пяти-семи минут, почти везде просто клики по вариантам ответа. В результате статистика по каналам станет точнее, а жизнь — проще. Давайте поможем: https://tgstat.ru/research
TGStat.ru
Исследование аудитории Telegram 2023.
Кто же он — пользователь Telegram 2023 года?
Видеозаписи докладов с GopherCon Russia 2021: https://proglib.io/w/0ce0b342
YouTube
GopherCon Russia 2021 - YouTube
Elasticsearch в Go: руководство разработчика
Go имеет официальную библиотеку Elasticsearch, которая упрощает разработчикам Go программную работу с данными, хранящимися в Elasticsearch. В статье описан процесс создания простого приложения, которое позволяет добавлять данные и выполнять поиск в Elasticsearch с помощью Go.
https://proglib.io/w/e976179e
Go имеет официальную библиотеку Elasticsearch, которая упрощает разработчикам Go программную работу с данными, хранящимися в Elasticsearch. В статье описан процесс создания простого приложения, которое позволяет добавлять данные и выполнять поиск в Elasticsearch с помощью Go.
https://proglib.io/w/e976179e
Okta Developer
Elasticsearch in Go: A Developer's Guide
How to get started with Elasticsearch in Go
Продолжаем конкурс на самый интересный контент в телеграм-каналах Proglib!
Призовой фонд — 280 тысяч рублей. Срок окончания конкурса — 15 мая
Автор лучшего поста в отдельно взятом канале получает 20 тысяч рублей.
Мы упростили конкурс — теперь вам достаточно найти интересную и актуальную статью 2020-2021 года, написать к ней небольшой анонс (до 700 знаков) и прислать нам, тем не менее ваши идеи по другим форматам только добавляют + в общий зачет. Авторство можем указать по вашему желанию. В канале @progbook предлагаем отправлять рецензии на новые книги и старые актуальные.
Полный список каналов:
https://t.iss.one/progbook
https://t.iss.one/proglibrary
https://t.iss.one/pyproglib
https://t.iss.one/frontendproglib
https://t.iss.one/javaproglib
https://t.iss.one/dsproglib
https://t.iss.one/phpproglib
https://t.iss.one/cppproglib
https://t.iss.one/mobileproglib
https://t.iss.one/goproglib
https://t.iss.one/csharpproglib
https://t.iss.one/devopsslib
https://t.iss.one/testerlib
https://t.iss.one/hackproglib
Все посты будут с лайками и дизлайками и хэштегом #proglib_contest. Ссылки мы будем прогонять через наш сокращатель, будут браться в расчет лайки, дизлайки, охваты, клики по ссылкам. Чем больше лайков/охватов/кликов по ссылкам в публикации, тем больше шансов стать победителем в конкурсе. Присылайте посты боту @proglib_contest_bot с указанием, на какой канал идет публикация. Юридическая информация здесь.
Призовой фонд — 280 тысяч рублей. Срок окончания конкурса — 15 мая
Автор лучшего поста в отдельно взятом канале получает 20 тысяч рублей.
Мы упростили конкурс — теперь вам достаточно найти интересную и актуальную статью 2020-2021 года, написать к ней небольшой анонс (до 700 знаков) и прислать нам, тем не менее ваши идеи по другим форматам только добавляют + в общий зачет. Авторство можем указать по вашему желанию. В канале @progbook предлагаем отправлять рецензии на новые книги и старые актуальные.
Полный список каналов:
https://t.iss.one/progbook
https://t.iss.one/proglibrary
https://t.iss.one/pyproglib
https://t.iss.one/frontendproglib
https://t.iss.one/javaproglib
https://t.iss.one/dsproglib
https://t.iss.one/phpproglib
https://t.iss.one/cppproglib
https://t.iss.one/mobileproglib
https://t.iss.one/goproglib
https://t.iss.one/csharpproglib
https://t.iss.one/devopsslib
https://t.iss.one/testerlib
https://t.iss.one/hackproglib
Все посты будут с лайками и дизлайками и хэштегом #proglib_contest. Ссылки мы будем прогонять через наш сокращатель, будут браться в расчет лайки, дизлайки, охваты, клики по ссылкам. Чем больше лайков/охватов/кликов по ссылкам в публикации, тем больше шансов стать победителем в конкурсе. Присылайте посты боту @proglib_contest_bot с указанием, на какой канал идет публикация. Юридическая информация здесь.
#proglib_contest
GO LEARN GO
Модный популярный язык? Быстрый и эффективный? От Google? — Встречайте Go!
GO BY EXAMPLE
Примеры кода с пояснениями — от Hello World до HTTP-сервера.
GO BY VIDEO
Пошаговое погружение в переменные, структуры данных и основные библиотеки Go.
GO BY TOUR
Интерактивный тур, где ты будешь узнавать теорию и сразу же писать код.
GO BY BOOK
Книга, которая не только отвечает на твои вопросы про Go, но и задает свои (если ты не знаешь ответы, то сможешь посмотреть их там же).
Мало? GO DOCUMENTATION для тебя. А еще это open-source язык. Все есть в гите. Заходи, смотри, разбирайся, предлагай улучшения.
GO GO GO!!!
GO LEARN GO
Модный популярный язык? Быстрый и эффективный? От Google? — Встречайте Go!
GO BY EXAMPLE
Примеры кода с пояснениями — от Hello World до HTTP-сервера.
GO BY VIDEO
Пошаговое погружение в переменные, структуры данных и основные библиотеки Go.
GO BY TOUR
Интерактивный тур, где ты будешь узнавать теорию и сразу же писать код.
GO BY BOOK
Книга, которая не только отвечает на твои вопросы про Go, но и задает свои (если ты не знаешь ответы, то сможешь посмотреть их там же).
Мало? GO DOCUMENTATION для тебя. А еще это open-source язык. Все есть в гите. Заходи, смотри, разбирайся, предлагай улучшения.
GO GO GO!!!
YouTube
Learn Go Programming - Golang Tutorial for Beginners
Learn the Go programming language (Golang) in this step-by-step tutorial course for beginners. Go is an open source programming language designed at Google that makes it easy to build simple, reliable, and efficient software.
🎥 Course from Michael Van Sickle.…
🎥 Course from Michael Van Sickle.…
Библиотека Go-разработчика | Golang
#proglib_contest GO LEARN GO Модный популярный язык? Быстрый и эффективный? От Google? — Встречайте Go! GO BY EXAMPLE Примеры кода с пояснениями — от Hello World до HTTP-сервера. GO BY VIDEO Пошаговое погружение в переменные, структуры данных и основные…
Автор предыдущего поста подкрепил ссылки на источники
Telegram
Библиотека Go разработчика
#proglib_contest
GO LEARN GO
Модный популярный язык? Быстрый и эффективный? От Google? — Встречайте Go!
GO BY EXAMPLE
Примеры кода с пояснениями — от Hello World до HTTP-сервера.
GO BY VIDEO
Пошаговое погружение в переменные, структуры данных и основные…
GO LEARN GO
Модный популярный язык? Быстрый и эффективный? От Google? — Встречайте Go!
GO BY EXAMPLE
Примеры кода с пояснениями — от Hello World до HTTP-сервера.
GO BY VIDEO
Пошаговое погружение в переменные, структуры данных и основные…