Not applicable to Net 30 POs
Erlang Factory 2017
A Shift Back to Embedded
As primarily an embedded systems engineer, I don't get very much love in the way of development tools. I spend days reading mailing lists from the early 2000's looking for the solution to a compiler issue, I lose hours browsing various old, inactive forums looking for a driver, that sort of thing. Elixir and the Nerves Project are really changing the mindset that embedded software is only something that the most hardened developers can do. Everyone forgets that Erlang (and by extension Elixir) was originally built for Embedded Systems so it only makes sense that with the influx of "the internet of things" we take another look at how embedded-systems are designed, developed, and maintained.
After meeting up with Justin Schneck (one of the original Nerves-Project founders) at Erlang and Elixir Factory, we talked to many interested developers about embedded systems with Nerves. I got so many comments along the lines of "FarmBot is such a cool project! I had no idea it was written in Elixir/Erlang, how can I help?". I've been part of the Elixir community for about two years now, and I've always lived in the embedded world. It was so weird to go from being in such a small niche, to being someone that people actually know because the community is growing so large.
Prototype to Production
When I first started at FarmBot, our embedded software stack was written primarily in Ruby. It worked, but definitely had some pitfalls, the main one being deployment. We had no system of pushing updates and no system of installation. We had really well put together docs, but it was just a little complex. In just under a month I was able to recreate the Ruby project as an Elixir/Nerves Project. This shows just how fast you can prototype something with Elixir. Justin Schneck (whose official title is "Pan-galactic Nerves Overlord") let me come up on stage with him to show off the scale FarmBot (which we call FarmBot Jr.). Unfortunately after disassembling it, hauling it for 5 hours on the freeway in a sports car, and reassembling it in a haste, the bot didn't operate 100% correctly, but it still made a decent display, and was able to move around its plane pretty well for the demonstration.
Communities Coming Together
It's so refreshing to see so many communities coming together in the world of software development. I don't know of any other place in the world where you can get such a diverse group of developers in the same building. People like Joe Armstrong - one of the co-inventor of Erlang, and Dave Thomas - author of "Programming Ruby" and "Programming Elixir". There is no one obvious background other than a shared love for this relatively small community of developers. People are coming from around the globe just to meet up for a couple days and talk about coding and language, and I can't wait to do it all again next year.