Scala - Beginners guide help


#1

Hi Team,

I am new to this community and also would like to learn Scala . I am not from open source background , please advise for good tutorial /course explains concepts in depth for beginners .

Editor needs to use to learn Scala ?

Thanks
Balaji K


#2

If you don’t have much previous programming experience, your options are a bit limited. I know of Atomic Scala and my materials. I’ve been teaching CS1 and CS2 using Scala since 2010. I have video lectures posted on YouTube that anyone can view and textbooks published by CRC Press.

CS1 - YouTube Videos, Textbook
CS2 - YouTube Videos, Textbook

If you have a fair bit of programming experience, there are a lot more options. The ones I normally recommend are the courses EPFL has created on Coursera or “Programming in Scala” by Odersky, et al. and “Scala for the Impatient, 2nd Edition” by Horstmann.


#3

Hi, my guess is, you’re not from an open source background–that means that you work in commercial software? Maybe Java, something like that?

Anyway, Scala is a bit of a different mindset from regular OOP, primarily because we use the type system a bit more heavily, especially to control what we call effects (i.e., things that would be side effects if they were uncontrolled, like input/output, randomness, exceptions).

So to my mind a really good way to get into the ‘effectful’ mindset is what we call the Red Book: Functional Programming in Scala by Bjarnason and Chiusano. I would recommend you try to work through that book if you are already a software dev, it will really put you into a Scala mindset.

Update: I just remembered you asked about an editor. IntelliJ IDEA will work if you install the Scala plugin but be sure to install the Scala toolchain first–JDK 8 or 9, then sbt.


#4

Thanks!!


#5

Hi I am from Mainframe background , just completed basics learning on Scala . I am going thru Scala cook book written by Alvin Alexander . Will post my questions to the forum if i struck with my logic .
My questions initially will be simple or sound to be silly since i am beginner in scala . please execuse.


#6

Nothing to excuse – beginner questions are explicitly welcome here…