3 ms·
While this is true on individual level, Rust has been ranked most liked programming language in many surveys and sparks joy to most of people more than other la
by miohtama 3y ago
While this is true on individual level, Rust has been ranked most liked programming language in many surveys and sparks joy to most of people more than other languages
https://survey.stackoverflow.co/2023/#section-admired-and-desired-programming-scripting-and-markup-languages https://survey.stackoverflow.co/2023/#section-admired-and-de...
- antonvs 3y agoWhat's missing from a survey like that is correlation with prior experience and education. Python was a previous winner on those kind of surveys, and it's a terrible language in many ways.
- IshKebab 3y agoYeah someone needs to do a ranked preference test. Rank all the languages you are familiar with...
- tmtvl 3y agoFunnily enough I'm not very familiar with languages I don't like, probably because I elect not to use them.
- antonvs 3y agoLimiting to relatively well-known general-purpose languages I've used in commercial system development: Haskell, Scheme, OCaml, SML, Rust, Typescript, Smalltalk, Java, Scala, Common Lisp, Kotlin, C, C++, C#, Javascript, Forth, Delphi/Object Pascal, Turbo Pascal, Python, BASIC (various flavors), Fortran. How about you?
- nequo 3y agoWhat was your commercial application for SML?
- antonvs 3y agoWe developed the definitional model of a financial instrument modeling and simulation system in SML. The system included a DSL for specifying instrument models, so part of what the SML implementation did was act as a denotational semantics for that language. The intent was never to deploy it using SML, it was to flesh out and formalize the design, and act as a specification for development of the full system. The system was designed to run on a cluster long before the Kubernetes days, and so had to deal with many of the distribution, scaling, and concurrency issues itself, in addition to its business logic. One of the experiences I had while working on that system was that at the time, I was reading "Monad Transformers and Modular Interpreters" - a seminal paper by Liang, Hudak, and Jones - and I thought I could probably quite easily implement the paper's approach using ML parameterized modules, instead of the Haskell typeclasses used in the paper. I tried it, and was soon disabused of that notion. Partly as a result of that, we wrote the distributed simulation engine for a later version of the system in Haskell.
- IshKebab 3y agoI'd probably go Rust, Typescript, C++, Go, Java, OCaml, Python, Javascript, Matlab, PHP, SystemVerilog, CMake, C, Bash Ok I will make this site. :)
- antonvs 3y agoOh I left PHP and Go out of my list, my subconscious blocked them out of existence. They'd be near the bottom anyway. I suppose Go with polymorphic types might be worth another look, but before that it was dead to me.
- Patrickmi 3y agoA Subconscious that doesn’t want to admit it, not every “good language” makes it to the next round
- IshKebab 3y agoI feel like Go is a so-so language with amazing infrastructure. How many other languages come with built in easy cross compilation, fuzzing, PGO, etc? It is really unsurpassed in that regard, which is probably partly why it is so popular in DevOps. If only the language was a bit better... It's definitely not a bad language like PHP though.
- miohtama 3y agoWhere you are failing here is likely empathy, or understanding how other people work or think. This might be because lack of experience in programming, or just because of reflexive negativity. Even if you think Python is a terrible language, for many people it’s the best language for the job. This also includes must PhDs, because Python is the most used languge in science and academia. When doing critical thinking, please set asides your own biases and try to understand that your own viewpoint is not always the correct one.
- brokenkebaby 3y agoThis answer looks unjustifiably overheated for a statement that says X is "terrible in many ways". It can be the best tool for someone, and still be terrible in many ways, no contradiction here.
- antonvs 3y agoI understand why people use Python. However, I'm just assessing it from a technical perspective, not an emotional one.
- patrec 3y agoI think you are a bit detached from reality if you think controlling for experience and education would massively change the picture for python, which evidently enjoys above average popularity with anyone from junior devs to elite programmers (such as Google's Director of Research, geohot etc.).
- antonvs 3y agoThe issue is what they're educated in. It's not generally programming languages.
- patrec 3y agoWhat makes you think so? If you've got a background in programming languages, maybe you'll roll your eyes at Guido not getting reduce or tail recursion, or CPython's unsophisticated runtime and under-specified/messy semantics, or whatever, but I'm kind of struggling to see why you'd be particularly down on python compared to other languages that (in the average case) have non-negative utility for software development.
- antonvs 3y agoI mentioned Python simply because it was ranked highly in some of these kinds of surveys, even though it has quite a few well-known problems as a language. It demonstrates that ranking in such surveys is not necessarily correlated with the capabilities or fitness for purpose of the language. In some ways, Python is in fact worse than many of the mainstream alternatives - for example, it's not unusual for people to look to rewrite Python systems in some other language because of performance issues at scale. Same (if not worse) goes for Ruby.
- brokenkebaby 3y agoI cannot help but notice that Perl used to be very popular in early web development, sys administration, and in a a row of scientific fields. And lots of people were enthusiastic about it (as witnessed by CPAN content). Then it was declared unsuitable for teaching (many ways to do everything), and the next gen who started with Python usually claim that Perl is bad, while among older generation who matured cooking Perl scripts you still can hear that Python is nothing more than a less flexible, less expressive Perl's bastard child. So yes, I think, education (and the first usable programming language learned in particular) influence popularity very much.
- Dudester230602 3y agoWhile I admire it I most certainly do not desire it - like Haskell. I need to ship things, not figure out some borrow of a monad.
- bitwize 3y agoLanguages with built-in checks for correctness, like type checking and borrow checking, help you ship software faster in the long run, cheaper, and with fewer bugs.