Thanks to all who came out for Tuesday’s meetup! If you couldn’t make it, look for recordings soon on our Youtube channel, youtube.com/indyelixirorg.
Thanks as always to our sponsors who made tonight possible. And congrats to Eric and Mack, winners of Manning Publications’ excellent Elixir books Elixir In Action and The Little Elixir and OTP Guidebook.
Eric Oestrich gave an introduction to GenServer, a common building-block of OTP applications. He also delved into Elixir releases with distillery and showed an impressive demo of hot code swapping.
This was our largest meetup yet! Over 20 of you came out to hear about using Elixir in production. If you couldn’t make it, look for recordings soon on our Youtube channel, youtube.com/indyelixirorg.
A big thanks to our sponsors who made tonight possible. And Congrats to Christopher and Miguel, winners of Manning Publications’ excellent books Elixir In Action and The Little Elixir and OTP Guidebook.
Brian Howenstein talked about how Clustertruck uses Elixir to cook, track, and deliver fresh food as quickly as possible. Brian delved into how Clustertruck introduced Elixir into their primarily-Rails stack.
Kitto, a small framework for creating dashboards in Elixir and React
Jeff Browning shared how his team uses Elixir to power Yala, an intelligent chatbot that helps you manage, schedule, and optimize your team’s social posts. Jeff talked about some important pitfalls when running Elixir in production, as well as the benefits.
Thanks to all who joined us on Tuesday to learn about using Elixir on embedded hardware with Nerves! If you missed it, you can find recordings of past talks on our Youtube channel, youtube.com/indyelixirorg.
A big thanks to our awesome sponsors who made tonight possible. Congrats to Amber and Lucas, winners of Manning Publications’ excellent books Elixir In Action and The Little Elixir and OTP Guidebook. And if you’re interested in reading more about IoT (Internet of Things) topics, check out Manning’s book Building the Web of Things, or their free intro Using the Web to Build the IoT.
Steve Grossi gave this evening’s talk, demoing two simple Nerves projects on a Raspberry Pi: a blinking LED whose state you can view and update over the network, and a button circuit that tweets when you push it.
Thanks, everyone who joined us for Tuesday’s game-themed Indy Elixir! If you missed it, you can find recordings of past talks on our Youtube channel, youtube.com/indyelixirorg.
Thanks as always to our awesome sponsors who made tonight possible. And congrats to Chris and Brian, winners of Manning Publications’ excellent books Elixir In Action and The Little Elixir and OTP Guidebook.
Lucas Falk started things off by demoing and walking us through a websocket-based app he built for agile planning poker. Using Phoenix channels for communication and a GenServer to hold game state, the app also has a great test suite and illustrates how to test these components of a real-time system.
Ryder Timberlake shared his work on an Elixir port of “Give Me Your Lunch Money,” an interactive fiction adventure game originally built with the Adrift toolkit and for which he composed the soundtrack. He covered loading static data into Elixir from YAML and handling user input from a game command prompt. Ryder fielded questions but also came with some of his own—including why you would build this in Elixir in the first place—leading to some great discussion.
Using supervised processes to play audio simultaneously
Relying on Elixir 1.4’s upcoming Registry module as a metronome to send messages to groups of processes
Building a self-correcting timing mechanism when process messages arrive later than expected
Look for a recording of the talk to be posted here once it’s ready.
Then we ended the evening with an hour of musical hacking and discussion. Some highlights:
Ben Falk pointed out that appending items to the end of a linked list is relatively slow on the BEAM, and suggested using a queue instead, for which he’d written a library. Check out the pull request!
I learned the difference between performing GenServer setup in start_link vs. init. start_link happens in the originating process, while init happens in the GenServer process. So perform any memory-intensive setup in start_link to keep the GenServer’s own memory footprint small.
Lucas Falk suggested using guard clauses to ensure we actually get lists when we’re expecting them. Always a good practice!
Please note that we’re switching to a bi-monthly schedule, so our next event will be on March 7, 2017! We’re looking for speakers—please let me know if you’re interested!