Programming Languages: In layman’s terms, what are the major programming languages, and what are they used for?

(reposted from this Quora answer because it’s just great)

Programmers have a surprisingly intimate relationship with the programming languages they use. Your programming language will frustrate you, and enlighten you. Over time you will learn your programming language’s inner workings and little quirks. It will get inside your head, too, and change the way your mind works. 

Choose the right programming language and together you will create something new and beautiful. Choose wrongly and things can get very messy indeed.

In other words, choosing a programming language is much like choosing a romantic partner…

(Note: I’m a straight guy. If you’re not, feel free to do a mental find/replace with whatever you’re into).

PHP is your teenage sweetheart, the girl you first awkwardly fumbled around with that one summer. Just don’t try and start a more serious relationship - this girl has serious issues.

Perl is PHP’s older sister. She might be a bit old for you, but she was pretty popular back in the 90s. In a long-term relationship with Larry Wall, so her standards have dropped, and she’s looking seriously fugly now. “I don’t care what y’all say, I still love her!”, he says. No-one else does.

Ruby is the cool kid of the scripting family. When you first saw her, she took your breath away with her beauty. She was fun, too. At the time she seemed a bit slow and ditzy - though she’s matured a lot in the last few years.

Python is Ruby’s more sensible sister. She’s elegant, classy, and sophisticated. She’s perhaps too perfect. Most guys are like “dude, how can you not like Python!?”. Sure, you like Python. You just consider her the boring version of the edgy and romantic Ruby.

Java is a successful career woman. Some people who’ve worked with her feel she owes her position less to ability and more to her knack for impressing the middle-management types. You might feel that she’s the sensible type you should settle down with. Just prepare for years of “NO THAT DOESNT GO THERE GOD YOU ALWAYS USE THE WRONG TYPE INTERFACE AND YOU MISSED A SEMICOLON” nagging.

C++ is Java’s cousin. Similar to Java in many ways, the main difference being she grew up in a more innocent time and doesn’t believe in using protection. By “protection”, I mean automatic memory management, of course. What did you think I meant?

is C++’s mom. Mention her name to some old grey beard hackers and they’re sure to reminisce with a twinkle in their eye.

Objective C is another member of the C family. She joined that weird church a while back, and won’t date anyone outside of it.

Haskell, Clojure, Scheme and their friends are those hipster, artsy, intellectual girls you probably spent a blissful college summer with a few years ago. The first girls who really challenged you. Of course, it could never have become something more serious (you tell yourself). Though you’ll always be left asking “what if?”

You might be put off C# due to her family’s reputation. But they’ve gone legit, the last few years, they tell you. Once you’re one of us, you’re one of us, you hear? You need a database? Her brother MSSQL will hook you up. Need a place to stay? Heck, her daddy will even buy you your own mansion on Azure avenue. What’s that, you’re having second thoughts about all these overly friendly relatives? No, you can never leave. You’re part of the family, now, ya hear?

Javascript - hey, wasn’t that the girl you first kissed, way before even PHP came on the scene? I wonder what she’s doing now. I hear her career’s really taken off in the last few years. Would be cool to catch up some time, if only for old time’s sake… (You catch sight of her, dressed head to toe in designer jQuery)… wow, somebody grew into a beautiful swan…

  1. golden-armadildo reblogged this from appliedmathemagics
  2. unsingure reblogged this from appliedmathemagics and added:
    I love this!
  3. dismalicious reblogged this from appliedmathemagics
  4. dengsyyy reblogged this from appliedmathemagics
  5. phoenixwolff reblogged this from appliedmathemagics
  6. system-error-try-again reblogged this from appliedmathemagics
  7. the-violent-take-it-by-force reblogged this from appliedmathemagics
  8. pcdevil reblogged this from appliedmathemagics
  9. onesideisgreatness reblogged this from appliedmathemagics
  10. mad-n-mat reblogged this from appliedmathemagics
  11. hm0880 reblogged this from appliedmathemagics
  12. foresthillbilly reblogged this from jesswang
  13. ridikulusreasons reblogged this from keyvoon
  14. jesswang reblogged this from acoloredcanvas and added:
  15. keyvoon reblogged this from acoloredcanvas
  16. acoloredcanvas reblogged this from sulfurargonaluminiumiodine
  17. sulfurargonaluminiumiodine reblogged this from mangofarmer
  18. mangofarmer reblogged this from loveablegeek
  19. maneatingbadger reblogged this from worldiary
  20. xplusplus reblogged this from worldiary
  21. worldiary reblogged this from loveablegeek
  22. harwood91 reblogged this from loveablegeek
  23. loveablegeek reblogged this from appliedmathemagics
  24. theresmoreinasmile reblogged this from appliedmathemagics
  25. foliedegrandeur reblogged this from appliedmathemagics
  26. bocadebuho reblogged this from appliedmathemagics