Тулзовины и хреновины #9
Победа над прокрастинацией! Задержавшийся выпуск "тулзовин" завершен. В этот раз необычно много всяких пакетов и проектов, прям хоть свой катологизатор делай. Рекомендую взглянуть на Kocha.
И большое объявление для сообщества:
Встреча гоферов в Москве. Уже совсем скоро - 21 июня 2014
Очередная встреча нашего сообщества, при поддержке Undev, NPTV и Digital October. Трансляция будет на сайте последнего (на странице мероприятия и на главной).
Андреенко Артём из Openstat (Spylog) расскажет про опыт использования Go в своей компании в режиме реального времени.
Вячеслав Бахмутов из Яндекса расскажет про опыт использования Go в своей компании в облачной платформе Cocaine.
Александр Орловский из sports.ru расскажет про NSQ, очередь сообщений, написанную компанией Bitly на Go, и про её опыт использования в своей компании.
Проекты
- go-command-running-thing - Веб запускалка команд на удаленной машине. Это как shellinabox, только больше багов и менее юзабельна. Но на Go.
- Binding - Связывает данные из net/http реквеста с кастомными структурами и валидирует.
- CJToolkit Lexy - Необычная система шаблонов для Go. С смайликами:)
- cobra - Удобный пакет для создания консольных приложений.
- goworker - Resque-совместимый воркер, который выполняет задачи из очереди. Написан на Go.
- otto - JavaScript парсер и интерпретатор написанный на нативном Go.
- docker-gen - Генератор файлов, который рендерит шаблоны используя метаинформацию docker-контейнеров
- skycoin - Еще одна криптовалюта.
- nanjingtaxi - Безопасная, P2P распределенная система для чата на Go.
- lwa - Проект, который облегчает запуск Go веб приложений как десктоп программ. То еще извращение.
- go-astar - Алгоритм нахождения пути A*
- httptreemux - HTTP роутинг для Go. Простой, расширяемый.
- goshare - Инструмент, для расшаривания любых данных между нодами. Работает поверх HTTP и ZeroMQ.
- unwebhook - Сервер, который дает возможность запускать разные команды по событиям для Gitlab или Github
- gochatapp - Чат на Golang, AngularJs и Socket.io. Все модно и вебсокетно.
- execd - Легковесный SSH фронт сервер написанный на Go.
- amber - Еще одни шаблонизатор, который "как HAML и Jade", но на Go.
- websocketproxy - реверс прокси для вебсокетов. Работает поверх gorilla/websocket.
- golang distributed filesystem - Клон HDFS на языке программирования Go.
- ui - Либа для создания нативных графических интерфейсов на языке Go.
- hockeypuck - Сервер для OpenPGP публичных ключей.
- dynjson - Маленькая библиотека для динамического доступа к JSON на языке Go.
- boxcars - Простой, легконастраиваемый проксисервер написанный на языке Go.
- peco - Инструмент похожий percol и взявший за основу его концепцию фильтрации для unix пайпов.
- gowf - Еще один микрофреймворк на языке Go. Горшочек, не вари!
- fault - Пакет, который реализует полезный паттерн ожидания нескольких go-рутин с ранним отказом.
- bluemonday - Санитайзер написанный на Go.
- gotk3 - Go биндинг для Gtk3 и сопутствующих проектов. С документацией печаль.
- spark - Обертка над spark.io API и консольный клиент в придачу.
- pat - Паттерн мультиплексор для net/http библиотеки. Очень в стиле Sinatra.
- Vaban - Пакет для контроля над Varnish Cache хостами с помощью REST Api
- phonegeocode - Пакет для определения страны по номеру телефона.
- pixlserv - Сервер для ресайза картинок на лету. Удобная и быстрая(?) штука написанная на Go.
- BoltStore - Фронтенд для сессий gorilla/sessions который использует Bolt.
- lumberjack - Пакет для ведения логов с ротацией файлов.
- orchestrator - Инструмент для управления структурой MySQL базы и ее визуализации.
- Kocha - полноразмерный веб-фреймворк, аналогичный beego или revel, но с исправленным фатальным недостатком.
- quartz - Инструмент, который позволяет вызывать Go код из Ruby приложения.
- gorequest - Удобный HTTP клиент на Go. Написан по аналогии SuperAgent lib в Node.js.
- libchan - Это как каналы в Go, только для сервисов в сети.
- samay - Консольные таймтрекер на Golang. Инструмент мечты.
- trace - Весьма удобная тулза для отладки программ. Выводит номер горутины, номер строки, имя файла и имя вызывающей функции.
- nag - Забавный консольный таймер-напоминатель написанный на Go.
- erk - Консольный менеджер задач, аналогичный watson-ruby.
Новости
- Вышел Go версии 1.3 rc1 и rc2
- Выпуск golangweekly #27 и golangweekly #28. Дайджест новостей из мира Go.
- Стабильный релиз интересного инструмента gen v1, который добавляет немного дженериков в Go.
- Убунтовцы выложили на гитхаб свою juju.
- Прошел DocerCon 2014 и зарелизился Docker v1.0.
- sockjs-go дожил до версии 2. Это sockjs сервер, написанный на Go.
- Релиз моего любимого менеджера зависимостей gpm v1.2.3
Статьи и статейки
- Go, REST APIs и указатели. И еще разные пакеты.
- Причины, по которым функциональным программистам стоит посмотреть в сторону Go.
- Работа с архивами в языке программирования Go.
- Шаблоны(не generic) в языке программирования Go.
- Очень простое веб-мидлваре на Go в 13 строчек кода.
- "Yhat meets Go". Статья в блоге Yhat о том, как они используют Go.
- Секурная генерация случайных чисел с использованием crypto/rand.
- Паттерн синхронизации в языке программирования Go.
- Одна неделя с языком программирования Go.
- Переход с Martini на стандартную библиотеку Go и Gorilla MUX.
- Пример преобразования данных из POST в структуру без использования сторонних фреймворков на чистом Go.
- "Template and Associated templates" - в деталях описываются ассоциативные шаблоны в Go.
- Очень большая, подробная и интересная статья про опыт создания сложного сайта знакомств на Go.
- Еще одна статья из цикла "Building a Web Server in Go". Теперь учимся хранить пароли.
- Хорошая обзорная статья про P2P дропбоксозаменитель Syncthing.
- "5 моментов, которые сделают Go быстрее". Статья в блоге Dave Cheney.
- Замечательная статья о объектно ориентированности языка Go.
- Шаг за шагом учимся использовать Go для работы с SSH.
- Работаем с cURL на языке программирования Go.
- "Является ли Go языком ООП?" - перевод статьи "Is Go An Object Oriented Language?" сделанный @kouprianov
- "30 days of hacking Docker" - @LK4D4math делится опытом использования Docker.
- "Gopher Go! - Bufio" - статья про работу с пакетом bufio в языке программирования Go.
- "Gopher Go! - OS & Syscall". Использование пакета os и системные вызовы в Go.
- Создаем веб-приложение на Go c помощью фреймворка beego.
Видео
"From Parallel to Concurrent" - обязательный к просмотру доклад от Роба Пайка на конференции Lang.NEXT 2014
Всякое
- Ethereum ÐApps для разработчиков - пишем свою криптовалюту.
- Простые примеры для новичков, которые помогают учиться читать Go код.
- Новая книга: "Test-driven development with Go"
- Сказ о том, как Kelsey Falter с Node.js на Go перелазила.
- Презентация "Martini. Web framework for Go" c GopherCon 2014.
- Иногда 2 + 2 равно 5.
- "Go: 90% Perfect, 100% of the time" - немного оффтопная презентация о том, насколько хорош Go.
- Забавное сравнение кто как обрабатывает ошибки.
- В Apple ищут человека со знанием Go. Это успех.
- Небольшая бесплатная книга про использование Sourcegraph от Satish Talim.
- Хороший пример todo приложения на Go и JS.
- Сравнительные бенчмарки web-фреймворков на Go.
- 10 вещей, которые вы (возможно) не знаете про Go.
- Немного сумасшествия. Gopher Angular Tutorial - порт AngularJS.org tutorial на GopherJS с использованием go-angularjs.
- Совсем недавно прошла Docker конфа. Там показали много интересных проектов, найти которые можно в Docker сообществе на github.
- "Go на Google App Engine" - Доклад с DevConf от Сергея Лалова.
- Одни простой трюк для автоматической генерации документации от Nate Finch.
- pgpin - Пример database-backend сервиса на Go, клон dataclips.heroku.com.
- Небольшой тест на знание зарезервированных слов в Go.