good article on mainstream adoption of programming languages
Since this discussion often returns on this mailinglist, here is a good article. It focuses on Haskell, but a lot of arguments apply to Smalltalk as well. http://www.forbes.com/sites/quora/2014/04/29/what-do-you-think-is-impeding-h... cheers Johan
Hi Johan, On Wed, Apr 30, 2014 at 10:57 AM, Johan Brichau <johan@inceptive.be> wrote:
Since this discussion often returns on this mailinglist, here is a good article.
It focuses on Haskell, but a lot of arguments apply to Smalltalk as well.
http://www.forbes.com/sites/quora/2014/04/29/what-do-you-think-is-impeding-h...
if possible, next time provide the quora link not the forbes one. forbes is advertising at me :-( -- but thanks! Eliot
Eliot,
if possible, next time provide the quora link not the forbes one. forbes is advertising at me :-(
OK, but I am not an active Quora user... and it's asking me for a lot of things before I can actually read that article :-/ Now that I have wrestled through it, the next time I will do that :-) cheers Johan
he/she lost me at "The benefit of more libraries is real but marginal" thats a a big nope from me. If there is one lesson we can learn from Java is that more libraries is EVERYTHING. On Wed, Apr 30, 2014 at 9:29 PM, Johan Brichau <johan@inceptive.be> wrote:
Eliot,
if possible, next time provide the quora link not the forbes one. forbes is advertising at me :-(
OK, but I am not an active Quora user... and it's asking me for a lot of things before I can actually read that article :-/ Now that I have wrestled through it, the next time I will do that :-)
cheers Johan
On Apr 30, 2014, at 3:52 PM, kilon alios <kilon.alios@gmail.com> wrote:
he/she lost me at "The benefit of more libraries is real but marginal"
thats a a big nope from me.
If there is one lesson we can learn from Java is that more libraries is EVERYTHING.
not to mention Javascript and the Nodiverse
Is that cause or consequence of popularity? Johan
On 30 Apr 2014, at 20:58, Sebastian Sastre <sebastian@flowingconcept.com> wrote:
On Apr 30, 2014, at 3:52 PM, kilon alios <kilon.alios@gmail.com> wrote:
he/she lost me at "The benefit of more libraries is real but marginal"
thats a a big nope from me.
If there is one lesson we can learn from Java is that more libraries is EVERYTHING.
not to mention Javascript and the Nodiverse
On Apr 30, 2014, at 4:11 PM, Johan Brichau <johan@inceptive.be> wrote:
Is that cause or consequence of popularity?
Johan
Past the tipping point it starts to feel as consequence. People gets attracted to what people pays attention to. No attention, no business http://sebastianconcept.com/brandIt/no-attention-no-business Lucidity is the new capital http://sebastianconcept.com/brandIt/lucidity-is-the-new-capital
The point I take home from the article is that every popular language became popular for a reason. None of those reasons where good design or the presence of libraries. Javascript because it's the only language that runs in a browser. Java and C# because they have corporate backings. Ruby because of Ruby on Rails. It's maybe an over-simplification of the real contributing factors (we forget education and learning curve), but would JavaScript be as popular when there would be more languages available in a web browser? Johan
On 30 Apr 2014, at 21:16, Sebastian Sastre <sebastian@flowingconcept.com> wrote:
On Apr 30, 2014, at 4:11 PM, Johan Brichau <johan@inceptive.be> wrote:
Is that cause or consequence of popularity?
Johan
Past the tipping point it starts to feel as consequence.
People gets attracted to what people pays attention to.
No attention, no business http://sebastianconcept.com/brandIt/no-attention-no-business
Lucidity is the new capital http://sebastianconcept.com/brandIt/lucidity-is-the-new-capital
For me at least , the way I see it is that each coder is special. We all can find common ground, but we can all find differences. As a coder you want a library to solve the specific problem you had at this point, it maybe it a small one or a big one. Having more libraries ensures that you will be much more likely to find code solutions to your problem. This is where Java invested , so I would say in the case of Java itself its the cause. Java invested in having a huge library , something it was unheard of at the time. I mean why on earth a user would want to install a big fat download to get tons of libraries the user does not really need for running one java app ? Yet it worked like a charm because developers loved the fact that they had in their hand a huge monolithic platform that could satisfy their wildest dream as far as library support went through. And on top that platform was cross platform. And Java did that at a time when hundreds of MBs did matter and internet connections were not very fast. I found a link in my twitter yesterday about the Java tutorial, it send me to 1000 pages introductory tutorial. Its insane the amount of things Java packs inside its libraries. I would say the recipe definitely worked for them , but then they had the resources to do this in the first place. Coming from Python we have a saying "batteries included" meaning the library that cpython comes with is very very big. You literally find tons of things inside it. Its no Java but it definitely follows the recipe and python started small.Yet python started for practical unnknow to one of the top most popular languages . As Sebastian said there is also npm and we should not forget Perls CPAN One of my favorite languages Delphi also used this recipe of success which still is a fairly popular language. Anywhere you look nowdays, language become less and less relevant and its all about libraries, libraries and of course, libraries. On Wed, Apr 30, 2014 at 10:11 PM, Johan Brichau <johan@inceptive.be> wrote:
Is that cause or consequence of popularity?
Johan
On 30 Apr 2014, at 20:58, Sebastian Sastre <sebastian@flowingconcept.com> wrote:
On Apr 30, 2014, at 3:52 PM, kilon alios <kilon.alios@gmail.com> wrote:
he/she lost me at "The benefit of more libraries is real but marginal"
thats a a big nope from me.
If there is one lesson we can learn from Java is that more libraries is EVERYTHING.
not to mention Javascript and the Nodiverse <https://www.npmjs.org/>
"Javascript because it's the only language that runs in a browser" Eh nope Every language out there runs in the Browser. Actually you will find more than one implementation for each language. Yes they compile to Javascript but then that does not mean anything. Every language on Desktop compiles to machine (including Javascript) code, that does not mean that programming languages don't exist. And I am excluding the fact that Javascript compiles to C for optimisation reasons. What you say might had been true once upon a time but back then web development was not that relevant. Do you know why ? Because nowadays we have WebGL , Canvas, Video , Audio and all that are now libraries accessible for Javascript. Those things were not available back then, web sites were static and boring. Those libraries change all that. Ruby on Rails is a library C# was created by the same guy that created Delphi for Borland that went to work for Microsoft. Delphi is similarly to Java a very much library driven environment. Delphi is very much inspired by smalltalk IDE actually but it comes packed with a very big library of components. .NET is very similar. Afterall .NET was created because Java threatened Visual C++. I am not saying its the only reason but if I would pick two thing I would have say 1) Marketing 2) Libraries
On 30 Apr 2014, at 21:51, kilon alios <kilon.alios@gmail.com> wrote:
Every language out there runs in the Browser
You may know this: https://www.destroyallsoftware.com/talks/the-birth-and-death-of-javascript Johan
Yet it worked like a charm because developers loved the fact that they had in their hand a huge monolithic platform that could satisfy their wildest dream as far as library support went through. And on top that platform was cross platform.
Sounds like Smalltalk :-) Don't get me wrong: a language without libraries is like an OS without applications, but the point is that most of the unpopular languages have sufficient libraries. After doing Smalltalk for over 15 years, I still discover things inside the libraries that come with a standard image. And yes, some libraries will attract people: office libraries in .net, RoR in Ruby, etc... I think once sufficient libraries are present, an active community is more important (in the absence of large company backing) and libraries are a consequence. But hey, we should probably go have a beer over this ;-) Johan
I am sorry but again a big NO from me. I am interested in two field, Graphics (2D and 3D) and music/audio synthesis. Both of these fields are dominated by C/C++. You could say is because of the fact that C/C++ is heavily optimised and of course I would agree but its not that of a big reason because a) other languages can use C/C++ libs b) its possible to compile a language to C/C++. For example python has cython , similar to Slang for Pharo. Take your language of choice outputs optimised C/C++ that can get compiled and linked back to your favorite language as a library. Still the vast majority of coders code in C/C++ for these two fields. Why ? Simple, libraries, tons of them. There is no way anyone would port all of these libraries to Python let alone Pharo. Its not hard to use those libraries from Python but people dont do it , its just more effort, and because its simple just to do it on the language the lib is documented. This is why also language popularity is highly heated discussion, popularity highly fluctuates. For example you go web dev Javascript is king, you leave web dev Javascript becomes practically unknown. Enterprise ? Java is the undisputed king. Windows development ? .NET and C++ hands down. How about iOS ? Objective C without a doubt. Android ? Java again. Unix/Linux ? of course C/C++ and so on so forth. You could even say that languages prosper more when they pick a niche and again the reason why that happens is because of course of libraries. Afterall the language itself is rarely non general purpose. Its the libraries that give the specialisation to the language. On Wed, Apr 30, 2014 at 10:55 PM, Johan Brichau <johan@inceptive.be> wrote:
Yet it worked like a charm because developers loved the fact that they had in their hand a huge monolithic platform that could satisfy their wildest dream as far as library support went through. And on top that platform was cross platform.
Sounds like Smalltalk :-)
Don't get me wrong: a language without libraries is like an OS without applications, but the point is that most of the unpopular languages have sufficient libraries. After doing Smalltalk for over 15 years, I still discover things inside the libraries that come with a standard image.
And yes, some libraries will attract people: office libraries in .net, RoR in Ruby, etc...
I think once sufficient libraries are present, an active community is more important (in the absence of large company backing) and libraries are a consequence.
But hey, we should probably go have a beer over this ;-)
Johan
participants (4)
-
Eliot Miranda -
Johan Brichau -
kilon alios -
Sebastian Sastre