Category Archives: Scala

Scala Dependency Management with SBT

When you are building applications or libraries in the Scala programming language, you will most likely use a tool like “SBT” (Scala Build Tool) or “Lightbend Activator” (which is an extended distribution of SBT) to configure, build and package your project. These tools support automatic dependency management for your project.

Like in almost every build system, SBT allows you to define library dependencies which are resolved automatically, so you don’t have to download and package required libraries by yourself.

Currently SBT can handle a lot of repository types, including Ivy and Maven repositories, which gives you instant access to all libraries available in the Maven universe.

Continue reading

Set up Scala Environment

In order to develop in the functional programming language Scala, you need to set up the toolchain, including the JRE, the scala build tool and an IDE.

In this short tutorial, I will show how to reach this goal.

Install JDK

As a first step, the Java Development Toolkit (JDK) is required on the machine, as Scala is compiled as Java Bytecode. For this, simply download the latest JavaSE distribution for your operating system from the Java download page and install it on your machine (make sure, it really is the “JDK” distribution, not only the “JRE” which does not contain the compiler, but only the runtime).

After the installation, also make sure the environment variable “JAVA_HOME” is set and point to the installation directory of the JDK.

In linux, you can set the environment variable e.g. in the file “.bash_profile” in your home directory by adding:

Under Windows, open your “system settings”, then the “extended system properties”, and then the “environment variables”. Enter a new environment variable named “JAVA_HOME” with the value of the installed JDK, e.g. “C:\Program Files\Java\jdk1.8.0_45”.

Continue reading

Optimize Page Rank with Google PageSpeed Insights

SEO: How to eliminate render-blocking JS and CSS in above-the-fold content

Since Google recently (End of April 2015) started to penalize non-mobile friendly and non-responsive sites in their ranking, we evaluated some online SEO tools to test our website. The best tool to get insights in what Google thinks about your page is PageSpeed Insights by Google.

Road to 100 / 100 in PageSpeed Insights

PageSpeed Insights is a Google Tool which helps you to identify ways to make your site faster and more mobile-friendly. Google includes the page speed in its ranking calculation, so that fast, responsive pages are ranked higher than slow ones. Therefore PageSpeed Insights analyzes a single page of a site and scores it in three categories:

  • Mobile: Speed
  • Mobile: User Experience
  • Desktop: Suggestions Summary

In this article we describe how we optimized our website to reach the score of 100 / 100 in each category.

Continue reading