.NET developer, creator of LINQPad
Joe Albahari is the inventor of LINQPad and the author of the bestselling book on C# 5. He’s written extensively on multithreading and parallel programming, and speaks regularly at user groups and conferences such as YOW! and TechEd.
YOW! 2013 Brisbane
Solving the Hard Problem of Concurrency
LANGUAGES & VMS
Concurrency is notorious for creating complexity. I argue that the blame lies not with multithreading, mutability, or even shared writable state. The problem is one of separation: an inability to isolate concurrency logic from application logic. The cause of this inability is twofold. First, we tend to overlook the distinction between concurrency concerns and time-based concerns. Consequently, we end up with too much (complex) concurrency code and not enough (simple) temporal code. Second, there’s been a historical lack of abstractive power in mainstream programming languages. To isolate structured and unstructured concurrency, we need a language that supports type amplification, futures and time travel. The good news is that a mainstream language now supports all three: C# 5.
In this session, I will explain these concepts, and demonstrate how C# 5 simplifies asynchrony and concurrency.
A Workshop for C# Timelords
YOW! DEPTH FIRST WORKSHOP
Joe Albahari, the author of LINQPad and C# 5.0 in a Nutshell, will deliver this workshop on mastering the time dimension in C# with asynchronous functions and Reactive Extensions.