Tim Berglund (@tlberglund) presents his NoSQL Smackdown at the DDD Denver meetup on 8-Oct-2012, covering major aspects of Cassandra and MongoDB as NoSQL stores, as well as some discussion around the Aggregate pattern.
Some systems are too large to be understood entirely by any one human mind. They are composed of a diverse array of individual components capable of interacting with each other and adapting to a changing environment. As systems, they produce behavior that differs in kind from the behavior of their components. Complexity Theory is an emerging discipline that seeks to describe such phenomena previously encountered in biology, sociology, economics, and other disciplines.
Beyond new ways of looking at ant colonies, fashion trends, and national economies, complexity theory promises powerful insights to software development. The Internet—perhaps the most valuable piece of computing infrastructure of the present day—may fit the description of a complex system. Large corporate organizations in which developers are employed have complex characteristics. In this session, we'll explore what makes a complex system, what advantages complexity has to offer us, and how to harness these in the systems we build.
Computer science is built on a shaky tower of abstractions, but we've been distracted by other things until we believe it is reality. And we've imposed this on our users in ways we no longer even realize. Yet as developers we have two users: the mechanical users of our software, and the people who will use this code in the future to change this software. This talk teases apart some of the tangled abstractions that have become so common they are invisible yet impact important decisions. I cover languages, tools, platforms, and burrow all the way down to fundamental concepts. This wide-ranging keynote answers these questions and more: * Why does my keyboard look the way it does? * Why is the iPad is the most revolutionary device in the last 30 years? * Why do some people hate Maven so much? * Is hiding always a good thing?
Learn how to building modern, scalable, reactive and resilient applications, ready for the real-time web.
The skills of building Event-Driven, Highly Concurrent, Scalable & Resilient Systems are becoming increasingly important in our new world of Cloud Computing, multi-core processors, Big Data and Real-Time Web.
Unfortunately, many people are still doing it wrong; using the wrong
tools, techniques, habits and ideas. In this talk we will look at what
it means to 'Go Reactive' and discuss some of the most common (and some not so common but superior) practices; what works - what doesn't work - and why.
Jonas Bonér is a geek, programmer, speaker, musician, writer and Java Champion. He is the CTO and co-founder of Typesafe and is an active contributor to the Open Source community; most notably founded the Akka Project and the AspectWerkz AOP compiler (now AspectJ). Learn more at: jonasboner.com