Blog & Artikel von Daniel Westheide

Blog-Post

Speed vs. Skill

Every AI coding tool promises the same thing: unprecedented speed, effortless productivity, freedom from tedious work. The pitch is compelling. But what if feeling more productive and being more capable aren’t the same thing? Research shows that automation makes us feel more productive while eroding our skills. Let’s examine this tension through the lens of cognitive psychology.

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

The Type-Safe Web Stack, Part 3

Artikel

Nicht mehr Open-Source

Was kann man tun, um sich vorab dagegen zu wappnen, plötzlich für eine wichtige Technologie einem Anbieter ausgeliefert zu sein? Kann es auch eine valide Entscheidung sein, das Risiko bewusst in Kauf zu nehmen? Und sind die Risiken, die sich bei Verwendung von Open-Source-Technologien ergeben, per se geringer als bei kommerziellen Alternativen? Wie geht man damit um, wenn eine Technologie, die man verwendet, plötzlich nicht mehr Open-Source ist? Ist es sinnvoll, zu einem Fork zu wechseln, und welche Risiken bestehen dabei?

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

The Type-Safe Web Stack, Part 1

Blog-Post

How we cut our website’s carbon emissions in half

Between 2010 and 2030, the environmental impact of the digital world is expected to triple. While network infrastructure and devices get more and more efficient, all of these improvements are eaten up by more and more people and devices being connected to the internet, but especially by websites which are becoming more and more bloated. On the desktop, the average page weight of a single web page is four times as much now as it was in 2010. On mobile devices, it’s even more dramatic: The average page weight is ten times as much as in 2010. In the summer of 2022, we decided that it’s about time that we take action and start decarbonising our company website.

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

Wir haben vier Teams zu ihren Erfahrungen mit Remote Mob Programming befragt

Blog-Post

Scala Days 2019 in Lausanne

Im Juni 2019 fanden die Scala Days anlässlich des 10. Jubiläums wieder in Lausanne – an der Geburtsstätte von Scala – statt. Heuer gab es nicht nur zwei Konferenztage, sondern auch eine ganze Reihe von Community-Events davor und danach. INNOQ war die ganze Woche vor Ort und unsere Kollegen berichten hier von ihren Erfahrungen.

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

Blog-Post

The language of maths is not the language of your business

Abstractions from category theory can be powerful. But there are reasons why you may want to keep your domain model free of them.

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

Blog-Post

Why RESTful communication between microservices can be perfectly fine

Recent debates about REST versus message passing in microservice communication have led to some confusion. What is meant with asynchronous communication in this context and why is REST a perfectly valid choice?