Краткий обзор видео по Go c FOSDEM 2015
Одна из самых популярных конференций по open-source проектам, FOSDEM, прошла 31 января — 1 февраля, и, помимо многих dev-румов, был dev-room посвященный целиком Go. Видео с этой конференции уже выложены в паблик, доклады по 30–40 минут каждый, и, надо сказать, доклады очень достойные — привычного и надоевшего интро для новичков в стиле «Что мне нравится в Go?» или «Как тестировать в Go» тут не было.По себе знаю, что пересмотреть 7+ часов технических выступлений далеко не всегда реально, особенно если не знаешь толком, стоит ли вообще смотреть, поэтому я подготовил краткие ремарки по каждому докладу, которые могут помочь выбрать — что стоит посмотреть, а что пропустить. Ремарки, разумеется, сугубо субъективные.
Всего было 8 докладов по 30–40 минут, и полтора часа так называемых Lightning talks — коротких докладов, идущих один за другим.Сразу привожу ссылки на плейлисты: Youtube: www.youtube.com/playlist? list=PLtLJO5JKE5YDK74RZm67xfwaDgeCj7oqbFOSDEM http: video.fosdem.org/2015/devroom-go/Итак, в порядке выступлений.Go at CoreOS [29:54]Kelsey Hightower @kelseyhightowerURL: coreos.comОдин из самых интересных и фановых докладов — автор достаточно веселый товарищ, но все в меру, без глупых шуток. Интересно рассказывает про детали использования Go внутри компании (менеджмент зависимостей, сборку всего с CGO_ENABLED=0, вот это все), и проходится по основным проектам команды CoreOS — etcd, fleet, flannel, rocket. Рекомендую, если эти вещи у вас на слуху, но глубже не было времени о них узнать.
[embedded content]Скачать MP4: video.fosdem.org/2015/devroom-go/go_at_coreos.mp4 (102M)
Finding Bad Needles in Worldwide Haystacks (Go & Web security scanning) [35:04]Dmitry Savintsev @dimisecURL: Это доклад удалось посмотреть через боль — у автора дичайший русский акцент, и, видимо, совсем мало опыта в публичных выступлениях. Желаю ему заняться конкретно постановкой акцента — потому как желание выступать на конференциях есть и рассказать есть что, но далеко не все могут выдержать испытание плохим индийским или русским акцентом.Справедливости ради, доклад один из худших в плане подачи материала — сложно следить за мыслью, примеры с первого раза не работают и так далее.Понравился момент, когда автор прямо на конференции поменял статус репозитория с приватного на публичный.[embedded content]Скачать MP4: video.fosdem.org/2015/devroom-go/go_web_security_scanner.mp4 (122M)
Moving MongoDB Components to Go [40:31]Norberto Leite @nleiteURL: mongodb.comДоклад технического евангелиста MongoDB о том, как и почему mongo-tools были переписаны на Go, а также про внутренний софт компании на Go. Интересный доклад, хотя немного затянутый — автор сам не технарь, евангелист всё-таки, но слушается легко и интересно.
[embedded content]Скачать MP4: video.fosdem.org/2015/devroom-go/mongo_go.mp4 (140M)
CockroachDB — A scalable, Available, Transactional DB [44:04]Tobias SchottdorfURL: cockroachdb.orgДоклад по дизайну новой (еще одной) базы данных, пытающейся восполнить нишу SQL-баз данных для распределенных систем. Что-то вроде гугловской Spanner, но доступная не только гуглу. Проект open-source, и не привязанный к конкретному типу стоража для ноды (RocksDB, LevelDB, etc).Наверное, доклад будет больше всего интересен тем, кто интересуется дизайном баз данных, но даже для общего развития полезно послушать умного человека, который несколько с опаской спрашивает зрителей «все ли знакомы с CAP-теоремой?» :).Проект пока еще не готов для продакшена, но однозначно интересный.
[embedded content]Скачать MP4: video.fosdem.org/2015/devroom-go/cockroachdb_go.mp4 (163M)
HTTP/2 for Go [46:02]Brad Fitzpatrick @bradfitzURL: http2.golang.org/Самый хардкорный тут доклад — много кода и технических подробностей, Фитцпатрик объясняет детали реализации HTTP2 протокола в Go, которая появится уже в Go1.5 (на момент доклада официально спецификация HTTP/2 еще даже не была окончательно одобрена). Немного быстро говорит и показывает, сходу может быть сложно успевать следить за кодом, но достаточно интересно. Плюс хорошее интро в отличия HTTP/2 от HTTP/1.1.
[embedded content]Скачать MP4: video.fosdem.org/2015/devroom-go/http2_go.mp4 (183M)
Go & modern enterprise [27:25]Peter Bourgon @peterbourgonURL: soundcloud.comТоже хороший доклад по видению автора роли Go в современных энтерпрайз системах (что он подразумевает по этим — он объясняет). Особенно по тренду ухода от монолитных программ к микросервисам (и «пикосервисам», шутки ради) и опыте в этом в SoundCloud. Вообще, видно, что у товарища хороший опыт в этой теме и многие соображения достаточно интересно слушать.Кроме того интересные обращения к Go-коммьюнити о том, что пора прекращать писать блог-посты про очередной http-мультиплексор и рассказывать про более крупные истории использования.
[embedded content]Скачать MP4: video.fosdem.org/2015/devroom-go/go_modern_enterprise.mp4 (135M)
Bleeve — Text-indexing for Go [39:40]Marty Schoch @mschochURL: github.com/blevesearch/bleveДостаточно интересный доклад по системе текстового поиска Bleve, аналогу Elasticsearch, Lucene и Solr, но написана полностью на Go. С примерами кода, инсайтами в особенности проблематики текстового поиска. Проект выглядит очень достойно, доклад слушается легко и интересно.
[embedded content]Скачать MP4: video.fosdem.org/2015/devroom-go/bleve.mp4 (145M)
The State of Go [37:06]Andrew Gerrand @enneffДоклад одного из ребят из core-команды Go, Эндрю Герранд. Рассказывает о состоянии дел Go на момент начала февраля 2015. Про планы в Go 1.5, переезд на Git и Github в частности, про Gopher Gala и прочее. Достаточно интересно для общего понимания.
[embedded content]Скачать MP4: video.fosdem.org/2015/devroom-go/state_of_go.mp4 (125M)
Go Lightning Talks [1:45:00]1. The State of Camilstore (Mathieu Lonjaret) — отчет по состоянию дел в проекте Camilstore (универсальное хранилище всякого разного контента)2. restic — Backup done right (Alexander 'fd0' Neumann) — презентация и демо утилиты для эффективных бэкапов3. The diameter protocol (Alexandre Fiori) — интро в протокол Diameter (rdc6733) и его реализацию на Go, с интересными моментами в реализации.4. Go enums and JSON encoding (Francesc Campoy) — интересное демо применения генерации кода и использования go generate5. Can Go fix Windows cmd — немного сумбурный доклад товарища, который сделал terminal emulator на Go, для их кастомного SSH-сервера под Windows.6. Go on Mobile (David Crawshaw) — примеры реального кода на Go для Android и подробности разработки на Go для мобильных платформ.7. Phenakistoscope in Go (Alex Plugaru) — демо фенакистоскопа на Go — вращающегося колеса с картинками, создающего эффект анимации.8. Go appengine (Valentin Deleplace) — интро в Google App Engine и специфику работы с GAE на Go.9. REST & Hybrid Cryptography (Eleanor McHugh) — про симметричное шифрование для REST-бэкенда на Go.[embedded content]Скачать MP4: video.fosdem.org/2015/devroom-go/go_lightning_talks.mp4 (405M)