Kotlin all the things
So, after all, it seems JetBrains is very serious with Kotlin. And I have to admit it comes with some handy features and good IDE support. But this is not about the Kotlin language, this is about where it can be used.
Migrating from Gradle to Gradle
Gradle build scripts have been written in a Groovy based DSL for a long time. Although flexible, the IDE support was always a bit of a problem. You either knew what to type or you searched the docs or tried to find an answer on stackoverflow. IDEs always struggled to provide help on writing tasks or configuring them.
Automating Multi-Schema-Database Deployments — The challenges!
Database Migration Tools (like Flyway, Liquibase, myBatis) are quite common in application development, where a single-schema-database stores a quite small amount of data of an application e.g. a Java application. Those tools were built with a simple database backend in mind. And for those simple single-schema databases, they work very well!
Developing an application using Mob Programming
I wanted to do Mob Programming in a real project since we experimented with it in a three-day hackathon a year ago — where it went surprisingly well. I finally had the chance to try it with my engineering team for developing a new Kotlin/SpringBoot application a few weeks ago. Those are my thoughts and lessons learned after our first few sessions.
3D printed christmas cookies
Another year has almost passed and so it’s time for a new christmas blog. Two of the things I like are playing with 3D printers and cookies. Printing cookies directly might become possible one day, but at the moment it’s not. So I did the next best thing: Print forms for cookies.
Typescript inheritance deep dive 🐋
Findings about RxJS marble testing and the TestScheduler
Recently I wrote a custom Rx Operator that retries failed http request. The way RxJS allows us to deal with such async problems in just a few lines of code really makes me love this library. But how do we test such operator chains?
Readable regular expressions with Kotlin
Regular expressions have the reputation of being hard to understand and maintain. Probably rightly so, or can you easily say what
Open Source is Eating the World
Open source turns 20 this year — happy birthday! In this blog I will touch on several aspects of open source software (OSS) and tell you why I think it’s so important.
Self contained Applications with Java 9
The fact that Java 9 has been released already half a year ago and reading this article about self contained applications convinced me to try out Java modules myself. The plan was to take an existing project and turn it into a directly executable Java application. I choose my swiss-wowbagger and here’s what happened then.
In my experience, it’s hard to explain Observables to someone who doesn’t have much experience with functional programming. In most cases it requires a bit of a mind shift.
My Journey with the Corda Blockchain
Recently, I was asked if I could help implement a prototype based on the Corda blockchain technology. The idea was to build a novel type of document management system (DMS) which can be used to securely share legal documents between companies or business units. I had never heard of the Corda platform before and was pretty much sceptical. So I dug into it and tried to understand the key concepts and then started to code. Now I’d like to share some of my insights during this endeavour:
Christmas easter eggs
Towards the end of the year, it’s time to relax and look back at what happened the last 12 months. I did quite a few projects that where just fun and had no real use at all. Well, maybe as easter eggs hidden in some serious applications…
Stateless Architectures Win
Computing in distributed systems is difficult. However, we live in a distributed world: the Internet, web apps, and most mobile apps would not be able to run on only one huge central server. So if your solution isn’t a niche for a handful of users you’re better off with a stateless architecture.
Secure Config as Code
How do you manage your database passwords for your application when applying the DevOps practice
Everything as Code
? This article gives you some directions.
Why your choice of programming language doesn’t matter
In my career as a programmer I regularly get involved in discussions about programming languages. And actually, I love to talk about programming languages. Non technical people may probably not understand why it is a fun topic for programmers.
What is DevOps?
DevOps is difficult to explain as there is no exact definition. Here’s my attempt to give a quick explanation and an overview of the pillars of DevOps.
Build an Angular App in 5 Minutes
No, I don’t want to bother you with useless text. Actually you can ignore the text outside of the grey boxes and just copy & paste the commands into your Terminal — have fun.
Schaltstelle: Die Umsetzung
Alle bestimmen selber, was mit ihrer Zeit und ihrem Umsatz geschieht. Das klingt verlockend. Dieser Artikel gibt einen Einblick in die bisherige Umsetzung der Idee “Gemeinsam. Selbstständig.”.
7 things I like about Kotlin
If you don’t test your Webapp your customers will hate you.
If you want to increase the frequency of your deployments the only practical way forward is to automate most of your End to End tests.
Schaltstelle: Die Idee
Die Strukturen von Firmen ändern sich. Auch in der IT. Weg von Hierarchien, hin zu flachen Modellen. Bei der Schaltstelle haben wir uns überlegt, wie Unternehmen in Zukunft organisiert sein könnten. Unsere Antwort heisst “Gemeinsam. Selbstständig.”.