Blog & Artikel von Daniel Westheide

Blog-Post

Erst agil, dann agentisch

Agentische AI soll die Softwareentwicklung beschleunigen. Doch neue Technologien können ihre volle Wirkung nur entfalten wenn Organisationen ihre Struktur, Prozesse und Kultur anpassen. Die meisten Organisationen aber sind heute noch nicht in der Lage von schnellerer Softwareentwicklung wirklich zu profitieren. Voraussetzung dafür sind die Fähigkeiten, die durch die agile und DevOps-Bewegung geprägt wurden.

Blog-Post

Type-safe SQL queries in Java and Rust

In recent years, our industry has been in favour of strong typing and build-time verification to make certain classes of bugs impossible. How much influence has this trend had on how we can write SQL queries in Java? Let’s look at how typesafe SQL queries can be in Java, how this compares to what you can do in Rust, and consider the benefits and drawbacks of these different approaches.

Artikel

Nicht mehr Open-Source

Technologieentscheidungen rational treffen

Blog-Post

Type-safe HTML templates in Java and Rust

The current fashion in our industry is to use static and strong typing wherever possible. How fashion-conscious is the Java community when it comes to HTML templating, though? Let’s have a look at what approaches at type-safe or build-time verified HTML templating are available in the Java ecosystem, how they compare to what’s available in Rust, and whether the benefits outweigh the costs.

Blog-Post

Type-safe HTTP routing in Java and Rust

In recent years, the trend in our pop-culture industry has been to favour static and strong typing as well as build-time checks over dynamic typing and techniques like late binding. Where possible, you are expected to use the compiler for correctness checks instead of unit tests. Even though the Java language is statically typed, its type system is often considered to be not very helpful. Web applications written in Java are traditionally bristling with weakly typed APIs, heavy use of reflection, and lots of annotations that are interpreted at runtime. Let’s see how far the trend towards build-time checks has been adopted in the Java ecosystem when it comes to writing web applications, how it compares to what’s done in the Rust community, and what benefits and weak points these techniques have.

Blog-Post

How we cut our website’s carbon emissions in half

Decarbonising innoq.com

Artikel

What is Sustainable Software?

Environmental sustainability is a very important issue, but software is something virtual, so it doesn’t seem to have an impact, right? Wrong! As software creators, we have a significant impact and can make a difference by incorporating the principles of eco-friendly software development into our understanding and practices.

Artikel

Remote Mob Programming bei INNOQ

Bei INNOQ nutzen einige Teams die Arbeitsmethode Remote Mob Programming erfolgreich in Kundenprojekten, teilweise sogar schon seit über zwei Jahren. Wir haben vier Teams gefragt, wie ihre Erfahrungen mit dieser besonderen Arbeitsmethodik sind und waren.

Blog-Post

Scala Days 2019 in Lausanne

Unser Erfahrungsbericht

Blog-Post

Blockchain Mining: Embarrassingly Parallel?

In this blog post, we are going to look at three different approaches at mining new blocks in a blockchain using Rust, all of them using multiple threads, and we’re going to compare their runtime performances with each other and with that of the two single-threaded solutions from the previous post.

Blog-Post

Blockchain Mining with Rust

Recently, at one of our yearly hands-on events, we took on the challenge of implementing our own blockchain. One of the core challenges of this is the mining of new blocks. In this blog post, I want to show two different approaches we tried out for this task, using the Rust programming language.

Blog-Post

The language of maths is not the language of your business

Blog-Post

The perils of shared code

In this blog article, I want to examine why using a sharing code between microservices may sound attractive in the first place and why it can cause bigger problems than the ones you try to solve.

Blog-Post

Solving the wrong problems

Instead of rushing to an engineering solution to a problem, we would often be better off by lying back and determining the root cause of our engineering problem, which is often an architectural one.

Blog-Post

Why RESTful communication between microservices can be perfectly fine