Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

Sometimes, I see potential in a new technology eg. AIR (not new but I haven't tried it much), and I play around with it. After sometime, I feel inspired to try a new personal project out of it. It was during this project that I sometimes find another "tech" eg. Silverlight more suitable. Maybe its easier to get something done in that platform. But there are many alternatives to such things, and after a while, i feel that i have wasted my time just trying the "new toy", spending time learning it to get started etc. only to decide that I made the wrong decision.

How long do you take to explore new technology? Or do you stick to what you already know?

share|improve this question
1  
or you could have asked the other way round "Why do you think learning new technology is a USE of time ?" :-) –  Geek Oct 4 '10 at 12:57

8 Answers 8

up vote 7 down vote accepted

No. Mostly.

The real problem is that you can't know which technologies will pan out.

You need to at least dabble with new technologies so you can keep up with the industry. However, even if the tech you just tried out fails in the market place, chances are you learned something new. Perhaps you learned a new way of looking at an old problem, or a way of structuring an API - or how NOT to do something.

share|improve this answer
    
+1. for ""Perhaps you learned a new way of looking at an old problem."" To add to your point, it makes you stay sharp which is an important trait of a developer! –  Karthik Sreenivasan Jan 20 '12 at 7:20

Knowing a lot about available technologies and solutions can be very productive. I prefer an average developer that knows a lot of different things and alternatives and that will point out the best solution for a given problem, than a guru in one and only technology that will try to do everything in the same platform.

So if you have the opportunity in your job to do some research & development, go ahead.

share|improve this answer
1  
+1 for "than a guru in one and only technology that will try to do everything in the same platform". Those kinds of people can sometimes be counter-productive. –  Ryan Hayes Oct 4 '10 at 14:11
    
@killown: That's interesting. The guru will never get the whole picture, what do you think? –  user2567 Oct 4 '10 at 20:26
    
+1 Thanks for highlighting guru in one and only technology as it changes my perspective towards Single Platform Expertise. –  Karthik Sreenivasan Jan 20 '12 at 7:23

Spend a little time knowing whats out there, but spend most of your time becoming really good at a few technologies - and keep updated with those.

share|improve this answer
    
In depth knowledge in some platform will make you more effective in writing effect application as your experience would be your best teacher! –  Karthik Sreenivasan Jan 20 '12 at 7:27

"A wise man can see more from the bottom of a well than a fool from a mountain top" -- Unknown

While it may seem a waste of time to play a few hours/days/weeks with a new technology, you will learn something from it -- even if it's only to avoid it. But then, you'll know why.

Some other benefits are:

  • You can learn new ways to do old tricks
  • You can discover how cool some features of your old toys are. Like if you hate Java and then try something new -- and suddenly miss all those frameworks and libraries. Nothing is all bad.
  • It will widen your horizon
  • You'll get in contact with new people, a new way of thinking
share|improve this answer

Sometimes you can encounter technologies that change your thinking, that add another tool in your portfolio how you can think about problems. Learning those will be a win even if you don't use them, like functional programming.

share|improve this answer

You have to pick and chose when you decide to do this. Probably best to budget your time based on how busy you are working with the current stuff.

Get more out of your study by identifying a particular problem you are having or areas where you're current technology is not sufficient and then look for alternative solutions.

I would say any exposure to mobile development is a plus. Not sure if one or all of the current platforms will survive, but there are many aspects they have in common: limited resources, touch screen, connectivity, etc.

share|improve this answer

I'd like to start off my answer with an analogy: According to PhRMA, "Only one of every 10,000 potential medicines investigated by America's research-based pharmaceutical companies makes it through the research and development pipeline and is approved for patient use by the United States Food and Drug Administration. Winning approval, on average, takes 15 years of research and development and costs over $800 million dollars." Source: http://www.phrma.org/innovation

But these firms certainly aren't wasting their time and money on R&D. Consider this: A 2007 report by Northeastern University prepared for PhRMA concluded that "[In 2005] the 15 PhRMA member companies operating in Massachusetts are quite substantial, with worldwide annual net sales exceeding $277 billion, more than $95 billion in gross operating profit, $37.1 billion in expenditures on R&D activities,[...]." So they spent $37B on R&D but got back $95B in profit.

So, what are you getting back for your investment in time and energy researching new technology? Does it make you more productive, does it make you feel good, or does it help you earn more income?

Let me propose an experiment: Try to increase the amount of time you spend researching new tech. Does your productivity, happiness, or income increase as well? If so, then you're not investing enough time right now. Similarlarly, you can try to pull back and spend less time on R&D. Then what happens to your productivity, income and happiness?

share|improve this answer

I would suggest you to have an in depth knowledge in one platform to meet delivery needs and have a good understanding in the other platforms which you might encounter so that you can use the overall understand of the two approaches to solve any problem you may encounter effectively based on the situation.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.