>> Because you're sick and tired of maintaining other peoples EJB/Struts/whatever
You'll be just as sick and tired of maintaining other people's (and
your own) Scala code in six to nine months, except you'll be doing it
for less money and the code will be in flux all the time. The solution
to the "sick and tired" issue is to have a life outside of work. :-)
>> That sounds more like an enterprise mindset to me.
To me this sounds more like common sense. Programming is a social
activity, and things just work better if more than a few devs on the
team understand the language you're coding in. It also helps to give
the developers as little rope as productively possible, otherwise you
will see people using insane combinations of the most obscure features
just to prove to themselves they can use those features. Seen it
happen with C++ in the past quite often. Folks would learn templates,
get excited, and come up with the most complicated design possible.
You'd just sit there staring at the code in the debugger and go "WTF
was he trying to do here?" Sure, it's generic as hell, but no one will
ever use its "genericness", and bugs take much longer to fix all of a
sudden.
That's why e.g. Google uses only C++, Java and Python. Heck, David
mentioned it took him months to really figure out Scala, and I'm
pretty sure he's better than your average dev by a good margin. It
would probably take him all of 20 minutes to figure out Groovy, and a
day to learn Python. OK, maybe a couple of days, at a leisurely pace.
> But the choice of implementation platform/language is seldom the cause
> of startup failure.....but I guess that's for another forum :-)
That's probably because they tend to pick less exotic stuff. PHP, RoR,
Pylons, Grails. This is not to say that you can't build a successful
startup with Lift -- it's 100% feasible, no question about it. I'm
just saying that a lot of the folks you hire will be crushed by the
cognitive load required to learn both a radically new (and rather
complex) language and a web framework that represents a significant
departure from all the imperative stuff they're used to.