Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I think most code doesn't really stand on its own very well. In order to understand it, you need to know a number of other things that might not be obvious (especially if the code in question has bugs, or has been rewritten a number of times and has some historical relics from earlier designs that are no longer relevant):

What is this code supposed to do?

What is the general execution model?

What are the rules the implementation must follow in order to maintain correctness?

The way code is written, it starts first as a collection of ideas, and then it takes concrete form as code. Reconstructing the ideas from the code may be possible, but sometimes it requires some extra help.

Some things are best explained in English (or some other preferred native language) as ordinary written text. Some things are best explained as state transition diagrams. And some things can be expressed most clearly and concisely as code.



Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: