The Perfect Language
Written By: An IntelliGenesis Senior Software Engineer
Back in the early days of programming, programmers had few choices when it came to programming languages. Times have certainly changed. The Institute of Electrical and Electronics Engineers (IEEE) Spectrum regularly ranks the top languages, and in 2017, they ranked the top 48 languages based on popularity. The languages ranged from Python in the number one spot, to ActionScript (a version of Flash) taking the number forty-eight spot.
Having forty-eight programming languages worthy of ranking is a huge leap from back in 1983 when Ed Post wrote his now-famous essay titled “Real Programmers Don’t Use Pascal” (Google it if you’re interested in having a laugh while learning about the “good ol’ days” of computer programming). Back then, Post wrote that real programmers use Fortran… for list processing, for string manipulation, for accounting, and for artificial intelligence (“if they do it at all”). It was all tongue-in-cheek, of course, but certainly reflected a time where the selection of programming languages was extremely limited compared to today.
Today, different programming languages are chosen based on a number of things, including what the programming task is, and almost as importantly, personal preference. Some languages are more suited for certain tasks than others, but most modern “general purpose” languages (Java, C (and its variants), Pascal, and others) can do an admirable job in almost any task.
So how do you select the right language for your task? Sometimes you don’t have a choice. In our line of work, Java is the predominant language for most tasks and Javascript (and related frameworks) is used for front-end applications. If you’re working on your own projects, the sky’s the limit and you can find plenty of resources online to help select the perfect language to match your personal preference and to meet the technical needs of your project.
It might be best to stay away from using Fortran for list processing and AI (unless you’re Ed Post), but the perfect language that meets both personal preference and a project’s technical needs is something about which you’ll rarely find universal agreement… but fortunately, there are plenty of flavors for every taste!