my blog. for you.

Let’s talk digital.

I’m an independent IT consultant and entrepreneur in the Internet and software business. I’m interested in design, enterprise applications, web apps and SaaS products. I design and develop business solutions and applications. I help companies in terms of software quality and knowledge transfer, e.g. with Angular and Spring Boot.

Spring Batch Resources: Batch Processing, ETL And Data Conversion

ETL (extract, transform, load) processes, data processing, exporting data from one business system (ERP, CRM, accounting etc.) and importing it into another are common requirements in enterprise IT. So much so that the ability to export and import data often is the key feature of enterprise software. Spring Batch is a toolkit in the context of the widely used Spring framework that allows you to define and run batch jobs and data processing pipelines. Spring Batch provides features such as: data export / ... Read more

Interactive Flowcharts with code2flow

Visualisation often helps immensely when trying to understand complex systems and interactions. Visualising these systems and their behaviour can be a daunting task though: Covering each and every path a workflow or process might take can be quite arduous. In many cases it's not even possible to comprehensively describe a system that has not yet been implemented. Edge cases frequently only tend to surface once a software has been tried out under real conditions. Software in turn needs to adapt quickly, which all ... Read more

Matt Ranney @ GOTO 2016: What I Wish I Had Known Before Scaling Uber to 1000 Services

At the GOTO Chicago 2016 enterprise software conference Matt Ranney, chief systems architect at Uber and co-founder of Voxer gave a presentation on what they learned from adopting microservices on a massive scale at Uber: "To Keep up with Uber's growth, we've embraced microservices in a big way. This has led to an explosion of new services, crossing over 1,000 production services in early March 2016. Along the way we've learned a lot [ ... ]" Now you probably aren't Uber but the ... Read more

A Collection Of Common UX Myths

UX Myths is website on common UX misconceptions like "The homepage is your most important page", "You are like your users" or "Icons enhance usability". The authors shed light on where those myths come from, why they're wrong and what can be done to improve your design process in each case. Read more

JSCity – Code Complexity Visualization For JavaScript Codebases

JSCity is a tool for visualising JavaScript source code complexity that uses the CodeCity metaphor. This approach makes use of the building blocks of modern cities for visualising the building blocks of software. Since in JavaScript functional programming is the predominant programming paradigm JSCity represents code artefacts like this: folders are districts files are sub-districts functions are buildings inner functions are represented as buildings on the top of their nested function / building This for example is the visualisation of the AngularJS source code. JSCity even allows you ... Read more

The State Of JavaScript 2016: A Survey

A recent survey by Sacha Greif gives a comprehensive overview of the current state of the JavaScript world. Front-end, full-stack, testing, mobile: If you're working with JavaScript in any way this survey has you covered! It gives you a great overview of what's in use right now and what might be in the near future. The survey will be done annually. So, it should be possible to see where the JavaScript world is headed and which predictions turned out to be true by ... Read more

Writing Disposable Code, Not Reusable Code

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. Repetition is generally regarded as waste. Engineers hate ... Read more

UI Movement

UI Movement is a website that showcases user interface designs on a daily basis as an inspiration for your own designs. The designs itself are mostly sourced from Dribbble - the show and tell site for designers. Originally just a newsletter in the vein of an MVP, UI Movement has developed into a fully-fledged website with designs organised in categories such as commerce, dashboard or menu. Read more

Mockito 2 now available

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 commonly in today's object-oriented programming environments - a ... Read more

Anti-patterns: Rewriting Software

It's one of those fallacious patterns in software development that though well-known to cause trouble without creating any significant benefit unfortunately ever seems to truly go away: The Software Rewrite. In general, software developers tend to not particularly like working on old - or legacy - code, especially if it's not been written by themselves or if they feel that due to aspects like time and budget constraints they didn't have the opportunity to get the software architecture right from the get-go. ... Read more
« Previous PageNext Page »