Yes, Virginia, Scala is Learnable
Paul Snively writes:
We’re using Databinder Dispatch a lot in the Cloud Services Engineering group at VMware, and late last week I was discussing it with one of my colleagues, a very senior (not average!) Java developer. I showed him a snippet of Dispatch code and said I wouldn’t expect anyone to understand it on first reading. He seemed surprised by that, unfortunately in the sense that he seemed to believe that it was expected that team members understand Dispatch code on first reading. Then Dave Pollak’s excellent Yes, Virginia, Scala is Hard post appeared, calling me out by name. 🙂 While it’s extremely flattering that Dave thinks I’m a statistical outlier with respect to programming language expertise, his comment, along with my disappointment to find that a very capable colleague apparently felt pressure to understand something that I expect no one to understand immediately, impels me to try to address the question of Scala’s complexity.
He concludes:
My one-sentence summary, though, would be: there’s no substitute for actually learning the language, and yes, Virginia, Scala is learnable.
Perhaps a bit unfair but I am reminded of efforts to make metadata more “accessible” to people, innocent of any formal information/library training, who built data sets used by millions daily. Interesting I suppose but then I recall when Alta Vista was “the” search site. How many users could today even correctly identify the name? There will always be far more users looking for simple facts, surmise and rumor than those interested in more sophisticated analysis.
My counsel is to learn both the more sophisticated and perhaps even historical systems. You can always dumb delivery down.