Artificial Intelligence Protecting wildlife with machine learning Deploying a smart camera trap in a remote location to help save elephants and rhinos
Artificial Intelligence A deep dive into improving indoor localisation My research journey into the usage of fingerprinting in combination with K-Nearest Neighbor to improve the indoor localisation performance of the Rijksmuseum app
Frontend Going from JavaScript to WebAssembly in three steps My journey of taking the Micrio client to the next level
Backend The beautiful headache called event sourcing A deep dive into the decision to use event sourcing for payment processing and why, in the end, it was a wonderful fit
Artificial Intelligence A software engineer's approach to neural machine translation What we learned while building an online translator for the small language of Tigrinya
Frontend Effortless security on the web How to implement multi-device passwordless authentication on the web with the Web Authentication API
Android The missing part of Android in-app updates Prioritising in-app updates while Play Store support is not yet available
Web development Our team's blessing: a living style guide A case study on how to maintain large websites by using a living style guide
Android Instant-appifying a large mature app The challenges of adding an instant app to a five-year-old codebase
Web development Making a Lighthouse Plugin work with Lighthouse CI Learn how to do your custom page audits in GitHub Actions with Lighthouse CI
Backend Why “Always use UTC” is bad advice How to choose the correct representation for storing Dates and Times.
Backend "A wild Demogorgon just wrecked your Kubernetes cluster" Introducing a tabletop role-playing game as a fun training method for new team members at our Philips Hue project.
Android Android Server Driven UI How we were able to build a native Android app in record time as well as iOS and Web applications, by sharing business logic and UI components.
Internet of Things Getting our 💩 together — literally How we developed a load balancer for our company's toilets to recommend the cleanest loo to our colleagues.
Backend Discovering Server Driven UI Our story about how Server Driven UI has contributed to the success of classical music streaming service Primephonic.
Backend Making sense of Redis’ SCAN cursor In this blog post, I try to figure out why Redis returns those seemingly arbitrary numbers for SCAN commands.
iOS Getting started with multi-window on iPadOS A short step-by-step guide on how to convert an existing single window iPad app into a multi-window app.
iOS Supporting “Sign in with Apple” in your UIKit app How to implement iOS 13's new privacy sign-in tool to quickly onboard new users.
iOS Apple's new Combine framework Apple's take on Reactive Programming: check this first introduction if you want to know more about this fundamental building block.
iOS Adapting to the new 'allow just once' location permission in iOS 13 At the WWDC19 keynote Apple announced two changes in the way location permissions will work in iOS 13. Avoid losing users over these permission optimizations by understanding these changes.
Backend Programmatic Authentication with Google Identity-Aware Proxy One-click deployment for Philips Hue firmware: in this blogpost I summarize the benefits of Google IAP and programmatic authentication.
Android Implementing Dark Theme in your Android app Android Q wants to be friendlier on the eyes by introducing a Dark Theme. This post explains how this new mode impacts you and your users.
Android Diving into Jetpack Compose Hands on with the new UI framework for Android apps, Jetpack Compose.