Thursday, September 24, 2009
I've been finding it harder and harder to motivate myself of late and the reason, well, one reason anyway, is that I'm working on an upgrade to someone else's design and the original is such complete and utter garbage that every time I have to refer to it I want to throw the whole project in the bin and walk away.
It has a large software component - far larger than it needs to be - which appears to have been written by a beginner as their first ever software project. Unfortunately he wasn't a beginner and it wasn't his first project. Be that as it may, this piece of crap is, without doubt, the worst piece of programming I've seen in over thirty years. It is shockingly poor, a combination of just about every bad practice known to programming merged together in an orgy of sustained idiocy. None of it, and I mean none of it, shows any sign of competence whatsoever... Programmers will get an idea of what I mean when I say that the C source, all in one file, is about seven and a half thousand lines long, and that six and a half thousand lines of it is all in the main() routine. It's not that it needs to be, it's just that the author doesn't appear to grasp the idea of abstracting out common code into subroutines (whatever they're called these days)... Oh, he does know about them - he even has a couple. I'd tell you what they do, but then you'd have to kill yourselves in despair...
Oh, to hell with it. I'm depressed :(
Later: And as much as I hate it, I'm sure the bastard thing hates me even more. Wasted a lot of hours tonight trying (and failing) to figure out why I couldn't readback some ADC values, which it now appears is some sort of obscure board fault and not a problem in my FPGA design... That's the story of this project, I take one step forward and then several steps backwards with every session. Not one single fucking part of it has worked without a struggle. Every deadline has come and gone while I struggle with some obscure piece of stupidity and I'm heartily sick of it now.