Dan North talks about the tendency developers-becoming-architects have to create bigger and more complex systems. Without trying to be simplistic, North argues for simplicity, offering strategies to extract the simple essence from complex situations.
Kevlin Henney proposes a new look at design patterns from the perspective of the habitability of code, communication, exploration, empiricism, reasoning, incremental development, and design sharing.
Ian Robinson considers that programming for the web requires a different architectural approach than for applications: clients are interested only in URIs, clients are responsible for the integrity of a sequence of requests, and one should implement application protocols as protocol resources , not domain resources.
Aino Vonge Corry reviews a number of well known design patterns showing that their implementation is simpler in functional languages because such languages have pattern-based constructs.
Bill Burke shows how to use REST to create interfaces to middleware services – messaging, transactions, workflow, security – in order to have RESTful enterprise SOA implementations, and what are the limitations of REST.
David Harvey is concerned that some of the craftsmanship discourse can end up creating a barrier between the software builders and their customers, suggesting that the current Software Craftsmanship movement is a distraction, even a danger.
Rebecca Parsons makes an basic introduction to functional languages, explaining how to think in a functional language, why is there renewed interested in them, and some nifty things about these languages.
Corey Haines focuses his presentation on two elements of the craftsmanship manifesto: well-crafted software and a community of professionals. He believes that craftsmanship means forming quality software developers who choose their own practices and use them, starting as apprentices, becoming journeymen, and ending coding katas.
Jason Gorman presents how developers can learn TDD to the point of transforming the knowledge acquired into habits by exercising a number of practices over a period of 4-6 months followed by evaluation done by fellow co-workers.
Jesper Boeg talks on the origins of Kanban, software Kanban, how it is different from other Agile methods and what it is useful for, the team maturity Kanban requires, and some of disadvantages of using Kanban.
Alois Reitbauer shows how to do performance testing of complex software systems during development, testing, and production by starting early in the development phase, breaking the test into pieces, and testing continuously. He also shows how to perform scalability tests on limited hardware or by using the cloud.