Over the last few years many librarians have asked themselves, “What programming language should I learn first?” If you’re a librarian (or aspiring librarian) and you haven’t asked, you probably should!
What’s at stake? Perhaps your job. Many information science professionals are expected to have some level programming knowledge. And yes, even for some non-technical jobs like librarians, archivists and catalogers.
To help answer this important question I’m bringing to you highlights from a discussion that took place in June 2013 among 16 information professionals on the American Library Association’s Library and Information Technology Association Listserv.
Long story short, you will get a different answer depending upon whom you ask. This is due to people’s personal preference, but also because there is no perfect language for all scenarios.
Type of Languages
In the programming world, there are several categories of languages. Those discussed in this post fall under two: compiling and scripting. Many say that scripting languages are easier to learn and lead to quick results. This can be a confidence booster for skeptics and newbies. Compiling languages teach more foundational concepts and can be used to do things like create an android app. However, they tend to be more tedious.
Tip #1: Start Simple
The great thing about programming languages is that once you learn the basics and have a bit of experience, learning new languages becomes easier. If you’re someone how enjoyed instant gratification and can’t deal with long delays before you see results you should start with a simple scripting language.
Tip #2: Immediate Use
Some believe that the best language to study is the one you have most immediate use for. It will stick with you better and you can apply the new knowledge immediately. Consider a service or a product that already exists or you want to create and go from there.
Tip #3: Determine Specific Needs
Figure out what you want to accomplish and use that end goal to direct you towards an appropriate programming language. Examples:
- Content management system or web development? Learn PHP. Some of the top open-source CMS (e.g. WordPress, Drupal) platforms are built on it.
- Data and database related? Turn to SQL.
- Library related? Look into XML/XSLT. In addition to being simple to learn, XML is a flexible markup language that can encode documents in both human-readable and machine-readable formats.
More on the Top Languages
Although several languages were mentioned in the ALA discussion thread, here is a bit more detail on the three most mentioned programming languages:
Java: Though it can be difficult to learn, Java exposes you to important foundational programming concepts. However, Java gets complicated quickly and is focused on “doing the right thing” which will prevent some people from getting the job done.
Python: This seems to be a language that many librarians start with and Google’s non-programmers can get training in. Python is a sound and user-friendly general-purpose programming language that can do many things. Furthermore, it will equip you with an understanding of programming to facilitate the learning of other languages.
Final Words of Wisdom
Still don’t know where to start? Let what you read soak in. Also remember, there is no perfect language for all scenarios, so just pick one and jump in.
The biggest thing to keep in mind is stick with it! It’s a computer; you can master it. At some point, you may feel lost or that you’ll never become proficient. But when that happens, just remind yourself that you can do anything you can wrap your mind around. I wish you success on your journey!
(Editor’s note: This article originally appeared on Lassana’s blog.)