Adobe Flash Updated 2025-07-16
Bash (Unix shell) Updated 2025-07-16
The more heavily a project relies on it, the more you start to regret it.
C (programming language) Updated 2025-07-16
It gets the job done, but cannot make a large codebase DRY without insanity.
As of 2020, C is like Latin, and we are in the Middle Ages, where it has become a lingua franca.
It is interesting to note how late C appeared: 1972, compared e.g. to Fortran which is from 1957. This is basically because C was a "systems programming language", i.e. with focus on pointer manipulation, and because early computers were so weak, there was no operating system or many software layers in the early days. Fortran however was a numerical language, and it ran directly on bare metal, an application that existed before systems programming.
Examples under c.
C++ Updated 2025-07-16
C plus plus is what you get when you want to have all of:
  • ability to write DRY code, which is e.g. impossible in the C
  • low level control, notably not having garbage collection, as possible in the C
  • somewhat backwards compatibility with C
C# Updated 2025-07-16
Fortran Updated 2025-07-16
Go (programming language) Updated 2025-07-16
Likely a good replacement for Python. If the ecosystem gets there, Ciro Santilli would gladly use it more.
Haskell Updated 2025-07-16
There are only two pre-requisites to using Haskell in 2020. You have to be an idealist. And you have to be a genius:
Figure 1.
xkcd 1312: Haskell
. Source.
Java (programming language) Updated 2025-07-16
Java is good.
Its boilerplate requirement is a pain, but the design is otherwise very clean.
But its ecosystem sucks.
The development process is rather closed, the issue tracker obscure.
And above all, Google LLC v. Oracle America, Inc. killed everybody's trust in it once and for all. Thanks Oracle.
Video 1.
Java for the Haters in 100 Seconds by Fireship (2022)
Source.
JavaScript Updated 2025-07-16
The language all browsers converted to as of 2019, and therefore the easiest one to distribute and most widely implemented programming language.
Hopefully will be killed by WebAssembly one day.
Because JavaScript is a relatively crap/ad-hoc language, it ended up some decent tooling to make up for that, e.g. stuff like linting via ESLint and reformatting through Prettier is much more widespread than in other languages.
JavaScript data structure are also quite a bit anemic, which makes libraries such as lodash incredibly popular. But most of that stuff should be in the stdlib.
Our JavaScript examples can be found at:
Perl (programming language) Updated 2025-07-16
TODO why did Python kill it? They are very similar and existed at similar times, and possibly Perl was more popular early on.
Perl likely killed Tcl.
PHP Updated 2025-07-16
Pseudocode Updated 2025-07-16
Python (programming language) Updated 2025-07-16
Examples under python.
Ciro Santilli's wife was studying a bit of basic Python for some job interviews, when she noticed:
Wow, in is so powerful! You can do for x in list, for x in dict and if x in dict all with that single word!
Damn right, girl, damn right.
Ciro remembers hearing about Python online briefly. It seemed like a distant thing from the Java/C dominated (and outdated) university courses. Then some teaching assistant mentioned during some course when Ciro was at École Polytechnique that Python was a great integration tool. That sounded cool.
Then finally, when the École Polytechnique mathematics department didn't let Ciro Santilli do his internship of choice due to grades and Ciro was at an useless last moment backup internship, he learned more Python instead of doing his internship job, and was hooked.
R (programming language) Updated 2025-07-16
Ubuntu 23.04 install:
sudo apt install rbase
Hello world:
R -e 'print("hello world")'
Install a package, e.g. Bookdown:
sudo R -e 'install.packages("bookdown")'
Tcl Updated 2025-07-16
One of the first big interpreted programming languages to go a bit further than Bash' word replacement insanity.
To the modern viewer, it feels like a middle ground between Bash and Python.
It was completely insane however, and it just died: Python is much saner, and Bash, although totally insane still golfs better, especially on the file manipulation context.