Killer Applications and Libraries For Programming Languages
Created On: 2016-09-03
Sometimes we use a language not because it's the best of the world, but because of excellent library support for a particular task. These are known as killer applications or killer libraries. One popular killer application is ruby on rails, which basically every web developer has heard of.
In this post, I will list killer applications that I know about, in no particular order.
- Popular web frameworks (Many languages)
- Ruby on Rails (Ruby)
- Django (Python)
- Spring MVC (Java)
- Phoenix (Elixir)
Popular web frameworks generally make web development easier, especially for beginners.
- Wordpress (PHP)
The most popular CMS in the world.
- Node.js (Javascript)
Brings Javascript outside the browser. Node and npm totally changed the Javascript ecosystem.
- Emacs (Emacs Lisp)
An editor that is powerful and extensible. You may be interested to read What Makes Emacs Different and Unique.
- Android SDK (Java)
The SDK for the most popular mobile OS. I don't like Java much, but when developing apps for android, I use Java.
- Scrapy (Python)
A co-routine based web crawling framework. It makes it easy to extract and store useful information from web pages.
- NumPy, SciPy, SymPy, Matplotlib, Pandas, IPython and friends (Python)
They make scientific computing possible and fun in python.
- Microsoft Office (VBS)
Microsoft Office is not going to disappear anytime soon. To automate your work flow within office, programming in VBS is an easy choice. For me, it is much inferior than emacs lisp in emacs, especially for the documentation quality.
- Parsec, attoparsec and friends (Haskell)
Monadic parser combinators in haskell makes writing a formal parser so much easier and more pleasant. No more ad-hoc regular expression based parsing.
- OTP (Erlang)
This may not be fair because OTP comes with Erlang from the start. Nonetheless, OTP is still a killer library for Erlang.
- jQuery (Javascript)
jQuery provides a more user-friendly and consistent DOM API to make client side scripting easier. Although not as important as it was in the early days, it's still useful when aiming a broad browser support.
- lisp macro, code-as-data (multiple languages in lisp family)
It has more or less become the only distinct lisp feature that is not in other main stream languages. You can read more about common lisp in Why didn't Common Lisp fix the world?