3 ms·
(That's why I started saying "I think", to emphasize it's an opinion rather than a fact.) My personal experience has been that it is easier to explain people S
by partycoder 10y ago
(That's why I started saying "I think", to emphasize it's an opinion rather than a fact.)
My personal experience has been that it is easier to explain people Scala when you can explain it in Java construct terms... But I can see how someone coming from, let's say, Swift, can have an easier time writing idiomatic Scala.
I am against excluding people for the sake of excluding people but you need to consider that communities have some core values, and the core values behind the Scala community are different to that of, let's say, PHP. You know what I mean.
- the_af 10y agoI fully agree about the community values, but how is having no good documentation helpful for building said community? Also, it'd be VERY disappointing if the reason for this lack of documentation was the explanation from the root comment in this thread.
- adriaanm 10y agoAs the Scala team lead at Lightbend, I'm truly saddened to see posts like this. It couldn't be farther from our intentions and interests! We absolutely want outstanding Scala documentation, and would never stand in the way of improving them in any way. My whole team has worked extremely hard this year to bring you the best 2.12 compiler we can. We also spend as much time as possible helping out with polishing documentation, but we feel a coordinated push for better documentation belongs under the umbrella of the Scala Center (whose mission is to "Independently guide and support the Scala community" and to "Provide deep, and quality, educational materials for Scala"). We'll be thrilled to collaborate, but we (as veteran Scala users) are not the best placed to write getting started guides. EDIT: It was brought to my attention that my comment about the Scala Center could be misinterpreted. I meant to say I would support a proposal to the Scala Center advisory board about improving Scala's documentation, with a focus on the getting started experience.
- thisone 10y agoLet me give you a 'fer instance' (this may be the only one that exists, but it's one that had me WTFing until I found the correct documentation to read via stack overflow) Calling grouped on a Seq. I've been playing around with some API requests, and needed to batch a long Seq to make reasonable sized GET requests. So I called grouped on a Seq, then to sanity check I called .length on the grouping. Then suddenly I had an empty iterator. Maybe I should have known better, yeah, but the documentation I was reading http://www.scala-lang.org/docu/files/collections-api/collections_4.html http://www.scala-lang.org/docu/files/collections-api/collect... doesn't mention this fact about iterators. Again, maybe I'm the only person in the world who didn't realise the problem with calling .length on what I thought of as a regular old batched set. It wasn't until I hit on the right google combination that I found http://www.scala-lang.org/api/current/#scala.collection.Iterator http://www.scala-lang.org/api/current/#scala.collection.Iter... from a stack overflow reference, and the lightbulb finally went on.
- adriaanm 10y agoThanks for the example. We agree that this is a tricky part in the collections. For Scala 2.13, our headline feature will be simplifying/refining the collections API. One of the areas we'd like to improve is to make the transitions from eager to lazy more clear. Also, we'd like to keep immutable (more) separate from mutable collections. Once we switch gears from 2.12.0 to 2.13 milestones, we'll be sure to provide a convenient way to share gotchas like this, so we can see how to prevent them.
- partycoder 10y agoI think there is some good Scala documentation. By core values of the Scala community I refer to trying to create idiomatic ways of solving problems, and trying to get the most out of the language. One evidence of this is the amount of domain specific languages created in Scala. Twitter's Scala school was a good resource for me, the official tutorial by Odersky in Coursera is a good starting point too. You can also watch Scala talks in YouTube, to supplement documentation reading.
- the_af 10y agoThose resources are good. Twitter's Scala school is more relevant as a reference than Odersky's progfun course (if that's what you mean by "official tutorial"), because progfun is more about FP and less about Scala-the-language (this made it even more interesting for me, but also makes it less useful as a reference). Note, however, those resources are external. I understand what you mean by core values. I don't understand how they are improved by a lack of documentation.
- partycoder 10y agoThe tour of Scala lost me initially. I used "Another tour of Scala", I found that one to be easier to digest.