Blog & Articles

Blog Post

What’s in a Name: Architecture

The term architecture is used with slightly different meanings throughout the IT industry. This post clarifies what (software) architecture is all about - and which misunderstandings might linger on your way to common understanding.

Article

Web Components mit Polymer

Wie im ersten Teil dieses Artikels bereits angekündigt wurde, beschäftigt sich dieser zweite Teil mit der technischen Anwendung von Polymer 1.0. Wo der erste Teil die Spezifikation und den Einsatz der Technologie aus einer Vogel-Perspektive zeigt, werden wir hier die konkreten APIs vorstellen.

Article

Nachhaltige Webarchitekturen

Warum REST und SPAs nicht immer die Lösung sind

Blog Post

Der Architektenaufzug: Öfters mal nach oben fahren

In einem Gastbeitrag geht Gregor Hohpe der Frage nach, welche Rolle Softwarearchitekten in Zeiten der Digitalen Transformation spielen, und welche Relevanz diese Aufgabe für die Zukunft von Unternehmen hat.

Blog Post

ROCA vs. SPA

Currently, a lot of companies are migrating from Desktop applications (mostly written in Java) to Web applications for their products as well as for their internal tooling. When they start with this process they often ask themselves: Which technologies should we use to build our Web application? Should we use Angular.js or React? Or should we go with recommendations like ROCA instead of a Single Page Application?

Article

AWS Lambda

Serverlose Microservices

Blog Post

What’s in a Name: Bimodale IT

Der Ausdruck “bimodale IT”, manchmal auch “IT der zwei Geschwindigkeiten”, steht seit einiger Zeit auf der Agenda vieler IT-Manager ziemlich weit oben. Daher möchte ich hier einerseits den Begriff erklären, andererseits einige (persönliche) Einschätzungen dazu abgeben.

Article

Web Components mit Polymer

Die vom W3C standardisierten Web Components erleichtern die komponentenbasierte Entwicklung von Benutzungsoberflächen für Webanwendungen. 2013 hat Google die Open-Source-Bibliothek Polymer initiiert, die Entwicklern beim Einsatz von Web Components Unterstützung an die Hand gibt. Mit der Vorstellung von Version 1.0 dieses Frameworks stellt sich die Frage, ob Polymer nun produktionsreif ist und in realen Projekte eingesetzt werden kann. Im ersten Teil der Serie stellen wir die Version 1.x vor und prüfen die Möglichkeit der Nutzung für Geschäftsanwendungen.

Article

Buildumgebung in Gefahr!

Risiken und Lösungsansätze

Blog Post

Error Handling in Go

Two commonly perceived problems of the programming language Go are that handling errors is verbose and repetitive parametric polymorphism is not available This post is about the intersection of those problems and Rob Pike’s recommendation on the former.

Blog Post

Web Scraping mit PhantomJS-CEF

In Anlehnung an den Blogbeitrag von Martin Weck zu Beginn des Jahres, stellt Gastautor Andreas Knuth in diesem Artikel mit PhantomJS-CEF ein weiteres Tool vor, mit dem sich effizientes Web Scraping betreiben lässt.

Blog Post

Solving the wrong problems

Blog Post

Eindrücke des Texteditors Atom

Ich vertrete ja die Meinung, dass es eine Gute Idee™ ist, immer mal wieder seine Werkzeuge zu wechseln. Dabei schließe ich auch Texteditoren ein. Das selbst ist ein Thema für ein anderes Mal, aber es ist auch der Grund, weshalb ich seit März eine Weile (etwa 7 Wochen) lang primär mit Atom gearbeitet habe.

Article

Java-Web-Frameworks von innen?

Web-Frameworks für Java gibt es nun bereits seit fast 20 Jahren. Diese nehmen dem Anwendungsentwickler eine Menge Arbeit ab und sorgen dafür, dass dieser sich nicht auf Infrastruktur konzentrieren muss, sondern die Anwendungslogik im Vordergrund steht. Doch was genau tut so ein Web-Framework eigentlich? Dieser Artikel zeigt, was heutige Web-Frameworks leisten und wo diese sich dann doch in Nuancen unterscheiden.

Blog Post

What’s in a Name: Transparency

Blog Post

Objektorientierung mit Go

Klassen und ein hierarchisches Typsystem sind der Programmiersprache Go völlig fremd. Trotzdem kann man mit Go auch objektorientiert programmieren. Welcher alternative Ansatz dahinter steckt, stellt dieser Blogpost vor.

Blog Post

Die Sprache Go

Go ist eine kompilierbare Programmiersprache mit starker und statischer Typisierung. Mit den Adjektiven imperativ, objektorientiert und modular lässt sich Go gut beschreiben. Im ersten Blogpost zu diesem Thema werden wichtige Grundlagen vorgestellt.

Blog Post

Transclusion in self-contained systems

Article

Microservices - Agilität durch Modularisierung

Microservice-Architekturen sind der neue Hype. Viele denken: Alles wird einfacher mit diesem Ansatz - Software ist langfristig wartbar, die Entwicklung wird schneller und die Software skaliert besser. Es ist aber an der Zeit für einen detaillierten kritischen Blick.

Blog Post

Triple Booting a Mac

Installing a triple-boot environment on a Macbook Pro is not as straight-forward as one might think or read on the internet. This guide explains how to install Windows 10 and Linux (Ubuntu) alongside with OSX and share data via a common partition. As an add-on, I explain how to access the raw partitions to boot the foreign OS not only natively but also in a virtual machine.

Blog Post

Transklusion in Self-Contained Systems

Article

Ein Domänenmodell für das SmartHome

Es gibt in der Domäne SmartHome viele unterschiedliche Sichtweisen, proprietäre Produktfamilien, einige offene Standards und verschiedene Konsortien, die versuchen, langfristig tragfähige, standardisierte Kommunikationsstandards zu definieren. Wir skizzieren für das Umfeld des sogenannten Ambient Assisted Living eine mögliche API für die relevanten Anwenderrollen.

Blog Post

Konsumieren asynchroner HTTP-APIs mit Java 8

Es ist heutzutage nicht unüblich, für eine eigene Anwendung auf externe Services zurückzugreifen. Manchmal dauern diese Anfragen einige Sekunden, in denen die Anwendung auf das Ergebnis warten muss. Vorteilhafter wäre hier eine asynchrone Kommunikation mit dem Service, sodass die Anwendung parallel noch andere Dinge tun kann. Mit der Einführung von Completable Futures in Java 8 lässt sich eine elegante Lösung für diese Kommunikation mit asynchronen HTTP-APIs umsetzen. Statt Ewigkeiten auf die Fertigstellung langläufiger Anfragen warten zu müssen, kann über das Future zum gewünschten Zeitpunkt auf das Ergebnis zugegriffen werden, wenn es möglicherweise bereits fertig berechnet ist. Ein Problem stellt jedoch die Entscheidung darüber dar, wann das Future als komplett bewertet werden kann. In diesem Blogpost wird dieses Problem sowie ein Lösungsweg betrachtet und anhand eines Beispiels praxisnah beschrieben.

Blog Post

Why RESTful communication between microservices can be perfectly fine

Blog Post

Horizontal automation – a waste of time.

Automation of server administration tasks is a waste of time.