3 ms·
All these new language features are good taken on their own, but in the big picture many languages are getting relentlessly more complex. Many are getting to t
by hackerfromthefu 9y ago
All these new language features are good taken on their own, but in the big picture many languages are getting relentlessly more complex.
Many are getting to the point the complexity encourages different programming styles within one language that while syntactically valid can be so different that other programmers can't easily understand them (such as C++), which is a problem for delivering business value.
Cohesiveness and simplicity is a feature, that delivers real and significant business value.
- acangiano 9y agoI tend to agree. At the two extreme ends of the spectrum I'd place Go and Scala. Go very simple, Scala very complex. What happens in practice is that Go code looks all the same, it's easy to program in, reason about, and train new programmers in. It's not that expressive or flexible, but bad Go code really jumps at you. Scala tries to be all things. The result is that it's not obvious what great Scala code is supposed to look like. Successful Scala teams tend to stick to a subset of the language, usually the more functional side. I think languages like Clojure, Elixir, F#, and Kotlin offer a happier middle ground. Plenty powerful but not as cognitively taxing.