Skip to content

Instantly share code, notes, and snippets.

@KronicDeth
Created September 22, 2017 21:18
Show Gist options
  • Save KronicDeth/95cbf6ee58f40c6684fe6246ddf5ce03 to your computer and use it in GitHub Desktop.
Save KronicDeth/95cbf6ee58f40c6684fe6246ddf5ce03 to your computer and use it in GitHub Desktop.
Recap of all talks at ElixirConf 2017

Elixir Native UI - Boyd Multerer https://www.youtube.com/watch?v=77FW-jrCyCs

Thinking In Ecto - Darin Wilson https://www.youtube.com/watch?v=YQxopjai0CU

  1. Repository pattern https://youtu.be/YQxopjai0CU?t=2m12s
  2. Explicitness https://youtu.be/YQxopjai0CU?t=5m29s
  3. Operations as Data Structures https://youtu.be/YQxopjai0CU?t=11m47s
  4. Flexible Schemas https://youtu.be/YQxopjai0CU?t=22m53s
  5. A set of tools, not a framework https://youtu.be/YQxopjai0CU?t=32m57s

My Journey from Go to Elixir - Veronica Lopez https://www.youtube.com/watch?v=f979XY2A2HU

Day 1 Keynote - Justin Schneck https://www.youtube.com/watch?v=bd_EIWU9GzQ

  • Bootloader - launch part of the Erlang runtime that can recover if your application crashes, so you can send a working update to the embedded device https://youtu.be/bd_EIWU9GzQ?t=13m36s
    • nervs_init_gadget to get all hardware working
    • network
    • firmware_ssh to send updates over ssh instead of popping SD card and burning and reinserting
    • net_kernel
  • System Registry https://youtu.be/bd_EIWU9GzQ?t=19m20s
    • Allow for layers configuration and event notifications, such as for when hardware is added or ready (rate limited)\
  • Nerves Runtime https://youtu.be/bd_EIWU9GzQ?t=32m6s
    • Setups up r/w area for SD card
    • modprobes all devices
      • Puts them in System Registry
  • Nerves Reactor https://youtu.be/bd_EIWU9GzQ?t=36m34s
    • Code Reloading like Phoenix, but for embedded devices

Don't Write Macros But Do Learn How They Work - Jesse Anderson https://www.youtube.com/watch?v=Bo48sQDb-hk

  • Shows how quoted AST works

Building an Artificial Pancreas with Elixir and Nerves - Tim Mecklem https://www.youtube.com/watch?v=ARQD4BN_5ns

HTTP 2 Plug to Phoenix Cowboy too - Gary Rennie https://www.youtube.com/watch?v=Mq_tb2fkROo

Phoenix after 100000 lines - Renan Ranelli https://www.youtube.com/watch?v=blGJ_p4plbc

Embedded Elixir for Monitoring the Built Environment - Christopher Cote - https://www.youtube.com/watch?v=_zQ_u7o1rNo

Elixir by the Bellyful - Bryan Hunter https://www.youtube.com/watch?v=iswld-Rpi_g

Its Better Unstated - TJ Stankus https://www.youtube.com/watch?v=S2-1Rt-R2cY

  • good OO (Ruby) code vs good functional code (Elixir) for Bowling code kata

Working with legacy databases in Ecto - Geoffrey Lessel https://www.youtube.com/watch?v=3W2dMOQL2CM

Back on Your Feet - Claudio Ortolina https://www.youtube.com/watch?v=kWYgrA2YshE

Writing an Editor in Elixir - Ian Duggan https://www.youtube.com/watch?v=6lIVWVmuPao

Perhap: Applying Domain Driven Design and Reactive... - Rob Martin https://www.youtube.com/watch?v=kq4qTk18N-c

  • Domain Modeling Made Functional

Cajoling the Bird: How we squeezed more out of Phoenix PubSub- Simon Zelazny (from Grindr) https://www.youtube.com/watch?v=bodV9Tk_kpQ

Keep an Eye on the Sky with Nerves and Phoenix - Jeff Smith https://www.youtube.com/watch?v=UoSQBOP_Siw

Streaming Video with Elixir - John Wahba (TWITCH) https://www.youtube.com/watch?v=eNe5dmRP9Cc

Scaling up Elixir at TpT - Shanti Chellaram https://www.youtube.com/watch?v=RwJAETlVrvs

  • PHP (June 2016) to Elixir/Node.JS (Sep 2017)
    • Before
      • CakePHP
      • 20 Developers
    • After
      • React/Redux/Node.JS for FE rendering
      • Elixir API backend
      • 40 developers
  • Elixir vs PHP/Laravel
    • Productivity
    • Scalability
    • Concurrency & Perf
    • No Global GC
    • Community Support
  • Also converted to GraphQL
    • GraphQL per operation performance is hard to measure
    • Phoenix log isn't helpful because it's all one API endpoint, /graph

Day 2 Morning Keynote - José Valim https://www.youtube.com/watch?v=Wa7_I_pc0yo

ElixirBridge How Do We Shape Community - Anna Neyzberg https://www.youtube.com/watch?v=SB0bfI8DiOM

Live APIs with GraphQL Subscriptions - Bruce Williams and Ben Wilson https://www.youtube.com/watch?v=PEckzwggd78

Dr. ErlangOTP or How I Learned to Stop Worrying and Love disk_log - Eric Entin (@antipax) https://www.youtube.com/watch?v=lQmJZVcHYds

Elixir + Neo4j - Regina Imhoff https://www.youtube.com/watch?v=fWQy7aS_gd8

  • Ecto doesn't support Neo4J, so build everything by hand
  • Use Phoenix Channels to do graph diff subscriptions
    • She wrote the realtime part in < 1 day after noticing Jim Freeze put it in her talk description
  • May turn work into an Ecto Adapter

Managing Tables With Elixir and OTP - Robert Beene https://www.youtube.com/watch?v=ENolm5T0bkU

Patience Using Phoenix Presence in a Primary Care Clinic - Keith Gautreaux https://www.youtube.com/watch?v=1dyo5hmfUXs

The Power of Zero - Andrew Forward https://www.youtube.com/watch?v=4LIXBW58yIk

Elixir as a first language - Alexis Huefner https://www.youtube.com/watch?v=TUOeFdFvOk8

Well Behaved Native Implemented Functions for Elixir - Andrew Bennett https://www.youtube.com/watch?v=FYQcn9zcZVA

Elixir The Toyota Way - Powell Kinney (TOYOTA CONNECTED) https://www.youtube.com/watch?v=37V6L1EA4ac

Building an Open Source, Real Time Forum with Phoenix and Elm - Josh Adams https://www.youtube.com/watch?v=GFyFR5LdnrU

Plugging the Security Holes in Your Phoenix Application - Griffin Byatt https://www.youtube.com/watch?v=w3lKmFsmlvQ

  • Built Sobelow static analysis tool https://youtu.be/w3lKmFsmlvQ?t=29m14s
  • Don't do String.to_atom https://youtu.be/w3lKmFsmlvQ?t=6m52s
  • Null byte in paths
    • Path.extname("file.html\0.jpg") # .jpg
    • File.read("file.html\0.jpg") # file.html
    • Erlang team will disallow null bytes in file paths in future update
    • Look at Plug.Conn.send_file because it checks for null characters

Building Realtime Mobile Apps with React Native and Elixir - Osayame Gaius Obaseki https://www.youtube.com/watch?v=Kbhl379x1cw

Elixir with Kafka - Mathew Gardner (TOYOTA CONNECTED) https://www.youtube.com/watch?v=6ijgMvXJyuo

Implementing a MQTT client in Elixir - Martin Gausby https://www.youtube.com/watch?v=ImcAcDBa8Dg

Realtime Vehicle Tracking with Elixir, Phoenix, and Nerves - James Smith (@st23m) https://www.youtube.com/watch?v=aLnSO6FQpHs

Closing Keynote - Chris McCord https://www.youtube.com/watch?v=zbbK0WOvWII

Elixir Power Tracing - Gabi Zuniga https://www.youtube.com/watch?v=NBmNDI9OFJk

Idea Scaling Hannah Howard https://www.youtube.com/watch?v=jkFyz2LbdKg

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