4 ms·
It's often best not to think too much about "aesthetic", or performance, at first, and to focus instead on getting something that works. FWIW, The Mythical Man-
by mbivert 3y ago
It's often best not to think too much about "aesthetic", or performance, at first, and to focus instead on getting something that works. FWIW, The Mythical Man-Month[0] recommends to start with a few throw-away prototypes, during which you're gaining expertise over the problem, that you can later crystallize in more definite versions.
Now, it doesn't mean good practices should be discarded altogether either. One of the most generic advice is to be systematic/coherent: if you use one convention in some place, use it everywhere. Then, reading good codebases (e.g. OpenBSD[1], Plan9[2]) is a great way to learn about organizing code, existing conventions, idiomatic techniques, etc.
Finally, regarding tools, you may want to check periodically what Valgrind[3] has to say on your code. Eventually use a Makefile or an elementary shell script to automate the build: both should be sufficient at least for the first "draft".
[0]: https://en.wikipedia.org/wiki/The_Mythical_Man-Month#The_pilot_system https://en.wikipedia.org/wiki/The_Mythical_Man-Month#The_pil...
[1]: https://cvsweb.openbsd.org/cgi-bin/cvsweb/src/ https://cvsweb.openbsd.org/cgi-bin/cvsweb/src/
[2]: https://9p.io/sources/plan9/sys/src/ https://9p.io/sources/plan9/sys/src/
[3]: https://valgrind.org/ https://valgrind.org/