Functional C#, and RavenDB Sharding Architecture (separate talks)


Details
In this event, we have two separate talks...
π Down the Oregon Trail with Functional C# - with Simon Painter
In 1971, three students from Minnesota thought they could liven up a history lecture by creating a computer game for the students to play, and after several days of work in HP Time Share BASIC, they came up with what turned out to be a significant milestone in the history of computer games - Oregon Trail.
Oregon Trail is often regarded as one of the first great computer games, as well as being the originator of a franchise that is still running to this day. It was effectively also one of the first instances of both Shareware and a Commercial home release of(depending on the version).
My interest though, isn't just in historical computer games, it's also .NET and Functional Programming. I want to use this as a worked example of one of my passions - Functional Programming in C#! The challenge I've set myself is to redevelop Oregon Trail into C# using the following restrictions:
- Near 100% unit test coverage
- No variables can change state once set
- No statements (for, foreach, if, where, etc.) unless there literally is no way of avoiding them
I'll also be demonstrating a few of the tricks Functional Programming can offer, like Higher-order functions, functional flows with simple Monads and Tail Recursion. There should also be a bit of retro computing fun, while we're at it.
https://sessionize.com/simon-painter/
π RavenDB's Sharding Architecture
Sharding allows you to distribute your data between multiple nodes in your system. Sharding, alongside distributed consensus, stands at the pinnacle of distributed system design.
In this talk, Oren Eini, founder of RavenDB, is going to discuss the sharding implementation of RavenDB in detail. We'll look at the various challenges and tradeoffs that we had to make in order to implement sharding and how the concept of sharding is expressed to the user, the impact on queries, transactions and performance.

Sponsors
Functional C#, and RavenDB Sharding Architecture (separate talks)