5 ms·
While I see how this makes sense, I don't like this. If most people follow this strategy, we will end up with utter stagnation, or even devolution. "Boring" te
by Pannoniae 3y ago
While I see how this makes sense, I don't like this. If most people follow this strategy, we will end up with utter stagnation, or even devolution.
"Boring" technology also has many hidden costs - most importantly, opportunity costs of not having several times higher productivity due to the warts and quirks of the boring tools. Sure, with enough practice one can work around them but every backwards issue takes a good chunk of productivity out of the project.
I get the argument of "if it's not mainstream, where will we find programmers" - but that's more of a cultural issue of wanting expert programmers out of the box instead of investing in them and training them.
Ultimately, this line of thinking is like saying 640K RAM is enough for everyone. Sure, you might say C++ and Go is enough for everyone, but there are many unrealised gains left on the table.
- gfodor 3y agoThe talk doesn’t say to always choose boring technology. But you might think it does if you read three words and wrote a comment in response to them.
- Pannoniae 3y agoThis was the second time I've read that talk. Please don't accuse me of not reading it. As all of us, it might be that I completely overlook, or interpret something entirely differently or outright wrongly, but I think this is entirely uncalled for. Edit: I kind of see what you mean now. My paragraph about hiring was somewhat tangential. I am sorry.
- gfodor 3y agoNo worries!
- jpgvm 3y agoThat isn't how any of this works. We don't get new innovative databases because of small startups deciding they want to roll their own database as part of building their new fangdangled AI thing. We get new innovative database either by new innovative database companies that rightfully spend their time and effort trying a new idea in the space or out of huge companies with R&D budgets to build such things, like Spanner. Startups choosing boring tech for everything that isn't their core/critical innovative area should actually accelerate innovation by focussing effort more efficiently. I do agree that the whole hiring aspect of it is hot garbage though. If Haskell is the best fit for what you are making and is considering boring in your field (say you are doing verification) then it makes perfect sense to use it even if the pool is smaller because a) people that stick to Haskell despite its difficulties probably have more passion for the craft and b) it's way more likely someone that knows Haskell has some exposure to your field, verification in this case. Same can apply to lots of "niche" languages/tools/etc. Boring is relative to what you are working on. I build distributed systems primarily. For me boring is Java. I imagine C++ is boring for game devs/GPU folks. etc.
- em-bee 3y ago"Boring" technology also has many hidden costs i strongly disagree with that. what makes technology boring is the fact that it has less unknowns. ie no hidden costs. that doesn't mean there are no costs, but the costs of eg java are well documented. if those costs are a problem you can choose other tech with different costs. the danger with interesting tech is that the costs are unknown. you do not want unknowns in your tech stack. you have enough unknowns in the problem that you want to solve. unless of course you are solving boring problems. most of the work out there is solving old and boring problems. there is no innovation to be had. in that case you may innovate in your tech stack instead. in other words, choose one area to innovate. don't innovate in multiple areas at once.