the evolution of a language

Post on 15-May-2022

2 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

The

LANGUAGELANGUAGEEVOLUTIONEVOLUTION

of a

The

of a

Photo by Yousef Espanioly on Unsplash

@whatyouhide

weedmaps.com/careers

TIMELINE

Erlang1988

Ruby1993

Programming Ruby2001

Rails2004

Elixir2011

Clojure2007

7 Languages in 7 Weeks

2010

2011Elixir

Jun 2013Ecto ElixirConf

Jul 2014

PhoenixJan 2014

Elixir 1.0Sep 2014

Programming ElixirOct 2014

LANGUAGE EVOLUTION

team COMMUNITY ecosystem

team• coordination • quality assurance • maintenance

Community• experimentation • ecosystem • usage

has Elixir been

growing?

CONTRIBUTORSne

w c

ontri

buto

rs

0

55

110

165

220

year

2011 2012 2013 2014 2015 2016 2017 2018

Elixir conferences

ElixirConf

2014

ElixirConf

2015

ElixirConf EU

ElixirConf MX

2016

ElixirConf EU

ElixirDaze

EMPEX

ElixirConf

Elixir.LDN

ElixirConf MX

2017

LoneStar ElixirConf ElixirDazeErlang & Elixir Factory

ElixirConfEMPEX

Elixir With LoveElixir.LDN

ElixirConf EU

ElixirConf MX

2018

LoneStar ElixirConf ElixirDazeEMPEX LA

ElixirConfEMPEX

Elixir Brazil

Code Elixir ElixirConf EU

Ruby & Elixir Taiwan

Gig City Elixir

The Big Elixir

ElixirConf MX

Hexne

w H

ex u

sers

0

450

900

1350

1800

year

2014 2015 2016 2017 2018

(users)

Hexne

w H

ex u

sers

0

600

1200

1800

2400

year

2014 2015 2016 2017 2018

(packages)

Hexne

w H

ex u

sers

0

500000

1000000

1500000

2000000

year

2014 2015 2016 2017 2018

(downloads)

things we got better at

port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port port

port

Ruby

Erlang

otp?

Erlang

Ruby

Lisp

Clojure

ErlangRuby

embracing OTP

Designing better libraries

|>

[1, [2], 3] |> List.flatten()|> Enum.map(fn x -> x * 2 end)

|>🤷

significant

events

the importance of

ecto

shows a new way to do things

data + pure code

validates metaprogramming in elixir

shows power of metaprogramming

(will slightly regret later)

phoenix

hooks users on Elixir through web

channels

nerves

Elixir is not just for the web?!

GROWTH factors

(key)

docs

tooling / ux / developer happiness

xref IEx breakpoints

syntax highlighting in IEx formatter ExUnit diff

community

❤ 💚 💙 💛 💜

What's next

what will the

teamfocus on?

maintenance

research

+

+developer happiness

/community ecosystem

elixir gets picked up by big companies

(hopefully)

Ecosystem will get larger and better

less core contributors

more ecosystem contributors

commits

com

mits

0

700

1400

2100

2800

year

2011 2012 2013 2014 2015 2016 2017 2018

CONTRIBUTORSne

w c

ontri

buto

rs

0

55

110

165

220

year

2011 2012 2013 2014 2015 2016 2017 2018

less elixir contributors

more beam contributors

elixir erlang

com

mits

to O

TP b

y El

ixir

team

0

10

20

30

40

year

2012 2013 2014 2015 2016 2017 2018

Erlang CONTRIBUTORS

Benchee.run/2

benchee:run/2

:telemetry.execute/3

telemetry:execute/3

is Elixir

successful?

will Elixir

SURVIVE?

not much relying on the

TEAM + language

Contributors

Core team

José

with

contribute

start discussions

thanks@whatyouhide

elixir-lang.org

top related