I remember learning Pascal at university in the 80s. For our projects we had to submit a program (as a printed listing naturally) together with the pseudo-code we used when we designed it.
I wrote my program as I always did, got it working and then wrote a script that turned the source code into pseudo-code and used that. Got full marks.
Currently I work as a C programmer (with a smattering of other languages but nothing so modern as python) on a very large codebase (10s of millions of lines of code) with very little external documentation. The thing that helps me most day to day is well-commented code and coding standards. When I joined the team I work in now I had no knowledge of the source at all. I asked for documentation and was given something a decade and a half out of date. However I did have mentors who knew the code. But I asked an "overview" sort of question I often found that they would do the same as me - go looking in the code itself.
Funnily enough I've been looking for a project to teach myself C++/QT for a while. I got so far but I needed something to build rather than examples from tutorials. However I think Sigil would be jumping in at the very deep end. The technical stuff I'm sure I could master it's the commitment needed (sometimes I want to do non-programming things) and the already-mentioned demanding users.
Anyway the way this thread is going you'll have it folded into Calibre before I've got past "Hello World" stage.