I finally got around to reading the classic High Output Management by Andy Grove, Intel's former CEO. When I saw it was available as an audiobook and after hearing about it from so many people within a short period of time (including in The Great CEO Within), I immediately jumped on the opportunity to read it.
I now understand why it's such a classic. This is the book that defined so many of the "best practices" that are taken for granted at top performing companies (OKRs, 1:1s, etc.). It was really helpful to hear the original/founding definitions of many important concepts like managerial leverage and task relevant maturity. I also learned a lot about how Grove recommended handling training (and why it's so important for managers to do), performance reviews, interviewing, running effective meetings. I also loved the idea of improving management like optimizing a factory.
Below are some of my notes and takeaways. I highly recommend this book to anyone leading a team or who wants to understand the reasoning behind so many of the management best practices in tech companies today.
The process of building the automated candy dispenser was a roller coaster and definitely an example of the Pareto principle, where 20% of the details took 80% of the time.
I learned a lot through the experience and hope to have made a lot of kids happy. On the technical side, I learned about Arduino boards, basic programming, libraries, shields, and their IoT Cloud and Web Editor. I also learned about some of the capabilities and limitations of Alexa Routines and Skills. On the non-technical side, I learned that it's important to know what you're good at and not to be afraid to ask for help for other things (the software, electronics, and programming took me a few hours, but all the mechanical/building/cutting/drilling was a lot more tricky and new for me so I needed to ask for help from family with all that); I also learned that duct tape can do a lot but not everything, and if something doesn't work with duct tape to try a better (ideally mechanical) method.
Below you can read about the engineering process I went through, some of the design decisions, review of prior art, and areas for future work that I identified.
In this post, i'll describe the user experience of the automated Halloween candy dispenser we built and some of the results. In the next post, I'll discuss the prior art of automated candy dispensers and our engineering process.
We built our dispenser as a response to COVID-19, trying to find a way to keep the spirit of Halloween alive but in a safe way. I wanted a way to be able to still give out some new, wrapped candy but have it be totally contact free. I also wanted a way to minimize crowds and gatherings.
Our solution was to build an automated dispensing mechanism that was basically a large pipe which was like a magazine/reservoir/hopper of candy that was aimed into a long chute. Between the pipe and the chute was a door which was opened and closed by a motor. The motor was connected to an Arduino, which is a microcontroller connected to the Internet and activated via an Alexa Routine that I programmed. It took about 2 months of work to build and program the entire thing, going through a couple iterations (most of the work was concentrated in the last 2 weeks before Halloween).
We told our close friends and neighbors about the candy dispenser and asked them to come try it out; this was done kind of "by appointment only" to limit the size of groups and keep things as safe as possible.
Through the course of the night, we ended up serving approximately 50 portions of candy. Everyone who visited seemed pretty happy; you can find read some of their quotes and see some of their reactions below. I've also included a video showing the full experience from the user's point of view.