|
|
|
|
|
by zkldi
947 days ago
|
|
Tools win not because they are "better" in some platonic ideal of a programming language but because they are more practical for solving the problems people have. Python, JS, C, Bash aren't even particularly great at the problems they solve, but they succeed mostly on inertia (it's where all the libraries are, it's what people know) and occupying developer mindshare. They are full of obvious design mistakes; things that not even the creators of the language (nor any of its users) can defend, yet those languages are used infinitely more than languages that eschew those mistakes. Why? Because they solve problems people have. If this sounds terrible to you, the good news is that there is a tonne of low-hanging fruit in the programming language design space.
Consider that most developers know nothing of sum-types, or eschew the idea of typing entirely.
Consider that most developers see no fundamental problem behind having to venv or dockerise software lest it bitrot over a month.
Consider that programmers actually use bash. These terrible, obviously broken tools are somehow the most pragmatic things we actually have. The fruit is low-hanging; the door is wide open, if you wish to grab it. |
|
This is basically the only part of your post I disagree with, for reasons you pointed out yourself.
Low-hanging-fruit would imply that it is easy to displace these flawed languages with something better. And you have made a beautiful argument for why that is very very very difficult indeed.