Java, Ruby, and even Python Sucks

There is a bit of a flame war unfolding between Javanistas and Rubyists. I could trace this most recent scuffle to an article posted on JavaLobby by Daniel Spiewak about a little Java library called ActiveObjects. The aritcle is promoting this Java-based but Rails inspired Object Relational Mapping library. ActiveObjects is a Java implementation of the Active Record pattern made famous by Ruby on Rails and it’s use of convention over configuration. In touting the benefits of ActiveObjects, Daniel complains and grossly exaggerates that in Hibernate “you have to write more XML than code!”

Gavin King, the founder of Hibernate, responded that XML was soo 1999 and now they overuse annotations. Gavin wrote, “Hibernate Annotations has been around since early 2005 and there is no longer any good reason for people to define mappings in XML.”

Out of the blue and into the blogosphere, Obie Fernandez responded to Gavin’s ‘FUDdly’ remarks with his top 10 rant why Java sucks ass! Basically Obie resorts to fighting FUD with FUD. Obie goes ballistic on compilers, IDEs, frameworks, libraries, High School Musical 2, and Java developers themselves. Obie rants that most Java Programmers are morons. From his writing, it is clear that Obie idol worships DHH as the fucking second coming of the fifth generation computer language era. Obie’s top ten reasons why Java sucks include that the language makes money for vendors. From his Ruby rage you think he hopes to make Java vendor money by writing Ruby books.

To add FUD to the flames, Daniel, which started the whole my milkshare (ORM) is better than yours drama, responded with his top ten reasons why Ruby sucks ass infinity times ten. Daniel writes, “Some of Obie’s points are either misinformed, or deliberately misleading.” According to Daniel, Ruby sucks goatse ass because more of most Ruby programmers are morons, Ruby has an annoying community, and because Ruby has DHH. Touché.

Now, I may be a bit late to the party but I also have my favorite reasons why Java sucks. I also think Ruby sucks too. And just for good measure, Python sucks the most!

Ruby Sucks Because

  • Ruby does not any major corporate sponsorship or backing
  • At RubyConf everybody wants to talk about Rails
  • At RailsConf half the audience is writing books from lectures given by the other half
  • Ruby is a DSL for Rails
  • Most people think that DHH wrote Ruby or never have heard of Matz
  • There is no language specification for Ruby
  • Ruby will fragment to different wannabe successors
  • JRuby will ultimately go where Ruby can’t, the enterprise
  • Closures are by no means unique to Ruby, get over it
  • Ruby and Rubyist seem to have an inferiority complex when it comes to Java, get counseling
  • Rails is too tightly mind controlled, managed, copyrighted, owned by DHH and 37signals

Java Sucks Because

  • Java has way to many freaking frameworks
  • There is sooo much to learn in developing an application
  • Java has far too many APIs and libraries that are designed by committee
  • People still think Java is slow
  • Java still suffers from the fiasco that was Applets
  • Java still suffers from the fiasco that was EJB 2.x
  • There too many flavors of the JRE (Java 5, Java 1.4, J2SE, JEE, J2ME, JWTF)
  • The JRE has a lot of junk in the trunk
  • Methods gets deprecated, nothing gets removed, the API gets bloated
  • Java does not always run everywhere, sometimes you need to go native
  • Java is still primitive
  • Java developers are a dime a dozen

Python Sucks Because

  • Python cares about whitespace, I don’t care for that
  • Python programmers are morons
  • I like David Chappelle better than Monty Python
  • Guido van Rossum doesn’t work at 37signals
  • Python has no personality like JavaScript or personalities like Dave Thomas
  • Python will never go mainstream, not even with Google’s backing

To be honest, the back and forth almost sound like ‘yo mama’ comebacks. I mean, this is all to reminiscent of the east coast/west coast baby mama drama between Biggie Fries and Six Pack Shakur. There’s even some would be wanksta crew hating on CGI, Pascal, Ada, and Basic.

Here are my Jerry Springer final thoughts, if programming languages evolve beyond closures and white space to natural languages, are we still going to have these language wars? If we where to program in a natural language, say in English or German or Hindi, we would be as writers. Our JEE applications would be as thick as Moby Dick and our Ruby on Rails CRUD applications thin as Dear John letter. We as programmers tend to think we are artists, do writers and artist act as such? Oh Hell Ya!!

Technorati Tags: , , , , , , , , , , , , ,

Windows Print Screen Key »
« Twelve Elements of JavaScript Style
 
Related Posts
Recent Posts
 

21 Comments so far

  1. bob on September 21st, 2007

    My name is not bob — my way of posting anonymously. It’s funny that you say Python sucks the most, but your criticism are of it are the least articulated and concerning. I agree with your view on Java though.

    “Python programmers are morons?” !!

    Can I even take you seriously? So, would the language be better if the people using it got along with you better?

  2. herval on September 21st, 2007

    yo mama sux because she doesn’t program Erlang!

  3. jonas on September 21st, 2007

    I’m not Jonas, but I have Bob’s back.

    I don’t think you can quantify the “Python programmers are morons.” And as a Python programmer, who occasionally thinks he’s moronic, I think that has more to do with me than Python.

    Whitespace….some care, some don’t. I find it readable.

    Personality….who cares. The tools in my toolbox have no personality, I’m interested in getting the job done not talking.

  4. bret on September 21st, 2007

    Sounds like bob and jonas lack the ability to detect sarcasm. Must be python programmers ;)

  5. juxie on September 21st, 2007

    read the fucking tag! it’s under Humor stupid!

  6. TechKnow on September 21st, 2007

    @Guido - I mean Bob/Jonas - You clearly are not a moron because you read the article and got the humor of it all. Agreed, some people think white space is funny, some don’t. Don’t feel bad about yourself, personally, I think .NET programmers more moronic than Python programmers.

  7. planetmcd on September 21st, 2007

    Funny post. Here’s my (sadly) non humorous take on the ‘debate’, Rails is Not Opinionated, it is Principled.

  8. somebody on September 21st, 2007

    “Java has way to many freaking frameworks ”
    I don’t eat chocolate cause there is too many kind.

    Go back to php you noob

  9. pcdinh on September 22nd, 2007

    “Java has way to many freaking frameworks ”
    When PHP5 with strong OOP support released on 2005, the same practice repeats in PHP world. There are too many MVC frameworks. However, most of them embrace nearly the same mind share. So developers do not have to learn a lot before switching from one to the others like in Java world.

    By the way, PHP does not have what make Java, Python, Ruby suck. As the result, it rocks. :D

  10. Cliff on October 1st, 2007

    Yo’ mama sucks cuz she speaks LISP with a lisp! No doubt, cuz… you’re off da’ hook with this post. I was looking for someone to shed light on the real problem… the people pointing out all of the problems. But wait, you didn’t trash talk Groovy at all!

  11. Aaron Mezer on October 9th, 2007

    I actually agree with your statements, especially about python. To quote google:
    “We’ve chosen python because our developers have less issues learning the simple structure.”

    It is truly the easiest language I’ve ever used, very easy. But it’s tedious, especially when you count that both compilers and interpreters are READING the white space, instead of passing it.

    Python was a solution for those who cannot understand Java, PHP, ASP, Perl, C#, etc. So, I belive you are correct in calling python coders morons.

  12. sleytr on October 14th, 2007

    Python is a solution for those who can understand stupidness and uselessness of all these languages.

    Python coders are smart and brave enough to learn a language for their selfs because they love it, not for a job from some company which uses some corporate supported mainstream platform.

  13. ahoge on November 10th, 2007

    Nice read :D
    Rails’ structure freaks me out from time to time.

  14. Rick O'Shay on November 10th, 2007

    The second I read that Python cared about spaces I donated the book to the company library. Last time that I checked, “easy to tokenize and parse” wan’t on the check list of important language features. I wan’t to write code, not do the compiler’s work for it.

    As far as Ruby, which really mean Ruby on Rails as far as all these discussions go, dynamic scripting languages increase productivity on the surface and having an MVC generator rocks. I hope nobody minds that I leverage those benefits using a syntax and idioms that are homogeneous with type-safe Java (read: Groovy and Grails).

    Regarding Java, having a gillion frameworks does suck, but you can solve that by choosing Java EE with JBoss Seam and Google Guice.

  15. Mike Jones on February 8th, 2008

    Python is already becoming mainstream lol. I agree with most of the other arguments though. (But i do like python)

  16. Miles Togo on April 7th, 2008

    Well its been a year and the major nit can still be picked: most ruby programmers are morons.

    Even some of the guys who have written “the” books, are sadly lacking in practical (!) experience.

    The rest seem to be a bunch of bandwagon jumping script kiddies who don’t know jack about engineering and development practices, and have little or no meaningful experience.

    Meanwhile, so-called Ruby gurus have struggled, flailed, and fallen flat on their faces in the last year as they experienced the effects of not knowing how to code properly and not knowing how to architect an application that can scale past write saturation issues in the persistence layer. We’ve seen it over and over again. Two good examples: MOG, and Twitter. Both built and run by people who didn’t really know what the fuck they were doing, at first. In Twitter’s case they got some relevant clues, hired some experience, and took care of business. In MOG’s case, they’re still flailing, because their lead engineer Lucas Carlson is both under-qualified and obnoxious prick whom nobody wants to work with (or so I’ve read, in several places, anyway).

    These are just two examples. There are more out there. RoR has a long way to go. Or maybe it should just “go”, period. Some people are remembering that they could do all of this in PHP in half the time and scale it for half the cost…

  17. foo on April 25th, 2008

    Python rocks !

  18. Levi Figueira on May 30th, 2008

    Interesting how I got here via a Java programmer, who is acknowledging that Rails (Groovy actually) is possibly the way we should go corporately. I don’t know any of the 3 but I’ll learn Ruby/Rails for “work” and I’m learning Python on my own. Of all the languages, Python is the one that attracts me the most BECAUSE of the whitespace and visual organization. I’m coming from the design field and even the little that I coded before (mainly PHP and Javascript) I cared about how my code was structured and commented. Talking to seasoned developers, they appreciate that I do that and we can all work together a lot more easily.

    But all this to say:
    1. Java does sucks… especially as a framework! In the last 10y, all the Java apps I used got throwned in the recycle bin because they are… SLOW (main problem with OpenOffice going mainstream IMO)
    2. Ruby, especially Rails, is booming because it’s fast and easy to develop on and highly maintainable. Also, Rails developers are usually Apple users (like myself) and tend to be very dedicated to their “preferences” and even “evangelistic” about it… I see a great future ahead for Rails.
    3. Python is an extremely versatile language that you can easily use to develop a command-line script on your box, integrate with excellent frameworks (like PyGTK) to develop very good looking applications, already has a great MVC (Django) and I’m sure more will come, and has a great community because it is a language that has been around for a while (since 1991).

    Again, that’s why I won’t learn Java and will learn both Rails and Python.

    My preference??? Python.

    Oh, and great article! ;)

  19. […] up in my arguments because I don’t know Java that well, he sarcastically sent me this link: Java, Ruby, and even Python Suck.Quite an entertaining article I should say, but what I really thought interesting were his points […]

  20. Asad Rana on June 23rd, 2008

    I am a professional software architect in UAE and let me tell you python programmers are usually morons…the language is all hype…they flood the internet about how great it is sort of like programming heaven…only reason their with python is because its a scripting language and they cant be serious programmers ever. By the way i consider waste of mental energy and time a sin…in conjunction with that comes the concept that python wont make anyone serious money. If you want to make money .Net is the way…as for java dont go their…too many of us south asians are willing to work for 1 dollar an hour!

  21. segmentation fault on August 15th, 2008

    I agree python programmers are morons, but thats not pythons fault :)

Leave a reply