Sunday, July 26, 2015

Which programming language should i learn?

This damn question always pops in everyone's mind before learning any programming language. Which language should i learn? And why?

This post categorizes different programming languages using analogy with characters of Lord of The Rings

-via carlcheo.com 

Python - The Ent




Helps little hobbits (beginners) to understand programming concepts.

Helps wizards (computer scientists) to conduct researches.

Its easiest to learn, and widely regarded as the best programming language for beginners.

Its widely used in scientific, technical and academic field i.e. Artificial Intelligence.

You can build website in python using Django framework.

USED TO BUILD: YouTube, Instagram, Spotify

Java - Gandalf




Wants peace and works with everyone (portable)

Very popular on all platforms, O.S. and devices due to its portability.

One of the most in demand and highest paying programming languages.

Slogan- Write once, Run everywhere.

USED TO BUILD: Gmail, Minecraft, Most Android apps.

C - One Ring


The power of C is known to them all.

Everyone wants to get its power.

One of the oldest programming language in the world.

Popular language for system and hardware programming.

USED TO BUILD: Operating System and hardware.


C++ - Saruman




Everyone thinks that he is the good guy.

But once you get to know him you will realize, he wants the power, not good deeds.

Complex version of C with a lot more features. Widely used for developing games, industrial and performance critical applications. 

Learning C++ is like learning how to manufacture, assemble and drive a car.

Recommended only if you have a mentor to guide you.

USED TO BUILD: Operating System, hardware and browsers.


JavaSript - Hobbit




Frequently underestimated (powerful)

Well known for slow, gentle life of shire (web browsers)

"Java and JavaScript are similar like Car and Carpet are similar"
- Greg Hewgill

Most popular client side web-scripting language.

A must learn for front-end web developer (HTML, CSS as well)

One of the hottest programming language now, due to its increasing popularity as server side language (node.js)

USED TO BUILD: PayPal, front-end of majority of websites.


C# - Elf




Beautiful creature (language), used to stay in their land, Rivendell (Microsoft Platform), but recently started to open up to their neighbors (open source) 

A popular choice for enterprise to create websites and Windows application using .NET framework.

Can be used to build website with ASP .NET, a web framework for microsoft.

Similar to java in basic syntax and some features.

USED TO BUILD: Enterprise and windows applications.


Ruby - Man (Middle Earth)




Very emotional creature.

They (some Ruby developers) feel they are superior and need to rule the Middle Earth

Mostly known for its popular web framework, Ruby on Rails.

Focuses on getting things done.

Designed for fun and productive coding.

Best for fun and personal projects, startups, and rapid development.

USED TO BUILD: Hulu, Groupon, Slideshare


PHP - Orc




Ugly guy (language) and doesn't respect the rules (inconsistent and unpredictable)

Big headache to those (developers) to manage them (codes)

Yet still dominates the Middle Earth (most popular web scripting language)

Suitable for building small and simple sites within a short time frame.

Supported by almost every web hosting services with lower price. 

USED TO BUILD: Wordpress, Wikipedia, Flickr


Objective C - Smaug




Lonely and loves gold.

Primary language used by Apple for Mac OS X and IOS

Choose this if you want to focus on developing IOS or OS X apps only

Consider to learn Swift (newly introduced by Apple in 2014) as your next language.

USED TO BUILD: Most IOS apps and part of Mac OS X

1 comment: