One IT expert and educator discusses the how and why of choosing the right programming language
“Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live.” -John Woods
Way back in the 1970s, working as a computer programmer was quite prestigious, and if you wanted to get into computer programming, your potential employer would more often than not put you through a batch of aptitude tests in order to determine your suitability: even if you had a degree.
Nowadays, programming is more widespread and you don’t need a degree to be a programmer; it’s no longer mainly for scientists and engineers: students studying the humanities, English as a foreign language students, people building websites, and a whole host of other folks are learning to program. This non-technical article will give you novices [non-expert instructors] out there some basic guidance in choosing a programming language that is appropriate not only for your students’ needs, but for faculty and staff interested in online basics.
The most important question on people’s minds will probably be, “What programming language(s) do I need to learn?”
In order to answer this question, a personal PAL (Purpose, Ability, and Level) should be able to help. A person’s PAL will guide him or her through the complex maze of programming languages so that he or she can find the most suitable one(s):
Purpose: What you need to do, will determine what programming language(s) you need to learn. It is of the utmost importance that your purpose is correctly served by the use of an appropriate programming language: choosing the wrong one may result in a program that is wholly unsuitable for your purposes–as well as wasted hours of code writing.
Ability: If you aren’t especially logically wired, avoid learning difficult programming languages. If you are faced with choosing from several almost equally appropriate programming languages–always go for the one(s) that are most appropriate for your ability–otherwise, you’ll soon discover that “Profanity is the one language all programmers know best.”
Level: Make sure that the chosen programming language is at a suitable level of complexity and appropriateness. You wouldn’t try to teach calculus to kids at grade school–so don’t select programming languages that are either excessively complex or inappropriate for your students’ level of maturity and education. Let’s now look at some specific situations…
(Next page: the top 20 languages and when to choose them)