Wednesday, June 20, 2007

In the midst of chaos...

I think orderliness and organizedness is probably a little highly overrated. I have constantly been reminded about its importance right from a very young age. Our education system emphasizes it a lot, so do our parents, same with our offices. People who are a orderly are highly appreciated. But more importantly people who thrive in chaos are looked down. Perhaps it is time to start recognizing the C-Society of folks like the recently formed B-Society for late risers. I have been noticing in the last few years that it is probably not so bad to live in the midst of chaos.
I am not talking about chaos in all things that you do, i am talking specifically about disorderliness in things that are not really that important. Whether it is the wires, my personal belongings, all those miscellaneous downloads in your laptop, i think it actually makes sense to live in chaos. I see a couple of problems with being organized. First is the cost associated with orderliness. It is a lot of overhead to keep oneself organized. You need to constantly keep doing it. The moment you stop doing it, you are starting to create chaos. And what do you get by being organized? You probably save a couple of minutes in finding things, or answering folks, or in general, making progress. I think we should start appreciating chaos, and learn to cope with it. As long as the lack of order does not really affect you, it is perfectly ok to have it as is, and when it is causing trouble, all you need to do is just bring in enough order into the system to make it less painful.

Labels:

Thursday, June 14, 2007

some reflections...

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:

3 more years left to teach myself programming

Incidentally i remembered today that on this day in 2000 i joined my first company as a software professional. That leaves me 3 more years to myself how to program. Guess its time for some reflection.

Labels: