oooh thats my code never works
i forgot to time travel to spend 90% of my time doing the last 10% of code. i get it now
oh, no, it's far worse than that. the last 90% is enough time to make what you thought was the first 90% become 10%.
so 0.9*expected time = 0.1* actual time
which, if you can do some very basic algebra, results in 900%. this implies that every project will seem "almost done" for about 9x the length of time you thought the project would take. in my experience, this is roughly correct
I mean, it makes sense, 90% of the code is probably relatively easy while the 10% is intricate
Embedded dev: basic OS functions not so bad.
Task switcher and interrupt code, short but painfully difficult to write correctly.