6 comments

[ 3.3 ms ] story [ 25.3 ms ] thread
No, it isn't. If Smalltalk were going to be the future of software development, it would have shown some sign of it by now. All the claimed advantages have been there since the 1980, but in nearly 40 years, Smalltalk has yet to be anything more than a niche player.

Maybe the advantages come with some disadvantages, which wildly gushing articles like this ignore?

OK, there's a new Smalltalk on the market. Unless it knows what the previous disadvantages were, and has fixed them to the satisfaction of developers, Smalltalk isn't going anywhere. This article gives no hint that they even recognized that there ever had been disadvantages.

Yes, all the advantages have been there from the start, but they may not be known to most people. It's really a matter of education and public awareness.

Smalltalk is not the only language to face this dilemma. Nearly every new language that comes to market does, as well. For example, Ceylon, Clojure, Crystal, Dart, Elixir, Haxe, Julia, Nim, Rust.

> Unless it knows what the previous disadvantages were, and has fixed them to the satisfaction of developers

All programming languages have disadvantages. They don't need to be "fixed" in order to be useful and accepted. You think Java, Python, and JavaScript are perfect? How about Go, Kotlin, and Swift?

> The interesting thing about this study is that it goes beyond simple coding and programming; it takes the entire software project into consideration [...]. They want to know the full cost of applications and their complete schedules from requirements through delivery. They also want to know multi-year maintenance and enhancement costs plus total cost of ownership.

So it's not just comparing programming languages. And for each language there are a multitude of toolchains for solving these other factors. If you find the most efficient of each of those and compare as well as other factors not even mentioned (e.g. how do multiple remote developers work on an image?) the picture will be quite different.

It is comparing programming languages. The study averages over all the language projects, including their choice of preferred toolchains. If there are more effective toolchains available, their lack of usage is clearly factored into the study.
That's a good point. But reducing a programming language ecosystem to one number isn't the statistic I'm interested in. I want to see the distribution in some way e.g. standard deviation. What's 'good' in each look like?