Herb Was My First Real Hardware Project
April 10, 2026 (1w ago)
Herb came out of uOttaHack 7, and it is still one of the most memorable projects I have worked on.
Part of that is because the event itself had a great energy, but the bigger reason is that Herb was my first real exposure to hardware. Until then, most of my world had been software. I was used to thinking in terms of code, APIs, frontend behavior, backend logic, and data flow. Herb forced me to think much more physically.
For the first time, I was not just writing code and seeing output on a screen. I was interacting with actual components, real constraints, and the messy layer where software meets hardware.
Why it felt different
One of the most exciting parts of the project was realizing how different the feedback loop is when hardware is involved.
In normal application development, if something breaks, you usually have a pretty clean place to look. You can inspect state, read logs, trace requests, or debug the UI. With Herb, the failure modes felt much more grounded and much less forgiving. If something did not behave the way I expected, the problem could be in the code, the operating system layer, the GPIO interactions, the wiring, or the hardware assumptions themselves.
That made the project both frustrating and incredibly fun.
Learning how low-level systems actually behave
A big part of my time on Herb was spent understanding low-level behavior. I had to learn how the operating system interfaces with hardware, what happens when GPIO interactions do not behave the way you expect, and how small misunderstandings in one layer can create confusing bugs in another.
That process gave me a much stronger appreciation for systems programming.
Before Herb, I understood systems concepts mostly through coursework and software-only projects. After Herb, those ideas felt much more real. I could see how the abstractions stack on top of each other, and I could also see how quickly things become difficult when one layer is not doing exactly what you think it is doing.
What I enjoyed most
What I liked most about Herb was how complete the engineering experience felt.
It was not just a coding exercise. It made me think about constraints, interfaces, behavior under imperfect conditions, and how software decisions affect a real physical system. That was a very different kind of satisfaction from building a web app, and it made me realize how much I enjoy work that sits closer to systems and infrastructure.
It also made me more curious. Once you have had that first experience of getting software to control something real, it is hard not to want more of it.
What Herb taught me
The biggest thing Herb taught me is that engineering feels different when the system becomes tangible.
It made me slower in a good way. More careful. More aware of assumptions. It also made me appreciate how deeply connected software, operating systems, and hardware really are. I walked away from that project with a much stronger interest in systems work and a much better intuition for real-world constraints.
More than anything, Herb reminded me that some of the best learning happens when you step slightly outside the kind of work you already feel comfortable with.