my blog. for you.

Reden wir über Digitales.

Ich bin selbständiger IT Berater und Unternehmer in der Internet und Software Branche. Ich beschäftige mich mit Design, Enterprise Applikationen, Web Apps und SaaS Produkten. Ich entwerfe und entwickle Business Lösungen und Anwendungen. Ich helfe Unternehmen in Sachen Software Qualität und Wissenstransfer, z.B. mit Angular und Spring Boot.

The Art of the README

Leider ist der Eintrag nur auf Britisches Englisch verfügbar.Just recently I was reminded about an obvious and vital but all too often neglected aspect of good quality software: Creating and maintaining a README file to both onboard new developers and to get users started with your software easily. While certainly essential in the context of open source software maintaining a high quality README is also relevant regarding proprietary / company-internal software that's limited to only a select circle of developers and users: ... Read more

Clear Acceptance Criteria: The Key to Good Software Quality Right from the Start

Leider ist der Eintrag nur auf Britisches Englisch verfügbar.Actually it should come as no surprise that clear acceptance criteria are a quintessential prerequisite for high quality software that meets both design requirements and customer demand. All too often however, acceptance criteria for software products are either non-existent or vague and ambiguous at best. Who hasn't come across 'acceptance criteria' such as "The app should have a modern UI." or "The application should be easy to use."? What do bromides like that amount ... Read more

Keeping database schemas up-to-date with Flyway

Leider ist der Eintrag nur auf Britisches Englisch verfügbar.At least ever since Ruby on Rails' Active Record Migrations put an emphasis on keeping database schemas consistent with your software's source code both during development and in production database migration tools have become a staple in modern software development. Database migration (or database refactoring as this technique is sometimes called as well) tools allow you to apply data definition language (DDL) statements like "CREATE TABLE ..." or "ALTER ..." to databases in an ... Read more

Writing Disposable Code, Not Reusable Code

Leider ist der Eintrag nur auf Britisches Englisch verfügbar.In an article about common software over-engineering mistakes Subhas Dandapani provides a lot of useful insights on why software often is over-engineered - sometimes to the extent it becomes unmaintainable. From my experience, the by far most frequent cause of over-engineered and overly complex software is engineers trying to anticipate requirements and potential future use cases. Everything has to be abstract in order to accommodate any possible use case business might come up with. ... Read more

Mockito 2 now available

Leider ist der Eintrag nur auf Britisches Englisch verfügbar.Last week version 2.1.0 of the Mockito testing framework for Java has been released. For more information on this latest iteration check out this page. As the name suggests, Mockito allows you to mock object behaviour during unit tests. When writing unit tests you only want to test a particular unit's behaviour (hence the name). Depending on the programming language used such a unit might be a function, a procedure or - most ... Read more

Less Is More

Leider ist der Eintrag nur auf Britisches Englisch verfügbar.What's true for design in general certainly is true for software design in particular: Less is more - or paraphrasing Dieter Rams - "Write less software in order to write better software." A few weeks ago I read this interesting article by web accessibility consultant Heydon Pickering. In this blog post he argues that the only foolproof way of writing performant web applications is to write less code. Sure, all that fancy minification, transpiling, ... Read more

Code means communication

Leider ist der Eintrag nur auf Britisches Englisch verfügbar.Writing software is all about communication. Code is a way of conveying the meaning of natural language requirements in an exact manner so that computers can make sense of the intentions of our fickle human minds and the often ambiguous ways we tend to express ourselves in. So, in that respect software development amounts to translating human concepts and notions into a language machines can understand. However, communicating with machines is only one, more technical aspect, ... Read more

Libraries.io and Dependency CI: Open Source Library Discovery and Dependency QA

Recently, I came across Libraries.io and its companion service Dependency CI. Libraries.io is an open source library catalogue that helps you find new libraries and keep track of the ones you already use in your projects. Once set up with a GitHub project, the service monitors the repository and notifies you in case there's a new version of a dependency available. Building upon this, Dependency CI is a continuous integration service that offers 'automatic compliance testing for all of the dependencies in your ... Read more
« Vorherige Seite