As a programmer I must always stay on the top of technology. If I get complacent and don't learn new things, I will quickly fall behind. The fact that I take this as a fun challenge rather than a terrifying stressor is testament to my being in the right field.
But how does one find out what the next big technology to learn is? Well you don't really know for sure until it's 'too late' in a sense. By the time you 'know' for sure, it is probably a very established technology and a newer and better one is on the horizon.
Here is my philosophy on using technologies:
- Use the best and most proven technology for a serious long-term project, even if it isn't new.
- Use a technology that is gaining traction for any medium term projects
- Use a brand new sexy but unproven technology for short or personal projects
And my technique for finding out about new technologies is this: See what others are using. This requires knowing and communicating with others in your field. This is both fun and very important. Chat in the forums, post to Reddit and Hacker News. Talk tech with your coworkers. Doing so will keep you up to date.