Michael Lynch goes over building a hardware device to remote control your server. It's been available since mid 2020.

In this episode of Running in Production, Michael Lynch goes over building a
hardware device that lets you remote control your server without installing
any software. It’s been available since mid-2020.

Michael talks about how it works, using Ansible to provision a Raspberry Pi,
Using Flask with SocketIO, rendering 30 frames per second at 1080p with under
200ms latency, using web components, selling his devices on Shopify, hiring
quality freelance developers and more.

Topics Include

7:13 – The process to build a custom piece of hardware
12:33 – 3D printing a custom case
15:16 – The assembly process and selling about 150-200ish devices a month
16:20 – Ansible and a Bash script ensure everything gets installed on the device
20:16 – Everything including the OS can run on about 1.5GB of memory
22:01 – Motivation for using Flask and Python
25:29 – Using Python’s built in testing library and a few useful 3rd party packages
26:47 – Web components are being used quite heavily
31:44 – Getting started with web components
34:34 – Rendering everything at 30 frames per second at 1080p with SocketIO
38:34 – The differences between the regular and pro version
40:57 – There’s no bundling for JS and CSS
43:11 – Docker was considered but wasn’t included in the end
46:44 – Purchasing the pro version and ancillary services around the hardware
50:52 – Shopify is used as a store front and they make about 20-30k a month
54:26 – The deploy process and reviewing code from their freelance devs
1:00:09 – Hiring quality developers by making it a great place to work for
1:02:05 – Getting new versions of the code on user’s devices
1:07:35 – Is it possible to brick your own device? It hasn’t happened yet
1:11:40 – Best tips? Incrementally build and release your product as you go
1:16:26 – How Michael hired a few initial freelance developers
1:21:41 – Check out TinyPilotKVM, Michael has a blog and is on Twitter too

Links

📄 References

https://en.wikipedia.org/wiki/Raspberry_Pi
https://en.wikipedia.org/wiki/Intelligent_Platform_Management_Interface
https://css-tricks.com/an-introduction-to-web-components/
https://www.talkyard.io/use-cases
https://runninginproduction.com/podcast/39-place-card-me-lets-you-create-printable-place-cards-online

⚙️ Tech Stack











































































































































































flask →

















































































































































































































































































































































































python →





































































































































































































































































































































































































































































































































ansible →

























































































































































































































































































































































































































































































































bash →























































































































































































































































































































































































































































































































circle-ci →

































































































































































































































































































































































































































































































































































































































































































































nginx →

















































































































































































































































































open-source →





































































































































































































































































































































🛠 Libraries Used

https://github.com/miguelgrinberg/Flask-SocketIO
https://github.com/wtforms/wtforms

Support the Show

This episode does not have a sponsor and this podcast is a labor of love. If
you want to support the show, the best way to do it is to purchase one of my
courses or suggest one to a friend.


Dive into Docker is a video course that takes you from not knowing what Docker is
to being able to confidently use Docker and Docker Compose for your own apps.
Long gone are the days of "but it works on my machine!". A bunch of follow
along labs are included.


Build a SAAS App with Flask is a video course where we build a real
world SAAS app that accepts payments, has a custom admin, includes high test
coverage and goes over how to implement and apply 50+ common web app features.
There's over 20+ hours of video.

Twitter Mentions