DetailedTalks 2016 - DotNetRu/BrandBook GitHub Wiki

Когда и где Докладчик Доклад Ссылки
7 декабря 2016 г.
Встреча MskDotNet №5
Photo
Егор Богатов
HoloLens для неигровых приложений
В этом докладе Егор покажет, как можно разрабатывать на C# неигровые 2D и 3D приложения/голограммы под очки смешанной реальности HoloLens без использования Unity и без опыта в геймдеве.
Видео
7 декабря 2016 г.
Встреча MskDotNet №5
Photo
Adam Sitnik
State of the .NET Performance
In this talk Adam will describe how latest changes in.NET are affecting performance. Adam wants to go through: C# 7: ref locals and ref returns, ValueTuples. .NET Core: Spans, Buffers, ValueTasks And how all of these things help build zero-copy streams aka Channels/Pipelines which are going to be a game changer in the next year.
Видео
Слайды
3 декабря 2016 г.
Встреча SpbDotNet №16
Photo
Александр Шаповал
Контейнеры Windows в Microsoft Azure и on-premise
Александр расскажет про механизмы контейнеризации в Windows.
Видео
Слайды
3 декабря 2016 г.
Встреча SpbDotNet №16
Photo
Анатолий Кулаков
Octopus Deploy во имя добра
Большинство .NET-разработчиков не заботятся о жизни продукта после успешного прохождения CI сервера. Но ведь это далеко не конец, следующий шаг не менее важен и сложен. Распространение продукта с учётом всех окружений, хостов и версий - именно об этом мы и поговорим. И нам поможет не сойти с ума замечательный инструмент Octopus Deploy. В ходе доклада Анатолий покажет как за 5 минут развернуть полноценную систему управления версиями и продемонстрирует базовые возможности по контролю жизненного цикла приложения.
Слайды
3 декабря 2016 г.
Встреча SpbDotNet №16
Photo
Роман Неволин
В поисках парадигмы
Роман делится своим опытом разработки на различных языках и неистово тролит парадигмы, программистов и программирование вообще.
Слайды
3 декабря 2016 г.
Встреча SpbDotNet №16
Photo
Александр Шелёмин
SQL Server Performance 101
Как бы нам ни хотелось верить в то, что оптимизатор запросов всегда сделает всё сам, на практике нередко возникают ситуации, когда для того, чтобы добиться нужной производительности, нам приходится лезть во внутренности сервера баз данных. В докладе мы поговорим о практических подходах к анализу перформанса SQL Server: профилировании и Extended Events, чтении планов выполнения и о том, о каких фичах SQL Server не стоит забывать в борьбе за производительность.
Видео
Слайды
17 ноября 2016 г.
Встреча SpbDotNet №15
Photo
Дмитрий Нестерук
Automatic Input/Output Matching in .NET
Наверное, многие из вас сталкивались с задачей, когда нужно преобразовать один набор данных в другой, но вы понятия не имеете, какой магический обряд нужно провести чтобы звезды сложились и на выходе было именно то, что нужно. Вместо того чтобы итеративно лезть на StackOverflow и пробовать разные варианты для достижения нужной цели, Дмитрий предлагает другой вариант: использовать reflection для автоматизированного поиска нужной цепочки вызовов на основе входных и выходных данных. В этом докладе он покажет проект CallSharp который реализует как раз этот подход для вывода правильных цепочек. Мы поговорим про reflection, подводные камни произвольных вызовов всего и вся, а также возможные оптимизации и пути развития проекта.
Видео
Слайды
17 ноября 2016 г.
Встреча SpbDotNet №15
Photo
Андрей Акиньшин
Photo
Михаил Филиппов
Rider: разговоры про внутренности и кроссплатформенность
Наверное, многие из вас слышали, что в JetBrains разрабатывается новая крутая кроссплатформенная C# IDE под названием Rider. Под капотом у неё сразу два больших продукта: ReSharper (тысячи анализаторов кода, рефакторинги, навигация, генераторы кода и прочие ништяки) и IntelliJ IDEA (просто очень хорошая IDE). Обратите внимание: один продукт написан под CLR, а другой — под JVM. Их удалось заставить работать вместе, да ещё и хорошо работать. В этом докладе мы немного расскажем вам о внутренностях райдера: будут разные интересные технологические решения, а также весёлые байки про шайтан-баги и сложности современной разработки ПО. Отдельно поговорим про то, как же удалось запустить ReSharper (здоровый энтерпрайзный C#-продукт) на Linux и MacOS поверх Mono, и к чему нужно быть готовым .NET-разработчикам, которые внезапно решили писать кроссплатформенные программы.
Видео
Слайды
14 ноября 2016 г.
Встреча MskDotNet №4
Photo
Сергей Сенцов
Приемы оптимизаций Desktop приложений
В докладе Сергей Сенцов, разработчкик группы разработки пользовательского интерфейса "Лаборатории Касперского", рассмотрел приемы оптимизации приложений на платформе .NET, в большей степени специфичные для desktop приложений. Для достижения максимальной скорости запуска приложения или поднятия из swap'а иногда приходится обращаться к нестандартным подходам, которые, на первый взгляд, могут идти наперекор общепринятой практике (например, отказ от emit в пользу reflection). Каждая из оптимизаций, начиная от устройства CLR, заканчивается анализом в xperf отдельных IO операций, будет подобно разобрана. В качестве результатов рассмотрены показатели реальных продуктов "Лаборатории Касперского".
Видео
Слайды
14 ноября 2016 г.
Встреча MskDotNet №4
Photo
Александр Романов
Что полезного в разборе дампов для .NET-разработчиков?
В докладе мы попробуем привнести альтернативный взгляд. Показываем, как выстроить процесс сбора дампов, их анализа и исправления, встроить его в жизненный цикл разработки вашего приложения, сделав неотъемлемой частью для диагностики как рядовых, так и уникальных случаев. Затем рассматриваем группы основных проблем (deadlocks, out of memory, access violation, logical errors, etc.), которые могут произойти с вашим приложением, а также инструменты для их анализа. И, конечно же, разбираем примеры каждой из проблем, которые встретились нам на практике в наших продуктах, в коде .NET и WPF: — Как при помощи флэшки «повесить» WPF-приложение? — Безопасно ли вызывать DateTime.Now? и другие жизненные ситуации.
Видео
Слайды
13 октября 2016 г.
Встреча MskDotNet №3
Photo
Яков Повар
Системы обмена сообщениями на примере MassTransit
Разрабатывать большие продукты непросто. Когда сложность задач и нагрузка на приложения растёт с каждым днем, старые подходы и практики иногда уже не спасают. Могут ли системы на базе асинхронного обмена сообщениями быть той серебряной пулей, которая решит все наши проблемы? В докладе Яков ответит на этот вопрос, а также расскажет, какие подходы лежат в основе таких систем и что выбрать в мире .Net для их реализации. Разговор будет о том, какие задачи помогут решить такие подходы и чего стоит избегать при их использовании.
Видео
Слайды
13 октября 2016 г.
Встреча MskDotNet №3
Photo
Илья Фофанов
Обработка ошибок в C#
В любой программе разработчики сталкиваются с необходимостью обработки ошибок. Основной механизм работы с ошибками в .NET Framework — это исключения. Мы поговорим о преимуществах и недостатках их использования. Вы узнаете, используются ли исключения для обработки ошибок в программном обеспечении марсохода NASA, а также о том, какие способы обработки исключений имеются в нашем распоряжении. Также обсудим, можно ли не использовать исключения для обработки ошибочных ситуаций. Приходите, будет интересно.
Видео
Слайды
15 сентября 2016 г.
Встреча SpbDotNet №14
Photo
Роман Неволин
Функциональный .NET
Пожалуй, уже не осталось .NET разработчиков, не слышавших об F#. Но далеко не каждый понимает, что это за язык и зачем рядовому разработчику «эта ваша функциональщина». Самое время это исправить! Мы поговорим как о роли и преимуществах функционального программирования в целом, так и о его использовании в языке F#. Посмотрим на кейсы применения функционального подхода и разберем, как ФП позволяет «проапрегрейдить» ваш код.
Видео
Слайды
15 сентября 2016 г.
Встреча SpbDotNet №14
Photo
Роман Неволин
Photo
Дмитрий Нестерук
F# Battle: За и Против
Роман Неволин и Дмитрий Нестерук обсуждают F#
Видео
15 сентября 2016 г.
Встреча SpbDotNet №14
Photo
Дмитрий Нестерук
F#: Опыт и Перспективы
Рассказ про то зачем нужен F#, его текущее положение в индустрии, а также примеры того, как его использовать для разных целей, в т.ч. в математике, для построения DSLей, написания парсеров/трансляторов и использование REPL-среды для ускорения разработки.
Видео
Слайды
9 сентября 2016 г.
Встреча MskDotNet №2
Photo
Юлия Цисык
RESTFul API в вашем .NET приложении: как, зачем и почему?
Ни один современный продукт не обходится без API. Этот API может быть внешним, для публичного использования, а может быть сугубо внутренним, но требования к созданию расширяемого, версионируемого, тестируемого, документированного программного интерфейса очень похоже. В этом докладе мы поговорим о том, как создавать подобные API на основе REST, какие существуют best-practices, чего следует избегать, на что обращать внимание при проектировании.
Видео
Слайды
9 сентября 2016 г.
Встреча MskDotNet №2
Photo
Вячеслав Михайлов
Как сделать Single Sign-On в веб-приложении в 10 строк кода
В докладе речь пойдёт о том, какие выбрать механизмы аутентификации и авторизации в приложении. Вячеслав поделится опытом использования IdentityServer и продемонстрирует способы его применения.
Слайды
11 августа 2016 г.
Встреча MskDotNet №1
Photo
Михаил Щербаков
WinDbg и сотоварищи
Поговорим о самом мощном отладчике для Windows – WinDbg. Разберем как начать использовать этот отладчик, чем он может быть полезен для.NET разработчиков. Подробней остановимся на практических моментах его применения, зачем он прикладным программистам, web-разработчикам. Посмотрим и на другие инструменты отладки, которые занимают нишу между интуитивно управляемым комбайном Visual Studio и легким, но крайне аскетичным WinDbg.
Видео
Слайды
11 августа 2016 г.
Встреча MskDotNet №1
Photo
Никита Цуканов
Параллелизм и распределённые вычисления на акторах с Akka.NET
В современном мире уже нельзя писать код, который работает на одном компьютере на одном процессорном ядре и имеет монопольный доступ к данным. В своих приложениях мы обычно используем многопоточность для распараллеливания операций по ядрам и нескольким процессорам на сервере, а для взаимодействия между несколькими серверами различного рода RPC и REST протоколы. При этом использование данных инструментов влечёт за собой ряд трудноразрешимых проблем. Так, при написании многопоточного кода весьма проблематично безопасно и корректно организовать конкуррентный доступ к данным из разных потоков, избежать взаимных блокировок и ситуаций, когда по каким-то причинам два потока обращаются к одним и тем же данным, хотя этого при разработке системы не предполагалось. Классические же сценарии сетевого взаимодействия сильно страдают от того, что они либо не «прозрачны» при использовании и требуют дополнительной логики для преобразования запросов и ответов, либо скрывают за мнимой прозрачностью возможные подводные камни при сетевых ошибках или недоступности той стороны. Главным же ограничением в использовании этих технологий является то, что для их внедрения необходимо существенным образом изменять имеющийся код. Вы не можете быстро «потушить» проблему, просто залив её дополнительными вычислительными мощностями, уходят часы, дни, недели на доработки кода. Акторная модель призвана избавить разработчика от мыслей о том, в каком потоке и на каком сервере выполняется код. Замена синхронных вызовов на обрабатываемые по одному синхронные сообщения позволяет писать код, одинаково хорошо работающий как в одном потоке, так и на сервере с несколькими процессорами, а механизм обеспечения сетевой прозрачности позволяет не видеть разницы между актором, запущенным локально и удалённо. Доклад рассчитан на неподготовленного слушателя, ранее не имевшего дело с акторами, и является улучшенной и дополненной версией доклада с питерского DotNext. Речь пойдёт непосредственно об акторной модели и её реализации в Akka.NET, особенностях юнит-тестирования, акторах с сохраняемым состоянием, а так же об интеграции всей этой машинерии с имеющимся приложением и ASP.NET.
Видео
Слайды
23 июля 2016 г.
Встреча SpbDotNet №13
Photo
Анатолий Кулаков
Windows PowerShell во имя добра
Ровно 10 лет назад была выпущена первая версия революционного средства для автоматизации - PowerShell. С тех самых пор все системные администраторы Windows яростно и неистово боготворят это чудо инженерной мысли. За многие годы стремительного развития уже не осталось преград, которые были бы не под силу новой командной строке Windows. И в этот юбилейный год мы соберёмся вместе, что бы пополнить число фанатов PowerShell новыми пользователями. В докладе мы выясним, чем так примечательна эта командная строка. Какие задачи она призвана решать. Какие средства разработки и тестирования предлагает. Познакомимся с синтаксисом и командами, окружением и инструментами, точками расширения и отладки. Узнаем как автоматизировать скучные задачи и окончательно забыть про повседневную рутину.
Слайды
23 июля 2016 г.
Встреча SpbDotNet №13
Photo
Михаил Щербаков
Что может быть проще: делегаты и события
В докладе Михаил расскажет насколько сложен и не очевиден может быть мир всем известных делегатов и событий.
Слайды
23 июля 2016 г.
Встреча SpbDotNet №13
Photo
Никита Козлов
Photo
Иван Пащенко
WTF is Service Fabric
Наш доклад про Microsoft Azure Service Fabric - облачную платформу, временами позволяющую легко разворачивать, скалировать и мониторить Ваши приложения. Service Fabric - весьма свежее решение, увидевшее свет в начале 2016 года. Однако Microsoft использует платформу с 2010 года, в частности для таких облачных сервисов, как: Skype for Business, Cortana, Azure SQL.
Слайды
23 июля 2016 г.
Встреча SpbDotNet №13
Photo
Артём Журавлёв
OAuth для .NET
Доклад про использование OAuth на платформе .NET
Слайды
2 июня 2016 г.
Встреча SpbDotNet №12
Photo
Сергей Щегрикович
CoreCLR: Brave new world
В докладе расскажу про свой опыт изучения CoreCLR. Какие техники сработали для меня, а какие нет. Покажу как делать debugging для CoreCLR, SOS и Finalizer'а.
2 июня 2016 г.
Встреча SpbDotNet №12
Photo
Sasha Goldshtein
.NET Garbage Collection Performance Tips
The .NET garbage collector is probably the most complex part of the CLR. Did you know gc.cpp in the CoreCLR open source project is a 1.2MB source file with over 37,000 lines of code? There are a lot of partial truths and myths about the GC’s behavior and its performance characteristics. In this talk we will unveil some of this complexity and discuss tips for application developers that can improve garbage collection performance by an order of magnitude, as well as tools for measuring this impact. We will briefly touch on object layout, allocation rates, finalization, VM fragmentation, and some other topics.
20 мая 2016 г.
Встреча SpbDotNet №11
Photo
Павел Тупицын
Apache Ignite.NET в действии
Вместе со зрителями мы с чистого листа будем писать код, запускать кластер из разнородных машин и операционных систем, показывать, как машины в кластере обмениваются данными и запускают вычисления, попутно объясняя, что происходит «под капотом». В программе: работа с данными в кэше и детали работы сериализации; SQL и LINQ запросы и их внутренности; map-reduce вычисления и запуск пользовательского кода на удалённых машинах.
Видео
Слайды
20 мая 2016 г.
Встреча SpbDotNet №11
Photo
Владимир Озеров
Заклятые друзья или как подружить .NET и Java
Как заставить Apache Ignite работать на .NET? Построчно спортировать с Java? Все 500 тысяч строк? Мы пошли другим путем, решив переиспользовать существующую Java-логику прямо внутри .NET процесса. В докладе я расскажу, почему мы приняли такое решение, как мы это сделали, и с какими трудностями столкнулись.
Слайды
20 мая 2016 г.
Встреча SpbDotNet №11
Photo
Яков Жданов
Знакомство с In-Memory Data Grid
В этой части встречи мы рассмотрим основные понятия и поговорим о важнейших возможностях Apache Ignite. Вместе со слушателями мы разберемся: - как строится и функционирует кластер; - какие API есть и что скрывается за вызовами; - как распределяются данные в data grid; - как обеспечивается отказоустойчиовость.
Видео
Слайды
2 апреля 2016 г.
Встреча SpbDotNet №10
Photo
Владимир Кошелев
На что способны современные статические анализаторы для C#
При разработке на C# все мы используем статический анализ. Стандартные предупреждения Visual Studio, FxCop, Visual Studio Code Analysis, ReSharper и не только. Однако, многие относятся к статическому анализу как к черному ящику, выдающему непредсказуемые и нередко ложные результаты. Мы поговорим о типичных ситуациях, которые обнаруживают статические анализаторы, и о принципиальных проблемах, приводящих к ложным срабатываниям. Обсудим основные идеи, позволяющие реализовать анализ, работающий за разумное время. В заключение мы расскажем об анализаторе, который разрабатывается в ИСП РАН.
Видео
Слайды
2 апреля 2016 г.
Встреча SpbDotNet №10
Photo
Игорь Лабутин
WCF: Удобно или проблемно?
Если возникает задача обеспечения обмена данными между приложениями на платформе .NET, то WCF прочно вошел в набор инструментов которые позволяют сделать это быстро и сравнительно легко. Действительно ли это легко или эта кажущаяся легкость скрывает огромное поле граблей/проблем которые трудно заметить? В докладе я расскажу об опыте использования WCF в разработке, а также о проблемах и их решениях которые нам встретились.
Видео
Слайды
2 апреля 2016 г.
Встреча SpbDotNet №10
Photo
Владимир Кочетков
Photo
Александр Шведов
Photo
Владимир Кошелев
Photo
Валерий Игнатьев
Photo
Артём Борзилов
Круглый стол по вопросам анализа кода
Ведущие эксперты, разрабатывающие продукты в области анализа кода, обсуждают эту тему.
2 апреля 2016 г.
Встреча SpbDotNet №10
Photo
Валерий Игнатьев
Сценарии использования статического анализатора
В докладе будут рассмотрены типичные сценарии использования статического анализатора.
Видео
Слайды
2 апреля 2016 г.
Встреча SpbDotNet №10
Photo
Роман Неволин
Машинное обучение на платформе .NET
Большинство разработчиков не задумываются о .NET как об инструменте для работы с машинным обучением. Что же, пришло время ответить на вопрос, есть ли место для машинного обучения в холодном мире дотнета, и увидеть, куда нас заведет скользкая функциональная дорожка.
Видео
Слайды
Демо
9 февраля 2016 г.
Встреча SpbDotNet №9
Photo
Сергей Балтийский
Когда в C# не хватает C++ (часть 3 из 3)
Пора заканчивать эту длинную беседу о работе с native memory & native code в дотнете. С нативным кодом мы разобрались (и там было много печальных вещей), на приёмы работы с памятью напрямую из C# посмотрели (тут всё гораздо лучше, но есть нюансы). Пришло время собрать из этого большую структуру данных, быстро прочитать её с диска, нарисовать к ней приличное managed API и не нагрузить GC при работе — рассказ основан на реальных событиях из жизни ReSharper 10.
Видео
Слайды
9 февраля 2016 г.
Встреча SpbDotNet №9
Photo
Сергей Шкредов
Project Rider
История про продукт, объединивший две мощные платформы для разработки — IntelliJ IDEA и ReSharper. 13 января 2016 года на NDC London мы презентовали широкой общественности наш новый продукт — кросс-платформенную IDE для разработки .NET приложений. В своей презентации я покажу как работает Rider, расскажу про продукт, что будет включать первая версия и что самое интересное — расскажу как мы сделали гибридное приложение, работающее одновременно на Java и .NET.
Видео
Слайды
⚠️ **GitHub.com Fallback** ⚠️