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.

Be Proactive About State in a Reactive System by Nele Lea Uhlemann @ Spring I/O 2022

Read more

Bret Victor – Inventing on Principle

Read more

Currying in JavaScript

A reference to logician Haskell Curry, currying is a technique for converting a function that takes multiple arguments into a chain of abstract functions that each take a single argument (see Currying). Besides its significance for studying functions in the context of theoretical computer science and its relevance to lambda calculus both in the context of mathematics and linguistics, currying has very practical applications in functional programming. In a way, it's one possible approach for following the inversion of control design principle and ... Read more

Second-order Affordances: Design & Quantum Superposition

A few years ago, having read a thought-provoking article by Csongor Bartus I wrote about design & quantum superposition. The main idea behind this article, and my interpretation, is that - similar to a particle, which exists in a state of quantum superposition - a design doesn't exist by itself but can only ever be realised in a given context and at a specific moment through observation by a user and possibly a device that design is observed with. The gist, ... Read more

Five Articles on Software Quality and Design Patterns

This week I'd like to point you to five articles I previously posted on this blog and from which I think that they're as relevant as they were at the time. The first three are about general software design principles, software architecture and software quality while the final two refer to specific best practices and common design patterns for Angular: Writing Disposable Code, Not Reusable Code (November 06, 2016) What Causes Over-engineering and How Can You Prevent It? (April 16, 2017) Less Is More ... Read more

No-code, Low-code, Some Code and Everything In-between

CTO-for-hire (through Freeman Clarke) Alex Hudson recently wrote an article about what he terms "The 'No Code' Delusion": That so-called no-code and low-code tools will replace bespoke business software development entirely, no trained software developers required anymore. In a nutshell, it's the old pipe dream of just having to write a specification (in this case a visual one) and having the actual code write itself, the fallacy here of course being that the code is the final product rather than the specification ... Read more

Mike Ryan @ AngularConnect 2018: You might not need NgRx

Read more

Declarative vs. Imperative Programming From A Web App Perspective

In his article Declarative vs. Imperative Programming for the Web visual content designer and self-described former engineer Pascal Cremer does a nice job at explaining the differences between these two common programming paradigms and how declarative programming can lead to much more concise, comprehensible and readable code. He provides examples from a web context and shows how declarative programming lends itself to being used in a functional reactive programming style, which has become very popular with frameworks such as RxJS. Read more

R2DBC: Reactive Relational Database Connectivity for Java and Spring

As I mentioned in a blog post last week with Reactor and Spring WebFlux reactive programming has come to Java and the Spring platform. R2DBC is relatively new project that aims to "to bring a reactive programming API to relational data stores". While currently still considered experimental, R2DBC endeavours to introduce reactive programming to how we access relational databases (reactive relational, hence the R2 in the name). This means that instead of the traditional way of querying SQL databases imperatively with prepared statements ... Read more

Reactive Programming with Spring Boot and Spring WebFlux

Reactive Programming and its functional incarnation reactive functional programming are declarative programming paradigms that with the advent of reactive extensions for JavaScript such as RxJS have become immensely popular. The JavaScript event loop and the run-to-completion behaviour it entails as well as Node.js's non-blocking I/O calls lend themselves to an event-driven programming style that deals with asynchronous behaviour where both number and frequency of events aren't known beforehand. Reactor is a library that introduces this paradigm to Java. Spring WebFlux is a ... Read more
Next Page »