Classic Layout

On Cosmetics vs. Intrinsics in Programming

A ruthless battle occurs every day on the World Wide Web. Its goal is to decide which programming flavor is the best: OOP or FP? I assume that imperative and procedural programming are not part of the contenders. Arguments range from the factual to the irrelevant to the utterly stupid. A couple of years ago, I wanted to listen to …

Read More »

A Quick Glance at the Kubernetes Gateway API

In one of my recent blog posts, I described several ways to access Kubernetes pods. One can access a pod through its IP, but pods are naturally transient. The nominal way is to configure a Service: its IP is stable, and Kubernetes’ job is to keep the mapping between a Service and its underlying pods up-to-date. Different kinds of services …

Read More »

Serverless is the New Timeshare

We have a shared amnesia. When I speak to younger developers about past technologies, I often get blank stares. To be fair, some of that is because I’m a bit “intense” or “weird” but some of that is because. Huh? Really? Did we have that? Case in point XA transactions and 2PC (Two Phase Commit). We have a young generation …

Read More »

Multi-cluster Cassandra deployment with Google Kubernetes Engine (Pt. 2)

This is the second in a series of posts examining patterns for using K8ssandra to create Cassandra clusters with different deployment topologies. In the first article in this series, we looked at how you could create a Cassandra cluster with two datacenters in a single cloud region, using separate Kubernetes namespaces in order to isolate workloads. For example, you might want to …

Read More »

Controlling your Server with a Reverse Shell Attack

Creating and running an application in your favorite language is usually pretty simple. After you create your application, deploying it and showing it to the world is also quite straightforward. The last thing you need is someone to take over your system and fully control your brand new application. In this article, I’ll explain how this can happen with a …

Read More »

Frontmania Conference timetable is here!

Frontmania Conference 2022 is coming in less than a month at Jaarbeurs Utrecht on the 5th of October! The line-up has been released and these awesome speakers will take you on a deep dive in the world of frontend. It’s the frontend Conference of the year, you can’t miss out on. With the best of the best international and national frontend speakers bringing …

Read More »

Use Pattern Matching to Simplify Java

The concept of pattern matching has been around since the 1960s. It’s a well-known language technique used in many programming languages, from Haskell and AWK to Rust and Scala. Pattern matching is relatively new to Java. It was introduced in JDK 14 and has been progressing with new uses since then. This article explores how these new features can make …

Read More »

Running your Database on OpenShift and CodeReady Containers

Let’s take an introductory run-through of setting up your database on OpenShift, using your own hardware and RedHat’s CodeReady Containers. CodeReady Containers is a great way to run OpenShift K8s locally, ideal for development and testing. The steps in this blog post will require a machine, laptop or desktop, of decent capability; preferably quad CPUs and 16GB+ RAM. Download and …

Read More »

Learning by Auditing Kubernetes Manifests

Last year, I spoke at the National DevOps Conference that took place at the British Museum. I had already visited the museum before, but speaking there was a fantastic experience. Besides, we had the museum all for ourselves for a couple of hours. If you’ve ever visited the place, you know what I mean. Anyway, I also attended a talk …

Read More »

Migrating Monoliths to Microservices in Practice

There have been amazing articles on the subjects of migrating from a monolith to a microservice architecture, e.g., this is probably one of the better examples. The benefits and drawbacks of the architectures should be pretty clear. I want to talk about something else though: the strategy. We build monoliths since they are easier to get started with. Microservices usually …

Read More »