Blog & Articles

Blog Post

Auto Layout in iOS: How to avoid the common mistake

Creating and adding new views using Auto Layout often results in missing views when running the app because the flag that determines whether a view’s autoresizing mask is translated into Auto Layout constraints has not been turned off for each new view. This blog post provides a solution on how to never run into this situation again.

Blog Post

Play 2.4 with Guice and MyBatis

The Play Framework is getting more popular and Version 2.4 finally includes Dependency Injection as the default mechanism to access central resources instead of singletons. This blog post explores what is necessary to combine MyBatis with Play using its default DI Framework: Guice. Batteries (code sample) included!

Blog Post

Praktikumsbericht „Web Discoverable Hypermedia“

Blog Post

Miteinander bei innoQ

Dieser Post beschäftigt sich mit dem Für-und Miteinander bei innoQ abseits von technischen und fachlichen Diskussionen.

Blog Post

What’s in a Name: Consistency

The term consistency has several different meanings. This post identifies and clarifies those - especially consistency as synonym for conceptual integrity, one of the most important features for long-lasting software systems.

Blog Post

Microservices und Continuous Delivery: Nur zusammen möglich?

Article

Gegen die dunkle Macht

Ein ganz normaler Tag: Morgens frage ich mich, welche Katastrophe mich heute erwartet. Ich bin einiges gewohnt, aber die letzten Monate wurde es immer schlimmer: Früher gab es nur Fehler im Test oder Schwierigkeiten bei der Entwicklung. Jetzt kommen auch noch Laufzeitfehler dazu, die den Betrieb im Rechenzentrum stören und unsere Endkunden massiv irritieren. Als hätte sich die dunkle Macht gegen uns verschworen – dabei haben wir doch nur ganz normale Anforderungen. Aber sicherlich das schlechteste Softwaresystem der Welt …

Blog Post

Leading Edge as passion — Die Lernkultur bei innoQ

Wenn es um das Lernen von neuen Programmiersprachen oder Technologien geht, unterstützt innoQ dies auch ausdrücklich während der Arbeitszeit. Eine wichtige Rolle spielt dabei der anschließende Wissensaustausch in Workshops oder mehrtägigen Events.

Blog Post

Familie und INNOQ

Blog Post

Reliable Web Clients

Microservices can make teams and systems more independent but also more vulnerable to the fallacies of distributed systems. Initially I thought this blog post is going to be about how to build reliable web clients with Akka and Akka Persistence. While this is an interesting topic by itself, I now think it is more crucial to first understand the underlying problems and trade-offs before we learn how to get around them.

Article

Bessere Web-Apps mit HTML5-APIs

Der Begriff HTML5 fasst eine bunte Sammlung aus verfügbaren und geplanten APIs zusammen, auf die im Browser von JavaScript aus zugegriffen werden kann. Einige dieser APIs ermöglichen heute, Anwendungen für den Browser zu realisieren, die vor wenigen Jahren noch Plugins erfordert hätten. Die prominentesten Vertreter sind sicherlich Video oder WebRTC. Zum Beispiel ist heute die Public-Key-Verschlüsselung bereits im Web-Client integrierbar oder das Reagieren auf Sensordaten der Betriebs-Hardware des Browsers möglich. Es folgt eine persönliche Auswahl an etablierten APIs und ein Ausblick auf einige noch recht frische.

Blog Post

Declarative HTTP API Testing with gabbi

Article

Batch-Computing in Java

Auch heute noch gibt es Bedarf für die wohl älteste Form der elektronischen Datenverarbeitung. Dass Batch immer noch relevant ist, zeigt der junge JSR 352 für Batch-Verarbeitung in Java EE 7. In diesem Beitrag diskutieren wir verschiedene Fragestellungen, die im Zusammenhang mit der Modernisierung bestehender und Umsetzung neuer Batch-Prozesse auftreten, und gehen auf Strategien und Technologieauswahl ein, die bei der Implementierung von Batch in der JVM auftreten können.

Article

Artenvielfalt

Durch Node.js hält das vielerorts als nur unzulängliche Programmiersprache belächelte JavaScript heute Einzug in die professionelle Serverprogrammierung. Doch welche Möglichkeiten die Plattform bietet und welche Entscheidungen bei ihrem Einsatz zu treffen sind, ist nicht immer einfach zu ermitteln.

Article

Rails gegen Grails

Webframeworks für JVM-Sprachen

Blog Post

A day full of Clojure - organizing the first German ClojureBridge workshop

During the last years a lot of initiatives focusing on increasing diversity in IT and getting kids into IT have emerged. Last weekend the first German ClojureBridge workshop took place in Solingen. Another small but important step towards a diverse IT world.

Article

Apache Cassandra

In dieser Kolumne stellen wir Cassandra vor und zeigen, warum die Datenbank quasi beliebig skaliert und höchst performant ist. Cassandra wirkt für Kenner von relationalen Datenbanken auf den ersten Blick recht vertraut, weil hier auch von Tabellen und Spalten die Rede ist und die Abfragen einfachen SQL-Abfragen ähnlich sehen. Dennoch unterscheidet sich Cassandra konzeptionell von relationalen Datenbank-Management-Systemen (RDBMS).

Blog Post

Per request debugging with Log4j 2 filters

Blog Post

Rollen- und Gehaltsmodell bei INNOQ Deutschland

Im Laufe der Jahre haben wir bei INNOQ mit einer Reihe unterschiedlicher Rollen- und Gehaltsmodelle experimentiert. In Deutschland haben wir mittlerweile ein relativ stabile Struktur, die in diesem Beitrag näher beschrieben wird.

Blog Post

What’s in a Name: Reactive

The term reactivity is overloaded with several different meanings. This post tries to identify and clarify a few of them…

Article

Ruby on Rails wird zehn Jahre alt

Zum Geburtstag: Queueing, Performance und Fremdschlüssel

Blog Post

Using Vector Assets on iOS

Vector graphics provide numerous advantages, especially when developing for mobile devices in a constantly expanding array of different screen sizes and pixel ratios. How to get them to work in an iOS app?

Blog Post

Functional Validation in Scala

Validation is something everybody needs eventually when working with domain models. The Scala ecosystems offers a wide rage of tools which can be used for this purpose. This blog post introduces some of the most common approaches by applying them to a domain model.

Blog Post

Why You Should Avoid a Canonical Data Model

Blog Post

Docker images for developers

Docker seems to be all the rage lately. There are docker talks at every conference, hosting Docker containers has become a hosting option with most if not all PaaS providers, and there is hardly a technology left that is not supposed to run better and more flexibly if you wrap it in a Docker container. Well, except maybe for enterprise-level DBMSs, but you can’t have them all. This post provides an example how Docker can be used at the start of the software lifecycle, during development.