after posting the previous entry, i re-read norvig's article on
learning programming. This is how i think i fare on his advice:
>Get interested in programming, and do some because it is fun. Make sure that it keeps being enough fun so that you will be willing to put in ten years.
Yes, I am very much interested. And i guess i sure can put in another 10 years.
> Talk to other programmers; read other programs. This is more important than any book or training course.
Yes, i do this regularly. Probably
even more than is necessary.
> Program. The best kind of learning is learning by doing.
Yes, i still love doing this. But i don't do enough of this. Probably because of the previous point.
> If you want, put in four years at a college (or more at a graduate school).
Sadly, i didn't do this. I did my bachelor's in Electrical and Electronics engineering. And I miss this sometimes.
> Work on projects with other programmers.
Don't do much of this outside my work. This is certainly something i hope to work on in the next few months/years. I should probably start reading less, stop getting distracted by the next thing that comes across my way and concentrate on sticking on to finishing some of my projects.
> Work on projects
after other programmers.
It is nice that i get to do this regularly at
work. And i also get a chance to work on projects after other
smart programmers left the project. It gives some nice insights into some rarely mentioned aspects of programming. That is topic for another post.
> Learn at least a half dozen programming languages.
Languages that i definitely can claim that i know well: Java, C, Ruby, Javascript
Language that i am currently picking up: Erlang
Languages that i briefly tried: Prolog, Scheme
Verdict: Too bad, guess i need to work on this.
> Remember that there is a "computer" in "computer science". Know how long it takes your computer to execute an instruction, fetch a word from memory (with and without a cache miss), read consecutive words from disk, and seek to a new location on disk.
Total zero on this. But i am not sure if i want to spend some time on this in the near future. And i haven't really had a need for knowing this yet. This can probably wait.
> Get involved in a language standardization effort. It could be the ANSI C++ committee, or it could be deciding if your local coding style will have 2 or 4 space indentation levels. Either way, you learn about what other people like in a language, how deeply they feel so, and perhaps even a little about why they feel so.
Am not sure about this either. If he is referring to learning what people feel about different coding styles, probably i am doing it.
> Have the good sense to get off the language standardization effort as quickly as possible.
Don't need it if i don't even participate.
Overall my scorecard reads bad. But hey, i still have
3 years to learn programming.
Labels: tech