Quoting Felix Rabe <xitnalta@...128...>:
What is needed / do you use aside from cvs, g++ and a text editor?
Those are the essentials. Mostly I don't go beyond them, unless you count the normal unix tools -- I get a lot of mileage out of find(1) and xargs(1) actually.
(And what text editor.... "I use editor foo (because ...)".)
vim, or not infrequently classic vi -- it's what I'm used to.
It does have a certain power: when I'm not entering new code, I spend most of my time doing regexp-based search-and-replace on regexp-specified line ranges and things.
Do you use Valgrind, any test suites, gdb / ddd ... ? Where do I start to learn how to use them?
I use valgrind on occasion; it's a valuable tool. You'll need to disable the garbage collector for it to work on Inkscape at present though.
I use gdb more frequently, mostly just to get a backtrace to find the location of a crash.
I've tried ddd, but never really got used to using it.
Also, do you recommend some literature / books, as I did not (and most probably will not) study computer science? (I have a "Design Patterns", Gamma et al, here.) I have a small budget for good material.
I'm a relentless autodidact, but I tend to use books for reference rather than learning. Mostly I learn by reading development mailing lists (or summaries thereof) and watching other people at work (and heavily googling CS concepts whenever they are mentioned). How well that approach works is going to vary from person to person.
I also wonder about more exotic things - do you print out code you wrote for review (my printer doesn't work atm),
I didn't used to do that, but I tried it recently for a project at work and it is rather helpful when thinking things through. It seems to require at least tabloid-size (roughly A3) sheets to work well.
The big advantage is being able to tape up all the code in front of you so you can see what's going on at a glance, and being able to scribble notes on there can free your mind for other purposes.
Once I get a printer, I may try it for Inkscape, but I'd probably reserve it for times when I'm really stuck. It tends to use a lot of paper.
do sports
Tae Kwon Do. Rather sporadically, I'm afraid. But when I manage to keep up with it, it is a major boost for my productivity and general well-being. Highly recommended if you can find a good master.
drink coffee (I'm not going to do that, just wondering)
Occasionally if I'm forced to go short on sleep. I wouldn't recommend it; it tends to screw up your normal ability to sleep and wake normally.
gather regularly on Jabber
It's probably the best way to stay in touch, get non-trivial questions answered quickly (if the right people are there), and negotiate things.
BUT if you hang out on any IM network while working, you will have to commit to ignore it for periods of time. Coding works best in minimum 45-minute chunks, and it can take at least 20 minutes to get completely re-oriented after an interruption.
I find this tends to be true of art as well.
-mental