the nerve No images? Click here TigrisMy latest streaming, publishing and so on has been sponsored by Tigris. They also fund my trip to GigCity Elixir where I will be doing both a keynote at the main conference and a technical talk during NervesConf. They offer Object Storage for anyone really but particularly interesting if you run on Fly. You get CDN performance baked in. Generous free allowance. Next livestream is today.
All my thingsI made a links page just to capture all my productions and public interfaces: On-ramp into spaceI owe massive thanks to Frank Hunleth and Connor Rigby. The rest of the Nerves crew, past and present also get credit, but those two happened to be central for me to go far, wide and eventually deep with Nerves. Why does Nerves matter? And for some, what is Nerves? Nerves is the IoT framework for Elixir. Frank started it, in Erlang I believe, then moved to Elixir because he got a lot more interest in collaborating that way. We've had Frank on BEAM Radio and he has also been on Elixir Wizards, you can get his background there but he was building embedded all over the place, and for embedded Linux he realized Erlang was pretty nice. Nerves makes embedded linux development approachable for someon who is hobby-comfortable with Linux and a Raspberry Pi. You mostly do Elixir. And you get this soft on-ramp into the embedded bits. And it is this elegantly pragmatic stack on top of existing creations. We have buildroot as the fundamental linux build. For your first venture with a Raspberry Pi you won't even touch this. We have fwup which makes dealing with firmware images much nicer. And then there are a bunch of tools for driving Linux-related things from Elixir-land. My first venture into it was porting the Python-library for the Inky eInk display into Elixir. I had poked Elixir a decent bit, done mild Phoenix, played with Raspberry Pis, worked with Python for years. So I tackled it. Got a ton of help and encouragement from the #nerves channel on Slack, today it is similarly helpful on Discord and elsewhere. I kept poking Nerves things off and on, experimenting with interesting hardware. Last few years I've done the Nerves Newsletter. What Nerves let me do was get slightly outside of my comfort zone with Elixir. Suddenly I was dealing with binary data. This led directly into me being comfortable to build the ID3 library for Changelog. That also served me in daring to drive an Elgato StreamDeck from Elixir. I've done macro pads in Nerves. eInk calendar displays. Ad-hoc Erlang distribution clustering with Nerves. It has been a big boon to my practice of Elixir outside of Phoenix and web. And now I'm elbow-deep in hardware, FTDI-adapters and prototyping, conceptualizing and securing hardware. This ambient light and proximity sensor driver library was something I did for SmartRent, under Frank's watchful eye, and that is now open source. This was probably my first in-depth time with a data sheet. I am now around my 6th serious relationship with a datasheet and it does get clearer. I'm getting quite comfortable talking to hardware from Elixir. I can't describe how much this pleases my teenage self. I am surrounded by circuitboards and I know a fair bit about what I'm doing with them. Not the electronics so much. Not yet. I wanna get there. But doing things with them, yes. And right now I'm digging into things that if people have done them with Nerves I don't believe they've published it. Raspberry Pi CM4, secure-boot, disk encryption and such fun stuff. This is my other client known only as [ REDACTED ]. SmartRent is not running off of Raspberry Pi hardware. Me and my colleagues are gathering a lot of know-how around securing these devices and if the next season of Underjord involves a lot of Nerves and security I would be quite pleased. I love doing web. And with Elixir and Phoenix I have had the capabilities to explore a lot of ways of doing things that are just not feasible in other ecosystems. It leads you to learn about distributed systems. It leads to a lot of growth if you are interested. Nerves and the enthusiastic support of that shard of the Elixir community have given me so much. Doing only web in Elixir and Phoenix would not lead me here. And I like it here. Have you tried Nerves? If not, why not? Have you had things in your programming life that has given outsized returns? What people do you owe a debt of gratitude? You can reach me on the Fediverse where I'm @lawik@fosstodon.org or by responding to this email to lars@underjord.io. Thanks for reading. I appreciate it. |