Skip to content

Instantly share code, notes, and snippets.

@Maikon
Last active June 18, 2017 19:04
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save Maikon/6cf110683a5e2a391b2229d7b0806fcc to your computer and use it in GitHub Desktop.
Save Maikon/6cf110683a5e2a391b2229d7b0806fcc to your computer and use it in GitHub Desktop.
Peter's talk proposal

Mind your own business View Controller Title and abstract don't connect

Abstract

Elixir is different, you were told. Where other languages rely on a database, Elixir has long-lived processes. No need for dependencies to handle background tasks… just add more processes.

Description

This freedom can be both liberating and daunting. To someone familiar with building MVC applications, where the database is central, how can they break old habits and get the most out of Elixir's superpowers?

In this talk we will:

  • Review some universal truths of software design. This is a strong statement that might across the wrong way. Maybe "Review some well known software design principles"?
  • Discuss how to use the tools we have to organise our code such as mix, umbrellas and releases.
  • Show how to write cloud native applications.
  • Finally ask some questions about what more the Elixir ecosystem needs to reach its full potential.

Objectives

The objectives of this talk are twofold. First to share some of my insights from building a variety of Elixir applications over the last 3 years. At work I am developing a payments network that makes use of HTTP streaming for server push and a persistant event log to communicate between services. This project has really broadened my horizons. Second, I want add some clarity to some current discussions in the Elixir community. For example statements such as "phoenix is not your application".

Target audience

Mid to experienced developers with any level of Elixir experience.


Abstract II

A database is a tool which we rely upon and often take for granted. Can we live without it though? Can we design reliable stateful applications and perform background tasks without one? In this talk we will see how Elixir can help us answer these questions convincingly.

Description II

Most of us today use MVC frameworks. In a traditional MVC setup, using a database is something we automatically assume. Building a shopping basket? ? All great excuses to use a database. But are they? You could put more concrete scenarios here that demonstrate these ideas. See below***

What are the downsides for making a decision like that early on? Can we delay it until later when more information become available? Do we even need it?

We will walk through several real life scenarios and see how the simple constructs Elixir provides us can help us build reliable systems with less dependencies. We will cover the benefits and downsides of the various approaches. Finally we will take a look at the future of the web and where Elixir fits in.

Objectives II

The main objective is to share experiences and insights I have gathered over the last 3 years building various production systems in Elixir. These experiences have challenged traditional beliefs I held and my goal is to challenge the audience as well.

Target audience

Mid to experienced developers with any level of Elixir experience.

*** From a payment network thats uses HTTP streaming to perform server pushes to a persistent event log used to establish communication between multiple services.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment