Mostly agree. My go to language is python. Used c# in last job and it improved much over past few years.<p>When I need blinding speed I can use nuitka to compile python scripts.<p>On the rare occasions needing speed and cross platform coupled with my lessons to avoid wasted effort I turn to Lazarus/fpc because code is simple and Lazarus takes care of the target platform stuff so I don't have to.<p>For IOT bare-metal stuff you can't go past C. It just works and after learning it's quirks you will see how other IOT tools are largely hacks or compromises to avoid learning C.
Are we doing Tier-Lists on HackerNews now?<p><pre><code> S Haskell, Rust
A Python, C, Go, Julia
B Prolog, Assembly
C C#, Java, C++, Scala, ML
D Ruby, Groovy, R
F LISP, XML, Bash, VB</code></pre>
Nice list, I enjoyed it, and agreed on C#. I'm over my Python phase, I wouldn't use it for anything today for many reasons. Also agreed on Rust, the way I put it is that it's the "best programming language that I'll never use".<p>I haven't met a programming language that I hated, and find them all pretty similar. My ranking criteria is different as a result. Top metric is "keeping the lights on", then my second metric is what it enables me to (easily) do. My main technical requirement is that it has good tooling, well-supported (no breaking versions), and is fast, because software always gets extended and ends up longer lived than first intending.<p>I'm originally from a small city, and may one day return. C#/Java let me keep the lights on for decades going forward in any locale. I also don't have any complaints with those languages and their chosen abstraction layer, which I think Java nailed for most business applications in the 90s and the target hasn't been better hit since.
> [Python is] fast enough for almost everything<p>That's a bold statement. Also I feel like he's missing a few cons for Python:<p>* The 2/3 mess (yes it is still a thing)<p>* The insane packaging situation. Packaging a Python app is a nightmare.<p>* Dynamically typed<p>And some extra cons for Javascript:<p>* The insane prototype system<p>* Basic things are broken and have never been fixed: ===, type coercion, still no 64-bit integers as far as I know.<p>* Dynamically typed<p>> Assembly: Too low-level. V verbose. Kinda confusing. I choose Python.<p>Lol when would your two options ever be assembly or <i>Python</i>??<p>Not a bad list though.
I am the same, but with Python and C# flipped, as my projects usually grow waaay beyond what can be comfortably sustained with Python. IMHO, refactoring tools are nice to have for anything beyond 1,000 lines, and a must for anything beyond 10,000.