IT Blog & Photo Gallery

Blogs

Should I Document This?

November 27, 2022

Documentation - a frequently avoided topic among software developers, for whom natural language is not always their favorite kind of language - "If you want to know how it works, just look at the code". Theoretically perhaps correct, because how the application works is definitely in there. But practically not sufficient, because the why - the intention behind it, the underlying decisions and possible implications or discarded alternatives - cannot be found there.

A Naive Case of UX-Design

July 20, 2022

Or how I came to build an application to display list of phone calls only to realise that I didn't really want it. And what that though me as a developer about approaching UX-Design.

Applied Functional Refactoring in Java

November 17, 2017

Since the release of Java 8, a bit of functional elegance has come to Java and many have already written about it. Still I haven't yet read anything on using those new elements to improve the structure, readability and maintainability of existing software. As I've had the opportunity do some refactoring in the past weeks using exactly those functional elements, I'll let you take part in my experience.

Static code-analysis for Domain Driven Design, Part 1

September 29, 2017

The main aspects of Domain Driven Design are of course communication and the actual problem/solution domain. But there are also some principles regarding the actual software implementation, where domain concepts should be easily spotted in the central domain model. For my master thesis, I have developed and evaluated a plug-in for SonarQube that should analyze some basic principles for implementations of Domain Driven Design.

Introducing an advanced LaTeX toolchain

September 15, 2017

Creating large documents with different kinds of graphics, like UML diagrams and various plots, can be a quite daunting task. Building up on the LaTeX toolchain, this article will introduce ways for including PlantUML and GNUPlot graphics in a comfortable and easy to use manner. The resulting toolchain will streamline the writing process and eliminate unnecessary side tasks.