During this talk, we'll cover the theory and practical implementation behind the most common patterns in modern multi-threaded programming. How our everyday libraries and frameworks optimize the use of operating system resources for maximum efficiency. We'll also try to understand the differences between various approaches and what tradeoffs do they infer. Finally, we'll take a look at how they are supported by various compilers and runtimes.
Ошибки и проблемы использования многопоточности в .NET. Платформа .NET предоставляет множество готовых примитивов синхронизации и потокобезопасных коллекций. Если при разработке приложения нужно реа…
Мы поговорим о том, как в Ruby работают с параллелизмом и конкурентностью: о давно известных вещах (процессы и потоки) и о новых (ракторы и асинхронные файберы).
Современные приложения состоят из множества подсистем: базы данных, кеши, брокеры сообщений. Для обработки одного запроса от пользователя сервер может выполнять десятки внутренних подзапросов. Вы ска…
Новый фреймворк, определяющий стандарт на ближайшие годы. A lot has happened in the past five years concerning .NET Core and ASP.NET Core development. With version 3.0 coming out, it's time to look …
Amongst all the platforms for app development, the web is arguably the only one that does not make good use of threading. On the web, the main thread has a lot of responsibilities, and we keep adding…
Новых фич C# 8 много, надо про все знать. Очередной релиз C# приносит достаточно много новых фич, которые хочется обсудить. Тут присутствуют как кардинальные изменения, которые затрагивают весь язык…
Создание парсеров и лексических анализаторов — затратное по времени дело. Обычно к ним прибегают при необходимости реализации различного рода формальных грамматик, в том числе предметно-ориентированн…
. Performance is at the heart of .NET, with an incredible amount of energy invested in every release towards making the stack faster and more scalable. In this talk, Stephen Toub will walk through ex…
We'll explore the anatomy of a Blazor component in this session and see how the code generation system operates that does its work behind the scenes. Also, you'll experience advanced Blazor componen…
The SOLID principles. The five commandments of the software world. Forgotten for years, as developers focused on JavaScript frameworks with stupid names and complicated patterns. Not grasping that th…
Нет ничего проще, чем отладить асинхронный код — когда про это рассказывают два профессионала WinDbg и других инструментов. Times have changed. Multi-core CPUs have become the norm and multi-threadi…
Given the new capabilities of .NET Core to run on Linux and ARM CPUs, creating an IoT application is straightforward. But don't stop at the blinking led because you would miss the most important desi…
Массовый переход от монолитов к микросервисам решает одни проблемы, но создаёт другие — взаимодействие сервисов существенно сложнее и дороже, чем взаимодействие объектов в памяти. Частично упростить …
В своем докладе автор расскажет историю миграции большого энтерпрайз-приложения с MS SQL на PostgreSQL, которое не останавливалось ни на минуту в ходе этого процесса. Естественно на этом непростом пу…
Founded in April 2017, NUKE is a free, open source build automation system for C#/.NET that runs cross-platform on .NET Core, .NET Framework, and Mono. While builds are bootstrapped with conventional…
Вагиф — разработчик бэкенда, как и многие из вас. Что ему делать, когда нужно показать какие-нибудь данные? Написать программу для консоли (вздох)? Или, может быть, выучить CSS и JavaScript (глубокий…
Современные компьютеры кроют в себе множество аппаратных оптимизаций и особенностей работы ЦП и памяти, понимание которых важно при написании многопоточного кода на любом языке, в том числе и Golang.…
In this talk, Oren Eini, founder of RavenDB, is going to take apart a database engine on stage. We are going to inspect all the different pieces that make for an industrial-grade database engine, fro…
Продолжая тему исправления чужих ошибок с целью повышения производительности, Станислав расскажет о группе техник, при помощи которых его команда достигла многократного увеличения производительности …