Effective Scala – Twitter’s main programming language

|

If you are interested to learn more about the Effective Scala programming language, you can now use Twitter’s open sourced guide here.The guide includes an Introduction Formatting, Types and Generics, Concurrency, Control structures, Functional programming, Object oriented programming, Error handling, Garbage collection, Java compatibility, Twitter’s standard libraries, and Collections such as Hierarchy, Use, Style, Performance, and Java Collections.

According to InfoQ, the document includes these main ideas:

 If you are already used to Scala, the guide will be easy to follow. In case you are not used to this programming language, Twitter has included on its open source projects the Scala School, which was created for the sole purpose to help users as much as they can through a series of lectures. “Scala School started as a series of lectures at Twitter to prepare experienced engineers to be productive Scala programmers. Scala is a relatively new language, but draws on many familiar concepts. Thus, these lectures assumed the audience knew the concepts and showed how to use them in Scala. We found this an effective way of getting new engineers up to speed quickly,” according to the Scala School page.

Twitter also emphasizes the fact that they want to teach Scala as a new programming language, not ‘as if it were an improved Java.’ “Experience in Java is not expected. Focus will be on the interpreter and the object-functional style as well as the style of programming we do here. An emphasis will be placed on maintainability, clarity of expression, and leveraging the type system,”

Among the Scala project contributors are Evan Meagher, Kevin Oliver, Marius Eriksen, Mark McBride, Steve Jenson, Tim Trueman, Brian Wickman, Stephan Zuercher, etc. A full list of all Twitter’s projects can be found here. All  projects, such as Algebird, Ambrose, Aurora, Cassovary, Finagle, Finatra, JoAuth, Mesos, mysql, Parquet, Scrooge, etc., are Twitter’s main contribution to the open source community.

Every project includes a short introduction, the programming language(s) used, a list of contributors, and related open source projects along with related Twitter University videos. You can also find detailed information about each project included on the list by clicking the link that follows the name of each project. Furthermore, if you want to contribute and make the guide more useful to other users, you can do so by creating an issue on GitHub. 


Silvae Technologies Ruse, Bulgaria

44B Borisova Str.
7012, Ruse, Bulgaria

Silvae Technologies Brussels, Belgium

1000 Brussels, Belgium