Blog & Artikel

Artikel

Distributed Trust

So gut wie jedes Projekt das der Interaktion von Menschen dient verwendet ein Konzept zur Bewertung der Reputation seiner Teilnehmer. Ist die Umsetzung zu Beginn eines Projekts noch einfach und übersichtlich, oft auch etwas naiv, wachsen die Ansprüche im Laufe des weiteren Lebenszyklus eines Systems.

Artikel

Konsensansätze für Blockchains

Eines der wichtigsten Kriterien, um Blockchain-basierte Systeme miteinander zu vergleichen, ist die Art und Weise, wie sich die am insgesamt verteilt organisierten System beteiligten Parteien auf eine einzige Wahrheit einigen. Dazu werden unterschiedliche Konsensus-Verfahren eingesetzt, die wir uns in diesem Artikel näher ansehen.

Blog-Post

Zeitreise mit LocalDate und DateTimeFormatter

Die Krux mit den Patterns

Blog-Post

Cooking with Onions: Inward-Pointing Arrows

The onion architecture is an established approach to structuring applications.

Blog-Post

Go lernen an ein paar verregneten Tagen

Go ist eine schnell zu lernende Programmiersprache. Was aber sind runes? Und wo ist Funktion xy? Beim Lernen tauchen einige Eigenheiten und Besonderheiten auf, denen in diesem Blogpost nachgegangen wird.

Blog-Post

Report Generator in Rust

Blog-Post

Domain Events vs. Event Sourcing

Why domain events and event sourcing should not be mixed up.

Blog-Post

Domain Events vs. Event Sourcing

Weshalb Domain Events und Event Sourcing nicht vermischt werden sollten

Artikel

Technologien für Microservices

Warum Microservices-Frameworks nicht genug sind

Blog-Post

Sentiment Analysis in der Praxis

Mit dem lexikonbasierten Verfahren lässt sich eine Sentiment Analysis schnell und einfach umsetzen. Ein praxisorientiertes Beispiel zeigt, wie damit zum Beispiel sozialwissenschaftliche Forschung unterstützt werden kann.

Blog-Post

20 Jahre INNOQ Schweiz

Am 28. November 2018 haben wir mit Ihnen in der Giesserei in Zürich eine kurzweilige Software-Zeitreise gefeiert. Nachfolgend ein paar Impressionen und Einblicke aus der Giesserei in Oerlikon.

Artikel

Die erste Java-Version mit Long-Term-Support seit Java 8

Java, die Elfte

Artikel

Microservices – oder doch nicht?

Microservices sind zwar in aller Munde, aber wie jede andere Architektur auch sind sie ein Trade-Off. Also stellt sich die Frage, wo Microservices sinnvoll sind, wie es mit Microservices weitergeht und was nach Microservices kommt.

Blog-Post

Langweilige Innovation?

Hat Innovation immer etwas mit den neuesten Technologien zu tun oder kann sie auch scheinbar langweilig sein? Ein Fall aus dem realen Beraterleben.

Blog-Post

Testen von Microservice-Systemen

Blog-Post

Handling German Text with torchtext

There is a growing list of tools that are ready to be used with non-English texts. We show common ways to integrate them in torchtext and use their language-specific options.

Blog-Post

Declarative Data Transformations

This describes a declarative approach to validating and transforming inconsistently structured data.

Artikel

Benimmregeln für Architekturen - automatisch geprüft

Architekturregeln spezifizieren und testen mit ArchUnit

Artikel

Vorgehensweise für maschinelles Lernen als Orientierung

Eine Vielzahl von hochentwickelten Technologien für maschinelles Lernen ist als Open Source frei verfügbar. Dennoch zeigt sich, dass es nur vergleichsweise wenige Anwender gibt, die diese Technologie in Produkten erfolgreich einzusetzen. Maschinelles Lernen ist ein sehr vielschichtiger und komplexer Bereich der Informatik und darüber hinaus ein Gebiet aktiver Forschung. Einsteiger können insbesondere im Bereich Deep Learning dadurch schnell den Eindruck gewinnen dass eine Einarbeitung nur auf hohem wissenschaftlichen Niveau möglich ist. Es gibt jedoch durchaus auch praxisorientierte Quellen. Viele Informationen sind nur in englischer Sprache verfügbar, daher verweist der Artikel auf englische Quellen.

Blog-Post

What’s in a Name: Projekt (und Produkt)

Wir verwenden den Begriff „Projekt” in der IT leider fälschlicherweise als Stellvertreter für Produkt oder System. Dabei sollten wir, insbesondere bei iterativ-inkrementeller Entwicklung, primär auf die entstehenden Ergebnisse, also das System, achten sowie auf dessen Geschäftswert, Qualität und Nützlichkeit. Der irrige Begriff Projekt lenkt davon ab.

Blog-Post

Serverless - The Vendor Is Not Your Enemy

Serverless Entwicklung mit bekannten Pattern

Artikel

Designer sind vom Mars, Entwickler von der Venus

Digitale Produkte werden von Designern und Entwicklern sowie Architekten und Projektleitern Hand in Hand erarbeitet. Alle tragen gleichermaßen die Verantwortung für das Endergebnis. Und doch, oder deshalb, stellt die Zusammenarbeit oft eine Herausforderung dar. Über Farben lässt sich streiten, über Frameworks auch, im besten Fall agil und aufs Pixel genau. Ein empathischer Umgang miteinander erleichtert sicherlich den Arbeitsalltag, aber grundlegende Kenntnisse, die über den Tellerrand der eigenen Disziplin hinausgehen, können die Qualität eines Produkts direkt beeinflussen.

Artikel

Java-Bibliotheken für den Einsatz in Tests

In den meisten Projekten entfällt ein nicht gerade kleiner Anteil des Codes auf Tests. Für diesen Testcode sollten dieselben Regeln wie für Produktivcode gelten. Neben dem Achten auf Verständlichkeit und Wartbarkeit gehört auch das Erschaffen von Abstraktionen und das Vermeiden des Not-invented-here-Syndroms durch den Einsatz von passenden Bibliotheken dazu. Dieser Artikel stellt sechs Bibliotheken vor, die sich im Einsatz als praktisch und hilfreich erwiesen haben.

Blog-Post

Testing is storytelling

Blog-Post

Continuous Integration Contradicts Features Branches!

Features branches are a popular approach to separating the development of different features - but unfortunately this contradicts continuous integration’s goal of continuously integrating all changes. So what to do?