Erik Meijer, TweetFounder at Applied Duality, Inc.
Biography: Erik Meijer
Erik Meijer is an accomplished programming-language designer who has worked on a wide range of languages, including Haskell, Mondrian, X#, Cω, C#, and Visual Basic. He runs the Cloud Programmability Team at Microsoft, where his primary focus has been to remove the impedance mismatch between databases and programming languages. One of the fruits of these efforts is LINQ, which not only adds a native querying syntax to .NET languages, such as C# and Visual Basic, but also allows developers to query data sources other than tables, such as objects or XML. Most recently, Erik has been working on democratizing the Cloud using Volta and preaching the virtues of fundamentalist functional programming in the new age of concurrency and many-core. Some people might recognize him from his brief stint as the "Head in the Box" on Microsoft VBTV.
For the last few decades, the relational database has dominated the industry when it comes to building data-centric applications. The mathematical foundations of SQL and the relational data model were key to ignite this multi-billion dollar business since general abstract knowledge about relational databases is applicable across any concrete implementation.
Recently there has been a surge in the interest for non-relational databases ("NoSQL") and so-called "Big Data". However, the landscape of Big Data remains fragmented with many (seemingly) different implementations and approaches, unable to interoperate and seemingly distinct from each other, preventing the non-relational approach to data to reach its full potential.
To get rid of this Tower of Babel we need to seek a mathematical basis for Big Data that emphasizes the correspondences between the various solutions, as opposed to strutting about the differences.
In this talk I will break down the relational data model and build a universal theory for Big Data. In the process we'll discover how Monads and Category Theory can help us along the way, how the mathematical concept of Duality helps us make sense of the 3Vs of Big Data (Volume, Velocity, Variety), and to top it off: how any developer could have come up with all of this by remembering the design principle of separating interface and implementation. We can only imagine how the world would look right now if 45 years ago Ted Codd would have gone through the same design process. Unfortunately, he was not a developer.