Official blog

our thoughts, knowledge and opinions

30.07.2015 / By Mariusz Nosiński

Websockets Server with akka-http

If you’re looking for the best library to build concurrent and distributed applications, probably sooner than later you’ll come across Akka. It’s a very powerful open source library maintained by Typesafe for making such apps.

16.07.2015 / By Patryk Jażdżewski

Introducing Scala Slack Bot

Motivation In Scalac we believe that communication is essential in IT and that projects with inefficient information sharing are doomed to fail. Fortunately for us it doesn’t always mean that putting people in one place is the only way. More often it’s about creating the right spirit for exchanging knowledge and providing ways to do […]

09.07.2015 / By Radek Tkaczyk

A Quick Overview of Slick 3.0

At ScalaC we’ve recently started adopting Slick 3.0. If you haven’t tried it yet, hopefully these notes will make the process go smoother.

19.06.2015 / By Patryk Jażdżewski

Inventory App Part 1. Software Transactional Memory for Scala. Comparing Activate with Slick

What is STM? Wikipedia defines it as follows: software transactional memory (STM) is a concurrency control mechanism analogous to database transactions for controlling access to shared memory in concurrent computing. It is an alternative to lock-based synchronization. Hmmm… but what does it mean in practice?

18.06.2015 / By Patryk Jażdżewski

Inventory App Part 0. Foundations

Scala end to end In Scalac we believe that Scala is a great general purpose language, that helps you to build high quality software quickly. And although Scala shines in the backend, it’s use is not limited to server side programming. With these blog posts we would also like to convince all of you that […]

11.06.2015 / By Łukasz Gąsior

Event-sourced game implementation example – Part 2/3: It’s time to play – building web application

Welcome to the 2nd part of event-sourced game post series! In case you haven’t yet read previous part, I highly recommend reading it before. Today we’ll focus on the frontend server part, the one that’ll be responsible for handling user interface interactions as well as backend server communication.

31.05.2015 / By Tomasz Perek

Null, NullPointerException and dealing with it

Null is evil The concept of Null Reference is sometimes referred to as “The Billion Dollar Mistake”. Such pejorative description has been forged by Sir Anthony Hoare, (you can learn more here) probably most widely known for developing Quicksort, but ironically, also the man who first introduced nulls to ALGOL. But why is null A […]

28.05.2015 / By Patryk Jażdżewski

Modes in Rapture and how you can use them to make your code more expressive

Recently I was playing around with Rapture, an awesome utility library created by Jon Pretty. One thing that really stuck with me was the concept of modes. Modes are classes that allow us to modify the type returned by a given library call. You probably wonder how we can do that in Scala. I was curious too, […]

21.05.2015 / By Mariusz Nosiński

Dynamic member lookup in Scala

A lot of dynamic typed languages has function that catch all messages the target object doesn’t have. It gives these languages a lot of power to write DSL. Scala 2.9 introduced an experimental option that enables this sort of dynamic handling of accesses to types in ways that would otherwise fail static type checking. It […]

07.05.2015 / By Patryk Jażdżewski

Creating Domain Specific Languages with Scala – Part 1

Scala is well known as a concise, readable programming language. One of the reasons is that many popular libraries offer their users DSLs to work with. These convenient APIs make creating programs simpler by saving our keystrokes and (most importantly) by improving readability. But it’s not always the case … Sometimes we have to work […]