ARCHITECTURE & DESIGN CASE STUDIES

Host: Frank Buschmann

Today's software systems grow in size, complexity, and scale. Choosing and mastering the appropriate design and programming technologies is no longer sufficent for success. Key to success are the architect's skills to utilize these technologies for designing software systems that, with economy and elegance, are able to meet the requirements to which they are subjected. For a selection of important types of software system we will therefore present concrete real-world examples from which we can learn how to design such systems but also how experienced architects master the challenenges in the systems' domains. This practical experience helps taking a fresh new perspective on our own systems, enabling us to ensure their architecture sustainability and appropriate technology use.

AGILE CASE STUDIES

Host: Erik Dörnenburg

Some companies have implemented agile processes, and they need to know how to make them work better. Some companies are considering to switch to agile, but are worried about the implications of doing that. We will hear how leading practitioners present and explain their latest experiences and pitfalls in implementing agile principles.

AGILE PRACTICES

Host: Erik Dörnenburg

This track is about the technical essentials you need to know to make Agile software development reliable and sustainable. It will include "refresher" topics, for those who are just starting or have been getting a bit rusty, and some of the new ideas and practices that have come out of a decade of experience in the discipline.

ATTACKING ORGANIZATIONAL COMPLEXITY

Host: Michael T. Nygard

A collection of systems doesn't behave like a "single system only bigger." Dealing with a portfolio of systems isn't just a question of where to put a new feature or tweak some functionality. Complexity creeps in everywhere--from technological issues, certainly, but also from organizational and financial concerns. (Conway's Law holds in the large just as it does in the small.) The accumulation of complexity in systems and organizations gradually leads to that swamplike, paralyzing condition we usually label "Enterprise". This track examines two approaches to attacking this complexity. You will learn architectural and portfolio management techniques to dealing with collections of systems. Using these methods, your organization can deliberately create opportunities to move, adapt, and flex in the future.

BROWSER AS A PLATFORM

Host: Gregor Hohpe

Cloud Computing is an exciting emerging technology which will impact everything from the IT Data Center to Personal Mobile Devices. Unlike traditional monolithic applications most cloud applications will be composed of multiple services leveraging the programmable web. But there are two sides of this, and this is the parts that is close to the users of the systems.

CLOUD SERVER-SIDE

Host: Gregor Hohpe

Cloud Computing is an exciting emerging technology which will impact everything from the IT Data Center to Personal Mobile Devices. Unlike traditional monolithic applications most cloud applications will be composed of multiple services leveraging the programmable web. But there are two sides of this, and this is the "behind the stage" side of things.

CONCURRENCY & INTEGRITY

Host: Kresten Krab Thorup

This track aims to push this revolution forward by giving an overview of techniques and methodologies that can make efficient and correct(!) concurrent programming mainstream. Programming languages have an important role here in providing programming models and compiler support to deal with complexity and efficiency issues. Hence, important programming language concurrency models are covered as well as more basic concurrency problems and solutions. Prepare to be surprised and amazed!

DEV TO OPS

Host: Michael T. Nygard

Today's high-volume websites operate at unprecedented scale. Applications running at web scale present unique management, monitoring and operations challenges. In this track, we explore these challenges, and some of the solutions that high-scale websites are using to deliver successful results.

EMBEDDED

Host: Brian Goetz

An embedded system is a computer system designed to perform one or a few dedicated functions often with real-time computing constraints. We will hear how the embedded systems experts work around or even make use of the constraints faced by embedded systems.

END-USER PROGRAMMING

Host: Dan Ingalls

End Users Increasingly play more of a role in development. This ranges from requirements coming out of acceptance testing to complete application development. In this session we explore languages, tools and techniques that increase user participation in application development.

ENGINE ROOM: THE SYSTEMS WE BUILD UPON

Host: Brian Goetz

The applications that we build are constrained by the limitations and features of the systems that we build upon. In this track, we explore these limitations, with a particular focus on scalability, parallelism, and support for new language features. Attend these talks to learn about how the language and systems engineers build the features that we depend upon, and about the features you will use when building the applications of tomorrow.

FRAMEWORKS

Host: Beat Schwegler

Understanding frameworks and platforms is arguably one of the key skills for successful software developers. While they abstract the details and complexity of the underlying infrastructure they mostly impose a certain architecture or design. Leveraging them to their advantage not only includes a thorough knowledge on the APIs but also a deep understanding of their specific guidelines for application design and architecture. This track covers different frameworks and provides crucial insight to become even more productive in creating efficient and reliable applications.

MAIN STREAM LANGUAGES

Host: Patrick Linskey

Java, C#, and JavaScript are in the mainstream and for the vast majority of developers, extremely relevant on a daily basis. This track will cover the newest features in these languages and ensure that they have a positive impact on your daily (coding) life.

What should you use, and why, and not the least, where and when will be answered in this track.

MANAGEMENT IN AGILE SETTINGS

Host: Jørn Larsen

In order for teams to be effective they need to have well formed backlogs especially for more complex products/applications which need to be delivered on a fixed schedule or with fixed cost. High quality backlogs are assured through best practices in agile requirements and architecture. Our speakers discuss challenges and new practices to address the issues outside the team which are important for their and the business' success.

MASTERING LEAN MANAGEMENT

Host: Dave Thomas

Agile infects successful teams bottom up and allows them to streamline their workflow improving predictability and quality. Agile teams are most effective in businesses which have embraced Lean Management. While Lean appears deceptively simple it is an art which is mastered over time and requires continuous learning and leadership. In particular large scale bottom up Agile transformation is most successful when done in partnership with a top down Lean transformation.

MOBILE

Host: Patrick Linskey

Over the last three years, the mobile application development landscape has changed completely. Compute power and battery life have reached pocket scale, and the telecoms-controlled application provisioning model is being replaced by more open models controlled by the platform providers themselves. Our speakers include mobile application development veterans as well as members of the teams that built the platforms. In this track, you will learn about how to build applications for these new environments.

REQUIREMENTS: WHAT DO CUSTOMERS NEED?

Host: Dave Thomas

Figuring out what the customer really needs continues to be the Achilles' heel of software development projects; in other words capturing requirements for software systems is as important as ever. In this track we will look into this eternal issue in the context of current software development trends.

SOFTWARE TOOLS

Host: Kresten Krab Thorup

Now that the software craftsman has become a term developers choose to use about themselves, as all craftsmen, they need tools. They need the right tools for the job, always. And they need their tools to be maintained in a proper state and not the least; easy to find in the toolbox. See how this is done by the experts, and see what the developers of the tools are thinking, when they create what you job depend on.

UPCOMING LANGUAGES & FEATURES: SCALA, CLOJURE AND REACTIVE LINQ

Host: Kresten Krab Thorup

Improving programming tools, and in particular programming languages, continue to be one of the most important ways in which we improve programmer productivity. The last few years we have seen a significant surge in new programming languages (and old ones being resurrected). In this track we will take a look at some of the more promising ones, and see where they are headed, and why.

WEB-SCALE DATA: NOSQL

Host: Emil Eifrém

The world of data storage and usage is changing. There are many new scalable storage solutions that are non-SQL, and more data is being made web-accessible. As this happens entirely new problems and solutions see the light of day - going far beyond the traditional view that all data should go into a relational database and be accessed using SQL.

HOT SPEAKERS FROM BIG COMPANIES

Host: TBA

This track is loaded with the stories about the hot apps from big companies. Come see, Erich Gamma talk about the journey from Eclipse to Jazz at IBM. Or hear about Iron* apps from Microsofts .NET platform. In addittion Oracle will present how a Java EE-based implementation can scale to support virtually unlimited users. Last, but not least, we will hear how the biggest Web Content Management Systems (WCMS) in the world converted there WCMS to Windows Azure.

SPRING IN A DAY

Host: Arjen Poutsma

The Spring Framework and technologies are gaining momentum in enterprise Java Development. This track provides an opportunity to share insights on the latest advancements in Spring technology.

TOOLS AND PERFORMANCE

Host: TBA

This track will provide you with the best tools on the market made for continuous deplyment, Saas provisioning, data grids and and how to actually make random numbers.