Материалы митапа GOnline: дизайн библиотек, кодогенерация, машинное обучение

Моя цель - предложение широкого ассортимента товаров и услуг на постоянно высоком качестве обслуживания по самым выгодным ценам.

Делимся материалами с нашего совместного митапа с сообществами GolangKazan и Go Yola для Go-разработчиков. Под катом — видеозаписи выступлений с таймкодами для удобной навигации и ссылки на презентации спикеров.



Go Data Concurrency Detection — Эмиль Шарифуллин, СКБ Контур


Доклад про дедлок и рейс детекторы в рантайме Go. Как работают и где их можно использовать.



16:02 — Представление темы и спикера
16:16 — Коротко про язык Go
17:11 — Как работает дедлок детектор
27:30 — Что такое гонки данных и как работать с ними в Go
43:07 — Плюсы и минусы использования рейс детектора
45:55 — Где и как использовать дедлок и рейс детекторы


Посмотреть презентацию Эмиля

Горячая перезагрузка кода в Go — Юрий Насретдинов


Юрий рассказал, для чего может понадобиться горячая перезагрузка кода в Go и про то, как её реализовать.



1:02:30 — Представление темы и спикера
1:03:31 — Что из себя представляет горячая перезагрузка кода
1:04:50 — Зачем она нужна
1:05:47 — Плагины в Go
1:11:01 — Soft Mocks для Go
1:12:53 — Ограничения реализации
1:14:59 — Демо горячей перезагрузки
1:20:13 — Выводы


Посмотреть презентацию Юрия

Конфигурируем http и db пакеты — Илья Богданов, iSpring Solutions


Из выступления Ильи вы узнаете, как настроить инструменты стандартной библиотеки Golang так, чтобы избежать неожиданных ошибок в production. Доклад ориентирован на начинающих разработчиков.



1:53:01 — Представление спикера и темы
1:54:19 — Как не словить ошибки соединения с базой данных
2:04:18 — http.Сlient и что с ним не так по умолчанию
2:10:40 — http.Server и его подводные камни
2:14:50 — Пользовательские блокировки MySQL
2:17:05 — Реконнект к ampq
2:18:44 — Выводы


Посмотреть презентацию Ильи

How to design a library — Богдан Сторожук


Как дизайнить API библиотек так, чтобы они всем нравились, и возможно ли это вообще.



2:43:01 — Представление спикера и темы
2:46:31 — Категории пользователей API библиотеки
2:47:47 — Как дизайнить библиотеку для обычных пользователей
2:54:58 — Как дизайнить библиотеку для продвинутых пользователей
3:08:11 — Библиотеки для экспертов
3:20:08 — Можно ли угодить сразу всем?
3:23:37 — Выводы


Посмотреть презентацию Богдана

Статический анализ регулярок — Искандер Шарипов, ВКонтакте


Рассказ про регулярные выражения и ошибки, которые может допустить каждый разработчик при их написании.



03:15 — Представление спикера и темы
05:13 — Как парсить регулярки
18:07 — Как анализировать флоу, и что это такое
21:46 — Поиск багов в регулярных выражениях
25:27 — Что ещё можно делать с регулярками


Посмотреть презентацию Искандера

Трюки кодогенерации в Go — Станислав Афанасьев, Beat


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



1:00:58 — Представление спикера и темы
1:03:57 — Проблема с ручным написанием моков
1:08:09 — Инструменты для генерации моков
1:17:49 — Проблема с ручным написанием Wrappers
1:20:17 — Инструмент для генерации Wrappers
1:26:41 — Нужна ли вам в компании кодогенерация
1:29:17 — Дополнительные полезные инструменты
1:31:15 — Выводы


Посмотреть презентацию Станислава

Geo Search: MongoDB vs S2 Geometry — Степан Пестерников, Авито


Степан рассказал том, что делать, когда MongoDB 2dsphere не справляется с нагрузкой по поиску геоданных, и о миграции на собственный геоиндекс.



1:50:37 — Представление спикера и темы
1:51:46 — Немного теории про геопоиск
1:52:58 — История геоархитектуры Авито и возникшие проблемы
1:55:48 — Выбор решения для проблем
1:56:20 — S2 Geometry vs MongoDB
1:59:20 — Миграция на S2 Geometry
2:03:51 — Итоги


Посмотреть презентацию Степана

Работа с моделями машинного обучения под TensorFlow: взгляд Go разработчика — Артемий Рябинков, Unity


Какой API есть у моделей TensorFlow и как с ним эффективно работать из Go. Из доклада вы узнаете о подготовке инфраструктуры к приходу ML и о том, как запустить этот самый ML своими силами.


Вот ссылка на репозиторий Артемия с инструментом для кодогенерации, о котором он говорит в выступлении.



2:42:41 — Представление спикера и темы
2:45:37 — Немного теории про машинное обучение
2:47:11 — Практика: боремся со спамом в сообщениях
3:17:05 — Подход MLOps


Посмотреть презентацию Артемия

До скорых встреч в эфире!

Источник: https://habr.com/ru/company/avito/blog/499458/


Интересные статьи

Интересные статьи

Недавно прочитал, что многие знаменитые и богатые люди в конце своего жизненного пути жалели только об одном — что не уделяли достаточного времени и внимания своим детям. Издание «Коммерс...
SWAP (своп) — это механизм виртуальной памяти, при котором часть данных из оперативной памяти (ОЗУ) перемещается на хранение на HDD (жёсткий диск), SSD (твёрдотельный накоп...
Это подборка текстовых материалов и тематических подкастов с участием представителей Университета ИТМО — студентов, аспирантов, научных сотрудников и преподавателей. Мы обсуждаем науч...
Итак, всем привет и добро пожаловать в мир современных игр! Дабы заранее предупредить различные вопросы, а также обеспечить удобство чтения, далее — небольшой дисклеймер: всё что будет написан...
Многие годы я использовал довольно стандартизированный подход к дизайну каждой новой карты Cogmind, и хотя сейчас их счёт уже идёт на десятки, в своём блоге я его никогда не рассматривал. В осн...