Why every company wants to use new technologies without knowing the pros and cons of that? I really get surprised when higher management asks to implement new technology but no one asks to do POC.
Lots of great answers have already been written. But it's a great opportunity to share again one of my favorite talks: «Be Awesome By Being Boring».
TL;DR: use a new technology only if it solves a problem a proven tech didn't solve it, or if it bring a really significant better way to solve it.
The blog post: Be Awesome By Being Boring on New Relic blog,
And the Cascadia Ruby talk (but this isn't specific to Ruby at all!) Cascadia Ruby 2014- Be Awesome By Being Boring youtube.com/watch
The choice of technology you use shouldn't be taken lightly - if you choose wrong it can complicate, or even make success impossible.
I think it's a good idea to err on the side of using stable, proven solutions that enjoy a large amount of help documentation, and have a high amount of skilled workers able to offer 3rd party support.
If there's a new technology in your domain and you're curious about using it - before you adopt it, ask yourself:
Sometimes new technology is driven by solving real problems, and you'll be able to check off those items, adopt it, and benefit from time-saving, or complexity-saving advances in your field. Other times things are 'new' but not 'novel', there's no value in something just being more freshly made if it's not better.
Oh no they don’t. It’s pretty clear you haven’t worked for a tech giant before.
Most big (and I mean big) companies move very hard even between OS versions. I know of companies that still use Windows XP, because one of their most importart softwares can’t run on newer versions. And we have 5(!) new Windows versions since then.
Most big companies stick to very old Python versions, for example. At my previous company I was stuck to Python 2.6 for a while, and it was a delight when I could move to 2.7, even if the latest stable version was 3.4 at the time. And my project wasn’t even close to production-grade, it was just a minor development tool used by only a select few developers.
Now let’s move to startups. Many people I know who started such a business was relieved to be free from Big Company Sicksess (I made that expression up, I think it’s a thing). So obviously, they looked around on the Interwebz, looked at the first project that had “Web Framework” in its name, and started using it. I know startups that used exactly this technique to choose a programming language (Ruby and Go, to mention two of the, even though Ruby is mature enough nowadays). Another chose Ruby just because they found Ruby on Rails is a nice thing; the CEO had really hard times finding Ruby developers, let alone ones who know Rails.
Now don’t get me wrong. Getting to know new languages and frameworks is a good thing. Even big companies do that all the time. Most big ones have whole teams solely for this purpose. When given technology is mature enough according to these teams, the company slowly starts to adapt it.
So no. Most companies don’t jump into new technologies blindly. It is risky.
I think, certainly, some companies want to jump on the bandwagon. This isn't surprising when a lot of developers also want to the jump on the newest, latest, greatest thing.
That being said, at the rate the internet and programming evolve in general, it's probably better to be too "jumpy" than too "stagnant".
Mike Chilson
Full Stack Developer
To make this decision, ask yourself three questions.
If you find yourself answering NO to any of these you are probably better off not risking your company's livelihood on that technology. After 35 years of playing this game (development, start-ups, consulting) I can tell you those that took that kind of risk have ended up loosing much more than winning.
Good luck!