Your favorite platform which is also your bread, butter and your passion has just come out with a beta release. You are tied up with an important project. There is a part of you that wants to play with the beta bits during the weekend.
Having said that however, the idea of catching up with friends and heading out to the new movie looks appealing.
In a casual conversation with yourself, you talk the voice that is softly whispering, asking you to take a look at the new beta pieces aside. "Monday. I'll look at it Monday morning." - you casually brush your inner voice aside.
Life moves on.
On a bright afternoon a post in your RSS reader tells you that the beta pieces have now gone to production and a released version is finally out. But then, you are currently tied up with some important work pertaining to your project so you promise yourself you will take a look at it tomorrow.
Weeks pass by and you have still not had a chance to try out the beta pieces, see the framework evolve or even try out the production pieces.
Now when you sit down to play around with an evolved version of the framework chances are that you are going to feel overwhelmed. You are going to feel like whining about to too many technologies getting released too quickly. You have taken your first step towards doing funny things like filing a petition for keeping the unmanaged version of visual basic six alive.
If there is anything years of software development and weeks of exercising has taught me, it is that both exercising and software development are fairly similar in more than one aspects.
If there is one thing anyone who is in fitness will tell you, it is that mobility is hugely important. The most difficult thing with exercising is to get a person started. To get him moving. Most fitness plan for example started with simple games squash, activities like dancing or activities like running and once the momentum sets in, rest of it becomes fairly easy. You actually start liking it.
Software development in general and picking up new technologies and languages in particular to a large extent is similar. The most difficult task is usually to get someone to download a new version of visual studio and try out that new release of WCF data services. The rest of it is fairly easy and once you have started you actually start liking the process.
Books like spark will also tell you that there are striking similarities between how your mussels and neurons work. You make your mussels stronger by using them, tearing them down through your exercise and then giving them time to heal. Every time you do this, your mussels emerge stronger. Your mind, as strange as it might seem, follows a similar path to develop strength, power and endurance.
Every now and then I see folks whining about Microsoft having more than one programming language. The whole VB.NET and C# wars are fairly common too. The thing with languages however, is that after you have worked in three or four of them, picking up a new language and coding in it doesn't remain all that difficult.
The more you work your brain with languages, the quicker it picks them up.
It is perfectly okay to not know every new technology in your platform. It is perfectly fine to stick to one language, but then, the more languages you play around with, the easier it becomes for you to pick up newer languages. After all, flow and the pleasure of learning is much more fun than whining about how rapidly technologies are changing.
Go ahead. Break the mobility barrier. Download a new language or a beta release of something you have been meaning to try out for months and actually spend some time with it today.
I wish you good luck.