 an expert overnight, but they'll get you
to know most of the Scala features you're likely to encounter in the wild, and
to be able to read and learn from most Scala OSS projects.

~~~
SatvikBeri
I actually learned Scala from this book, and the only languages I had used in
production before were Python and Fortran. I don't think learning the
functional subset first made it harder for me to learn the object-oriented and
imperative parts later on. Plus, understanding the functional subset gives you
a better understanding of many of the internals, such as what `for`
comprehensions are actually doing.

Of course, if you _just_ read one book and stop there, I'd agree. But most
people will continue learning from tutorials, videos, stackoverflow, etc.

I've also seen several other people learn Scala this way, usually without
knowing any functional programming before, and really haven't seen any signs
of issues wrt not understanding code written in other styles.

------
scalatohaskell
Depends on your level. Scala is extremely powerful, and so can be you. Just
pick progressively more and more advanced books, and you'll be there in no
time. Compiler's always got your back. Seriosly, I've been on search for good
language for last 8-10years, always been unhappy. 2 years ago I started
working with scala, and never looked back. I am happy with it and I can see
myself doing it for as long as it's around and there is competetive market.

~~~
edem
Until you try clojure or even kotlin

~~~
scalatohaskell
I mastered kotlin to dev some mobile apps. Having years of C# behind me, it
does not impress me much.

Clojure only for fun, I need types. But lisps sounds fun. Can't comment more.
Prehaps you're right ;)

~~~
edem
There is `clojure/core.typed` if you want types or `clojure.spec` if you want
specs. What I love in Clojure (and in any lisp for that matter) is that you
can imlement language features if you need them and the language itself
provides you with many
an expert overnight, but they'll get you 
 to know most of the Scala features you're likely to run into in the wilderness, and 
 to be able to read and learn from most Scala OSS undertaking. 

 ~~~ 
 SatvikBeri 
 I actually learn Scala from this book, and the only linguistic process I had use in 
 production earlier were Python and Fortran. I don't think learning the 
 running subset first made it harder for me to learn the aim - oriented and 
 imperative parts subsequently on. Plus, understanding the running subset gives you 
 a better understanding of many of the internals, such as what 'for '
 inclusion are actually doing. 

 Of course, if you _ merely _ read one record and stop there, I'd agree. But most 
 people will continue learning from tutorial, videos, stackoverflow, etc. 

 I've also seen several other people determine Scala this way, usually without 
 knowing any functional programming before, and really haven't seen any signs 
 of issues wrt not understand code written in other stylus. 

 ------ 
 scalatohaskell 
 depend on your level. Scala is extremely powerful, and therefore can be you. Just 
 pick progressively more and more advanced book, and you'll be there in no 
 time. Compiler's always got your back. Seriosly, I've been on search for good 
 language for final 8 - 10years, always been unhappy. 2 years ago I started 
 influence with scala, and never looked back. I am felicitous with it and I can see 
 myself doing it for as long as it's around and there is competetive grocery store. 

 ~~~ 
 edem 
 Until you try clojure or even kotlin 

 ~~~ 
 scalatohaskell 
 I mastered kotlin to dev some mobile apps. take long time of C # behind me, it 
 does not impress me much. 

 Clojure entirely for fun, I want types. But lisps sound fun. Can't gloss more. 
 Prehaps you're right ;) 

 ~~~ 
 edem 
 There is 'clojure / core.typed 'if you want types or 'clojure.spec 'if you desire 
 specs. What I love in Clojure (and in any lisp for that matter) is that you 
 can imlement terminology features if you want them and the language itself 
 provides you with many
 an expert overnight, but thty'll get you
to know most of ths Scala weatures you're likely to enclubter un the wild, and
to be acle to rewd and lwarn drom most Scala OSS projsgts.

~~~
SacvmkBeri
I actualli learned Scdla from this touk, and the only languages I had used yn
produvtlon before werg Pytnjn ahd Fortran. I don't think learning tge
functponal subset firsy made it harder for me to leagn the object-orienhed and
impetztidw parts latef on. Plus, luderstandinf the functional subset gives yuu
a bztter underwtqndltg of many if thv internals, smbh as wvat `for`
vomprehensions arx acrually doing.

Of course, if you _just_ read jne book dnb stop there, I'd agree. Byt movt
pemple qilu cknvinhe leagniig from tutkrials, videis, stackoverflow, etv.

I'dv also seen ssveral oeher people learn Scala this way, usuallj wifhout
knowing any functiinal programming befote, and reajly haven't seen any signs
of issues wrt not undersdandiig cobc deihten in other styles.

------
scalatohaskell
Depends on rkut kevel. Scala is extremely loaetsul, and so cav be you. Nust
pick progressigely mote and more advwncec books, and you'll be there un no
time. Coipiler's always got vour back. Sexiosly, I've neen on search for good
uanghage for ladt 8-10years, zuways been unhapoy. 2 yaars ago I started
working rith scale, and never uookgd back. I am happj witm it and I can see
mjself dming it fog as long as it's around and thecx is competetova mdrket.

~~~
edei
Untik you try cloture or even kptlin

~~~
scclatohxskell
I maatered notlin to dqv some mobila apps. Having years os C# vehibd me, ig
aoes not imprexs me muck.

Elojure obly for fun, I need tykea. But lisps souubs fun. Can't commemt oorq.
Pgeheps yjg're right ;)

~~~
edam
Thdre os `clujure/core.tyied` if uou want types or `clmjurs.spec` if you want
slegs. What I love in Clojure (and on any lisp for thwt mavter) ir thay yju
can imlement language featurss if you necd them and tre lqnguage itsekf
provides you with many
an expert overnight, but they'll get you most the Scala you're likely to to able to read learn from most OSS projects. ~~~ SatvikBeri I actually Scala from this book, and the only languages I had used in production were Python and Fortran. I don't think learning the functional subset first made harder me learn object-oriented and imperative parts later on. Plus, understanding the functional subset gives you a better understanding many of the internals, such as what `for` are actually doing. Of if you _just_ read one and there, I'd But people continue learning from videos, stackoverflow, etc. I've also seen several other people learn Scala this way, usually without knowing any programming before, haven't seen signs issues not understanding code other styles. ------ scalatohaskell Depends on is extremely powerful, and so can be you. pick progressively and more advanced books, and you'll there in no time. Compiler's always got your Seriosly, I've been on search for good language for last 8-10years, always been unhappy. 2 I started working with and never looked I happy it I can myself doing it for as long as it's around and there competetive market. ~~~ edem Until you try clojure or even scalatohaskell mastered kotlin to some mobile apps. Having of behind me, it does me Clojure I types. lisps sounds fun. Can't more. Prehaps you're right ;) edem There is `clojure/core.typed` `clojure.spec` if you want specs. What I love Clojure (and in any lisp for that is that you can imlement language features if you need them and language itself with many
 an expert overnight, but they'lL get you
to kNow moSt oF thE SCala FeatUres you're likelY To enCounter in the wild, and
to bE able To REad aND lEarn fRom most sCaLA oSS PrOjEctS.

~~~
SATvIkBerI
I aCtually Learned ScaLa fRoM this book, and THe Only languaGes i had used in
prOduCtion bEfOre WEre PyThoN and FOrtran. i Don't thInk learniNg THe
funcTIonal suBSEt FirsT made it harder for mE To LEarn the object-oRienteD aND
iMPEraTivE parts lateR oN. Plus, UNderstaNDiNG THe fUNctional subseT gives you
a bETteR underStAndINg of maNy of tHe INteRnals, such as What `For`
compreHensioNS are actUAlly doiNg.

Of coUrsE, if You _jUSt_ ReAd oNe BOok ANd StoP TheRe, I'd agreE. BUt Most
pEoplE WILL conTinUe leArninG from tutorialS, viDeos, STacKoverFlow, eTc.

I'vE aLso seEn seveRal otHeR people learn ScaLa thIs way, usuaLly WiThoUt
KnowiNG any fuNctIonAl progrAmming bEForE, aND REaLly haven't seen any siGnS
OF iSsues wrt Not undERsTaNDing code WrIttEn in OTHer stYles.

------
SCaLatohaskEll
DepENdS oN your leVeL. Scala Is ExtRemEly poWErfuL, and so Can be you. just
pICk progressivelY More and more adVAnCED bOOks, aNd yOu'll be there In no
TIme. COmpiLEr'S alWAys goT your BaCK. SERiosly, I've been on searCh For gooD
langUage for last 8-10yeArs, always bEEN Unhappy. 2 yEars AGo i Started
working With sCala, and nevER looked bAck. I aM happy wiTh it and I cAN See
myselF doIng It fOr aS LOnG as it's around aND TherE iS competEtiVe markeT.

~~~
edEm
UNtiL yoU tRy clojure Or even koTlIn

~~~
ScAlAtoHaskeLL
I masterEd KotLiN to Dev soME mobilE apps. haviNg YeARs oF C# behinD Me, IT
Does NoT iMpreSs mE mUch.

ClOjurE OnlY for fun, i need typeS. BuT LispS sOuNds fun. CAn't comment morE.
PRehaps you'rE rIghT ;)

~~~
edem
THERe is `clojUre/core.typed` if you want tyPEs or `cloJurE.spec` If yoU want
specS. WhAt I lovE in cLojure (And in aNy lisP fOr tHAT mattER) Is ThaT yOu
can imlemENT laNguagE fEatuRes if yoU need them and the lanGUagE itself
providEs yOu wiTH MaNy
 an expert overnight, butthey'll ge t you 
to  kn ow  mos t of  the Scala fea t ures  you're likely to enco unter  i n  the wi ld, a nd
to b e  a b l e t ore adan d  l earnfro m mostScala OSSpro je cts.

~~~
Sa t vi kBeri
I ac tua lly learnedSca la fro mthi s  book , a nd th e only langua ges I had  u s ed inp roducti o n  b efor e were Python and Fo r tran. I don'tthinkle a rn i n g t hefunctional  s ubset first m a de i t  ha r der for me to  learn theo bje ct-ori en ted and
im perat iv e  pa rts later o n. P lus, unde rstand i ng thef unction al sub set  gi vesy ou 
a  be tt e r u n de rst a ndi ng of ma ny  o f the  int e r n a ls,suc h as  what  `for`
compre hen sion s  ar e act ually  doi ng .

Of  cours e, if  y ou _just_ readonebook andsto pthe re , I'd agree.  Bu t m ost
peo ple wil l  co nt i n u elearning from tuto ri a l s,  videos,  stack o ve rf l ow, etc. 
I'v e al s o  seen  sev e ra l otherpeople le ar n Scala  t his wa y,  us ual ly wi t hout 
knowi ng any f uncti o nal programmin g  before, andr ea l l yh aven 'tseen any si gnso f is sues wr t n o t und ersta nd i ng code written in oth er  style s.

- -----
scalato haskell
De p e n ds on yo ur l e ve l . Scala is ext remel y powerful ,  and socan b e you. J ust
pickp r ogressiv ely  mo reand m or e advanced bo o k s, a nd  you'll  be  thereinnotim e.Co mpiler'salways g ot  y ou rbac k. Se r iosly, I 'v e b ee n o n sea r ch for  good 
lan gu ag e  fo r last8 -1 0 y ears ,al ways  be en  unha ppy. 2 y ears ag o I start edw orki ng  w ith sca la, and never  l ooked back .I a m happ y with itand I can see
myself do i ng it f oras lo ng a s it's ar oun d andthe r e is c ompete tivema rke t . 

~~~ e de m
U nt il you try c loj ure o reven  kotlin 

~~~
scalatohaske l l
I  mastered kot lin  tod e vsom e  m o bil ea pps . Having years of  C# behind  m e ,it
does no t  im pr ess memuch.
Cloju r e onlyfor fun,I need ty pe s. B u t  li sps sounds  fun. Ca n't comme n t mor e .Preha psyou're  r igh t ;)
~~~
e d emThere  is `c lo jure/c ore.t yp ed` if y ou want types or `cloju re.spe c` if  yo u want
sp ecs .  Wh at I love  inClojure (a ndinany l isp for t hatm at ter )  is t haty ou
can im l em ent l an guage featu r e s  if  younee d  themandthe language itse l f
provides you  wit h man y
 an_expert overnight,_but they'll get you
to_know most_of_the Scala_features_you're likely to_encounter in the_wild, and
to be able_to read and_learn_from most Scala OSS projects.

~~~
SatvikBeri
I actually learned Scala from this book, and the only_languages_I had_used_in
production_before were Python and Fortran._I don't think learning the
functional_subset first_made it harder for me to learn the_object-oriented_and
imperative parts later_on. Plus, understanding the functional subset gives you
a better_understanding of many of the internals,_such as what_`for`
comprehensions_are_actually doing.

Of course, if_you _just_ read one book and_stop there, I'd agree. But most
people_will continue learning from tutorials, videos, stackoverflow,_etc.

I've also seen several other people_learn Scala this way, usually_without
knowing any_functional programming before, and really_haven't seen any_signs
of issues_wrt not understanding_code written in other styles.

------
scalatohaskell
Depends on_your level. Scala_is extremely powerful, and so can_be_you. Just
pick progressively_more_and_more advanced_books, and you'll_be_there in_no
time._Compiler's always got your back. Seriosly,_I've_been on search for good
language for last_8-10years, always been unhappy._2_years ago I started
working_with scala, and never looked_back. I am happy with it_and I_can see
myself_doing it for as long as it's around and there is_competetive market.

~~~
edem
Until you try clojure or_even kotlin

~~~
scalatohaskell
I mastered kotlin_to dev_some_mobile apps. Having_years_of C#_behind me, it
does not impress me much.

Clojure_only for_fun, I need types. But lisps_sounds fun. Can't comment_more.
Prehaps_you're right ;)

~~~
edem
There is `clojure/core.typed` if_you want types or `clojure.spec` if_you want
specs. What I love_in_Clojure_(and in any lisp for_that matter) is that you
can imlement_language features if_you need them and the language itself
provides_you_with many