

Rails creator, DHH, on Java and the other 'junk' - nickb
http://www.infoworld.com/article/07/08/31/Rails-creator-on-Java-and-other-junk_1.html

======
Jd
Title is a bit misleading. The 'junk' DHH refers to is the baggage of
enterprise apps generally (which everyone knows), not a specific diss against
Java.

------
gscott
Programming in latest greatest language = bad.

Time is an investment in your future, when you take the time to learn a
language, you have invested in yourself. If you pick some new on the block
language like Ruby on Rails is that a good investment?

~~~
DocSavage
The language is Ruby. "Ruby on Rails" could be considered a domain-specific
language, but most think of it as a web application framework built on Ruby.
Learning a language that exposes you to new ways of programming is a good
thing (tm). Learning a language that broadens your mind AND makes you more
productive is even better. Is it a good investment for you? Depends on what
you already know. If you already have good knowledge of a reasonable language
+ framework (e.g., Python/Django), then you might just want to go off and
build your business. If all you know is PHP and you've been hand-coding
spaghetti web apps, then learning RoR is a good investment, if at least to
expose you to some reasonable programming patterns.

~~~
hello_moto
Correct me if I'm wrong, but isn't Ruby still an OOP language? so in a way,
there is no "new ways" of programming so to speak. Just that Ruby is dynamic
whereas C-based family languages aren't.

~~~
palish
Ruby's main advantage is that they've nailed the syntax sugar in all the right
places. For example, given function foo:

    
    
     foo()
    

is equivilant to

    
    
     foo
    

Also, code blocks are specified outside the function argument list. Something
that looks like this in javascript:

    
    
      foo(a,b,c,d,function() {
        console.log("some callback")
      })
    

would look like this in Ruby:

    
    
      foo(a,b,c,d) do 
        puts "some callback"
      end
    

or even just:

    
    
      foo(a,b,c,d) { puts "some callback" }
    

That last one isn't a function definition.. it's a function call equivalent to
the example before it.

It's mostly the fact that it -looks- cleaner in all the right places that
makes it appealing. That and the massively powerful web framework built on top
of it.

~~~
hello_moto
But Ruby is still OOP right? And these syntatic sugars don't really change the
way people program in a hardcore way no?

Basically this is another way to make your loop looks nicer but nothing more.

You could argue this case if the language in the topic is something like LISP
or Haskell compare to the C-based languages.

~~~
palish
But.. Erm.. making a program nicer is the sole purpose of all high level
programming languages. Programmers read a lot more than they code. The nicer
it makes your program, the more powerful it is.

~~~
gscott
As pretty as it may be, picking a language is an important choice, the oldest
web application I have designed has already been online for 7 years and I
expect it to last more or less forever. So making a choice of language is
important, jumping on the bandwagon of the latest and greatest (and it does
sound pretty good) might be a problem later on. My point was more about making
a long term decision.

~~~
davidw
This is a calculation that depends entirely on your circumstances. As a
startup, you want to get the best product out to as many people as fast as
possible, 7 years in the future be damned. Other circumstances (such as being
a big corporation) demand more attention to other aspects such as
maintainability.

------
Tichy
Wow, just say "Java is junk" and you get 20 points of karma?

~~~
run4yourlives
Well, many people (myself included) honestly believe so.

I think DHH nails it in the article when he likens Java's failure to input
from "multiple special interest groups".

Java is design of a platform/language by committee, and is a PITA because of
it. I'd rather use classic ASP and trim my app's purpose than use Java/J2EE
and implement the monstrosity.

~~~
Tichy
Hm, and ASP was not designed by committee? I thought it is a Microsoft thing,
which hardly lends much hacker credibility.

Contrary to what many people think, Java is actually often the coders choice
in the companies that adapt Java. It is not only a management decision - in
smaller companies, the coders actually have a say...

