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

Dave Farley, Co-author of the book "Continuous Delivery"

Dave Farley

Biography: Dave Farley

Dave Farley has been having fun with computers for nearly 30 years. Over that period he has worked on most types of software, from firmware, through tinkering with operating systems and device drivers, to writing games, and commercial applications of all shapes and sizes. He started working in large scale distributed systems about 20 years ago, doing research into the development of loose-coupled, message-based systems - a forerunner of SOA. He has a wide range of experience leading the development of complex software in teams, both large and small, in the UK and USA. Dave was an early adopter of agile development techniques, employing iterative development, continuous integration and significant levels of automated testing on commercial projects from the early 1990s. Dave is currently Head of Software Development for LMAX ltd, an organization that is building one of the highest performance financial exchanges in the world.
 
Follow him on twitter: @davefarley77

Presentation: Tackling the folklore surrounding high performance computing

Track: Architecture / Time: Friday 14:30 - 15:20 / Location: Amsterdam Room

Building a high performance financial exchange is tough, especially when you're flying in the face on conventional wisdom. In this case it is widely assumed that it's not possible to build a high throughput near real-time system in Java. Over the past 4 years our experience of building LMAX, the world's first multi-asset financial exchange, we've learnt that much of what the industry believes about computer performance is based on folklore.

Using evidence and experience from solving real world problems, this talk aims to dispel some these performance myths. We will cover a number of areas of software development including distributed systems, concurrency and parallelism, I/O, algorithms, garbage collection, and memory efficiency.

We need to reintroduce the science into computer science and stop depending on mythology, technology is changing and mythology is not keeping up.