Thanks, Dimitris for your take on the popularity of Pharo and languages in general. I totally agree with most of it, especially when it comes to choosing a language for your personal project or a small startup, you just start with the library that has most of the features you are looking for making sure that the performance is adequate for your needs. When it comes to big corporations they are much less agile in switching their technology and they consider it as a big investment with many other factors to consider. The size of the language community plays an important role since nobody wants to invest in a language that may go extinct in a little while. Also if the library of your interest has a low "bus factor' I.e the number of contributors, it's a risky investment as the lib may get abandoned shorty. One of the biggest factors which derives from the community size is the number of developers on the market. Companies go with Java mostly because of the abundance of devs on the market (of course the libraries play a very important role here as well). I think Pharo has made a good strategic move to use git as its major VCS, hopefully all projects will move there and it will gain in popularity even more because of that. I know some companies transitioned from VisualWorks smalltalk to Java mainly because of unwieldy and archaic VCS that goes with it (there were also concerns about the ability of Cincom to maintain the language in the long term). Also the ability of the language to be general purpose to cover many domains like you mentioned plays a very important role since today the company may only consider it as a platform to create desctop applications but tomorrow when they switch to microservises they want to continue using it for web development. The broader the range the better.
On Thu, Jul 5, 2018, 18:15 Dimitris Chloupis <kilon.al...@gmail.com> wrote: > Pharo success in in the website, twitter and youtube channel. > > Popularity wise the clear indication is community, I joined Pharo back in > 2011 when it was already 3 years old and we had only one active mailing > list , pharo-dev, pharo-users were practically unused. Then we got so many > new people we had to move to pharo-users and keep pharo-dev only for the > code going inside pharo standard distribution , then we grown even more and > we started using Slack. Then I had the idea to move us to Discord, our > Discord server ended up having way more channels than Slack. So we are > definetly growing , how much is the real hard thing to determine. > > Even if you take Github to account you will have to ignore all forks, > because many Github users, including me, tend to use forks as mere > bookmarks. So one's forks the project and ends never using it but the fork > will also report commits that coming from the original repo. Coding like > anything else in live is too complex to describe in numbers and stats. > > I think the best way to sell any language is to do your research, the > person or people who you want to convince, you have to know what they are > interested about, web dev, databases, embeded computing etc. Instead of > stats provided them with libraries and documentation. Anyone come making a > super cool project but usually for a developers it far important to know > that the "cool" language someone else is praising actually has the > libraries you may need. > > I for example don't care at all for web dev, I don't even like it, or > databases, but I love graphics and sound. So I won't care for Seaside, > PharoJS etc. But Pharo Sound and Woden is two projects that are very > interesting to me. Like a recent video publiced by Pharo in youtube about > people using Woden (a 3d graphics engines made in Pharo) to do VR. If I > never used Pharo before that definetly would tempt it, taking into account > that VR is not even that widely available even with most popular languages. > > Take for example Ruby, none really cared that no company made an amazing > project in the language, what they cared was that a solo dev decided to > make that amazing web dev library called Ruby On Rails and then , BOOM, > Ruby exploded in popularity. Python's also popularity is purely on its > library set solely, third party. Java is not the rule , it actually the > exemption , merely for the practical fact that very few language can afford > support from big companies. Python's creator did not even intend to make a > programming language, its just made it to automate command line tasks > because he was not so much into the Bash alternatives. He tried to even > stop them from using it as C++ alternative, too late, Python is the > standard in the scientific community. Basic started as just a language to > teach kids and then it took over the world via home computers. People > making pro apps in Basic, ridiculous, hello Visual Basic. Smalltalk started > mainly as research project. Lisp as a purely theoretical mathematical > concept. > > So my advice is not to worry much about it, just find the libraries that > people need in Pharo and that will be far more than enough to convince them > to take the plunge. Available project in any language are nothing more than > a tiny fraction of the language's potential, the big hot potatoes are > performance (none likes slow code), libraries (everyone is lazy) and > documentation (none likes to decipher other's people code). > > People don't hide the fact that they use Pharo , afterall that's the whole > idea of this mailing list to share your success and failures with Pharo and > ask questions about it. > > But you don't mean much to sell a language , afterall one thing all > language popularity websites agree on is that almost 50% of the code out > there is written for tiny project in languages none cares about. I am > talking about languages like Pharo that end up having a popularity way > bellow 0.01% . There is a reason we have thousands of languages to choose > from and it ain't popular projects ;) > > On Thu, Jul 5, 2018 at 10:01 PM Andrei Stebakov <lisper...@gmail.com> > wrote: > >> Thanks, Kilon for such an insightful answer. Lots of stuff to think about. >> I guess what I was waiting for is some success stories (which we already >> have on the website), but coming from you guys as consultants saying >> something like: "oh, this year I have more projects than last year" or "now >> my network of Smalltalk aware customers is that much bigger" or "a friend >> of mine who works in company XYZ says that after some consideration they >> started to use Pharo for micro services instead of Java". >> I know, it's hard to measure the success level in numbers (other than the >> example you gave with github stats), more like the word of mouth kind of >> thing. >> Another metrix could be the subscription rate for this mailing list, >> since chances are that most of new Pharo users would be on it and the >> acceleration of that rate would definitely say something about Pharo >> success. Wondering if we have access to that data. >> Thanks for your insight! >> >> On Thu, Jul 5, 2018, 13:20 kilon.alios <kilon.al...@gmail.com> wrote: >> >>> You can check the github repos, github allows you to browse project >>> repos per >>> language. You could probably automate that from Pharo, use the Github API >>> like Iceberg does fetch the names of all projects using smalltalk >>> language >>> and check to see which ones have commits the last year and then make a >>> nice >>> graph using Roassal. You could do that also periodically to track the >>> growth >>> in popularity. >>> >>> Github is the center place for everything open source, Pharo and Squeak >>> are >>> more tricky because they each have their own hosting sites squeaksource >>> for >>> Squeak and smalltalkhub for Pharo but I think most modern Pharo projects >>> seem to have made the jump to github too. >>> >>> But even with Smalltalkhub there should be some API lurking in there >>> although I suspect it will be undocumented and a lot trickier to get it >>> working. >>> >>> Another source is Google trends, but I dont think google search is very >>> reliable because smalltalk is a regular word that is not 99.99% of the >>> time >>> used to mean the programming language, so you will have to use terms like >>> "smalltalk programming" (this is the primary method that the TIOBE INDEX >>> is >>> using for all its languages) but even that wont be very reliable. >>> >>> Technically speaking language popularity is a can of worms, there is a >>> huge >>> disagreement even which are the TOP 10 most popular programming languages >>> right now. Even the TOP 3 can widely fluctuate. So as you can imagine >>> keeping track of something as unpopular as smalltalk is going to be >>> quite a >>> challange. >>> >>> For example "everyone" seem to agree that there is very little reason >>> nowdays to use C over C++, cause "C++ is a much better C with objects" , >>> on >>> the other hand language popularity websites seem to disagree with >>> "everyone" >>> because not only they have C in top 10 but in many cases its more popular >>> than C++ and to put more insult to the sin they also show it shrinking >>> way >>> slower than C++ in popularity. Such an example is TIOBE >>> >>> https://www.tiobe.com/tiobe-index/ >>> https://www.tiobe.com/tiobe-index/c/ >>> https://www.tiobe.com/tiobe-index/cplusplus/ >>> >>> If we cannot even agree with C vs C++ imagine Smalltalk vs The REST. >>> >>> But I think Github API is a good place to start. The worst place to >>> start is >>> asking people for opinion and reading blog posts , hackernews, twitter, >>> facebook or whatever else "hipster" thing, especially stackoverflow and >>> medium. >>> >>> In the end language popularity is a hopeless cause. In theory everyone >>> cares, in practice, none does. >>> >>> >>> >>> -- >>> Sent from: http://forum.world.st/Pharo-Smalltalk-Users-f1310670.html >>> >>>