• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Jeanne Boyarsky
  • Ron McLeod
  • Paul Clapham
  • Liutauras Vilda
Sheriffs:
  • paul wheaton
  • Rob Spoor
  • Devaka Cooray
Saloon Keepers:
  • Stephan van Hulst
  • Tim Holloway
  • Carey Brown
  • Frits Walraven
  • Tim Moores
Bartenders:
  • Mikalai Zaikin

Get Programming with Scala: What makes people think that scala is hard to learn?

 
Greenhorn
Posts: 13
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hi

I've been thinking about learning a new language for some time and I am currently leaning toward to scala.
However, I have gotten an impression that scala is very hard to learn.
What makes people perceive scalar is hard to learn to professional developer who already have 2 -3 languages under their belt?
And how does your book address this issue?

Thanks!
Young
 
Author
Posts: 21
5
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hi YJ Lee,
great question!

Scala combines two styles of programming that are very different: OOP vs FP.
Most of the people that try to learn Scala, they are also trying to learn FP at the same time -- and this makes things more difficult!
In my book we do not start talking about FP until we have fully reviewed the OOP side of Scala and you are fully comfortable with it - I do assume that you have some OOP experience, but no experience in FP.

Scala is extremely flexible and fun to work with.
The downside of this is that the same thing can be done in more than one way.
In Get Programming with Scala I teach you only extremely practical things -- if something is cool, but nobody uses it in their daily job because of their complexity, I am not gonna tell you about it.
My aim is not to show you everything there is to know about Scala, but to show you enough to be productive and to continue your learning path on more advanced resources if you wish to do so.

Finally, syntax is quite different from Java -- most of the people approaching Scala have a Java background -- and it can be overwhelming at the beginning.
In the book, every time I introduce a new topic, I give you a syntax diagram to visually summarize what you have learned, so that you can come back to it later and remind yourself what the topic was all about.

Cheers,
Daniela
 
YJ Lee
Greenhorn
Posts: 13
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Daniela,

Thanks for the great answer!
Yes, that would be hard to learn two things at once.
I do have OOP experience (C++)  but I remember that it was very hard to get OOP concept at first when I was moving from C to C++.
Hence, I can see how hard to learn new language based on new programming paradigm.

Thanks!
Young
 
Greenhorn
Posts: 22
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
I am a professional software developer of many years learning scala for new commercial project. Primarily I'm learning from Martin Odersky's book.
Whenever I veer onto the internet to find out why I should learn Scala the general theme is that it's a steep learning curve but worth it as X,Y,Z reveals itself.
I believe this is probably true and will preservere, however 14 chapters in and I spend most of my time viewing Scala as a command line application that runs in java. To date, and in the context of already knowing java, I would describe Scala as "unnecessary"
 
reply
    Bookmark Topic Watch Topic
  • New Topic