Newsvine
  • Welcome
  • Help
  • Report Bug
  • Conversation Tracker
  • Your Column
  • Replies
  • Friends
Type Comments Since You Last CheckedArticle Source Last Checked Stop Tracking All Clear Tracking All
Advertise | AdChoices
Log In | Register
Close the Login Panel
Existing users log in below. New users please register for a free account.

New Users:

Existing Users:

E-Mail:
Password:
Forgot Password?
Please enter the e-mail address or domain name you registered with:
E-Mail/Domain:
Back to Login
Log Out
  • Top News
  • Local News
  • World
  • U.S.
  • Sports
  • Politics
  • Tech
  • Entertainment
  • Science
  • Business
  • Health
  • Odd News
  • More
    • Arts
    • Education
    • Environment
    • Fashion
    • History
    • Home & Garden
    • Not News
    • Religion
    • Travel
Visit Gablarski's column >>

GABLARSKI

gablarski.com
Articles Posted: 4  Links Seeded: 1
Member Since: 2/2006  Last Seen: 7/31/2006

What is Newsvine?

Updated continuously by citizens like you, Newsvine is an instant reflection of what the world is talking about at any given moment.

Get a Free Account
Help
Fun Stuff
  • Your Clippings
  • Leaderboard
  • E-Mail Alerts
  • Top of the Vine
  • Newsvine Live
  • Newsvine Archives
  • The Greenhouse
  • Recommended Articles
  • Wall of Vineness
Put a Seed Newsvine link on your own site

Programming Language comparisons are stupid.

Mon Apr 17, 2006 8:31 AM EDT
technology, programming, stupid, coding
By Gablarski
Advertise | AdChoices

After seeing yet another programming language comparison on Digg (of Java vs Python where Python won) I felt I had to say something. Please, for the sake of the sanity of intelligent programmers, stop trying to compare languages. With few exceptions, any intelligent developer worth his salt will tell you to use what is best suited for the project. Obviously that's not to say developers can't be against certain languages, like I dislike Python and Ruby (due to syntactical reasons), most languages have their place.

Real knowledge
The biggest problem with someone writing some silly article comparing languages is that nine times out of ten, they know one of the languages well and have barely touched the other and dislike it or have something generally against it. So they think, somehow, they are an expert on the subject and compare silly things like how many lines it takes to output "hello world" or some such nonsense. In most cases, exact line count is irrelevant anyway (obviously extreme differences are excluded, but you get my point.)

Simplicity != better
Another problem is most of these relative noobs tend to compare easiness with quality. For example, having dynamic variable types might make life easier in short scripts, but in large applications you'll wish for statically typed variables. Not to mention that many small bugs can be avoided because quality IDEs will warn you about type errors before you even get to testing the application. Heck, PHP is my language of choice and I wish it had statically typed variables (or at least the option.) Not to mention static types are faster then dynamics.

Verbosity
Verbosity is another silly thing to call a bad thing. It's purely up to personal preference. Sure, you might type a few more words here and there with a more verbose language, but if it makes more sense reading through trying to find that bug that's been bugging (not intended) you for hours when its 02:00 and you're tired as can be.

Syntax and language features
I'm really unsure how you can decide one of these as absolutely better then the other:

// Java
for (int i = 1; i < 10; i++) {
     System.out.println(i);
}
# Python
for i in range(1,10):
       print i

I fail to see how it's more then personal preference. Personally I'd go with the former, mostly because it's pretty much the standard way across countless languages (the loop of course.)

File separation
Most would say this is personal preference, but I disagree and I'm sure your co-workers would too when you're working on a project together and every time they try to submit changes they have to re-merge their code with yours (or wait until you unlock the file) because you went with everything in a single file. I suppose I could see that you should have the choice, but personally I feel a language forcing you to use a file for each class isn't a deal breaker (or giving you the choice a decision maker on whether to use a language or not.)

Multiple constructors
Hmm.. can you guess what I'm going to say? Personal preference. I can see both sides of this. I actually don't know which I like better. Multiple constructors can be annoying since you have to write a lot of duplicate code, but I usually overcome that with having the individual separate operations in the constructor and then an .init() to handle the common operations. A single constructor can be nice because you can assign everything to the arguments and since you'll need to do null/isset checks later anyways (and should) you don't need to deal with conditionals on whether to set them or not and you have one code base. On the other hand you have to deal with potentially large argument lists.

Conclusion
Pretty much no matter how you try to compare languages (unless you are running very specialized benchmarks), it comes up as pointless. Most aspects of programming languages are personal preference, and any attempt to compare the common things is silly and reeks of ignorance on the part of the person trying to compare them. Obviously there are very specialized features or methods that can potentially make languages better then others (not to mention speed or framework weight *cough*.NET*cough*), but for the majority of comparisons, this holds weight.

  • Enjoy this article? Help vote it up the 'Vine.

Back To Top | Front Page

Published to:

  • Gablarski's Column, All of Newsvine
  • Groups: none
  • Regions: none
  • Public Discussion (12)
artissoft

But Objective-C is the best. Other than that I agree. Sorry, could not resist...

  • 3 votes
Reply#1 - Mon Apr 17, 2006 1:49 PM EDT
Ooble

I just read through almost the exact same rant on a forum. I think you touched on everything there, including a couple things I hadn't thought of. Nice job.

  • 1 vote
Reply#2 - Mon Apr 17, 2006 5:59 PM EDT
Gablarski

Thanks :-)

  • 1 vote
#2.1 - Mon Apr 17, 2006 10:06 PM EDT
Reply
Firefly41

Completly agreee.....accept if anyone ever tells me there prefer prolog over Java in just gonna slap them.

  • 2 votes
Reply#3 - Mon Apr 17, 2006 6:18 PM EDT
Ooble

I adore Prolog, and I do prefer it over Java in certain circumstances. Mainly because I dislike Java, but also because Prolog is incredibly powerful when you use it right. You just have to turn your brain sideways.

    #3.1 - Mon Apr 17, 2006 6:23 PM EDT
    Gablarski

    Everyone has their personal preferences, but that's just what they are. I was more specifically talking about all these "side by side" comparisons we see. Certain languages are better then others, for specific tasks. Obviously there are just crap languages, but like I said for the most part each language has it's good-use scenario.

    • 2 votes
    #3.2 - Mon Apr 17, 2006 10:07 PM EDT
    Ooble

    "Prolog vs. Java" sounds like a side-by-side comparison to me. And a really stupid one too. :-p

      #3.3 - Tue Apr 18, 2006 4:17 AM EDT
      Firefly41

      i said prolog over java not prolog vs java meaning not a comparison but a preference, and sure it has its uses.....but its the brain sideways thing that gets on my nerves. I remember spending about 6 hours trying to write a program to go through a list and do something which i cant remember, but i never got it done, the same task took about 15minutes in java, and probably the same time in c...hell i could of done it in maude faster!

        #3.4 - Tue Apr 18, 2006 8:58 AM EDT
        Gablarski

        Hmm, I had actually never heard of prolog. With just looking at the tutorials I could tell you that for me, it's in the same boat as Python and Ruby: Makes me want to throw up looking at its syntax. That is, however, my personal preference ;-)

          #3.5 - Tue Apr 18, 2006 10:05 AM EDT
          Alexander Lash

          Feel free to slap a number of AI researchers I know. The structure of Prolog lends itself immediately and concisely to AI-centric problems that Java is utterly hopeless with. The best example I can think of is backwards-chaining goal-finding... but that's cheating ;)

          • 1 vote
          #3.6 - Tue Apr 18, 2006 11:32 AM EDT
          Reply
          marqmike2

          C... sorry. I personally think that if I had started using python or Java first I'd go with them.

          • 1 vote
          Reply#4 - Mon Apr 17, 2006 7:45 PM EDT
          Ooble

          "C", as in "I like C."? Or "C" as in "I think C is the best language."?

          • 1 vote
          #4.1 - Mon Apr 17, 2006 8:03 PM EDT
          Reply
          Leave a Comment:
          You're in Easy Mode. If you prefer, you can use XHTML Mode instead.
          You're in XHTML Mode. If you prefer, you can use Easy Mode instead.
          (XHTML tags allowed - a,b,blockquote,br,code,dd,dl,dt,del,em,h2,h3,h4,i,ins,li,ol,p,pre,q,strong,ul)
          Newsvine Privacy Statement
          As a new user, you may notice a few temporary content restrictions. Click here for more info.
          FUN STUFF:
          • Leaderboard |
          • E-Mail Alerts |
          • Top of the Vine |
          • Newsvine Live |
          • Newsvine Archives |
          • The Greenhouse |
          COMPANY STUFF:
          • Code of Honor |
          • Company Info |
          • Contact Us |
          • Jobs |
          • User Agreement |
          • Privacy Policy |
          • About our ads
          LEGAL STUFF:
          • © 2005-2012 Newsvine, Inc. |
          • Newsvine® is a registered trademark of Newsvine, Inc. |
          • Newsvine is a property of msnbc.com