Я люблю выступать с докладами на конференциях и митапах с темами, касающимися функционального программирования и разработки ПО. В особых случаях, таких как конференция C++ Russia, я делаю showcase проекты специально для докладов. Моя цель — показывать яркие идеи из мира ФП, популяризировать язык Haskell, и рассказывать о чем-то необычном.
Общности и разности архитектуры приложений в ООП и ФП

Archdays 2021
Рассказываю о систематическом подходе к проектированию ПО, и представляю свою методологию Functional Declarative Design, как альтернативу Object Oriented Design
Designing complex applications with Free monads (Eng)

Functional Conf Global Edition 2020
Доклад о том, как применять Free monads для написания асинхронных приложений. Показываю, как можно реализовать async/await синтаксис и рассуждаю о Software Design.
Слайды
Concurrent applications with Free monads and STM (Eng)

Haskell Love 2020 online
Рассказываю о приложениях, основанных на STM и Free monads, показываю различные паттерны проектирования, обсуждаю подходы и решения.
Слайды
Automatic White-box Testing with Free Monads (Eng)

f(by) 2020, Minsk, Belarus
Доклад о моем подходе к тестированию по методу белого ящика, когда тесты писать не нужно совсем. Доклад основан на одноименной статье.
Слайды
Статья Automatic White-box Testing with Free Monads
(там же — и showcase проект с работающим кодом)
Hierarchical Free Monads and Software Design in Functional Programming (Eng)

Functional Conf 2019, Bangalore, India
Доклад о моем подходе «Hierarchical Free Monads» для построения сложных приложений на Haskell, и о дисциплине Software Design в ФП.
Слайды
Final Tagless vs Free Monads

FPure 2019, Казань
Доклад для ФП-конференции FPure в Казани. Рассказываю про разницу между подходами Final Tagless и Free Monad.
Слайды
Like in Haskell: Final Tagless and eDSLs on concepts

C++ Russia 2020 online
Доклад о том, как с помощью новой фичи С++20 — концептов — создавать предметно-ориентированные языки в стиле хаскельного Final Tagless/mtl.
Слайды
Монадические парсеры

C++ Russia 2019, Moscow
Доклад из цикла «ФП в С++». Рассказываю про монадические парсеры, сделанные на Free monads.
Слайды
Keynote: Настоящее и будущее функционального программирования в C++

C++ Siberia 2019, Новосибирск
Большой доклад о том, почему функциональное программирование в С++ важно, в чем его философия и куда движется язык. Рассказываю про подъязыки чистого ФП: template и constexpr, показываю, как появляется необходимость в монадах, рассказываю о том, какие бывают. Рассказываю о грядущих фичах в C++: ranges, Pattern Matching, expected<> и других.
Слайды
Материалы для подготовки доклада
Функциональный подход к Software Transactional Memory

C++ Russia 2018, Санкт-Петербург
Библиотека cpp_stm_free, которую я сделал для доклада, является самым сложным достижением в моей жизни. Она основана на продвинутых концепциях из ФП — Free-монадах, и имеет особенную имплементацию. Рассказываю, что такое STM, и как устроена библиотека.
Слайды
Библиотека cpp_stm_free
Туториал
Проект-пример cpp_philosophers_stm
Материалы для подготовки доклада
Функциональный микроскоп: линзы в С++

C++ Siberia 2015, Новосибирск
Специально для доклада я реализовал библиотеку простых линз на геттерах и сеттерах. Рассказываю, что это за концепция, как ее применять, и какие могут быть подходы к реализации.
Слайды
Библиотека cpp_lenses
Материалы для подготовки доклада
Функциональная жизнь: параллельные клеточные автоматы и комонады на С++

C++ Russia 2016, Санкт-Петербург
Хардкорный доклад про то, как в функциональном стиле сделать параллельные клеточные автоматы, положив в их основу концепцию из ФП — комонады.
Слайды
Проект-пример CMLife
Материалы для подготовки доклада
Функциональное программирование в С++ и конкурентные вычисления

LambdaNsk, Новосибирск, 2018
Доклад для митапа LambdaNsk, дополняющий тему, которую я рассказывал на C++ Russia 2018.
Слайды
Декларативный и функциональный дизайн на С++11

C++ User Group, Новосибирск, 2014
Доклад для митапа C++ User Group о том, как дизайнить приложения в функциональном и декларативном стиле на примере игры «Амбер».
Слайды
Отказываемся от Ruby on Rails в пользу Haskell

LambdaNsk, Highload Siberia++, 2018
В компании Restaumatic мы переводили кодобазу с Ruby on Rails на Haskell. Я рассказываю о том, как это у нас получалось и какие подходы мы использовали.
Слайды
Product :: RubyOnRails -> Haskell

HasGeek / JSFoo, Bangalore, India, November 2019
В компании Restaumatic мы переводили кодобазу с Ruby on Rails на Haskell. Я рассказываю о том, как это у нас получалось и какие подходы мы использовали.
Слайды
Дизайн больших приложений в ФП

FPConf 2015, Москва
Рассказываю о возможных подходах и существующих проблемах дизайна больших приложений в ФП.
Слайды
Материалы для подготовки доклада
Линзы — комбинаторная манипуляция данными

Dev2Dev 2015, Красноярск
Доклад о линзах в Haskell.
Слайды
Материалы для подготовки доклада
Лучшая FRP библиотека — это STM (live coding)

FProg Spb июнь 2020
Доклад-исследование о том, как сделать библиотеку для реактивного программирования с использованием Software Transactional Memory.
Пишем игру Labyrinth на фреймворке Hydra (live coding)

FProg Spb май 2020
Рассказываю про Free монады, про фреймворк Hydra, объясняю базовые концепции создания Free монадических языков, и показываю, как можно писать приложения с помощью этого фреймворка.
Haskell для мейнстримных программистов

FProg Spb октябрь 2019, Санкт-Петербург
Доклад о состоянии дисциплины Software Design в Haskell и о том, что можно сделать, чтобы Haskell мог претендовать на менйстрим.
Слайды
eDSL для графа переходов на Free монадах и экзистенциальных типах

FProg Spb апрель 2018, Санкт-Петербург
Доклад о том, как можно сделать граф переходов (стейт-машину) на фри-монадах и экзистенциальных типах в Haskell.
Слайды
Материалы для подготовки доклада
Вы не понимаете ФП

DevDay@2GIS Декабрь 2017, Новосибирск
Мифы и заблуждения о ФП
Слайды
Материалы для подготовки доклада
Haskell

DevDay@2GIS Май 2013, Новосибирск
Язык программирования Haskell.
Слайды
Материалы для подготовки доклада
Back to the Future: Функциональное программирование вчера и сегодня

TechTalks@NSU, 2015
Рассказываю о том, какое значение приобрело функциональное программирование.
Слайды
Материалы для подготовки доклада
Подкасты и интервью
Подксат АйТиБорода: Александр Гранин, все о Haskell

Самый главный русскоязычный канал об IT.
В этом выпуске я рассказываю про Haskell и всё вокруг.
{ между скобок }: как и зачем писать технические книги (Rus)

Мы говорим о том, как и зачем писать технические книги. Стоит ли их писать, и какой смысл для разработчика
Architecture Weekly: ChatGPT сделает нас ненужными? (Eng)

Сделает ли ChatGPT разработчиков устаревшими? Сколько ИТ-специалистов могут потерять работу?
Inference Podcast #2: Haskell and FP in the industry (and the community) (Eng)

With Michele Riva, we’re discussing the state of the FP and its place in the modern world.
Chapters:
00:00 Introduction
02:43 Alexander’s everyday tech stack
05:46 What makes Haskell special?
08:35 What was the hardest part of learning Haskell?
10:33 Community support for learning Haskell
12:51 Why is it so «hard» to enter the Haskell community?
15:37 Can we encounter the same problems in other FP communities?
20:56 Why did FP took such a long time to become so popular?
27:34 Will FP overcome the OOP world?
33:24 Can multi-paradigm languages make life harder for new developers?
37:25 Alexander’s thoughts about the future of FP
PodlodkaPodcast #297: Функциональная архитектура

Говорю на свою любимую тему — функциональная архитектура и дизайн. Большой обзорный выпуск про инженерию ПО в функциональных языках таких как Haskell, Scala, F# и других.
PodlodkaPodcast #136: Современный С++

Рассказываю о языке С++: его история, развитие, боль, коммьюнити, конференции, и все что вокруг.
Подкаст «Мы обречены» с Александром Граниным

Кому нужны эти книжки по программированию
Общаемся про всякое: книги и читатели, смысл жизни, ширпотреб, хейт в сообществах
Remote Talk Podcast. Haskell на проде, чем хорош Rust, проблемы разработки ПО и ФП-тренд

Рассказываю обо всяком. Мой путь в ИТ, ФП, Rust, моя книга Functional Design and Architecture, проблемы ИТ в России, ИТ-жизнь в Новосибирске и прочее.
Pure Virtual Cast

Я, Сергей Платонов и Алексей Веселовский говорим о функциональном программировании, докладах, удаленной работе, зарплатах программистов и профсоюзе.
C++ Russia 2019 Piter — интервью

Интервью, в котором мы с Сергеем Платоновым и Евгением Трифоновым обсуждаем, в чем состоит работа Программного Комитета и как попасть на конференцию в качестве докладчика.
Интервью Александра Гранина каналу Vishwas Narayan: Software Architecture (Eng)

Рассказываю свой взгляд на Software Architecture и на сопутствующие вопросы в подкасте Vishwas Narayan.
Scalalaz Podcast (FPure)

Интервью для подкаста scalalaz, случившееся на конференции FPure в Казани.
BitCask #5 Рекурсивный эскалатор

Разговор про Scala и Haskell с Оли Махасоевой
HEXLET MEETUPS
● Онлайн-дискуссия: Место фреймворков в ФП [Хекслет] Алексей Пирогов, Александр Гранин
LambdaNsk
● Идиоматичный функциональный код (слайды)
● Линзы — комбинаторная манипуляция данными (слайды)
● Дизайн крупных приложений на функциональных языках (слайды)
Лекции в 2ГИС
● Лекция 1. Принципы и практики разработки ПО (слайды)
● Лекция 2. Принцип подстановки Лисков (слайды)
● Лекция 3. Закон Деметры (слайды)
Hinteractive Cast
Скринкаст работы над движком квестовых игр hinteractive в двух частях.
● Hinteractive Cast 1
● Hinteractive Cast 2
🠺 Проект hinterative
Innopolis HR Meetup
● GitHub — зеркало разработчика (слайды)
ЧитГУ / ЗабГУ выступления, доклады, презентации
● Профессиональная разработка в суровом enterprise (слайды)
● О разработке десктопных приложений (слайды)