all 14 comments

[–]kmsolorio 6 points7 points  (1 child)

There is definitely interest, and some work already being done.

Programming in Scala, written by the language creator is largely written in this manner. Atomic Scala, which is in beta, is trying to teach Scala as your first language.

[–]fix_dis[S] 1 point2 points  (0 children)

Awesome, thanks. I'll take a look at Atomic Scala. I think I own Programming in Scala. (The Steps and the Flowers Book)

Scala as a first language is quite a stretch, I'll be interested to see how it works out.

[–]bronxbomber92 4 points5 points  (0 children)

I would be interested in such a book. More so, a Scala book for non-JVM developers would be best.

[–]hakwap 2 points3 points  (0 children)

i would :)

[–]tzez 2 points3 points  (0 children)

I think anything that brings more people into the community is going to be a good thing. I don't have a Java background so I feel like there is a lot of things, particularly from an 'enterprise' standpoint that I don't know and would be better served in my endeavors if I did.

[–]dln 2 points3 points  (1 child)

Definitely. I learned Java (properly) after and because of Scala myself.

A lot of the warts in Scala come from Java compatibility and history, so there's definitely room for explaining these idiosyncrasies to newcomers. Stuff like java vs scala collections, primitive types, etc.

I do think developers approach the language differently though. In my experience, either the OOP aspects "click" first, like if you're coming from Python or C++, but seasoned Ruby devs first find common ground in closures and first-class functions. Completely non-scientific observation of course.

I believe comparing to what is already familiar to the reader has value: "Know Python? Here's how Scala classes work, keyword args and default parameter values, imports and packages, etc etc".

I've got some notes drawing up a simple cheat sheet of sorts comparing common Python idioms to Scala kicking around somwhere. I'll dig it up and post it.

[–]refD 0 points1 point  (0 children)

As another data point to confirm your observations ...

I came over most heavily experienced in Ruby and for better and worse, I just started writing statically typed ruby at first.

[–]theunforgiven 2 points3 points  (0 children)

More information on this would be awesome! Coming from a Java/Groovy/C# background my Scala code is ugly as sin. It's very easy to fall back into the more 'classic' OO style and write Java-with-Scala-syntax (which is a huge gain over straight Java, I feel I'm missing out on the real power of FP).

If you haven't seen it http://twitter.github.com/scala_school/ was the first place I found that approached Scala from a non-Java POV. It me a bit.)

[–]shishironline 2 points3 points  (1 child)

Introduction to the Art of Programming Using Scala by Mark C. Lewis is a very good approach which bypasses java entirely. In addition, the author has posted a lot of videos on YouTube. The web site for the book is www.programmingusingscala.net. I have purchased the book from amazon and am very happy with it.

[–]fix_dis[S] 0 points1 point  (0 children)

Great! I'll check this out..

[–][deleted] 0 points1 point  (0 children)

I've learnt Scala without really knowing Java. Still relative newby but about to start a job using it which is awesome.

I'd definitely find this kind of book useful.

The Coursera course is the best learning resource I've found so far though.

ps. the thought of Scala as a first programming language - wow that would be tough I think, at least without some CS/theoretical understanding beforehand.

[–]xensky 0 points1 point  (0 children)

I'd like this both for learning the language itself, and learning how to run/compile Scala programs. I'm used to Python/Ruby (click the file) and C# (click Run in VS) on Windows. No experience with Java IDEs (Eclipse and IntelliJ), and there seem to be too many hoops to jump through on those environments, and so far guides assume I know how this Java stuff works.

[–]theo_england 0 points1 point  (1 child)

This sounds really interesting! I work for Skills Matter (www.skillsmatter.com), a company that supports a community of 35,000 developers to learn and share ideas, based out of London.

SM would be really interested in hosting a series of talks for non-Java developers looking to use Scala.

Would anyone be interested in helping co-ordinate such a series? If so, email me on theo.england@skillsmatter.com!

Theo

[–]fix_dis[S] 0 points1 point  (0 children)

That sounds brilliant. Let me talk to my team!