Привет, Хабр! Мы выложили видеозаписи докладов с конференции DotNext 2018 Piter. Получился плейлист из 26 видео! В нашей подборке под катом будут десять, но только самых лучших, получивших высшие оценки от зрителей. Если есть силы смотреть все доклады из плейлиста — мы только рады.
 
Традиционно, чем ниже доклад по списку, тем выше его рейтинг. Но очень важно понимать: все доклады имеют примерно одинаковые оценки, около 4,36-4,49 баллов, и расположение может легко измениться, стоит немного поменять методику подсчета. К примеру, на доклад, занявший второе место с рейтингом 4,48, отзывов в несколько раз больше, чем на лучший доклад с рейтингом 4,49. В общем, смотреть нужно всё.

Под катом все видео разбиты с оглавлением по содержимому поста, презентациями и короткими описаниями.



Взаимодействие микросервисов по HTTP/2


Спикер: Евгений Жиров
Место: 10
Рейтинг: 4,36 ± 0,06
Презентация доклада


Доклад Евгения Жирова открывает наш топ детективной историей про производительность. Вас ожидает короткий и понятный экскурс в создание и развитие HTTP и HTTP/2, вскрытие фатальных недостатков HTTP и героическое решение проблем, связанных с попыткой перехода на HTTP/2 в новом сервисе.

Женя рассказывает увлекательную Fail story про утечки unmanaged-памяти, магические константы, сюрприз «101 запроса», ремонт CoreFX и другие интересные проблемы. С ними может любой столкнуться разработчик микросервисов под .NET и коллеги, работающие с нагрузочным тестированием HTTP-сервисов.

Конечно, кроме фейлов Евгений нашел у HTTP/2 и серьезные плюсы: ускорение загрузки страниц и оптимизацию взаимодействия микросервисов в распределенной системе.

Деревья выражений в enterprise-разработке


Спикер: Максим Аршинов
Место: 9
Рейтинг: 4,37 ± 0,05
Презентация доклада


История одного рефакторинга. Зачастую мы не разбираемся в том, как технология работает «под капотом». Большинство разработчиков используют expression trees (деревья выражений) только для лямбда-выражений в LINQ. Но работа над проектом с крупной информационной средой вынудила Максима залезть внутрь кода и разобраться в том, как деревья выражений помогают счастливо жить и оптимизировать процессы.

В докладе Максим демонстрирует продвинутые техники работы с деревьями выражений: устраняет дублирование кода в LINQ, занимается метапрограммированием, кодогенерацией и транспиляцией и автоматизирует тестирование с помощью expression tree. Рассказ наглядно показывает — деревьями выражений можно и нужно пользоваться, а встречающиеся подводные камни вполне можно обойти.

И да, если не любите писать много кода, дерево выражений — ваш выбор.

Reactive Extensions (Rx) 101


Спикер: Tamir Dresher
Место: 8
Рейтинг: 4,38 ± 0,12
Презентация доклада


Reactive-приложения предназначены для обработки асинхронных событий. Они улучшают отзывчивость, отказоустойчивость и эластичность кода. Reactive Extensions (Rx) — это библиотека, которая абстрагирует источники событий и предоставляет инструменты для их обработки через Reactive.

В докладе Тамир демонстрирует простые примеры кода, которые помогут вступить на поле Rx, понять основные возможности и подходы. Прослушав доклад, вы сможете использовать Reactive Extensions достаточно эффективно, чтобы экспериментировать и пускать наработки в продакшн.

С Rx фильтрация событий, составление источников событий и их трансформация становятся проще, чем при использовании обычных парадигм и инструментов. Но это требует изменения мышления: нужно думать о своём приложении, как хабе сообщений, а приложение должно понимать, как на эти сообщения реагировать. Тамир всё объясняет и показывает. Смотрите и экспериментируйте!

How containers work


Спикер: Sasha Goldshtein
Место: 7
Рейтинг: 4,39 ± 0,06
Презентация доклада


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

А в этом докладе контейнеры показываются такими, какие они есть на самом деле: обычными процессами с некоторой изоляцией, квотой на ресурсы, ковыряющиеся в сэндбоксинге безопасности.

Это интересная и полезная штука, в которой нужно разбираться, если вы хотите продолжать работать и быть актуальным в своей сфере в ближайшие несколько лет. Контейнеры — ваш друг и товарищ, а Саша станет вашим проводником в этот мир.

Он рассказывает о том, как неймспейсы изолируют друг от друга контейнеры, как расшаривать между ними ресурсы, что такое троттлинг, и как всё вышеперечисленное может быть связано с рантаймом .NET. В докладе Саша поделится секретом, как написать маленькое приложение на .NET Core, которое не будет таскать за собой полгигабайта юзерспейсных библиотек и других утилит из Ubuntu.

Xamarin не только вреден, но и полезен


Спикер: Дмитрий Моисеев
Место: 6
Рейтинг: 4,40 ± 0,14
Презентация доклада


Два года назад Xamarin был проблемным продуктом: сломанная IDE, медленная скорость работы, проблемы с кроссплатформенным кодом и биндингом к нативным возможностям платформ. Особенно программисты вспоминают Xamarin.Forms (да и сейчас вспоминают, если все еще пишут под Windows Phone).

Что изменилось за два года? Этому посвящен доклад Дмитрия, занявший шестое место в нашем рейтинге. Дмитрий на примере мобильного приложения Контур.Эльба рассказывает о том, как сейчас использовать Xamarin, чтобы, во-первых не было мучительно больно, а во-вторых — чтобы релизы на Android и iOS можно было выпускать одновременно вне зависимости от сложности приложения.

Доклад простой, не требует серьезных знаний языков и подойдет как новичкам, которые только начинают разрабатывать под мобильные платформы (им Xamarin может серьезно облегчить жизнь), так и прошаренным специалистам, которым хочется использовать общий код и быстро деплоиться.

Дмитрий справедливо замечает, что под две платформы нужно отдельно делать буквально всё — интерфейсы, реализации фич, чинить баги, тестировать. А Xamarin отлично экономит время. Возможно, кому-то уже прямо сейчас нужно переписывать приложение под Xamarin, а он об этом и не узнает, не послушав доклад. Не пропустите!

Scratched metal


Спикер: Federico Lois
Место: 5
Рейтинг: 4,41 ± 0,10
Презентация доклада


«Если кто-то скажет вам, что НЕЛЬЗЯ написать быстрый код на C# — вы знаете ответ». Очень сильный, очень стильный и довольно хардкорный доклад для инженеров о микрооптимизациях в высокопроизводительных приложениях, занявший пятое место.

Федерико покажет, как работать с аппаратными интринсиками, добавленными в CoreCLR 2.1, и том, что делать, если нужно достигнуть 50 тысяч запросов в секунду на запись в рядовом сервере —  спасательным кругом станут микрооптимизации в движке хранения RavenDB vNext.
В докладе сконцентрированы реальные примеры самых сложных узких мест в критических ситуациях и том, как заставить код работать быстро и не сбавлять в надежности.

Рискнете окунуться в хардкорные дебри архитектуры процессоров и узнать их влияние на кэши? Готовы слушать про пойзонинг и префетчинг и это вас не пугает? Скорее открывайте доклад, наливайте горячего чего-нибудь и узнавайте о том, что вам еще никто не рассказывал.

Building microservices with .NET Core and Docker


Спикер: Edwin van Wijk
Место: 4
Рейтинг: 4,45 ± 0,08
Презентация доклада


Короткое вступление с теоретической базой от Edwin van Wijk про микросервисы и вперед к коду и дебрям программирования, ведь в докладе 20% слайдов и 80% кода!

На самом деле, все не так страшно. Эдвин рассказывает про новый способ сборки .NET-приложений, который хорошо работает с облаками и контейнерами — .NET Core. Большая часть доклада посвящена использованию .NET Core для сборки приложений, базирующихся на контейнизированных сервисах.

Эдвин — Microsoft MVP в категории Visual Studio and Development Technologies и про микросервисы и тонкости их использования вряд ли кто-то может рассказать более полно и объективно: с примерами, взаимодействием с разными контейнерами и кипой литературы в конце доклада. Всем .NET-разработчикам — must see.

Кейноут: Перспективные технологии космонавтики


Спикер: Виталий Егоров
Место: 3
Рейтинг: 4,45 ± 0,07



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

Но на деле, тут вообще не про .NET, а про космос! Читает доклад не кто-нибудь, а всемирно хаброизвестный Zelenyikot. На момент публикации этой статьи его карма — 1379,2, количество подписчиков — 1750.

Закрывающий кейноут, то есть, последний доклад конференции — это очень специфичная штука. С одной стороны, часть участников уже начинает засыпать от перегрузки информацией. С другой стороны, для всех остальных этот доклад запомнится лучше остальных, засядет в мозгу и не забудется вплоть до следующей конференции. В закрывающем кейноуте полезно подводить некие идеологические итоги конференции и намечать дорогу на будущее.

Итак, встречайте закрывающий кейноут от Виталия Егорова о технологиях в космонавтике, которые развиваются прямо сейчас, как они помогают осваивать космос и том, какое романтическое (а может, и не очень) будущее нас всех ждет в ближайшее десятилетие.

Виталий объясняет, какие существуют двигатели, почему Маск выбрал технологию на базе метана и о каких преимуществах никто, кроме Илона Маска, не говорит.

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

Виталий рассказывает о стоимости литра воды на МКС, о производстве спутников и том, можно ли будет подключиться к «космическому» интернету так же просто, как к WiFi-точке. А еще спутники могут обслуживать другие спутники. Представляете, что начнется, когда на орбиту выпустят десятки тысяч таких аппаратов?

Доклад обязателен к просмотру всем, кто хоть немного интересуется космосом или хочет иметь базовое представление о том, что происходит в этой индустрии. А происходит там много чего!

Особые исключения в .NET


Спикер: Евгений Пешков
Место: 2
Рейтинг: 4,48 ± 0,07
Презентация доклада


Если учитывать количество зрителей, то доклад Евгения станет лидером нашей подборки — на этот доклад собрано на 150 отзывов больше, чем у победителя. Это уже автоматически означает, что доклад нужно смотреть всем без исключения.

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

Причем в каждой версии фреймворка, в каждой операционной системе эти ошибки могут быть разными! Евгений в докладе рассматривает особенности каждого типа исключений, например, StackOverflowException, ThreadAbortException, AccessViolationException, OutOfMemoryException, которые возникают при ошибках на уровне операционной системы или рантайма.

Такие ошибки могут привести к падению всего процесса. Что с этим делать? Разбираться, копаться в кишках платформы .NET, понимать разницу между версиями и реализациями платформы, а также изменять стандартное поведение рантайма на низком уровне. Конечно, исключения не так просты, как кажутся, и не все обрабатываются одинаково. К каждому нужен особый подход, причем на разных уровнях абстракции.

Звучит, может быть, и страшно, но на деле всё достаточно просто — вмешиваться в процесс обработки исключений можно и нужно. Уровень «входа» в доклад низкий, прослушать его и найти для себя что-то полезное может любой разработчик.

Pitfalls of high-level cryptography


Спикер: Stan Drapkin
Место: 1
Рейтинг: 4,49 ± 0,11
Презентация доклада



«Ловушки высокоуровневой криптографии» от Стэна Драпкина — жемчужина DotNext 2018 и лучший доклад конференции. Это — логическое продолжение докладов на тему криптографии с прошлых конференций DotNext, где рассказывали о проблемах криптографии на низком уровне.

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

Из доклада вы узнаете, как должна выглядеть правильная высокоуровневая библиотека, работающая с криптографией, как пользоваться высокоуровневым API и не попасть в ловушки, которые не так просты, как кажутся на первый взгляд.

Продвинутая часть обсуждения касается .NET-криптографии с открытым ключом и правильному подходу к использованию различных методов криптографии: где и что лучше применять.
И если вам кажется, что это может быть скучным — Стэн доказывает, что даже сложные security-темы можно раскрыть живо, просто и доступно для всех. Доклад рекомендуется посмотреть даже тем, кто далек от криптографии, но хочет узнать немного о безопасности.

Если эти доклады заинтересовали, обращаем внимание: этой осенью 22-23 ноября состоится DotNext 2018 Moscow. В этот раз на конференции выступают Jeffrey Richter и Greg Young. Самую актуальную информацию о программе всегда можно увидеть на сайте, там же можно купить билеты — и их цена постепенно растёт, так что стоит задуматься уже сейчас.

Комментарии (1)


  1. Peacemaker
    22.08.2018 14:47
    +1

    Academic –… для студентов и преподавателей. Чтобы попасть на конференцию с таким билетом, вам нужно будет предъявить студенческий билет или удостоверение преподавателя.

    То чувство, когда магистратуру уже закончил, а в аспирантуру ещё не поступил. =)