Behaviour-driven development (BDD) of an Alexa Skill with Cucumber.js – Part 2
In the first post of this blog series we established a framework to easily write acceptance tests for an Alexa Skill in Cucumber.js. This second part will be about enhancing this framework, so that our...
View ArticleBehaviour-driven development (BDD) of an Alexa Skill with Cucumber.js – Part 1
In this blog article we will learn how to do behaviour-driven development (BDD) of an Alexa Skill utilizing the Cucumber.js framework. Why do you even want to do this? I didn’t even intend to do a blog...
View ArticleCode Freeze
In the beginning of January I had the opportunity to attend a very special conference for the second time: Code Freeze. It’s special because of the setting: It takes place in northern Lapland, north of...
View ArticleUnderstanding IoT (Part 2)
Summary of Part 1 In the first part of this blog post we postulated that an IoT device in general is an abstract real-world interface. Subsequently, a general definition of the concept of innovation...
View ArticleUnderstanding IoT (Part 1)
Introduction The Internet of Things, short “IoT”, belongs, without a doubt, to the trend topics (not to say hype topics) of the present time. Who doesn’t know the studies predicting the explosion of...
View ArticleAnti-patterns part 2: Coding is the biggest Golden Hammer of all
In my previous post I explained how software anti-patterns are symptoms of bad habits that can be endemic to entire teams. Today I want to talk about what is perhaps the most infamous of all: the...
View ArticleWhen anti-patterns become a pattern
There are plenty of learning resources on software best practices. Sprinkled in between all the well-intended advice are warnings about common pitfalls. We could do with a lot more of these warnings...
View ArticleThe most useless knowledge of all
There are things a programmer needs to know, no excuses. There are things you can’t possibly all remember, so it’s fine to look them up when needed. There is the business domain the software touches...
View ArticleEssentialism for developers
Essentialism – the Disciplined Pursuit of Less by Greg McKeown is a book with an essential message: much of life is irrelevant distraction and we would all be happier and more productive if we learned...
View ArticleRobotic Process Automation with Kofax Kapow™
Kapow Software was acquired by Kofax in 2013 and fits perfectly to Kofax’s First Mile™ strategy. Kofax Kapow provides a platform to process data from structured or unstructured databases, files, email...
View ArticleWeb frameworks and how to survive them
SUMMARY: Frameworks that help build the web apps of tomorrow must keep up with all powerful new technology there is on offer. At some point your application has to adapt, and that is never a painless...
View ArticleLinux on the Mac. Why? How? WHAT?!
I’m writing this in Neovim, inside RXVT, in the i3 window manager, on Debian, running on a MacBook Pro (2015 model). Why? Those are the questions I’m hoping to answer in this blog post. The “how” you...
View Articlecodecentric go challenge 2016
This Sunday, August 28th, the third codecentric go challenge is going to start. The challenge – organized by Prof. Ingo Althöfer of the University of Jena, Germany, and sponsored by codecentric – is a...
View ArticleIn Love with Ada
Anyone out there remembering the Ada programming language? In this blog post, I’m going to give you a short introduction to Ada, the history of its name and some of the current occurrences in pop...
View ArticleKotlin’s killer features
SUMMARY: Kotlin is a new JVM language fully interoperable with Java bytecode. It is clearly inspired by Scala, but has a different design philosophy, a much gentler learning curve and some really...
View ArticleUsing Exceptions to Write Robust Software for Stable Production
A study shows that the cause for almost all critical faults is bad error handling. I can back this up with my own experience in various projects: the feature is implemented and there are tests in place...
View Articlecodecentric go challenge 2015
This Saturday, October 3rd, marks the start of the second installment of the codecentric go challenge. The challenge – organized by Prof. Ingo Althöfer of the University of Jena, Germany, and sponsored...
View ArticlePerl – The Ultimate Programming Language :-)
Ok, I really really tried hard to avoid any exaggerations in the title of this blog post and I strongly believe ultimate is a more than proper description of what is for sure the best programming...
View ArticleHow the Raspberry Pi 2 Fulfilled a Long-Cherished Wish
One of my hobbies is photography. I took my first steps as a small boy with the camera my father gave to my mother as a present in the 1960s. This camera didn’t have an exposure meter, so my father...
View ArticleDIY encrypted lightweight radio transmission
The first hacker garden Stuttgart took place on the 23rd of July 2015. One of the hacks was a DIY encrypted lightweight radio transmitters ping-pong. The idea originates from a home automation project...
View Article