{"id":13682334,"url":"https://github.com/poteto/elixirconf-2016","last_synced_at":"2025-04-05T02:11:47.100Z","repository":{"id":148476717,"uuid":"67132730","full_name":"poteto/elixirconf-2016","owner":"poteto","description":"ElixirConf 2016 summary","archived":false,"fork":false,"pushed_at":"2017-04-05T20:58:33.000Z","size":56,"stargazers_count":570,"open_issues_count":0,"forks_count":55,"subscribers_count":68,"default_branch":"master","last_synced_at":"2025-03-29T01:14:14.757Z","etag":null,"topics":["conference","elixir","elixirconf"],"latest_commit_sha":null,"homepage":"","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/poteto.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2016-09-01T13:17:32.000Z","updated_at":"2024-10-29T13:18:15.000Z","dependencies_parsed_at":"2023-05-01T21:30:55.494Z","dependency_job_id":null,"html_url":"https://github.com/poteto/elixirconf-2016","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/poteto%2Felixirconf-2016","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/poteto%2Felixirconf-2016/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/poteto%2Felixirconf-2016/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/poteto%2Felixirconf-2016/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/poteto","download_url":"https://codeload.github.com/poteto/elixirconf-2016/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247276189,"owners_count":20912288,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["conference","elixir","elixirconf"],"created_at":"2024-08-02T13:01:44.358Z","updated_at":"2025-04-05T02:11:47.070Z","avatar_url":"https://github.com/poteto.png","language":null,"funding_links":[],"categories":["Others"],"sub_categories":[],"readme":"# ElixirConf 2016 Summary\n\nA collection of links that cover what happened during ElixirConf 2016. Please feel free to submit a PR!\n\n\n## Photos\n  + [Photo Gallery](https://echobind.com/gallery/elixir-and-phoenix-conf-2016/)\n\n\n## Day 0\n\n#### SimAlchemy by [James Edward Gray II](https://github.com/jeg2)\n\n- Slides:\n    + [Process Basics](https://github.com/sabondano/elixirconf-2016/blob/master/process_basics_slides.pdf)\n    + [GenServer and Friends](https://github.com/sabondano/elixirconf-2016/blob/master/genserver_and_friends_slides.pdf)\n    + [Supervisors](https://github.com/sabondano/elixirconf-2016/blob/master/supervisors_slides.pdf)\n    + [OTP Strategy](https://github.com/sabondano/elixirconf-2016/blob/master/otp_strategy_slides.pdf)\n- Links:\n    + [Simulations](https://github.com/JEG2/simulations)\n    + [Event Sourcing](http://martinfowler.com/eaaDev/EventSourcing.html)\n\n#### Phoenix - Getting realtime with channels\n\n- Links:\n    + [Sketchpad](https://github.com/chrismccord/sketchpad)\n\n#### Taking Off with Phoenix\n\n- Links: ...\n\n#### Badge Hacking with Nerves - [Justin Schneck](https://github.com/mobileoverlord), [Frank Hunleth](https://github.com/fhunleth), [Garth Hitchens](https://github.com/ghitchens), [Chris Dutton](https://github.com/CaptChrisD), [Greg Mefford](https://github.com/gregmefford)\n\n- [Slides](http://www.slideshare.net/GregMefford/badge-hacking-with-nerves-workshop-elixirconf-2016-justin-schneck-and-frank-hunleth)\n- Links:\n    + [Nerves Project Website](http://nerves-project.org/)\n    + [Nerves on GitHub](https://github.com/nerves-project)\n    + [Getting-Started Guide and Docs on HexDocs](https://hexdocs.pm/nerves/getting-started.html)\n    + [Join us in #nerves on the Elixir-Lang Slack](https://elixir-slackin.herokuapp.com/)\n\n#### Learning Elixir through TrueStory by [Bruce Tate](https://github.com/batate) and [Eric Meadows-Jönsson](https://github.com/ericmj)\n\n- Links:\n    + [Workshop](https://github.com/ericmj/workshop)\n    + [TrueStory](https://hex.pm/packages/true_story)\n\n## Day 1\n\n### Talks\n\n#### Erlang Solutions Message\n- \"supercharged observer\" https://www.erlang-solutions.com/products/wombat-oam.html\n\n#### Opening Keynote by [Chris McCord](https://twitter.com/chris_mccord)\n\n- [Video](https://www.youtube.com/watch?v=qPiZTxUAaVM)\n- Slides - Not uploaded yet. Submit a [PR](https://github.com/poteto/elixirconf-2016/pulls) if you find it!\n- Links:\n    + [2m connections in Phoenix](http://www.phoenixframework.org/blog/the-road-to-2-million-websocket-connections)\n    + [Programming Phoenix book](http://bit.ly/phoenix_book) - Discount code: `ElixirConfUS2016_phoenix`\n    + [Phoenix Presence blog post](https://dockyard.com/blog/2016/03/25/what-makes-phoenix-presence-special-sneak-peek)\n    + [Nerves - Embedded Elixir](http://nerves-project.org/)\n    + [New folder structure for Phoenix](https://twitter.com/antondom/status/771341202071384064)\n    + [Phoenix Presence docs](https://hexdocs.pm/phoenix/Phoenix.Presence.html)\n    + [Phoenix Presence podcast on the changelog](https://changelog.com/208/)\n    + [CRDTs](https://en.wikipedia.org/wiki/Conflict-free_replicated_data_type)\n\n#### Abstractions: A Tale of Keys and Values by [Ernie Miller](https://github.com/erniemiller)\n\n- [Video](https://www.youtube.com/watch?v=eKbLOlyt11k)\n- [Slides](https://speakerdeck.com/erniemiller/abstractions-a-tale-of-keys-and-values)\n- Links: ...\n\n#### Implementing binary protocols with Elixir by [Ole Michaelis](https://twitter.com/CodeStars)\n\n- [Video](https://www.youtube.com/watch?v=RmKA-vdi04I)\n- [Slides](https://slidr.io/nesQuick/implementing-binary-protocols-with-elixir)\n- Links:\n    + https://github.com/nesQuick/elixir-hpack\n    + https://http2.github.io/http2-spec/compression.html\n    + https://http2.github.io/http2-spec/\n    + http://daniel.haxx.se/http2/\n    + https://github.com/ninenines/cowlib/blob/master/src/cow_hpack.erl\n    + http://elixir-lang.org/docs/stable/elixir/Bitwise.html#%3C%3C%3C/2\n    + http://www.slideshare.net/peychevi/http2-and-quick-protocols-optimizing-the-web-stack\n    + https://ma.ttias.be/architecting-websites-http2-era/\n    + https://benramsey.com/talks/2015/05/phptek-http2/\n    + https://speakerdeck.com/summerwind/2-prioritization\n    + http://chimera.labs.oreilly.com/books/1230000000545/ch12.html#HTTP2_HEADER_COMPRESSION\n    + http://tools.ietf.org/html/rfc6585\n    + https://http2.golang.org/\n    + https://aprescott.com/posts/spdy-colon-headers\n    + https://tools.ietf.org/html/draft-ietf-httpbis-header-compression-12\n    + http://news.netcraft.com/archives/2015/06/25/june-2015-web-server-survey.html\n\n#### pg2 and You: Getting Distributed with Elixir by [Eric Entin](https://twitter.com/antipax)\n\n- [Video](https://www.youtube.com/watch?v=_O-bLuVhcCA)\n- [Slides](https://speakerdeck.com/antipax/pg2-and-you-getting-distributed-with-elixir)\n- Links:\n    + [pg2 docs](http://erlang.org/doc/man/pg2.html)\n    + [phoenix pubsub](https://github.com/phoenixframework/phoenix_pubsub)\n    + [RePG2](https://github.com/antipax/repg2)\n    + [gen_server](http://erlang.org/doc/man/gen_server.html)\n    + [global](http://erlang.org/doc/man/global.html)\n    + [net_kernel](http://erlang.org/doc/man/net_kernel.html)\n\n#### The future of deployment in Elixir by [Paul Schoenfelder](https://twitter.com/gotbones)\n\n- [Video](https://www.youtube.com/watch?v=0fuUtQFinZk)\n- [Slides](http://slides.com/paulschoenfelder/elixirconf2016#/)\n- Links:\n    + [Distillery](https://github.com/bitwalker/distillery)\n    + [edeliver](https://github.com/boldpoker/edeliver)\n    + [OpenShift](https://www.openshift.com)\n\n#### Code Spelunking for Knowledge and Profit by [Brian Cardarella](https://twitter.com/bcardarella)\n\n- [Video](https://www.youtube.com/watch?v=jXVQ8nvuNas)\n- Slides - Not uploaded yet. Submit a [PR](https://github.com/poteto/elixirconf-2016/pulls) if you find it!\n- Links:\n    + [Ecto](https://github.com/elixir-ecto/ecto)\n    + [Phoenix.Naming](https://hexdocs.pm/phoenix/Phoenix.Naming.html)\n    + [Compile.Phoenix](https://github.com/phoenixframework/phoenix/blob/master/lib/mix/tasks/compile.phoenix.ex)\n    + [Kernel.pop_in/2](https://dockyard.com/blog/2016/06/05/elixir-1-3-kernel-pop-in)\n    + [ExUnit.Case.register_attribute/3](http://elixir-lang.org/docs/stable/ex_unit/ExUnit.Case.html#register_attribute/3)\n    + [elixir_rewrite](https://github.com/elixir-lang/elixir/blob/master/lib/elixir/src/elixir_rewrite.erl)\n    + [Kernel.SpecialForms](http://elixir-lang.org/docs/stable/elixir/Kernel.SpecialForms.html)\n\n#### Giving up the Object-Oriented Ghost by [Zoe Laco](https://twitter.com/morganlaco)\n\n- [Video](https://www.youtube.com/watch?v=_VpZ6gQsyDY)\n- [Slides](http://slides.com/morganlaco/deck-2/)\n- Links:\n    + [From Imperative to Functional and Back-Monads are for Functional Languages](https://www.infoq.com/articles/Dont-graft-Monads-onto-Imperative-Languages)\n    + [From Imperative to Functional: How to Make the Leap](http://loup-vaillant.fr/tutorials/from-imperative-to-functional)\n    + [A Practical Introduction to Functional Programming](https://maryrosecook.com/blog/post/a-practical-introduction-to-functional-programming)\n    + [Elixir Getting Started Guide](http://elixir-lang.org/getting-started/recursion.html)\n    + [Destroy All Ifs](http://degoes.net/articles/destroy-all-ifs)\n    + [16 Months of Functional Programming](http://www.vasinov.com/blog/16-months-of-functional-programming/#toc-immutable-state)\n    + [Learn You Haskell](http://learnyouahaskell.com/introduction)\n    + [How to Switch from the Imperative Mindset](http://www.lispcast.com/imperative-mindset)\n    + [Functional Programming Techniques With Ruby: Part I](https://www.sitepoint.com/functional-programming-techniques-with-ruby-part-i/)\n    + [From Imperative to Functional Programming (for Absolute Beginners)](http://www.slideshare.net/alexbunardzic/from-imperative-to-functional-programming-43476397)\n    + [Transposing a Matrix: Thinking Recursively in Elixir](http://langintro.com/elixir/article2/)\n    + [Don’t Be Scared Of Functional Programming](https://www.smashingmagazine.com/2014/07/dont-be-scared-of-functional-programming/)\n    + [Myth of the Day: Functional Programmers Don't Use Loops](https://two-wrongs.com/myth-of-the-day-functional-programmers-dont-use-loops)\n    + [ElixirSchool](http://www.elixirschool.com)\n    + [Elixir courses at Code School (coming soon)](https://www.codeschool.com)\n\n#### Nerves: Connected beyond the Node by [Justin Schneck](https://twitter.com/mobileoverlord)\n\n- [Video](https://www.youtube.com/watch?v=VhAIDmtKhO4)\n- Slides - Not uploaded yet. Submit a [PR](https://github.com/poteto/elixirconf-2016/pulls) if you find it!\n- Links: ...\n\n#### Selling Food With Elixir by [Chris Bell](https://twitter.com/cjbell_)\n\n- [Video](https://www.youtube.com/watch?v=fkDhU-2NWJ8)\n- [Slides](https://speakerdeck.com/cjbell88/selling-food-with-elixir-elixirconf-2016)\n- Links:\n    + [The app Chris built for his client](http://cavagrill.com/)\n    + [gen_retry](https://github.com/appcues/gen_retry)\n    + [ets](http://erlang.org/doc/man/ets.html)\n    + [immortal](https://github.com/danielberkompas/immortal)\n    + [httpotion](https://github.com/myfreeweb/httpotion)\n    + [httpoison](https://github.com/edgurgel/httpoison)\n\n#### Debugging techniques in Elixir by [Erich Kist](https://twitter.com/erichkist)\n\n- [Video](https://www.youtube.com/watch?v=pj6zAgvVt5w)\n- [Slides](https://speakerdeck.com/erichkist/debugging-techniques-in-elixir-elixirconf-2016)\n- Links:\n  + [Stuff Goes Bad: ERLANG IN ANGER](https://www.erlang-in-anger.com/)\n\n#### Migrating an invoicing system to Elixir/Erlang by [Norberto Ortigoza](https://twitter.com/hiphoox)\n\n- [Video](https://www.youtube.com/watch?v=MmJaGGT28Js)\n- [Slides (zip)](https://dl.dropboxusercontent.com/u/3443349/ElixirConf-ErlangFactory.zip)\n- Links: ...\n\n#### Building \"learn to touch type\" glove with Elixir and Arduino by [Tetiana Dushenkivska](https://twitter.com/tetiana12345678)\n\n- [Video](https://www.youtube.com/watch?v=j_7kqFgIK-M)\n- [Slides](http://goo.gl/iS5K0j)\n- [Gifs used in slides](https://github.com/tetiana12345678/touch_typing_glove_pressie_orlando_gifs)\n- Links:\n    + [Typehero_project on github](https://github.com/tetiana12345678/typehero_project)\n    + [All about Arduino](https://www.arduino.cc/)\n    + [Conductive materials](http://www.kobakant.at/DIY/?cat=24)\n    + [Velostat](https://www.adafruit.com/product/1361)\n    + [Serial library](https://github.com/bitgamma/elixir_serial) and [Nerves_uart](https://github.com/nerves-project/nerves_uart) for hardware/software communication.\n\n#### Phoenix Beyond the Browser - Realtime Applications with Phoenix and Swift by [David Stump](https://twitter.com/davidstump)\n\n- [Video](https://www.youtube.com/watch?v=7vBc0Q-nwUI)\n- [Slides, Demo Apps, and Code Samples](https://github.com/davidstump/phoenix_beyond_the_browser)\n- Links:\n    + [All resources](https://github.com/davidstump/phoenix_beyond_the_browser)\n    + [Birdsong](https://github.com/sjrmanning/Birdsong)\n    + [SwiftPhoenixClient](https://github.com/davidstump/SwiftPhoenixClient)\n    + [RayWenderlich](https://www.raywenderlich.com/)\n    + [SwiftPlaygrounds](https://www.apple.com/swift/playgrounds/)\n    + [phoenix_chat_example](https://github.com/chrismccord/phoenix_chat_example)\n\n#### No REST for the wicked: Building a GraphQL API by [Ben Wilson](https://twitter.com/benwilson512)\n\n- [Video](https://www.youtube.com/watch?v=tlxjhTc_u4o)\n- [Slides](https://speakerdeck.com/benwilson512/no-rest-for-the-wicked)\n- Links:\n    + [Absinthe GraphQL](https://github.com/absinthe-graphql/absinthe)\n\n#### Measuring your Elixir Application by [Renan Ranelli](https://twitter.com/renanranelli)\n\n- [Video](https://www.youtube.com/watch?v=3KhzyDDju0Q)\n- [Slides](https://speakerdeck.com/rranelli/elixirconf-2016-measuring-your-elixir-app)\n- Links:\n    + [Zed Shaw on Statistics](https://zedshaw.com/archive/programmers-need-to-learn-statistics-or-i-will-kill-them-all/)\n    + [Blog post on measuring your elixir apps](http://milhouseonsoftware.com/2016/05/08/measuring-your-elixir-application/)\n    + [Other blog post on measuring elixir apps](http://tech.footballaddicts.com/blog/gathering-metrics-in-elixir-applications)\n    + [Grafana](http://grafana.org/)\n    + [InfluxDB](https://influxdata.com/)\n    + [collectd](https://collectd.org/)\n    + [haproxy](http://www.haproxy.org/)\n    + [clojurescript](https://github.com/clojure/clojurescript)\n    + [exometer](https://github.com/Feuerlabs/exometer)\n    + [elixometer](https://github.com/pinterest/elixometer)\n    + [vmstats](https://github.com/ferd/vmstats)\n\n#### Edgelixir: Distributed Graph Processing in Elixir by [Nathan Lapierre](https://twitter.com/n_lap)\n\n- [Video](https://www.youtube.com/watch?v=g77VhXrxUJY)\n- [Slides](https://speakerdeck.com/nlap/edgelixir-distributed-graph-processing-in-elixir)\n- Links:\n    + [Edgelixir](https://github.com/nlap/edgelixir)\n\n#### Lightning Talks\n- [René Föhring](https://twitter.com/rrrene)\n    + [Credo](https://github.com/rrrene/credo)\n    + [ElixirStatus](http://elixirstatus.com/)\n- [Pete Gamache](https://twitter.com/gamache)\n    + [gen_retry](https://github.com/appcues/gen_retry)\n    + [slides](http://www.slideshare.net/petegamache/genretry-simple-exponential-backoff-in-elixir)\n- [Faheem Mughal](https://twitter.com/hallx)\n    + [poolboy](https://github.com/devinus/poolboy)\n- [Rockwell Schrock](https://twitter.com/Schrockwell)\n    + [authy](https://github.com/schrockwell/authy)\n- My Elixir App is crashing more than my Ruby App! by [Luke Imhoff](https://twitter.com/kronicdeth)\n    + [Slides](https://speakerdeck.com/kronicdeth/my-elixir-app-is-crashing-more-than-my-ruby-app#)\n    + [RabbitMQ](https://www.rabbitmq.com/)\n- [Jay Hayes](https://twitter.com/iamvery)\n    + [Ratchet](https://github.com/iamvery/ratchet)\n    + [Phoenix Ratchet](https://github.com/iamvery/phoenix_ratchet)\n    + [slatchet](https://github.com/iamvery/slatchet)\n- [Josh Adams](https://twitter.com/knewter)\n    + [DailyDrip](https://www.dailydrip.com/)\n- [Casey Rosenthal](https://twitter.com/caseyrosenthal)\n    + [SimianArmy](https://github.com/Netflix/SimianArmy)\n    + [Principles of Chaos](http://principlesofchaos.org/)\n    + [ChaosCommunity](http://chaos.community/)\n- [Przemyslaw Krowinski](https://twitter.com/sanesquid)\n    + [game](https://github.com/archdragon/game_engine_elixir_phoenix)\n- [Fernand Galiana](https://twitter.com/kitesurfer)\n    + [Kubernetes](http://kubernetes.io/)\n    + [Docker Compose](https://docs.docker.com/compose/)\n- [Aaron Renner](https://twitter.com/bayfieldcoder)\n    + [Slides (Mocks, Adapters and Microservices)](http://slides.com/aaronrenner/deck)\n    + [Mocks](http://blog.plataformatec.com.br/2015/10/mocks-and-explicit-contracts/)\n    + [Adapters blog post](https://www.inverse.com/article/10674-here-s-how-inverse-tests-external-apis-in-elixir-with-bypass)\n- [Gabe Klein](https://github.com/gabeklein)\n    + [Socks](https://github.com/gabeklein/Socks)\n\n## Day 2\n\n### Talk\n\n#### Keynote by [José Valim](https://twitter.com/josevalim)\n\n- [Video](https://www.youtube.com/watch?v=apEWcpfsD2A)\n- [Slides](https://speakerdeck.com/plataformatec/genstage-and-flow-by-at-josevalim-at-elixirconf)\n- [Notes on slides](https://gist.github.com/sanmiguel/d73056adb6cffc9954327d8fcd89cd48)\n- Links:\n    + [GenStage announcement](http://elixir-lang.org/blog/2016/07/14/announcing-genstage/)\n    + [GenStage](https://github.com/elixir-lang/gen_stage)\n    + [\"Musketeer: all for one, one for all in data processing systems\"](http://www.cs.utexas.edu/users/ncrooks/2015-eurosys-musketeer.pdf). Gog, _et al_. University of Cambridge, 2015.\n\n#### String Theory by [James Edward Gray II](https://twitter.com/JEG2) and [Nathan Long](https://twitter.com/sleeplessgeek)\n\n- [Video](https://www.youtube.com/watch?v=6yoJ8sWRiyg)\n- [Slides](https://speakerdeck.com/nathanl/string-theory)\n- Links:\n    + [Elixir and Unicode, Part 1: Unicode and UTF-8 Explained](https://www.bignerdranch.com/blog/unicode-and-utf-8-explained/)\n    + [Elixir and Unicode, Part 2: Working with Unicode Strings](https://www.bignerdranch.com/blog/elixir-and-unicode-part-2-working-with-unicode-strings/)\n    + [Elixir and IO Lists, Part 1: Building Output Efficiently](https://www.bignerdranch.com/blog/elixir-and-io-lists-part-1-building-output-efficiently/)\n    + [Elixir and IO Lists, Part 2: IO Lists in Phoenix](https://www.bignerdranch.com/blog/elixir-and-io-lists-part-2-io-lists-in-phoenix/)\n\n#### Refactoring Techniques for Elixir, Ecto, and Phoenix by [Gary Rennie](https://twitter.com/TheGazler)\n\n- [Video](https://www.youtube.com/watch?v=V21DAKtY31Q)\n- [Slides](http://blog.gazler.com/talks/refactoring-elixir)\n- Links:\n    + [Oxo GitHub Repository](https://github.com/Gazler/oxo)\n\n#### Building umbrella project by [Wojtek Mach](https://twitter.com/wojtekmach)\n\n- [Video](https://www.youtube.com/watch?v=6NTmUQClHrU)\n- [Slides](https://speakerdeck.com/wojtekmach/building-an-umbrella-project)\n- Links:\n    + [Umbrella apps](http://elixir-lang.org/getting-started/mix-otp/dependencies-and-umbrella-apps.html)\n    + [Architecture: The Lost Years (RubyConf 2011)](https://www.youtube.com/watch?v=WpkDN78P884)\n    + [Wrangling Large Rails Codebases (Rocky Mountain Ruby 2012)](https://www.youtube.com/watch?v=FElnETSIMuo)\n    + [The Art of Destroying Software (Leetspeek 2014)](https://vimeo.com/108441214)\n    + [Myth: Eric Brewer On Why Banks Are BASE Not ACID - Availability Is Revenue](http://highscalability.com/blog/2013/5/1/myth-eric-brewer-on-why-banks-are-base-not-acid-availability.html)\n    + [AcmeBank source](https://github.com/wojtekmach/acme_bank)\n    + [ExAdmin](https://github.com/smpallen99/ex_admin)\n    + [distillery](https://github.com/bitwalker/distillery)\n\n#### Collaborative Music with Elm and Phoenix by [Josh Adams](https://twitter.com/knewter)\n\n- [Video](https://www.youtube.com/watch?v=UPD8yvl3MUI)\n- [Slides](http://www.slideshare.net/JoshAdams18/collaborative-music-with-elm-and-phoenix)\n- Links:\n    + [Colluder](https://github.com/knewter/colluder)\n\n#### Leveling Up With Ecto by [Darin Wilson](https://twitter.com/darinwilson)\n\n- [Video](https://www.youtube.com/watch?v=QE7bpqpDoKo)\n- [Slides](https://dl.dropboxusercontent.com/u/14884175/leveling_up_with_ecto.pdf)\n- Links:\n    + [MusicDB example](https://github.com/darinwilson/music_db)\n    + [ecto](https://github.com/elixir-ecto/ecto)\n    + [ecto docs](https://hexdocs.pm/ecto/Ecto.html)\n    + [Insert_all and schemaless queries](http://blog.plataformatec.com.br/2016/05/ectos-insert_all-and-schemaless-queries/)\n\n#### Building Available and Partition Tolerant Systems with Phoenix Tracker by [Gabi Zuniga](https://twitter.com/gabiz)\n\n- [Video](https://www.youtube.com/watch?v=A3z_od6Vy1w)\n- [Slides](https://speakerdeck.com/gabiz/elixir-conf-2016-building-available-and-partition-tolerant-systems-with-phoenix-tracker)\n- Links:\n    + [VoiceLayer](https://voicelayer.io)\n    + [Dispatch Library](https://github.com/VoiceLayer/dispatch)\n    + [Dht Example](https://github.com/VoiceLayer/dht)\n\n#### From Front End to Full Stack with Elixir and Phoenix by [Lauren Tan](https://twitter.com/sugarpirate_)\n\n- [Video](https://www.youtube.com/watch?v=r4ulu8wo_GI)\n- [Slides](https://speakerdeck.com/poteto/elixirconf-2016-from-front-end-to-full-stack-with-elixir-and-phoenix)\n- Links:\n    + [ember-changeset](https://github.com/DockYard/ember-changeset)\n    + [Erlang the Movie II](https://www.youtube.com/watch?v=rRbY3TMUcgQ)\n    + [The Little Elixir and OTP Guidebook](https://www.manning.com/books/the-little-elixir-and-otp-guidebook)\n    + [Elixir in Action](https://www.manning.com/books/elixir-in-action)\n    + [Key value data types best practices](https://engineering.appcues.com/2016/02/02/too-many-dicts.html)\n    + [Dialyxir](https://github.com/jeremyjh/dialyxir)\n    + [TDD with typespecs](https://medium.com/@barruumrex/seeking-simple-satisfaction-2a098902ddff)\n    + [Metaprogramming Elixir](https://pragprog.com/book/cmelixir/metaprogramming-elixir)\n    + [Terraform - incrementally replace your API with Phoenix](https://github.com/poteto/terraform) - [blogpost](https://medium.com/@sugarpirate/rise-from-the-ashes-incremental-apis-with-phoenix-b08cd66bd142#.hll7po4x0)\n    + [Functional programming patterns](https://fsharpforfunandprofit.com/fppatterns/ )\n\n#### Nerves + Phoenix Saves a Father's Sanity! by [Joel Byler](https://twitter.com/joelbyler)\n\n- [Video](https://www.youtube.com/watch?v=cznxe3TCevk)\n- [Slides](https://speakerdeck.com/joelbyler/nerves-plus-phoenix-saves-a-fathers-sanity)\n- Links:\n    + [Project Github Repository](https://github.com/joelbyler/elixir_conf_chores)\n    + [Project Custom Nerves System](https://github.com/joelbyler/nerves_system_rpi3_ap)\n    + [Nerves Base Buildroot Config (great README for custom systems)](https://github.com/nerves-project/nerves_system_br)\n    + [Project Custom Nerves System](https://github.com/joelbyler/nerves_system_rpi3_ap)\n    + [Great advice on testing, written by José Valim](http://blog.plataformatec.com.br/2015/10/mocks-and-explicit-contracts/)\n\n\n#### Concurrent Feature Testing with Wallaby by [Chris Keathley](https://twitter.com/ChrisKeathley)\n\n- [Video](https://www.youtube.com/watch?v=TjOXbDJ-yw8)\n- [Slides](https://speakerdeck.com/keathley/concurrent-feature-tests-with-wallaby)\n- Links:\n  + [Wallaby](https://github.com/keathley/wallaby)\n\n#### The new calendar types in Elixir 1.3 by [Lau Taarnskov](https://twitter.com/lauT)\n\n- [Video](https://www.youtube.com/watch?v=3gky54_qLjQ)\n- [Slides](https://speakerdeck.com/lau/the-new-calendar-types-in-elixir-1-dot-3)\n- Links:\n  + [Elixir docs for the built in Calendar module](http://elixir-lang.org/docs/stable/elixir/Calendar.html)\n  + [Calendar library](https://github.com/lau/calendar)\n  + [Calecto](https://github.com/lau/calecto)\n\n#### Painless Test Driven Development with Elixir and Phoenix by [Kat Tornwall](https://twitter.com/ktornwall)\n\n- [Video](https://www.youtube.com/watch?v=7Zr9SfQhQp8)\n- [Slides](https://github.com/ktornwall/elixir_conf_2016_demo/raw/master/slides.pdf)\n- Links:\n    + [Demo App](https://github.com/ktornwall/elixir_conf_2016_demo)\n\n#### Dialyzer: Optimistic Type Checking for Erlang and Elixir by [Jason Voegele](https://twitter.com/jvoegele)\n\n- [Video](https://www.youtube.com/watch?v=JT0ECYZ9FaQ)\n- Slides:\n    + [PDF](https://github.com/jvoegele/ElixirConf2016_dialyzer/blob/master/Dialyzer.pdf)\n    + [Speakerdeck](https://speakerdeck.com/jvoegele/elixirconf-2016-dialyzer-optimistic-type-checking-for-erlang-and-elixir)\n- [Sample Code](https://github.com/jvoegele/ElixirConf2016_dialyzer/)\n- Links:\n    + [Dialyzer](http://erlang.org/doc/man/dialyzer.html)\n    + [Dialyxir](https://github.com/jeremyjh/dialyxir)\n\n#### The Joy of Connecting Elixir to the Physical World by [Frank Hunleth](https://twitter.com/fhunleth)\n\n- [Video](https://www.youtube.com/watch?v=SVy7gRU_-P8)\n- [Slides](https://speakerdeck.com/fhunleth/the-joy-of-connecting-elixir-to-the-physical-world)\n- Links:\n    + [elixir_ale](https://github.com/fhunleth/elixir_ale)\n    + [nerves_uart](https://github.com/nerves-project/nerves_uart)\n\n#### Elixir in Elixir by [Jay Hayes](https://twitter.com/iamvery)\n\n- [Video](https://www.youtube.com/watch?v=p8MGNw045AE)\n- [Slides](https://speakerdeck.com/iamvery/elixir-in-elixir)\n- Links:\n    + [Getting Started with Elixir Metaprogramming](https://www.bignerdranch.com/blog/getting-started-with-elixir-metaprogramming/)\n\n#### WebRTC and Phoenix, when μ seconds aren't fast enough by [Jason Stiebs](https://twitter.com/peregrine)\n\n- [Video](https://www.youtube.com/watch?v=yI5J2P9kcBQ)\n- [Slides](https://speakerdeck.com/jeregrine/webrtc-for-when-m-seconds-are-not-fast-enough)\n- Links:\n    + [Demo app](https://phoenix-webrtc.herokuapp.com/)\n    + [Phoenix WebRTC](https://github.com/jeregrine/phoenix_webrtc)\n    + [Twilio Stun Turn](https://www.twilio.com/stun-turn)\n    + [stun](https://github.com/processone/stun)\n    + [WebRTC](https://hpbn.co/webrtc/)\n\n#### Closing Keynote by [Boyd Multerer](https://twitter.com/BoydMulterer)\n\n- [Video](https://www.youtube.com/watch?v=h_NvYwveeMc)\n- [Slides](https://github.com/boydm/presentations/blob/master/elixirconf_boydm_keynote.key)\n- Links:\n    + [Cloak blog post](http://blog.danielberkompas.com/2015/09/22/cloak-your-ecto-data.html)\n    + [Cloak source](https://github.com/danielberkompas/cloak)\n    + [FPGA article](http://www.theregister.co.uk/2016/03/14/intel_xeon_fpga/)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpoteto%2Felixirconf-2016","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpoteto%2Felixirconf-2016","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpoteto%2Felixirconf-2016/lists"}