GOTO is a vendor independent international software development conference with more that 90 top speaker and 1300 attendees. The conference cover topics such as .Net, Java, Open Source, Agile, Architecture and Design, Web, Cloud, New Languages and Processes

Martin Thompson, High-Performance Computing Specialist

Martin Thompson

Biography: Martin Thompson

Martin is a high-performance and low-latency specialist, with over two decades working with large scale transactional and big-data systems, in the automotive, gaming, financial, mobile, and content management domains. He believes in Mechanical Sympathy, which is applying an understanding of the hardware to the creation of software, being fundamental to delivering elegant high-performance solutions. Martin was the co-founder and CTO of LMAX, until he left to specialise in helping other people achieve great performance with their software. The Disruptor concurrent programming framework is just one example of what his mechanical sympathy has created.

Twitter: @mjpt777
Blog: Mechanical Sympathy
Video presentations: YOW! 2011: Martin Thompson - On Concurrent Programming and Concurrency Folklore

Presentation: Responding in a timely manner – Microseconds in HFT or milliseconds in web apps, its all the the same design principles

Track: Enterprise Architectures - Day 1 / Time: Monday 13:20 - 14:10 / Location: Lille Sal

Timing is everything. If a system does not respond in a timely manner then: at best, its value is greatly diminished; and at worst, it is effectively unavailable. Reactive systems need to meet predictable response time guarantees regardless of load or datasets size, even in the presence of burst traffic and partial failure conditions.

In this talk we will explore what is means to be responsive and the fundamental design patterns required to meet predictable response time guarantees. Queueing theory, Little’s Law, Amdahl’s Law, Universal Scalability theory – we’ll cover the good bits. Then we’ll explore algorithms that work with these laws to deliver timely responses from our applications no matter what gets thrown at them.

Presentation: What is a Reactive Application Part I

Track: Leading & Bleeding Edge - Day 1 / Time: Monday 14:40 - 15:30 / Location: Auditorium, AROS

Reactive is becoming the new cool kid on the block when it comes to developing mission critical applications. What is the big deal? The old hands that were involved in the likes of Erlang and Tandem will say this is nothing new. Indeed that is very true. However many seem to have lost their way with enterprise applications and descended into the tar pit of big frameworks such as JEE, or built Rails apps that fall apart when they grow up into successful applications. Yet some large scale web companies, telco providers, financial trading firms, and multi-player online games are delivering services that are always available by being resilient to failures, always responsive so that users are not left waiting, and reactive to load by elastic use of resources. How do they offer this level of service? Well that is what we want to discuss.

In this deep dive we will explore what are considered the desirable characteristics of reactive applications via a series of lightening talks. Then we will discuss the design approaches that can be taken to achieve these desirable characteristics. The discussion will be open to the audience so everyone can explore this topic and learn.

Presentation: What is a Reactive Application Part II

Track: Leading & Bleeding Edge - Day 1 / Time: Monday 15:50 - 16:40 / Location: Auditorium, AROS

Reactive is becoming the new cool kid on the block when it comes to developing mission critical applications. What is the big deal? The old hands that were involved in the likes of Erlang and Tandem will say this is nothing new. Indeed that is very true. However many seem to have lost their way with enterprise applications and descended into the tar pit of big frameworks such as JEE, or built Rails apps that fall apart when they grow up into successful applications. Yet some large scale web companies, telco providers, financial trading firms, and multi-player online games are delivering services that are always available by being resilient to failures, always responsive so that users are not left waiting, and reactive to load by elastic use of resources. How do they offer this level of service? Well that is what we want to discuss.

In this deep dive we will explore what are considered the desirable characteristics of reactive applications via a series of lightening talks. Then we will discuss the design approaches that can be taken to achieve these desirable characteristics. The discussion will be open to the audience so everyone can explore this topic and learn.