CodeSync

CodeSync

Keynote: Gang of None? Design Patterns in Elixir - José Valim | ElixirConf EU 2024

Code Sync: Keynote: Gang of None? Design Patterns in Elixir - José Valim | ElixirConf EU 2024

Comments welcome! View the code-sync and elixirconf-eu tags for more Code Sync and ElixirConf EU talks!

Most Liked

carlogilmar

carlogilmar

One of my favorite talks! Seriously! Here you have my graphic recording! :slight_smile:

graphic-recordings

russolsen

russolsen

Just as he goes on after this, just because we use functions in elixir, this doesn’t mean those design patterns disappear magically, we have them in other forms and shapes.

Yes! We have to keep in mind that the GoF book was written a long time ago and a lot of the problems they were trying to solve revolved around the combination of OO and static typing. Fast forward a few decades and languages like Elixir have fewer constraints and the benefit of many years of experience.

But what doesn’t change with the language is that programming challenges come in all sizes and shapes and – no matter which programming language you are using – some of those challenges will be both common and just beyond what is straight forward to code in the language. And then you need a toolkit of known to work solutions.

Unfortunately design patterns went thru a period of insane over use – I actually worked with people who believed with all of their heart that any programming problem could be solved with the proper application of one – or perhaps seven or eight in combination-- of the GoF patterns. The result was write only code. The resulting backlash kind of poisoned the whole idea in many minds.

I do think the functional world would be helped by folks finding and documenting patterns, but, at least in the circles I travel in, we are going to have to find a different word.

AstonJ

AstonJ

Just watching this now - it’s great to see José looking happy and healthy (I can’t be the only one who worries he (and others like Chris) overwork themselves sometimes!)

The only book I have read about design patterns is Design Patterns in Ruby by @russolsen and it is one of my favourite tech books of all time! Russ is an amazing author and very eloquently (and entertainingly!) explains how to apply the patterns. I’ve asked him a few times whether he’d consider doing one on Elixir! In fact if Russ wrote a book about Elixir on any topic I would be the first to buy it!

Wonder what others think about design patterns in Elixir? They’re all functions? :upside_down_face:

Where Next?

Popular in Talks Top

axelson
ElixirConf US 2018 – Architecting Flow in Elixir - From Leveraging Pipes to Designing Token APIs – René Föhring (@rrrene) ...
New
axelson
ElixirConf US 2018 – Introducing Scenic - A Functional UI Framework – Boyd Multerer (@boydm) After years of...
New
ShalokShalom
So, there is another Erlang VM on the way :hugs:
New
kokolegorille
Hi everyone, It seems Elixir conf 2018 are starting to pop up on Youtube… Not really an index file, but You can start here
New
axelson
Posting a little bit late today but here you go: ElixirConf 2017 - Elixir + Neo4j - Regina Imhoff Neo4j is ...
New
axelson
by @zacky1972 Finally, we’ve succeeded in the implementation of Hastega!!! (Maybe until ElixirConf US 2019 :slight_smile: Hastega (Hyp...
New
TwistingTwists
I am in middle of watching this. I have to stop every minute and think over what Chris just said. The amount of info he sends over that ...
New
lawik
A single packet to begin. The 1st of Goatcember. Marc Laines - A Nerves Car Also on YouTube.
New
axelson
by @jon At PagerDuty, we run our systems across many geographic regions to ensure we’re always available, even when you might not be. E...
New
rodrigues
Day 1 Keynote about Lumen - An alternative BEAM implementation, designed for WebAssembly by @rcm765 @KronicDeth @bitwalker...
New

Other popular topics Top

Harrisonl
We have an ECS cluster with 4 services, where each task joins a single cluster, via discovery ECS discovery service. Currently when I de...
New
lastday4you
I wanted to check elixir version in phoenix because i found that my elixir is 1.5 but when i use Enum.chunk_by it said the function is un...
New
albydarned
Hello all! I am typing this post from my new MacBook Pro with the M1 chip. I’m loving it so far, and will probably use it as my daily dr...
New
msaraiva
Surface is an experimental library built on top of Phoenix LiveView and its new LiveComponent API that aims to provide a more declarative...
564 43806 214
New
jerry
Good day to you all. I have been struggling to get a query involving like and ilike to work. Can anyone assist me on this, please? pro...
New
jay1
Why is it that the mnesia database isn’t the most preferred database for use in Elixir/Phoenix?
New
Emily
I have VueJS GUIs with the project generated using Webpack. I have Elixir modules that will need to be used by the VueJS GUIs. I forese...
New
vonH
When I run the Plug and I recompile I wind up having to use Ctrl C to quit iex and start again. Witht the help of rlwrap I can use the cu...
New
RisingFromAshes
I’ve read in another post that it may be possible with a router helper - but I couldn’t find an appropriate one, and tbh, I’m still just ...
New
boundedvariable
I am going through the kafka architecture. All the features what the kafka is providing are already in Erlang. I would like hear your opi...
New

We're in Beta

About us Mission Statement