Welcome ! Because bookemarks are too confidentials, at Paris 13 university, we decided to share every usefull links we fall on during our ongoing learning of Scala and Spark, trying to organize them as well as we can. Don't hesitate to add cool links we have missed.
Some comments will be added with time 😄 !
Use it wisely, don't forget to go for a tour and if you're ready go directly to the famous awesome-scala github regrouping most starred scala projects.
- Learn Scala standard library and some frameworks through exercising
- Because we have to begin somewhere
- The Neophyte's Guide to Scala
- Tweeter Scala School
- Scala cheatsheet from a java point of view
-
Keywords
- for with conditions
- for yield
- lazy
- implicits
-
Operator
-
Collection
-
Class
-
Option or the nice way to avoid null
-
Closure
- Here is an example and an explanation.
-
Generics
-
Tail recursiv functions
-
Covariance and Contravariance
- Scala tour**
- http://blog.kamkor.me/Covariance-And-Contravariance-In-Scala/
- https://twitter.github.io/scala_school/type-basics.html
- https://apiumhub.com/tech-blog-barcelona/scala-generics-covariance-contravariance/
- https://www.atlassian.com/blog/software-teams/covariance-and-contravariance-in-scala
- http://julien.richard-foy.fr/blog/2013/02/21/be-friend-with-covariance-and-contravariance/
-
Concurency
-
Annotations
- @transient
- @specialized
- Generics of a Higher Kind
- Fighting Bit Rot with Types (Experience Report: Scala Collections)
- Type Classes as Objects and Implicits
- Awesome scala, refer many many awesome projects in scala
- Smile 😄 which is way more than a nicely named Scala/Java library for machine learning.
- Scalaz, an extension of the standard scala library that allow to do pure functional programming
- Breeze
- Shapeless
- Spire
- Scala.js
- Monocle
Because we hardly desire to know the commodities comming with our favorite scala's collections here are some linked ressources:
- Awesome article by Hayoi
- Another cool article on multiple patterns
- The @transient lazy pattern
- A master thesis on different patterns
- Implicits patterns
- Patterns with implementation
- Stackable Trait Pattern
- Type Classes
- Scala Design Patterns 2nd Edition
- A must have !
- flatMap to Option
- Union Types
- Equivalence between Java and Scala
- Returning the "Current" Type
- Advanced Types
- 99 Scala Problems
- One of many advantage of Spire
- Higher-kinded types: the difference between giving up, and moving forward
- A simpler way to returning the "current" type in Scala
- Curious case of putting override modifier when overriding an abstract method in Scala
- Multi-projects
- sbt publish errors while compile works, try to clean you .ivy2/local/yourProject
Before introduce Spark, i will recomand to you the SparkNotebook
So why introduce a first appearance Spark tool, simply because it offers multiple usefull functionalities to practice as well Scala as Spark for any kind of purposes. You will find complementary informations on the SparkNotebook creator compagny blog.
Let's start with the official website guides without forgetting to give the link towards the Databricks blog and for impatients the usefull awesome-spark and spark-packages links.
- https://jaceklaskowski.gitbooks.io/mastering-apache-spark/
- https://www.gitbook.com/book/jaceklaskowski/mastering-apache-spark/details
- Caching and Persistance
- Broadcast variables
- Accumulators
- ByKey methods
- ReduceByKey
- Why avoid GroupByKey
- AggregateByKey
- CombineByKey
- Why prefer mapPartitions over map
- Pipelines
- Some troubleshootings
- TSNE on spark, the TSNE is a dimentional reduction technique from the manifold family
- LIPN on Spark
- This is what we are making to Paris 13 University on Spark
- Managing Memory and Garbage Collection
- Minimize Java Memory Usage with the Right Garbage Collector
- Tuning G1GC For SOA
- G1Gc Tuning
- Others G1 GC tests
Awesome scala links and references
Here are listed some blogs from where cames links in this page, thanks to these guys we can learn more easily so thank you for you hard work dear scala fellas 😉.
- Books
- Programming in Scala 3rd Edition let's start by Scala's father last edition book.
- Functional Programming in Scala
- A Spark online book
- Scala Design Patterns 2nd Edition
- Blogs