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.

Aaron Parecki – Why Do We Really Need OAuth Anyway? @ beyond tellerrand Düsseldorf 2021

At this year's beyond tellerrand Düsseldorf IndieWebCamp co-founder and OAuth consultant Aaron Parecki gave a talk about OAuth, why we need it, and how we can use it to simplify authentication and authorization in web applications: Aaron Parecki - Why Do We Really Need OAuth Anyway? - beyond tellerrand Düseldorf 2021 from beyond tellerrand on Vimeo. Aaron also provides a guide to building an OAuth 2.0 server and a video course titled "The Nuts and Bolts of OAuth 2.0". Read more

Stratospheric – 1.3 Released: 🔒SSL Setup Made Easy

After a minor update last month, which was largely about migrating to Spring Cloud AWS 2.3.2 and various configuration improvements, Tuesday we released a major update of Stratospheric - From Zero to Production with Spring Boot and AWS! Apart from general housekeeping efforts, revision 1.3 of the ebook contains these major improvements: A consistent SSL and (optional) custom domain setup: The previous order in which we introduced various infrastructure components caused problems with duplicate HTTP listeners in our ELB configuration and an SSL ... Read more

The Layers Of The Web – Jeremy Keith @ beyond tellerrand Berlin 2019

Earlier this week - after a hiatus of almost two years on account of having been postponed due to the pandemic - this year's beyond tellerrand conference, an event about design, creativity, and the web, went ahead again. Even though Marc Thiele, the mastermind, organiser, and genuinely awesome person behind beyond tellerrand, ran a terrific series of online events under the Stay Curious moniker while on-site events weren't allowed to take place, it was amazing to be back at this wonderful event ... Read more

Java Language Features Introduced From Versions 8 Through 17

The Java programming language and the Java Virtual Machine (JVM) are known for being very stable and favouring compatibility over new language-level features. This focus on stability arguably is one of the reasons why Java is so popular with larger companies, particularly those of the enterprise variety, where reliability, maintainability and a long-term outlook are key and typically more important than the latest and greatest features. However, starting in 2017, with the Java release cycle changed to rapid 6-months iterations, from the previous ... Read more

What is a (business) process, actually?

The terms process and business process, in particular, are sometimes used lightly and without thinking too much about what those terms actually mean. Drawing upon and thinking in terms of the concept of a value chain (i.e., a set of activities designed to create a product or service that has value to a customer) some time ago I came up with this definition of what constitutes a process, not just when it comes to business and market value, but also with regard ... Read more

Revisiting Popular Posts: Spring Batch Resources & Maven Failsafe With Spring Boot

Two of the most popular posts on this blog cover resources for Spring Batch and how to use Maven Failsafe with Spring Boot: Spring Batch Resources: Batch Processing, ETL And Data Conversion Using Maven Failsafe With Spring Boot While doing some regular blog housekeeping, I recently revised those articles and fixed a few broken links. If you're interested in these technologies and frameworks, you might want to check those articles out. Read more

Inversion of Control vs Dependency Injection

Dependency injection is one way of implementing inversion of control - a programming principle that allows for better modularity and extensibility. Dependency injection is commonly achieved via constructor injection, field injection, or setter injection. Inversion of control is an abstract concept, which dependency injection is a realisation of. Other methods of implementing inversion of control for example include the template pattern, service discovery, delegates, events, and currying (when applying a functional programming paradigm). Read more

Stratospheric – Version 1.1 Released

Last week, we released the first update of "Stratospheric - From Zero to Production with Spring Boot and AWS" after our 1.0 release in August. Thanks a lot to GitHub users anthony-be, skhurram, alrawas, mygordienko, and lealceldeiro, who contributed to our sample Todo app by creating issues and pull requests. The code changes resulting from these contributions in turn are reflected in our latest update for the eBook, in which we clarified some aspects about scaling out / sticky sessions and added a ... 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

Using SQLite on a Static Website Without a Back-end Server

GitHub user phiresky recently published an interesting blog post on Hosting SQLite databases on Github Pages. Using SQLite - or in fact any kind of SQL database - in the browser? Why should one want to do this? Now, while it's certainly true that in the context of web applications SQL databases and RDBMS generally are relegated to the realm of back-end servers, depending on the requirements, a database in a front-end application or a self-contained application that doesn't even have or ... Read more
« Previous PageNext Page »