I’m maintaining a SaaS that reads the data from an ESP8266-based, Luftdaten-compatible air pollution sensor and displays it in a nice way.
Coffee GB is a Gameboy Color emulator written in Java 8. It’s meant to be a development exercise and a way to learn about internal architecture of a retro game console.
Carty is an integrated tool to create, edit, review and test Sling mappings for Adobe CQ/AEM.
Secure CQ is a tool which can be used to find the most popular security problems in your CQ instance. It tests both instances (author, publish) and the dispatcher.
Sling Query is a Sling resource tree traversal tool inspired by the jQuery. It allows to avoid boilerplate code using convenient, functional API.
Sling Dynamic Include
SDI replaces dynamic generated components (eg. current time or foreign exchange rates) with server-side include tag (eg. SSI or ESI). Therefore the dispatcher is able to cache the whole page but dynamic components are generated and included with every request.
adaptTo() 2019, Berlin
Deep-dive into cloud-native AEM deployments based on Kubernetes
Presentation gives an overview on the Kubernetes setup we internally use in Adobe, the issues we’ve run into and the ways we’re dealing with them.
Toruń JUG #36, 2017
Game Boy emulation in Java
Polish presentation about my Coffee GB emulator.
adaptTo() 2017, Berlin
Zero downtime deployments for the Sling-based apps using Docker
Presentation shows how the Composite Node Store, a new Oak feature, can be used together with Docker to perform blue-green deployments. This kind of setup allows to dynamically change a part of the repository (containing the application code), while leaving the content part untouched.
EVOLVE 2016, San Diego
CRX2Oak — all the secrets of repository migration
Basic CRX2Oak usage, more advanced options and some real-world cases of large-scale (hundreds of GBs) data migration cases.
CIRCUIT 2014, Chicago
Use SlingQuery and walk the tree with ease
I talked about Sling Query — a jQuery-inspired repository traversal tool for Sling.
adaptTo() 2013, Berlin
Inter-Sling communication with a message queue
I presented results of my efforts to integrate Sling with ActiveMQ.
CQCON 2013, Basel
Security testing with SecureCQ.
I presented SecureCQ — automated security checklist for Adobe CQ5/AEM.
Java User Group 2013, Poznań
Shooting rabbits with sling
I introduced local Java User Group to the Apache Jackrabbit and Apache Sling.
adaptTo() 2012, Berlin
Sling Dynamic Include
I presented an useful cache tool for Sling.
Cognifide blog 2012
Multidomain CQ mappings and Apache configuration
I wrote a popular article on Sling mappings configuration.