This is the reverse post of my highly popular Top 5 Worst Programming Languages post. My only metric for a good programming language is time to get things done and ship to customers. I don't care about anything else.

1 C

A language for getting things done. It's finished and final. It will not change. There will be no new surprises, no new operators, and no unpublished packages. There are just source files. Write, compile, ship, repeat. You used it in 1990 to ship, you used it in 2000 to ship, you used it in 2010 to ship, you used in 2020 to ship, and you will use it in 2030 to ship. Learn once, ship forever.


Language without rules that contains every function you will ever need to quickly get things done and ship. Forget about installing packages or upgrading versions – everything is just working. The code you wrote in 1995 still works in 2025. Deploying is an ftp upload to the web root or if you're using a smart text editor, Ctrl+s is live save directly in production. Get things done all day every day without ever leaving index.php. Plus, you will find all the answers for all your problems on Stack Overflow. Someone's been there and done that.

3 Perl

Made by Unix gods for Unix power users for getting things done at the speed of a regular expression. Language filled with Unix wit and wisdom. To truly understand Unix, you must understand Perl. When writing Perl, you'll breathe in oxygen and exhale working code that's already auto-shipped to production with the help of one of Damian Conway's modules.


The Tool Command Language, or as I like to call it, The Complete Language for those who want to ship faster than the speed of a string. Forget complex syntax and structures. With TCL, you get a minimalist dream that hasn't changed since the 80s. Your code from 1988 still runs in 2028. Need a GUI? Just add TK. It's duct tape for programming that holds everything together. Write, execute, ship. It's a language for nerds who value shipping over syntax and types. And don't worry about figuring things out – someone solved your problem on a 1990s Usenet archive.

5 JavaScript v1 (year 1995)

JavaScript has become the worst programming language but it still works in production if you use only the year 1995 features, such as the if statement, variables, and the while loop. Throw those together, add jQuery, and you have a working project that you can ship to your customers. It doesn't get better than that. But add 1 feature from modern JavaScript and you will never ship again because you will spend all your day deleting the node_modules directories.

Keep shipping and see you next time!