Hi there, I'm Bernhard - a cloud solution consultant helping companies significantly reduce costs by taking advantage of serverless architectures.

I work at the intersection of IoT and serverless computing. I'm excited to be part of a fast-evolving area that has a profound impact on the future of society and business.

This site reflects my passion for teaching and software development as a craft. I believe we are still at the beginning of how we develop digital applications and that there are huge opportunities yet to discover.

Let's develop a message-driven microservices application

Learn how to build scalable applications using multiple frameworks and languages in one knowledge-packed crash course
  • Follow the complete development cycle when we go from idea to finished application.
  • Learn the essentials of single-page frontends (Knockout.js), REST based backends (Java-Spring) and microservices (Python, RabbitMQ) in one compact course.
  • Made for the busy developer. Ships with virtual machine image and tutor app so you can focus 100% on honing your coding skills.

Indeed, I have a newsletter!

Would you like to know more about serverless computing?

Get my best content and findings on software craft, coding skills and business. Expect to hear from me monthly(ish). Oh, and I hate spam the same way as you do.

Articles

Microservices tutorial building a web-scraper with Java, Python and RabbitMQ (updated)

Microservices tutorial building a web-scraper with Java, Python and RabbitMQ (updated)

Step-by-step guide creating a web-scraper as microservices architecture. Using Java, Spring, Python and Knockout.js. Read on
Scapple: a great little brainstorming gem

Scapple: a great little brainstorming gem

This little tool makes me more productive than any other note-taking or mind-mapping application. It's simple yet powerful. Read on
Using Spring with Scala (Spring I/O 2016)

Using Spring with Scala (Spring I/O 2016)

I gave this talk at the Spring I/O conference in Barcelona 2016. Especially useful for Java developers who want to learn Scala. Read on
Java versus Go: a performance comparison

Java versus Go: a performance comparison

A little fun competition between Java and Go about processing a large log file using regular expressions. We explore different concurrency models. Read on
How to have an elephant brain

How to have an elephant brain

Excessive note-taking has given me an elephant brain. Plus a local search engine for markdown files available on Github. Read on
Clojure hands-on tutorial for beginners: building a spell-checker

Clojure hands-on tutorial for beginners: building a spell-checker

An interactive tutorial with exercises whose solutions that can be revealed with a click. Read on
SICP Chapter 1.2, notes and (some) solutions in Clojure

SICP Chapter 1.2, notes and (some) solutions in Clojure

Reviewing SICP chapter 1.2 with solutions in Clojure. Execution of processes, recursion vs. iteration and growth. Read on
SICP Chapter 1.1, notes and (some) solutions in Clojure

SICP Chapter 1.1, notes and (some) solutions in Clojure

Reviewing SICP chapter 1.1 with solutions in Clojure. With a touch of a Java developers' perspective. The elements of programming. Read on
Rapid prototyping with Spring Data Rest and Knockout.js

Rapid prototyping with Spring Data Rest and Knockout.js

We build a bookmarking service with minimal code taking advantage of Spring boot and REST. Read on
Dealing with complexity - Out of the Tar Pit

Dealing with complexity - Out of the Tar Pit

Answers to a fundamental question every software engineer faces. Where does complexity come from? Is complexity unavoidable? Read on
Testing a HATEOAS api with RestAssured

Testing a HATEOAS api with RestAssured

What is HATEOAS and how can we use it to better test our REST Api? Implementation examples using the RestAssured framework. Read on
Using Spring with the Play Framework (2.2.x)

Using Spring with the Play Framework (2.2.x)

Demonstrating how to combine two very popular frameworks: Spring and Play. Explaining how to do action composition, unit tests and issues I found. Read on
Rules for clean code: be stingy, one-track minded, self-centered and have the attention span of a fly

Rules for clean code: be stingy, one-track minded, self-centered and have the attention span of a fly

Is producing software art or craft? It helps to have some rules to create clean code. Read on
Very short introduction to Coursera's Machine Learning course

Very short introduction to Coursera's Machine Learning course

Probably the shortest introduction into Machine learning. I did the course in 2013 and if you consider trying it yourself here is what you can expect. Read on
Automatically matching a category in Google's taxonomy (updated 2017)

Automatically matching a category in Google's taxonomy (updated 2017)

Assigning categories to products can be daunting for retailers with lots of products. I show how to match some of them automatically. Read on
Creating static websites and PDF files with Jinja and YAML

Creating static websites and PDF files with Jinja and YAML

Demonstrating how to generate any content (like pdf or websites) using Jinja templates and YAML data files. As an example, we create a CV. Read on