Contributions

Tutorial
Warning: there is so much syntactic sugar in this video that you might get diabetes! In this video we will learn what happens behind the scenes when we use (partial) function literals in Scala. We will learn about lambdas, function objects, anonymous classes, magic, partial functions and their use cases.
Article
This is the second video about objects vs data structures in which we will learn when to use which and most importantly what happens if YOU chose wrong! This video is very much related to the videos about subtype polymorphism and inversion of control. Among other things we will learn how Java lacks support for dealing with data structures whereas Scala comes prepared.
Tutorial
In the previous few videos we started exploring the object-oriented world, but maybe we should not swim too far. In this video we discuss issues that arise from programming language dependent interpretations of object-orientation. This is the first of two videos in this series, which concentrates on issues with comparing two computational objects for equality and provides an outlook to the future of Scala.
Tutorial
In this video we will learn about the majority of use cases for traits - interfaces on steroids. We will learn how to add functionality to existing classes, even the ones whose code we cannot access! We will learn how to modify behavior with the "Stackable modifications" pattern, which can also be used to intercept behavior. Most importantly we will learn about linearization - a solution for the issues which commonly arise with multiple inheritance and diamonds.
Tutorial
In this video we will learn about inheritance - a mechanism for achieving modular design which as a by product allows for code reuse even though the code reuse part is frowned upon lately. We will discuss semantic differences between inheritance and subtype polymorphism and learn about object-oriented design patterns such as the "Template method" pattern. We will also dive into visibility and inheritance modifiers.
Tutorial
In this video we will discover the primary value that Object Oriented programming has to offer: Dependency Inversion or Inversion of Control (IoC) via Subtype Polymorphism and dynamic dispatch. If you wish to be reminded of the benefits of IoC rewatch this video: https://youtu.be/Zj5AhkHDkDI which can almost be considered a prerequisite for this one. Not understanding the benefits of dependency inversion is a flaw no software developer can afford! As a by-product we will also learn how to pas...
Tutorial
Fun little project for Scala beginners.
Tutorial
In the previous video we learnt about the environment model of computation, which is necessary because Scala as most languages allows assignment to variables. In this video we combine all the knowledge we have gathered so far and use it to derive an entire programming style called message passing style. We will derive it from the environment model of computation and eventually we will see how an entire paradigm is based on it.
Tutorial
In this video we are going to start exploring the environment model of computation. We will also cover the substitution model for procedure application with both applicative- and normal-order evaluation. Furthermore we will see how the concept of garbage collection is based on the environment model of evaluation.
Tutorial
In this video we are going to learn about models of computation and why they matter. We will quickly walk through the most prominent models and in the next video we will look at two of them in depth. The models discussed in this video are: substitution (with both applicative- and normal-order evaluation), environment and stream-processing. We also take a glimpse at thread-based as well as event-based concurrency models and even mention the actor model of computation.
Tutorial
A YouTube course about learning Scala as a first programming language. It offers a fresh look at Scala from the eyes of a programming beginner in contrast to a regular Scala beginner (a probable Java refugee).

The course is ongoing. New videos are published every Sunday.