I loved this book as a kid, and I built this robot as a kid for a science fair. And, despite having built a lot of balsa wood R/C airplanes, it was challenging.
It kick started an interest in robotics for me though. I now work for my second robotics startup company!
I was able to update to the latest tag of emqtt on GH (1.14.4), which was not previously possible. I don't believe there are any blockers now to a package on hex.pm, so hopefully this is made available soon.
Ah, yes - we are pulling from the tag on GH. However, I believe the hard dependency on the older version of gun was fixed recently. IIRC, that was what prevented a proper package at the latest version from being on hex.
We use it in our robotics startup, and I wholeheartedly agree.
As an example, we just rolled out a feature in our cloud offering that allows a user to remotely call a robot to a specified waypoint inside a facility, and show real time updates of the robot's position on its map of the world as it navigates there. We did this with just MQTT, LiveView, Phoenix PubSub, and a very small amount of JS for map controls. The cloud portion of this feature was basically built in 2-3 weeks by one person (minus some pre-existing code for handle displaying raw map PNGs from S3, existing MQTT ingress handling, etc.).
Of course you _can_ do things like this with other languages. However, the core language features are just so good that, for our use cases, it blows the other choices out of the water.
Which version of emqtt are you referring to? We are successfully using 1.11.0 (with AWS IoT Core), which I believe is the "blessed" version for elixir.
Aside from the flow technique mentioned below, I think it is pretty common.
If I'm acting as the non-flying pilot, my job is to talk to ATC, set radios, load flight plans and instrument approaches, etc. As an example (slight variation), if ATC gives us a flight level change, I would dial in the final altitude on the altitude pre-select. Typically, I'd repeat the clearance back to ATC, put my hand on the dial, change it and leave my hand on it until the flying pilot says "I see FL230".
I sometimes use the point technique before changing something, or after while repeating "I see ..." or "I did ...". It's really effective at making sure you don't do things mindlessly.
It kick started an interest in robotics for me though. I now work for my second robotics startup company!