May 22, 2018

When Language Matters

Many discussions about which programming language is best seem to end up devolving into what resembles a religious war. Every language has its strengths and weaknesses, so a case can be made for just about any language in such arguments.

However, often such discussions are fruitless, as for most problems any language could likely solve the problem. But there are times when which language you use does matter. So here is my beginning list of reasons why you might want to consider learning a new programming language rather than sticking with the one you know:

  • When you can’t be understood by those you must communicate with. Colleagues on the same team really need to be coding in the same language. There are all kinds of integration problems that are created by trying to build and maintain a complicated codebase across languages. Period.
  • When you take a significant performance or functionality hit by sticking with your old language. Some technologies (e.g., Hadoop) expect you to code in a particular language (e.g., Java). Sometimes, if you don’t code in the language a given technology expects, you will take a hit in either performance or functionality, or both. If you’re just fooling around, perhaps this is OK. But if what you are building is going to go into a production environment, think again.
  • When useful libraries are not available in your native language. One of the most useful aspects of modern software development are the many code libraries that are available to perform common tasks. These days, just about any coding project begins by determining which libraries will be useful for a particular project. You shouldn’t be reinventing the wheel instead of simply pulling it out of the warehouse. However, if your native language lacks key code libraries that are available in a different language, perhaps it’s time to add another language to your repertoire.

What do you think? Are there other reasons that may be weighty enough to force you out of your comfort zone into a new programming language?

Roy Tennant About Roy Tennant

Roy Tennant is a Senior Program Officer for OCLC Research. He is the owner of the Web4Lib and XML4Lib electronic discussions, and the creator and editor of Current Cites, a current awareness newsletter published every month since 1990. His books include "Technology in Libraries: Essays in Honor of Anne Grodzins Lipow" (2008), "Managing the Digital Library" (2004), "XML in Libraries" (2002), "Practical HTML: A Self-Paced Tutorial" (1996), and "Crossing the Internet Threshold: An Instructional Handbook" (1993). Roy wrote a monthly column on digital libraries for Library Journal for a decade and has written numerous articles in other professional journals. In 2003, he received the American Library Association's LITA/Library Hi Tech Award for Excellence in Communication for Continuing Education. Follow him on Twitter @rtennant.


  1. 4) Because it’s fun.

  2. Oh heck yes. I grab /everything/ from the library. Books, DVDs, expetimenrs that I keep for one day and then bring back the next. I sort of have to, as I don’t have a job!The state of Minnesota has a free interlibrary loan system and upon realising that some people have to pay for them, I feel the need to use it even more. I’m becoming rather fond of grabbing obscure foreign movies, most recently John Woo movies, and usually a nonfiction, currently diplomatic WWI things, to peruse alongside the fictions.