Be Fearless

Imagine you're a travelling salesman in the late 19th century. Every few days, you pack your horse and carriage with as much merchandise you can carry and ride to a new town. It's an exhausting job, but you're making a living and even saving some money.

Then one day you hear about this invention called "truck". It's twice as fast as the horse, and you can carry a lot more merchandise in it - not to mention it's more comfortable. However, it's expensive. You'd need to blow most of your savings to buy one. You're a little worried that it's based on a contraption called an explosion engine. And not a single one of your friends has one.

You agonize over the decision, but ultimately decide to play it safe, saving money and sticking with your reliable, non-explosive horse.

Some time later, you notice it's harder and harder to sell things. It seems like every town you go to has no need for your merchandise: they already have everything. It turns out another salesman has taken over the business. He is in town more often, with fresher goods and taking custom orders. Oh, yes - he drives a truck.

Imagine it's the early 21st century. You write software for a living. A new technology comes out, and you can tell right away that it could solve many of the problems you face in your day-to-day work. But it could also be just be a fad - a HackerNews one-hit-wonder, just one more blip in the "tech fatigue" radar. It's got too few GitHub stars. You'd need to rewrite a bunch of stuff to reap the benefits. None of your friends (or any reputable company, for that matter) uses it.

What do you do?

Yes, being in the software business means building reliable, extensible, maintainable products - yada yada yada. But it should also mean trusting your instincts, being fearless, taking the risk. If you don't understand that, someone else will - and you'll always be lagging behind.