Please enable JavaScript to use this page!

AllTalks site logo
🍔

A deep dive into a database engine internals

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, from the way the data is laid out on disk to how the database is ensuring that transactions are durable. We'll explore algorithms such as B+Tree, write-ahead logs, discuss concurrency strategies and how different features of the database work together to achieve the end goals.


C++ Russia

58 min

Concurrency and parallelism in C++17 and C++20/23

Rainer Grimm

What do threads, atomic variables, mutexes, and conditional variables have in common? They are the basic building blocks of any concurrent application in C++, which are a big challenge even for the e…

Oracle OpenWorld Europe

37 min

Winning the War on Database Complexity

Daphne Koller

For decades, data management has been costly and slow moving. Learn how new technologies will finally eliminate the sources of data management complexity, leading to dramatically lower costs, higher …

ITeaConf

55 min

Is it time to re-sync?

Андрей Печкуров

Современные компьютеры кроют в себе множество аппаратных оптимизаций и особенностей работы ЦП и памяти, понимание которых важно при написании многопоточного кода на любом языке, в том числе и Golang.…

ITeaConf

33 min

Загадки JPA и их разоблачение

Андрей Беляев

Поговорим про JPA и тонкие моменты, связанные с этим фреймворком. Начнем с простых примеров: когда получается N+1 запрос и в каком случае Lazy не работает так, как интуитивно ожидается. Дальше уг…

C++ Russia

92 min

C++17 — the biggest traps

Nicolai Josuttis

C++17 is a huge combination of small new features both in the language and the library. These features have more poser but also more traps than you might expect. These traps are not theoretical. They…

DotNext

71 min

gRPC в .NET — рецепты счастья

Михаил Кузнецов

Массовый переход от монолитов к микросервисам решает одни проблемы, но создаёт другие — взаимодействие сервисов существенно сложнее и дороже, чем взаимодействие объектов в памяти. Частично упростить …

Joker

59 min

Concurrent Garbage collectors: ZGC & Shenandoah

Simone Bordet

Java 11/12 introduced two new Garbage Collectors: ZGC and Shenandoah. The main objective of these two new GCs is to reduce GC pauses to only few milliseconds (and possibly under a millisecond), there…

HolyJS

64 min

JavaScript на службе у теоретической информатики

Виталий Брагилевский

При изучении теоретической информатики можно использовать самые разнообразные инструменты. Пожалуй, чаще всего нужно доказывать теоремы по индукции, но программированию место тоже можно найти. В это…

C++ Russia

60 min

Initialisation in modern C++

Timur Doumler

Initialisation semantics is widely regarded as one of the most difficult aspects of the C++ language. We have many different kinds of initialisation and many different syntaxes for it, and they inter…

JSConf Budapest

21 min

Algorithms and Their Habitat

Vitalii Bobrov

Algorithms are mysterious beasts that hard to catch in the source code. However, well-chosen data structures and efficient algorithms applied to a web app is a key to performance. I want to show how …

C++ Russia

55 min

На что нужно обратить внимание при обзоре кода разрабатываемой библиотеки

Андрей Карпов

Разработка библиотек — более ответственное дело, чем разработка прикладного программного обеспечения. Разработчик не знает, как именно будет использоваться его библиотека, и должен обращать дополните…

C++ Siberia

72 min

Управление ресурсами: линейные типы спешат на помощь

Виталий Брагилевский

Как известно, языки программирования слабы в описании того, что нужно делать разработчикам. Они, конечно, пытаются помочь, но не всегда успешно. В результате программы содержат множество ошибок, что …

HolyJS

72 min

Cовременный бэкенд для фронтенда на Node.js

Андрей Мелихов

Современный фронтенд — это богатое клиентское приложение, оперирующее развесистым набором данных. Однако, оставаясь в парадигме архитектуры «клиент-сервер», такие приложения всё ещё требуют серверног…

C++ Russia

57 min

Метаклассы в C++17: фантастика? Реальность!

Сергей Садовников

Доклад посвящён одному из подходов реализации метаклассов (пропозал p0707 rev3 — последний доступный публично на текущий момент) для тех версий компиляторов, которые не поддерживают ни статической ре…

C++ Siberia

51 min

Обзор C++ кода глазами параноика

Филипп Хандельянц

Код языка C++ подобен минному полю. Поэтому качественный внимательный code-review крайне полезен. Этот доклад улучшит ваши навыки в этом нелёгком деле. Мы поговорим о некоторых паттернах ошибок, о ко…

C++ Russia

51 min

Эволюция метапрограммирования: как правильно работать со списками типов

Олег Фатхиев

Глубокий рассказ о метапрограммировании в ретроспективе. Обсудим общие подходы в метапрограммировании, а затем перейдём к спискам типов. По шагам напишем небольшую библиотеку для работы со списками т…

ITeaConf

25 min

Одновременность: процессы, ракторы, потоки и файберы

Евгений Ращепкин

Мы поговорим о том, как в Ruby работают с параллелизмом и конкурентностью: о давно известных вещах (процессы и потоки) и о новых (ракторы и асинхронные файберы).

C++ Russia

52 min

Шаблоны C++ и базы данных

Сергей Федоров

Когда мы работаем с БД, мы зачастую получаем сырые буферы, в то время как хочется получать данные в виде структур, классов и контейнеров C++. Рассказ о проектировании и реализации драйвера PostgreSQ…

ITeaConf

24 min

Rust для web-разработчиков

Александр Колесов

Узнаем, почему разработчики так любят Rust. Разберем, насколько данный язык подходит для web разработки.