Skip navigation

I started out writing this one as a response to some of the comments to my previous post. I guess I had too many thoughts and this warranted a separate post in itself. First and foremost, I wish to state that I value and respect everyone’s opinion, for the matter that was discussed was very very subjective. However, as always, I will blurt out what I think in this blog.

I am not against people who learn new languages, and yes, I would never say that Java is just enough (though I love it immensely). But people mostly learn a language, use it a bit and then move on. For me it’s like leaving the climb 200m from the summit of Mt. Everest, just because someone seemed to mention a new and difficult mountain to climb. For me, I will climb the new mountain, but let me get to the top of this one first, is my attitude. Many people try to look for new and better ways of doing things when learning a new programming language, but they haven’t charted all the territory of the language that they know currently. It is this attitude that needs to be taken care of, in my personal opinion.

As a computer engineer, when my father asks me something about computers (esp. hardware) that I don’t know, I feel ashamed somewhere. Sure, I specialize in software, but still I should have known everything about this field, is what I feel. At Sun, everyday offers me something new to learn about Java, something trivial which I should have known (which does my self respect no good, but keeps me honest), something not so trivial. What I gather in such experiences is invaluable if and when I move to a different platform. Don’t we all master the art of quickly learning a new language, once we have learnt a couple of them? I think I am trying to learn an effective way of mastering a language/platform, and I do believe, having patience and a mind that constantly seeks out the unknown seems to be essential elements to achieve it.

I would also like to state that learning a language in and out does not guarantee success. Many people know the language, the working of the platform, but are a bit short of knowing about computer science fundamentals. For eg. I have never used a B-Tree at work, but I know what it is, and there might come a time, perhaps 20 years down the line, when my knowledge of a B-Tree and how it works, will lead me to write a significantly better program, and more importantly, make me feel good about myself. One must pay due respect to the science and not just the current state of practice.


One Comment

  1. Rohan
    I can understand and relate to your point perfectly. I have felt exactly the same many times in my career. But at the end of the day I would still believe in the horses for courses paradigm. If what you say is correct then every professional athlete should contest in long jump, 100mtrs,400mtsrs relay marathon, decathon and so on. It does’nt work that way. Every one discovers their love – some people find that in sticking to a technology some people find it interesting to dive deep(who decides how deep is deep enough?) into different technologies. Having said that within their limits they should have some amount of flexibility in looking at the world outside their well. If I am working in Java UI design why should I delve deep into knowing how the VM works. Sure I know a bit about the JVM design and how things are achitectured but beyond that why should ever know more about it?Who decides where I should stop? Of course if I say the same thing about not reading or knowing about what’s in designing a great web site using a scripting language or an application using Flash then I am loosing out- but that is true in the long run which is why its difficult to quantify at times. But then again if you have an idea that you may not use B-Tree for the next 20 yrs why spend time on it now? Its a difficult balance and at the end of the day every one haa to make a trade off based on what they want to achieve and and what seems to work for them. 20% time of Google employees is spent delving into their creative side but at the end of every day if they consistently come up with something which does not add value to their current work do you think they can afford to spend that time. For every one successful project/idea that has its team focused to dive deep, think beyond your daily task, there are many more that we dont hear about because their balance was tilted less towards profitability. Extrapolate that backwards to a single individual and you will find that too many spices spoil the meal. So even as I myself do not feel comfortable that my comment seems to deviate more towards "I dont agree with what you say" I think there is more scope of improvement when you let each person decide whats best for himself rather than set it in stone that "dont just think beyond your daily task but ‘use it’ " is always the way to improve. Thats is a prescription for chaos as much as not doing it at all.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s

%d bloggers like this: