Everything open source
May 16–17, 2016: Training & Tutorials
May 18–19, 2016: Conference
Austin, TX

Elixir: Why processes trump objects

Kevin Rockwood (Gaslight)
5:10pm–5:50pm Thursday, 05/19/2016
The New Stuff
Location: Ballroom C Level: Intermediate
Average rating: ***..
(3.60, 5 ratings)

Prerequisite knowledge

Attendees should have a basic knowledge of object-oriented programming.

Description

Over the past quarter-century, we’ve witnessed the rise and widespread adoption of object-oriented (OO) languages. We bought into the promise that objects would solve all our technical challenges. That class hierarchies would bring order to our tangled messes. But something has gone horribly wrong.

The technical requirements of our software continue to rise, and our trusty OO languages aren’t keeping up. They’re unable to climb the ladder of complexity. How do we scale the complexity of a system without being crushed by the cognitive overhead it takes to keep it all in our head?

Kevin Rockwood explores how process-oriented architecture embodies the principles that object-oriented architecture always intended and explains how you can use processes to tackle complex problems that other languages could only dream about. For the past 30 years, Erlang, along with its pioneering runtime, has been quietly fighting alongside its OO brethren. Although its approach is drastically different from the OO languages of today, it’s actually much more closely aligned to object-oriented guiding principles. Now, Elixir is catapulting the pioneering approach of Erlang into the mainstream. The wave is approaching. Choose processes over objects, and embrace the magic of Elixir.

Topics include:

  • A brief history of object-oriented programming
  • What went wrong? State, classes, and inheritance
  • Bringing back simplicity with functional programming
  • Encapsulating state and immutability
  • The actor model at the process level
  • Elixir and the future
  • Returning to the ideals of object-oriented programming
Photo of Kevin Rockwood

Kevin Rockwood

Gaslight

Kevin Rockwood is a lead developer at Gaslight, an agile software development shop in Cincinnati. He writes web apps in Ruby, Elixir, Erlang, Phoenix, and JavaScript, and he’s always focused on creating clear and concise code. Kevin shares his love for technology through teaching. He helped lead a Ruby on Rails class at Northern Kentucky University and has taught Ember.js and AngularJS workshops around the country. Kevin has also spoken at ProductCamp Cincinnati, Cincy Web Tech Day, and many technical meetup groups.