Oops!!! Difficult question to answer, and also fairly complicated topic to address. Especially in this century where the technical world moving (migrating) from Technology to Technology at a very good pace. ‘Which way to go?’ – is the most common question (precisely DOUBT?) which creeps into a developer’s conscience from time to time. For a newbie (a person who starts coding with delighted dreams to achieve something pretty quickly in short span of time, and immediately stumbles with bunch of compile errors…just kidding), this topic is a bottleneck which leaves him with many new questions – ‘What am I doing?’, ‘Where am I going’, blah, blah…and blah. I will try to address this most commonly raised flag (or skeptical thought) in a generic human way.
Lets forget for next 5 minutes that we are developers….For time being lets sit in driving seat of a vehicle. So most of us got started our good old days with a simple Bi-Cycle. That’s cool, we enjoyed it. Then comes motorcycles in our life (interesting to drive). Days passed, we landed up with a car. For most of us our first car is a manual transmission one, We need more concentration to be more careful with these cars. then we landed up with Automatic transmission, fantastic – we love to drive them. And our quest continues with more advanced Electronic cars which are driving us to the next generation. Okay wait, at this point you can ask me – "’We know this stuff, Why are you writing an essay on driving a car? you are just boring us!!!’. Immediately my interpretation follows…
We advanced in technology from bi-cycle to electronic car, but all the way we carried four of our most important day to day practices. One is our ‘CONCENTRATION’ in driving a car, second is our ‘OBSERVATION’ to traffic while we are driving, third one would be ‘DRIVING’ i.e., how to drive and last but not least is ‘INTEREST’ in driving. These things never changed. They might have fluctuated in our routines based on surroundings, type of car etc., but we never left them.
Now lets get back to our Technical profession – Developer. We might have started our coding world with C Programming, then stepped into C++ and learned about OOP concepts. Finally we landed into our Web World, say with ASP.Net Technology. Now things started moving pretty fast, we are getting lots of options from Microsoft in terms of Frameworks. In Frameworks too, we are having a very quick progress over years through their versions. This is the point where we are getting confused.
So lets put all things together and analyze, in driving, we never forget out concentration, observation, driving skills and interest. The same applies to our technical world too. We should have proper concentration on the Frameworks we use and on their versions. We must have consistent observation on the other technologies related to our part of technology. We got to stand ourselves on our coding skills. Finally we should have interest in what we intended to learn. This brings the question of ‘How does this approach tells me what technologies to choose?’. Good question, but if we keenly observer above analysis we can get to a consolidated decisions. But let me explain, by taking myself as an example.
My initial steps in coding started with plain old C Language. Then I entered into C++ OOP concepts. Finally I ended up in ASP.Net 2.0 web applications development. Then came my confusion, when Microsoft started coming up with different frameworks for different requirements, say WCF, WPF, Silverlight, EntityFramework etc. I started thinking, ‘Which way to Go?’ – is my biggest question.
I started thinking….I took lot of advises and suggestions, but none worked for me because of ‘INTEREST’ aspect. Then I planned my technologies for myself. First I sorted out my field of interest – ‘WEB’. then I checked the technologies which are associated to ASP.Net, I got a list – WCF, EntityFramework, JQuery, ASP.Net MVC, LINQ. Then I started looking into those technologies and dwelling deep into them. Finally I am able to a peculiar skill set in those technologies. Perfect, but what about the remaining technologies like WPF, Silverlight etc. I am not against to them, but simply they don’t interest me i.e., client applications don’t interest me at that particular time. Even though after no particular strong perspective on these technologies, I got couple of opportunities to work with them, which made me to learn new aspects of technical coding. Presently I enjoy the clientside technologies, but still my main area of concentration is in Web which is my base field of interest.
To consolidate the core concepts of being a ‘DRIVER’, with a ‘TECHNOLOGIST’ – one should always stay on the base of his INTERESTED field with good amount of OBSERVATION on related technologies and kept utmost CONCENTRATION in learning/applying them. Finally DRIVE them along with their new versions. That’s how I relate them.
I can still write a lot, about this approach, but I want to wrap up the discussion here itself. I strongly believe the continuation of this post is your ‘BELIEF’ in your TECHNOLOGY…..
IMPORTANT –
All views expressed in this post are confined to me. It is neither mentioned nor concluded that they are best practices.







good ,very good .it show me the way i will stick to it.