Since graduating from university I’ve gotten more and more into embedded software development. This has even spilled over into designing PCBs (printed circuit boards) for my embedded devices to sit on.
Initially I had assumed that the leap from software to hardware design would be insurmountable without any formal education but it turned out to be quite enjoyable. It turned out that the problem I’d be facing wasn’t a technical one, but of an organisational nature.
Designing circuits turned out to be a lot like software development. Or at least I managed to force it to become similar to how I develop software.
Modular parts or blocks, which I could share between circuits needing similar functionality sounds a lot like DRY. Avoiding complexity by only including the absolute bare minimum that I could get away with sure sounds like KISS. And so I charged forwards into the world of power electronics, sensors and Bluetooth communication, armed to the teeth with sort-of applicable design principles.
I ordered PCBs, parts and went to town with soldering paste, stencils and a soldering iron to realise my new creations. And that is where the problems began.