Embrace Boring Technology

When you get the opportunity to choose the language or database for a new project it can be tempting to go with something new and exciting. You've just finished a really fun tutorial about it. Everybody online is talking about how cool it is. And you don't want your project to use some boring old technology, right?

Wrong.

Boring is awesome.

Boring means it works as expected. Boring means a lot of the obvious problems have been solved already. Boring means people have already written a wealth of blogs and libraries around this technology so all that's left for you to do is build what you wanted to build in the first place. And odds are, by the time a technology is boring lots of other people will have used it to, so it'll be that much easier to get other people up to speed on your project. Boring technologies let you focus on what's interesting about what you're building.

There are, of course, reasons to try new and uncommon technologies. There are datastores that might be really well suited for your usage patterns. You might have deep expertise in a certain uncommon language or framework. But use your weirdness budget wisely. And default to boring.