Datomic? and a provocative lecture
Quote from Dave Voorhis on January 7, 2020, 9:39 amQuote from dandl on January 6, 2020, 10:57 pmI would broadly agree, for line of business apps. I've never been in the IBM camp, so missed out on that pull. I hung out with the dwarves, then went mini then PC.
What I did see in the early 1990s was a massive adoption of MS Windows for back office. Govt, telco, finance/insurance, distribution kept their big iron in the glass rooms, but rolled out Windows everywhere for the back office. OS/2 and Novell died, Windows got it all. That meant VB and MS SQL in support. Then when they did early web sites it was a battle between IIS/ASP and Websphere/beans or similar for budget.
Small business is still driven by their choice of accounting system and office systems. The biggest in Aus is MYOB, and that's written in C#. Newer web businesses never had IBM and didn't want to use Oracle, so had no reason to go to Java, which also acquired a poor reputation over security issues.You see Java everywhere, I see very little outside big iron IBM, OSS and Android. I guess it reflects different life experience.
The main small-business accounting system here seems to be Sage 50 -- I don't know what it's written in; probably C# or C++ -- followed by SalesForce. SalesForce is customised with a proprietary Java-like (and probably Java-derived) language called Apex.
Of course, perception of language/platform use is heavily subject to the usual confirmation biases and gated observation due to career streaming. If you started out (or had early but significant formative experience) in the Microsoft world, you've probably stayed on that track and perceive the IT world as mainly being Microsoft-invented languages, and others relatively obscure. If you've started out (or had early but significant formative experience) in something other than the Microsoft world -- say, writing C or Java or something else -- you've probably stayed on that track and perceive the IT world as being C or Java or something else, and Microsoft-invented languages relatively obscure.
I certainly saw some of that gated perception when I worked at the university. Returning industrial placement (which they did between 2nd and final year) students either castigated us for having taught them C# ("Nobody uses that! Everybody uses <insert other popular language here>") or praised us for having taught them C# ("You guys taught us what I did! I thought you guys were old and clueless, but you're just old; you're covering exactly what everybody does.")
More than once I've encountered an embedded systems developer who's been absolutely insistent that nobody really uses C# or Java or any of that fancy academic crap -- that's just stuff taught in schools -- because the real world is C and Ladder logic and VHDL. And something for Web sites, I guess, and the stuff on computers and phones and whatnot. Doesn't Microsoft write all of that? What, you do that? Isn't that kind of hacking still illegal? (Paraphrased actual conversation.)
Being immersed in a domain makes it easy to believe that the whole world is that domain.
My count of job postings from Indeed.co.uk gives perhaps the best rough (very rough) indication of relative (and objective) language popularity, but it too is potentially subject to all manner of inaccuracies.
Quote from dandl on January 6, 2020, 10:57 pmI would broadly agree, for line of business apps. I've never been in the IBM camp, so missed out on that pull. I hung out with the dwarves, then went mini then PC.
What I did see in the early 1990s was a massive adoption of MS Windows for back office. Govt, telco, finance/insurance, distribution kept their big iron in the glass rooms, but rolled out Windows everywhere for the back office. OS/2 and Novell died, Windows got it all. That meant VB and MS SQL in support. Then when they did early web sites it was a battle between IIS/ASP and Websphere/beans or similar for budget.
Small business is still driven by their choice of accounting system and office systems. The biggest in Aus is MYOB, and that's written in C#. Newer web businesses never had IBM and didn't want to use Oracle, so had no reason to go to Java, which also acquired a poor reputation over security issues.You see Java everywhere, I see very little outside big iron IBM, OSS and Android. I guess it reflects different life experience.
The main small-business accounting system here seems to be Sage 50 -- I don't know what it's written in; probably C# or C++ -- followed by SalesForce. SalesForce is customised with a proprietary Java-like (and probably Java-derived) language called Apex.
Of course, perception of language/platform use is heavily subject to the usual confirmation biases and gated observation due to career streaming. If you started out (or had early but significant formative experience) in the Microsoft world, you've probably stayed on that track and perceive the IT world as mainly being Microsoft-invented languages, and others relatively obscure. If you've started out (or had early but significant formative experience) in something other than the Microsoft world -- say, writing C or Java or something else -- you've probably stayed on that track and perceive the IT world as being C or Java or something else, and Microsoft-invented languages relatively obscure.
I certainly saw some of that gated perception when I worked at the university. Returning industrial placement (which they did between 2nd and final year) students either castigated us for having taught them C# ("Nobody uses that! Everybody uses <insert other popular language here>") or praised us for having taught them C# ("You guys taught us what I did! I thought you guys were old and clueless, but you're just old; you're covering exactly what everybody does.")
More than once I've encountered an embedded systems developer who's been absolutely insistent that nobody really uses C# or Java or any of that fancy academic crap -- that's just stuff taught in schools -- because the real world is C and Ladder logic and VHDL. And something for Web sites, I guess, and the stuff on computers and phones and whatnot. Doesn't Microsoft write all of that? What, you do that? Isn't that kind of hacking still illegal? (Paraphrased actual conversation.)
Being immersed in a domain makes it easy to believe that the whole world is that domain.
My count of job postings from Indeed.co.uk gives perhaps the best rough (very rough) indication of relative (and objective) language popularity, but it too is potentially subject to all manner of inaccuracies.
Quote from dandl on January 7, 2020, 11:08 amThat's my point -- it's not better than TIOBE. In the scientific/academic community it's generally considered suspect.
Anecdote.
PYPL: http://pypl.github.io/PYPL.html
Github: https://octoverse.github.com/
Indeed: https://www.codingdojo.com/blog/the-7-most-in-demand-programming-languages-of-2019
Searching job sites is somewhat labour intensive -- unfortunately, they rarely emit easily-digestible stats -- but give perhaps the most direct picture of language use. Indeed.co.uk
Self-serving, or cheap proxies. [Although I was interested to see MS featuring strongly in some big OSS projects.]
But once again, the important point is that I don't think any of us would disagree which languages are categorically popular. Which among Java, C#, JavaScript and Python is more or less popular than the others hardly matters. In general, they're all popular and for any practical purpose can be regarded as roughly equally popular.
No argument, but why are we even interested? I don't care about tutorials or jobs or OSS dead-ends or self-promoting personal repos. I care about useful, working code, the people who write it and the tools that support it. I care about dead dogs, so I can avoid them, and about promising newcomers, so I can consider them. How do we measure that?
I like SlashData because they measure programmers, even if they do it badly. I don't trust popularity. I would like to measure working apps, users, profits and how the choice of language plays into that. I don't think they're all the same on that level.
That's my point -- it's not better than TIOBE. In the scientific/academic community it's generally considered suspect.
Anecdote.
PYPL: http://pypl.github.io/PYPL.html
Github: https://octoverse.github.com/
Indeed: https://www.codingdojo.com/blog/the-7-most-in-demand-programming-languages-of-2019
Searching job sites is somewhat labour intensive -- unfortunately, they rarely emit easily-digestible stats -- but give perhaps the most direct picture of language use. Indeed.co.uk
Self-serving, or cheap proxies. [Although I was interested to see MS featuring strongly in some big OSS projects.]
But once again, the important point is that I don't think any of us would disagree which languages are categorically popular. Which among Java, C#, JavaScript and Python is more or less popular than the others hardly matters. In general, they're all popular and for any practical purpose can be regarded as roughly equally popular.
No argument, but why are we even interested? I don't care about tutorials or jobs or OSS dead-ends or self-promoting personal repos. I care about useful, working code, the people who write it and the tools that support it. I care about dead dogs, so I can avoid them, and about promising newcomers, so I can consider them. How do we measure that?
I like SlashData because they measure programmers, even if they do it badly. I don't trust popularity. I would like to measure working apps, users, profits and how the choice of language plays into that. I don't think they're all the same on that level.
Quote from Dave Voorhis on January 7, 2020, 12:42 pmQuote from dandl on January 7, 2020, 11:08 amThat's my point -- it's not better than TIOBE. In the scientific/academic community it's generally considered suspect.
Anecdote.
It is what it is. You won't see many references to SlashData in scientific papers.
PYPL: http://pypl.github.io/PYPL.html
Github: https://octoverse.github.com/
Indeed: https://www.codingdojo.com/blog/the-7-most-in-demand-programming-languages-of-2019
Searching job sites is somewhat labour intensive -- unfortunately, they rarely emit easily-digestible stats -- but give perhaps the most direct picture of language use. Indeed.co.uk
Self-serving, or cheap proxies. [Although I was interested to see MS featuring strongly in some big OSS projects.]
?
But once again, the important point is that I don't think any of us would disagree which languages are categorically popular. Which among Java, C#, JavaScript and Python is more or less popular than the others hardly matters. In general, they're all popular and for any practical purpose can be regarded as roughly equally popular.
No argument, but why are we even interested? I don't care about tutorials or jobs or OSS dead-ends or self-promoting personal repos. I care about useful, working code, the people who write it and the tools that support it. I care about dead dogs, so I can avoid them, and about promising newcomers, so I can consider them. How do we measure that?
You mean, how do we predict the future?
It's interesting how often questions along the lines of "Will x be the next big thing?" appear on Quora.com and the like, and the degree to which it's impossible to say. In retrospect the winners always seem obvious, but never in foresight.
As I think I've mentioned here before, it's notable that when Twitter first appeared, it shared space with (if I remember the number correctly) 110 other microblogging platforms. Why did Twitter win?
Was it strong marketing? Potent technology? A great name?
Some of all of these, but mostly none of these. It succeeded because something had to, and it's the one that did. There's no more reason than that. It survived because it did.
There's a somewhat well-known televised magic trick that looks like a magician devised a system to consistently (and seemingly miraculously) predict horse race winners. To demonstrate it, the camera follows a member of the public as she bets on horses picked by the magician, successfully picking the winner for every one of a number of races.
What the camera doesn't show -- but is later revealed -- is that the producers actually filmed hundreds of bets made by a large pool of people, with every horse predicted to win by multiple people, so structured so that one person -- not special at all, just the luck of the draw -- would inevitably have picked the winner of every race. Everyone was filmed; only the every-time-successful (but wholly accidental and random) winner's bets are assembled into the finished film to make it look like a system. If you want to sit through it, the whole thing is here: https://www.youtube.com/watch?v=9R5OWh7luL4 (Edit: ...except the reveal. I'll try to find it.)
That's Twitter, in a sense and in a nutshell. It won because somebody had to.
For better or worse, that's how pretty much everything works -- languages, platforms, businesses, everything.
It's unpredictable. Survivors and successes mostly succeed because... They're the ones who do. Somebody has to.
Of course, it helps to have huge financial backing (Java, C#) but it also doesn't matter (Python).
I like SlashData because they measure programmers, even if they do it badly. I don't trust popularity. I would like to measure working apps, users, profits and how the choice of language plays into that. I don't think they're all the same on that level.
If it's a question of quantity of working apps, users and profits then Java is obviously on a different level. The other popular languages don't even begin to approach the volume of industrial-strength, high-volume, business-critical, millions-are-lost-when-downtime-is-measured-in-milliseconds use cases for which Java is now the standard solution. Only C and C++ (and COBOL, still) come close (and maybe surpass Java) in terms of high-volume, high-value, highly-critical enterprise reliance. The other popular languages are pervasive but they're at the edges, not the foundations. They're not at the core. They don't underpin investment, finance, trade, banking, research, healthcare, government, communications and infrastructure the way C, C++, Java, and (still) COBOL do.
Quote from dandl on January 7, 2020, 11:08 amThat's my point -- it's not better than TIOBE. In the scientific/academic community it's generally considered suspect.
Anecdote.
It is what it is. You won't see many references to SlashData in scientific papers.
PYPL: http://pypl.github.io/PYPL.html
Github: https://octoverse.github.com/
Indeed: https://www.codingdojo.com/blog/the-7-most-in-demand-programming-languages-of-2019
Searching job sites is somewhat labour intensive -- unfortunately, they rarely emit easily-digestible stats -- but give perhaps the most direct picture of language use. Indeed.co.uk
Self-serving, or cheap proxies. [Although I was interested to see MS featuring strongly in some big OSS projects.]
?
But once again, the important point is that I don't think any of us would disagree which languages are categorically popular. Which among Java, C#, JavaScript and Python is more or less popular than the others hardly matters. In general, they're all popular and for any practical purpose can be regarded as roughly equally popular.
No argument, but why are we even interested? I don't care about tutorials or jobs or OSS dead-ends or self-promoting personal repos. I care about useful, working code, the people who write it and the tools that support it. I care about dead dogs, so I can avoid them, and about promising newcomers, so I can consider them. How do we measure that?
You mean, how do we predict the future?
It's interesting how often questions along the lines of "Will x be the next big thing?" appear on Quora.com and the like, and the degree to which it's impossible to say. In retrospect the winners always seem obvious, but never in foresight.
As I think I've mentioned here before, it's notable that when Twitter first appeared, it shared space with (if I remember the number correctly) 110 other microblogging platforms. Why did Twitter win?
Was it strong marketing? Potent technology? A great name?
Some of all of these, but mostly none of these. It succeeded because something had to, and it's the one that did. There's no more reason than that. It survived because it did.
There's a somewhat well-known televised magic trick that looks like a magician devised a system to consistently (and seemingly miraculously) predict horse race winners. To demonstrate it, the camera follows a member of the public as she bets on horses picked by the magician, successfully picking the winner for every one of a number of races.
What the camera doesn't show -- but is later revealed -- is that the producers actually filmed hundreds of bets made by a large pool of people, with every horse predicted to win by multiple people, so structured so that one person -- not special at all, just the luck of the draw -- would inevitably have picked the winner of every race. Everyone was filmed; only the every-time-successful (but wholly accidental and random) winner's bets are assembled into the finished film to make it look like a system. If you want to sit through it, the whole thing is here: https://www.youtube.com/watch?v=9R5OWh7luL4 (Edit: ...except the reveal. I'll try to find it.)
That's Twitter, in a sense and in a nutshell. It won because somebody had to.
For better or worse, that's how pretty much everything works -- languages, platforms, businesses, everything.
It's unpredictable. Survivors and successes mostly succeed because... They're the ones who do. Somebody has to.
Of course, it helps to have huge financial backing (Java, C#) but it also doesn't matter (Python).
I like SlashData because they measure programmers, even if they do it badly. I don't trust popularity. I would like to measure working apps, users, profits and how the choice of language plays into that. I don't think they're all the same on that level.
If it's a question of quantity of working apps, users and profits then Java is obviously on a different level. The other popular languages don't even begin to approach the volume of industrial-strength, high-volume, business-critical, millions-are-lost-when-downtime-is-measured-in-milliseconds use cases for which Java is now the standard solution. Only C and C++ (and COBOL, still) come close (and maybe surpass Java) in terms of high-volume, high-value, highly-critical enterprise reliance. The other popular languages are pervasive but they're at the edges, not the foundations. They're not at the core. They don't underpin investment, finance, trade, banking, research, healthcare, government, communications and infrastructure the way C, C++, Java, and (still) COBOL do.