Shutting down

It’s been only 15 months since we launched our peer-to-peer ride sharing service for everything. Last week we decided to shut down the service. A few weeks ago we got a letter from the Deutsche Bundesbank. They informed us, that we need a permission by the Bundesanstalt für Finanzdienstleistungsaufsicht (BaFin). This is required since we hold…

Shelf – Managing Project Configurations

The Problem In this article I’m going to discuss a problem which most people wouldn’t even consider a problem: managing project configurations when automating deployment workflows. Now this first sentence probably raises more questions than it answers: What do I mean with project configurations, and more precisely with managing project configurations? Why do I consider…

Top 5 Problems of Spring Web Applications

Howdy, and welcome to our first guest post by Petri Kainulainen! Petri is passionate about software development and continuous improvement. He is specialized in software development with the Spring Framework and is the author of Spring Data book. He is writing a lot about Java, Spring and related technologies over at so go and…

Building an AOP Framework for PHP – Weaving Strategies

In the previous posts (see [1], [2] and [3]) we have learned how to add metadata to classes and how to work with annotations. Now it’s time to talk about adding advices to the objects using these annotations.

Consider two different functions each defined within a separate class – the original code and the advice handling cross-cutting functionality. AOP allows you to execute both of them in one turn, for example the original code followed by the advice code. We have to connect both pieces of code or, in other words, we have to apply the aspect to the original class.

The process of applying aspects to a class is called weaving.