Blog & Artikel

Blog-Post

Persistente fachliche Validierungen mit Rails

Es war einmal ein RoR-Projekt. Dieses fristete lange Zeit ein Schattendasein und drohte, Opfer einer Sunk-Cost-Fallacy zu werden. Am Ende wurde es eingestampft. Einige darin umgesetzte Ideen waren jedoch gut gewesen und sollten weiterleben. In diesem zweiteiligen Post möchte ich die Idee der persistenten Warnmeldungen festhalten, damit sie in künftigen Projekten wieder aufgegriffen werden kann.

Blog-Post

iSAQB Advanced Level examination anti-patterns

As the „crowning glory” of the iSAQB(R) Advanced Certification, you have to write an approximately 40-page-long paper (AKA architectural solution) to a given problem. During our 5+ years of experience in reviewing such papers, we found several anti-patterns. This blog post aims to help future CPSA-A aspirants to avoid these nasty glitches.

Blog-Post

What’s in a Name: Qualität

Blog-Post

Evidenz aus Hirnstürmen

Evidenz aus Hirnstürmen? Und was haben Fische und Kartoffelknödel damit zu tun?

Blog-Post

Just add Code (Teil 2)

Dass Web Components ein gutes Mittel sind um in sich gekapselt Logik für Progressive Enhancement an den Browser auszuliefern hatten wir uns ja schon angeschaut. In diesem Teil des Blog Posts zeige ich im Detail, wie GitHubs Catalyst uns dabei unterstützt Web Components zu entwickeln, die dem Progressive Enhancement Paradigma folgen.

Blog-Post

Is Domain-driven Design overrated?

Artikel

Welche Spuren hinterlassen wir mit Technologie?

Bei INNOQ setzen wir uns immer mehr mit KI und Machine Learning auseinander, allerdings mit ihrem sinnvollen Einsatz bei unseren Kunden und Projekten. Beste Voraussetzungen also für einen spannenden Diskurs.

Blog-Post

Just add Code (Teil 1)

Will man in einer Webapplikation auf dem Browser Logik ausführen, so bieten sich mittlerweile Web Components an um mit sinnvollem Scoping Code und Markup zu senden. In den üblichen Beispielen führt das leider dazu, dass man im Browser ohne JavaScript nichts sieht, weil der gesamte Inhalt der Web Component in JavaScript generiert wird.

Blog-Post

Kurzlebige Branches in Git

Weniger ist manchmal mehr

Blog-Post

Turning a group of strangers into a team

A testimonial how five foreigners became a team via Remote Mob Programming in less than a day.

Blog-Post

Defect Analysis using pandas

Defect Analysis is a classic analysis technique to get insights into how buggy your system might be. In this blog post, we explore how Defect Analysis works and how we can implement it with a standard data analysis tool from Python: pandas.

Blog-Post

Progressive Enhancement mit Hotwire

Die endgültige Renaissance von Server-side Rendering?

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

Der INNOQ Technology Day

Am 09. Dezember 2020 fand unsere erste Online-Konferenz statt. In diesem Blog-Post möchten wir einen kleinen Rückblick geben und unsere „lessons learned” teilen.

Artikel

Mit Git die Vergangenheit manipulieren

Git auf der Kommandozeile

Artikel

Es muss nicht immer grafisch und klickbar sein

In dieser Kolumne geht es um Git. Genauer gesagt die Benutzung von Git auf der Kommandozeile. Neben Grundeinstellungen und vielen Kommandos wird hier und da auch ein Trick vorgestellt, um die Benutzung zu erleichtern.

Blog-Post

Deploying a WebAssembly smart contract on Oasis Ethereum

One of the cornerstones of Ethereum 2.0 is the migration from the „classic” EVM to a WebAssembly-based virtual machine. In this post, I explain how to deploy a compiled WebAssembly contract to the Oasis Ethereum chain.

Artikel

Domain-driven Design und Bounded Context

Eigentlich ganz einfach, oder?

Blog-Post

Innovation in the web without sacrificing accessibility

We’ve truly stretched the boundaries of what is possible on the web. However, to do this we’ve sacrificed semantic HTML and made our applications inaccessible to a huge amount of different users. Instead of breaking the foundation of the web, we should consider this as an opportunity: how can we implement applications in a way that works for any user who might come along and want to interact with it?

Artikel

The art of software reviews

Auch in erfolgreichen Softwaresystemen lauern praktisch immer Probleme. Durch systematische Reviews können Sie diese Probleme zielgerichtet identifizieren – und damit eine robuste Grundlage für zukünftige Verbesserungen schaffen. Der Artikel stellt die Breitensuche als den zentralen Ansatz methodischer Software-Reviews vor und beleuchtet einige der wesentlichen Untersuchungsansätze.

Artikel

RESTful HAL APIs

Pragmatische Küchentricks

Blog-Post

NO SOFTWARE

Technische Lösungen und digitale Transformation prägen das Geschäftsleben mehr denn je. Könnte manchmal NO SOFTWARE die bessere Lösung sein?

Artikel

Smart Contracts in Rust

Ethereum ist die erste öffentliche Kryptoplattform, die das Konzept der Smart Contracts popularisiert hat, und auch immer noch die erfolgreichste. Doch die gängige Programmiersprache Solidity leidet unter einer ganzen Reihe von systematischen Problemen, die des Öfteren zu spektakulären Sicherheitslücken führen. Eine neue Generation von Sprachen schickt sich an, diese Mankos auszugleichen. Besonders interessant ist dabei die – derzeit noch experimentelle – Möglichkeit, WebAssembly als Bytecode-Format für Smart Contracts zu benutzen. Passend dazu eignet sich Rust als Hochsprache, die WASM-Code erzeugen kann. Wir schauen uns an, wie das intern funktioniert und solche Verträge implementiert werden können.

Artikel

Die VENOM Story

Strategische Anwendungsmodernisierung mit Split+Extract Strategien

Blog-Post

Tests Granularity

In two previous posts we discussed the benefits of automated tests and the properties of a good test. So far we were trying to avoid differentiating the tests in any way. This time we want to address one way how tests can be classified: tests granularity.