a mARTIAN dIARY

Knowledge

Filed under: RaNTs@eARTH, TECHbabble, iSm'S — cafm @ 6:22 pm June 18, 2007

After around 1 year in the industry, I have started to look at concepts like knowledge, skill , ability etc differently. At some point in my engineering, I was deeply convinced that to be good at engineering, we need hardcore knowledge of the domain we are working in. Even though that belief is still valid in my mind, I have an entirely new view of how to get that knowledge.

One of the reasons that I did not take software engineering was(a very stupid reason I know), was that were too many languages to learn too many platforms to master that what you could do in a life time. This was very depressing for me. True to my human/Indian (?) core I was always searching for the "absolute". I thought I would find solace in the company of the absolute of the hardware industry. Little did I know, here you dependent on the tool and its company as anywhere.

At that times even though there were no absolutes for me in the computer field, I has absolutes for me in other facets of life, like, I had a absolute picture of GOD as the all powerful and also of Hinduism as the true religion. During the past years those things have taken radical hits and are now afloat in totally different avatars. In a way I have understood the futility of the search for absolute knowledge……from what I know now…the closest thing to absolute knowledge is a very relative and constantly changing thing. Its the ability to search for and filter out relevant knowledge.
Its important to more the "filter" key word especially in today’s world, as any Tom, Dick & Harry can post anything on the internet and the common source of information on the net, the Wikipedia, which even though I respect a lot, can be easily manipulated. In this context this link on how to leant to be skeptical about information on the net is very useful
Evaluating Web Pages
So you could say what is important is not knowledge as such, but the ability to find relevant information and the ability to filter it out to knowledge.
The simplest example I can think of with respect to the IT industry is this. The work I do requires me to use multiple scripting languages. I don’t remember the syntax and semantics of most these languages. But what I know is, at an abstract level, the capabilities of each. What this helps me to do is, when I get a problem, at a abstract level I know enough to select the right language for the problem. In case I am in doubt, I split the task into micro tasks, and try to match these tasks with the capabilities of the language starting from the simplest and least capable language. And move on till I get a 100% match. Then I start scourging the net to find sample code that does these micro tasks or get it from previous code I did. Then my work is reduced to just piecing the codes together, which is hard but nonetheless much simpler than if I had to write the code from scratch.  This might give me a handicap, say ,  if I had to attend a test on any particular language but as far as my work is concerned, its goes at a good speed and I also feel my turnaround time at new languages are also reduced.
So to put it in simple words
“Knowledge is not knowing everything, but in knowing how to find the relevant information at the relevant time”
 



Disclaimer
The thoughts expressed in this blog are mine and should in no manner be linked to the organization(s) with which I am (or have been) associated.