Тулзовины и хреновины 33
Первый весенний сборник ссылок. Со всеми прошедшими и наступающими весенними праздниками!
У нас тут появились красивые наклейки с гоферами. Теперь вы можете с чистой совестью поддержать наш проект.
Не забывайте подписываться на нас в вконтакте и твиттере.
Новости
- GolangShow выпуск 049. Гость Денис Гладких из Splunk. Три года Docker, NATS, вендоринг и прочее.
- Свежий выпуск Go Newsletter номер 102. Читаем, умнеем.
- s3git - Используем Cloud Storage по git идеологии.
- Если пропустили 048 выпуск GolangShow, то самое время послушать.
- Go Newsletter выпуск 101. Много полезных ссылочек.
- Юбилейный выпуск Go Newsletter номер 100. Читаем, просвещаемся.
- Свежие новости. Go Newsletter #99. Читаем, умнеем.
Проекты
- slf - Структурированный фасад для логирования(Structured Logging Facade) на Go.
- banner - Вставляем крутяцкие баннеры в свое Go приложение.
- cachet - Пакет для работы с API Cachet (система статусов приложения).
- coredns - DNS сервер, который появился как форк Caddy.
- certs - Библиотека для работы с сертификатами ACME, например Let's Encrypt.
- pgfutter - Легкий способ импортировать CSV и JSON в PostgreSQL.
- consulstructure - Пакет для работы с консулом, который автоматически актуализирует данные.
- bigcache - Быстрый и распределенный кеш для работы с большими наборами сущностей.
- acmewrapper - Очень простой способ использовать Let's Encrypt в своем проекте.
- easyjson - Быстрая либа сериализации в JSON для Go.
- wabbit - Пакет для тестирования работы с AMQP.
- ARCANUS - Фреймворк для генерации "полезной нагрузки" и проведения тестов на проникновения.
- lion - Еще один быстрый HTTP роутер на Go. С миделварями и зеро аллокациями.
- gofakes3 - Простое хранилище на базе BoltDB которое удобно использовать для локального тестирования AWS S3.
- harpoon - Простой и конфигурируемый сервер для GitHub'овских веб-хуков.
- goddd - Попытка применить DDD подход к Go приложению.
- ccql - Мультисерверный MySQL клиент. Может запускать запрос параллельно на нескольких серверах
- vago - Go биндинг к Varnish API с использованием cgo.
- quicktemplate - Быстрый, многофункциональный и простой движок шаблонов для Go.
- effe-tool - Набор утилит для создания и компиляции effe(строительных блоков для AWS Lambda)
- harbor - Registry сервер энтерпрайз класса. Много дополнительных функций и возможностей.
- health - Простая и легко расширяемая библиотека для проверки состояния ваших сервисов.
- coname - Экспериментальный кооперативный сервер ключей от yahoo.
- motion - Пакет который предоставляет информацию о файлах и папках. Можно использовать для создания редакторов.
- slumber - Сервер для реализации REST-ful приложений на Go.
- tile38 - Открытая in-memory база данных для геолокации.
- paradise_ftp - Мощный и производительный ftp сервер на чистом Go.
- Go Plugins - Набор плагинов для go-micro и go-platform.
- godash - Набор библиотек и утилит, написанных под вдохновением от lodash.
- Google Cloud Print Connector - Тулза, которая шарит принтеры для разных OS.
- transit - Поддержка формата Transit для языка Go.
- ringpop-go - Расширяемый и отказоустойчивый слой для шардинга ваших Go приложений.
- npyio - Пакет для чтения/записи numpy файлов с данными.
- carbonzipper - Прокси для прозрачного объединения graphite и carbon бекенда.
- rustemmer - Реализация Porter Stemming на Go для русского языка.
- gock - Пакет, который упрощает создание моков для тестирования веб-сервисов.
- apns2 - Сервис для пуш-нотификаций, который работает через новый протокол APNs HTTP/2.
- stacktrace - Пакет, который добавляет к ошибкам стектрейсы.
- WolfenGo - Клон игрушки Wolfenstein3D на чистом Go.
- dex - OpenID идентификатор(OIDC) и OAuth 2.0 провайдер на Go.
- ga-beacon - Пакет, который позволяет использовать Google Analytics там, где нельзя вставить JavaScript код.
- go-carpet - Утилита которая показывает покрытие вашего кода тестами.
- amqp-rpc - Пакет, который предоставляет RPC API для работы с amqp.
- imageproxy - Кеширующая прокси для картинок с возможностью ресайза.
- doorman - Распределенный ограничитель доступа к ресурсам.
- rutil - Консольная утилита для работы с редисом. Куча всяких полезных возможностей.
- gophernotes - Go умудрились прикрутить к Notebooks.
- micro - Еще один тулкит для реализации микросервисов на Go.
- cherry - Маленький и легковесный сервер для чата на Go.
- subcommands - Пакет для удобной организации логики в консольных приложениях.
- go-pack - Инструмент для сборки deb пакетов из Go бинарников.
- ergonomadic - IRC сервер полностью написанный на Go.
Статьи
- Осторожно, ловушка. Go замечательный, простой и понятный язык. Почти все места и конструкции прозрачны как воды Байкала.
- Тестирование HTTP хендлеров в Go. Перевод статьи "Testing Your (HTTP) Handlers in Go".
- Вендоринг зависимостей в Go проектах для начинающих.
- Опыт написания сервиса кеширования, который поддерживает миллионы объектов.
- Парсим необычный JSON в программах на Go.
- Хабрастатья "О функциональности Go".
- Создание консольных утилит с помощью Go и Kingpin. Статья в девелоперском блоге atlassian.
- Первая часть туториала по написанию текстовой игры.
- Пишем автоматически расширяемое и устойчивое приложение на языке Go.
- Конкурентность в Go. Часть 2. Свежая статья из codeship блога.
- Как в Teamwork используют Go и на какие грабли они напоролись.
- Используем Go и JSON для работы с Kafka. Добиваемся высокой пропускной способности.
- Используем пакет libretto для создания и управления любыми виртуальными машинами.
- Делаем Go программу быстрее на 70% просто избегая типичных ошибок.
- Как работают нестандартные пути импорта в Go.
- Используем прозрачную SOCKS прокси на Go для замены NAT.
- Вызываем Go программу из iOS приложения.
- Интерфейсы в Go. Объектно ориентированный подход в Go.
- Разбираемся когда стоит использовать каналы, а когда мьютексы.
- igor - Абстрактный слой для работы с PostgreSQL.
- Введение в LLVM в контексте языка программирования Go.
- Рабоатем с Redis в Go программах. Лучшие подходы и практики.
- GolangShow. Выпуск 047. Каналы, логгеры, ORM.
- Мониторинг микросервисов на Go с использованием Synthetic Transactions.
- Делаем свой чат на Go. Очень подробная статья.
- Проблема 10M на примере конкурентных веб-сокетов в Go.
- Реализация кроcсплатформенного музыкального плеера moggio на Go.
- Пример использования Go для реализации приложения с websockets.
- Используем Google Drive и Google Calendar в своих Go программах.
- Тестирование на основе свойств применительно к языку Go.
- Хабрастатья "Consul.io Часть 2". Разбираемся с API.
- Введение в паттерны конкурентности на Go. Статья из блога codeship.
- Наброс про каналы в Go. Все плохо и мы все умрем.
- Хабраперевод "Интересные способы использования Go каналов".
- Реализуем паттерн сервис локатор на Go. Хоть и не очень канонично, но иногда полезно.
- С 0 делаем свой микросервис на Go за 5 минут.
- Статья из блога разработчиков coreos. Делаем REST с HTTP/2, Protobufs и Swagger.
- Несколько простых примеров реализации RPC на Go.
Инструменты
- asciinema - Программа для записи терминала. Написана на Go.
- pcstat - Пакет, который показывают статистику по использованию кеша для файлов в linux.
- showdeps - Утилита для получения списка зависимостей в вашей программе.
- jfrog-cli-go - Компактный и функциональный клиент для работы с Artifactory и Bintray.
- fbtracert - Инструмент для определения сетевых устройств теряющих пакеты.
- dbxcli - Консольный клиент для Dropbox. Построен на базе Go SDK.
- Настройка Visual Studio Code для Go. Учимся использовать бесплатный кроссплатформенный редактор кода от Microsof.
- git-freeze - Тулза для очень простого вендоринга. Работает на базе git подмодулей.
- dockward - Тулза, с помощью которой очень легко форвардить порты для Docker контейнеров.
- apex-shell - Интерактивный шел для выполнения команд на AWS Lambda контейнерах.
- cpustat - Утилита для высокочастотных измерений производительности.
- ghostunnel - Простая SSL/TLS прокси с взаимной аутентификацией для работы с не TLS бэкендами.
- speedtest-go - Консольная тулза для тестирования скорости вашего интернета.
- gentleman - Набор утилит для работы с HTTP запросами. Напичкан различными фичами и можно расширять плагинами.
- MailHog - Инструмент для тестирования работы с почтой.
- devbox-golang - Vagrant бокс для Go разработчиков с предустановленным инструментарием.
Видео
- Современный мониторинг. Видео с февральского митапа в Санкт-Петербурге.
- Платформа Виртуальной АТС ITooLabs. Получасовое видео с докладом о языке разработки Golang для участников партнерской конференции Битрикс24.
- HTTP/2 and http2 in Go 1.6. Brad Fitzpatrick рассказывает о поддержке HTTP/2 протокола в Go 1.6.
- TDD, Mocking & Dependency Injection. TDD, Mocking & Dependency Injection.
- Dublin Go Meetup. Видео докладов с февральского митапа в Дублине.
Всякое
- abot - Фреймворк для создания ботов помощников.
- Вспоминаем историю с нодовским пакетом LeftPad и проверяем, может ли подобное произойти в мире Go.
- Презентация "Продвинутое тестирование в Go". Подходы и практики.
- nomi - Инструмент для бенчмаркинга кластера fleet.
- jsed - Консольный редактор для JSON. Удобно искать и манипулирвать данными.
- sshtron - Мультиплеерная игра Tron, которая работает поверх ssh.