Mais uma excelente talk do Steve Yegge.
Scala, now, is the tiger that’s going to kill Java. Because their [type-talisman] argument now has become a paradox, similar to the Paul Graham Blub Paradox thing, right? Because they’re like, “Well, we need static typing in order to engineer good systems. It’s simply not possible otherwise.”
The Scala people come in and they go: “Your type system suuuuuucks. It’s not sound. It’s not safe. It’s not complete. You’re casting your way around it. It doesn’t actually prevent this large class of bugs. How many times have you written
catch (NullPointerException x) ... in Java? Our type system doesn’t allow [things like] that.”
Our type system does what you said your type system was doing.
So, therefore, you should be using it! ∴
And the Java people look at it and go: “Wehellll… (cough cough)… I mean, yeah, I mean… (*ahem*)” (running finger under collar, as if sweating profusely) They say, “Welllll… you know… it’s awfully… cummmmmbersome… I…”
“We can actually get around the problems in practice that you guys say your type system is solving through Good Engineering Practices.”
(laughter begins to grow)
HA!!! (I point accusingly at the audience, and there’s more laughter)
So Scala is creating a real problem for [Java's] static typing camp now. Because their last little bastion of why they’re using it, the whole tigers argument, they’re like, “Ah, well… we… we keep shotguns in our house.” [This is what they've been reduced to.]
So back to dynamic languages!
In this six months Steve could have contributed to the rails core and improved the framework to a great extent. If he found security issues like the article refers than he should have fixed them in rails. I cannot even begin to understand why he didn’t by the way. Or at least reported them.
My conclusion of seeing that google allowed a employee to waste 6 months of work because they don’t want to increase the number of languages that must be supported by their infrastructure is that Google is Dumb.
The question is:
So will this bring something new to the web?
Yes! But it’s not that this wheel is great and the other was flat. It can bring something but just because Google has the power to do that, in any language they decide to use. They have the man power to go beyond what rails offer.
But does this make the decision less dumb?
No. They could do it in rails and improve a great open source product.
Or is it that hard for engineers at google to learn a new language??