Believe the terrain, not the map
As we said in the preface to the first edition, C "wears well as one's experience with it grows." With a decade more experience, we still feel that way.
The most effective debugging tool is still careful thought, coupled with judiciously placed print statements.
If you're as clever as you can be when you write it, how will you ever debug it?
Each new user of a new system uncovers a new class of bugs.
Do what you think is interesting, do something that you think is fun and worthwhile, because otherwise you won't do it well anyway.