I started learnimg Scala in the midst of the "2.7 vs. 2.8" turmoil and all I can say is that it wasn't just fairies and unicorns. Hopefully that's gone now and everything I use seems to work with Scala 2.8. All I can say is that I love the language and I keep using it. It's fit for super-serious development.
I sometimes think the problems came from library authors that jumped to Scala 2.8 too soon. Kudos to the Lift framework guys for maintaining builds that work both with Scala 2.7 and 2.8!
Go out and start using it. Sure 2.8 was a major upgrade but everything improved with that update for the better. Martin's reply is key. He's completely behind making the language a real success.
I am happy with 2.8, I use it to develop another programming language :-) I am careful though to depend not too heavily on Scala libraries, because of surprises I have experienced in that area, too. But honestly: there is just no other programming language as mature as Scala while being as productive (until my new programming language is finished, that is :-))
I find it hard to take someone with an opinion like this seriously. C#/.NET/CLR is a fantastic platform, and if it does what you want (and Mono is sufficient for your cross-platform needs) then that's all that should matter.
http://www.scala-ide.org has come a long way and can be usable and useful. I recommend a clean install of eclipse 3.5.2 with the latest recommended build of scala-ide. Try things out without installing additional plugins except your favorite version control support. I like the refactoring and code reformatting support!
I've recently started using the IntelliJ EAP X builds for a personal project in Scala and find it usable and useful too.
The maven-scala-plugin is solid and will let you switch between IntelliJ and Eclipse relatively easily. I don't use the maven eclipse plugin but instead "mvn eclipse:eclipse" from the command line whenever the pom changes. Using a pom-based build is useful in a production environment especially if you are using/providing components from/for others. IntelliJ has maven support built-in and seems to work well.
I've only pushed the IDEs to ~40 source files. Things might start breaking as the projects get bigger.
Things are definitely better than they were a year ago and thanks to both the scala-ide and IntelliJ people!
I'm used to doing everything in emacs anyway, so the IDE issue wasn't much of a hindrance. I didn't find the learning curve all that steep either, although I do have some prior experience with other functional languages. Overall I found Scala an extremely nice language to work with.
I've put it on the back burner for now though because the job market is still so tiny. If I see more people looking for Scala skills I'll make it a priority again.
This sentiment is how I felt about Grails a while back.
I think the big issue is versioning. Learn it! A.B.C
Changes in C denote bugfixes, small changes, etc.
Changes in B denote feature additions/deprecations, non-API breaking changes, etc.
Changes in A denote major architecture changes and/or backwards incompatibility.
THUS:
Everything with "A.x.x" is compatible with previous versions of A.x.x.
Everything with "A.B.x" is compatible with everything else of A.B.x.
As the author stated, Scala 2.8 should have been Scala 3.0. It seems to me the author is less peeved about the change itself, than the confusion caused by not using version numbers the way many people expect, i.e. with meaning.
I sometimes think the problems came from library authors that jumped to Scala 2.8 too soon. Kudos to the Lift framework guys for maintaining builds that work both with Scala 2.7 and 2.8!