CouchDB is a NoSQL database, that perfectly fits the requirements of web applications. It provides a HTTP Interface to query the JSON document it stores. The equivalent of „SQL queries“ in the CouchDB ecosystem are map reduce functions, that are written in Javascript. CouchDB has a riot-proof replication protocol that allows multi-master-replication setups. PouchDB adds the final touch to the CouchDB ecosystem. PouchDB runs in your browser, and can actually replicate with CouchDB, and is the perfect foundation for Offline First architectures.
In his everyday life, Christian is the Director of Software Development with Crosscan, a german company that is in the business of retail transformation. He enjoys working with a full stack web architecture, Javascript user interfaces and mobile applications as well as backend architectures with PHP. He enjoys automating all the the things. Leveraging the right tool for job, while keeping in mind the beauty of simple architectures is one of is core beliefs. Christian enjoys finding the right spot between pragmatism and formally correct software design.
Responsive Design wird heutzutage als Standard bei Webprojekten vorausgesetzt, doch es stehen bereits neue Herausforderungen vor der Tür. Und diese Herausforderungen sind weit größer als nur der Umgang mit alten Webbrowsern. In einer Welt, in der Apps und Seiten aus Web Components zusammengesetzt werden, stoßen herkömmliche Responsive-Techniken an ihre Grenzen. Gleichzeitig wollen immer mehr Grafiken mit immer höherer Geschwindigkeit übertragen werden. Für diese und andere Herausforderungen gibt es einige neue Webstandards (z. B. für Responsive Images), einige schwammige Ideen (z. B. Container Queries als @media-Ergänzung) und oft genug noch gar nichts Konkretes. Dieser Workshop zeigt die Probleme des Responsive Webdesigns von morgen auf und diskutiert mit den Teilnehmern die verschiedenen neuen Webstandards und Ideen, die diese Probleme zu lösen versuchen.
Peter Kröner arbeitet als Trainer und Berater für moderne Frontend-Webtechnologien. Seit dem Erscheinen seines Buchs "HTML5 – Webseiten innovativ und zukunftssicher" ist er als Trainer für Webentwicklung tätig, schult Entwickler und berät Unternehmen in Fragen rund um HTML5, CSS, JavaScript und andere Web-Zukunftstechnologien. Er schreibt, podcastet und entwickelt Software rund um die Technologien, die das WWW von morgen antreiben.
When PHP turned 20 last year, the core developers presented us with a really nice birthday present: version 7, released in December 2015. Less than a year later, PHP 7 is being used in production by a growing number of companies. This day will get you ready for PHP 7, in all aspects.
Sebastian Bergmann, creator of PHPUnit, will take you on a tour through the history of the PHP project. Find out where PHP originates from, and how it became one of the most widely used programming languages in the world. Why is there no PHP 6, and which crucial role did Facebook play? You will also take a look under the hood of PHP to better understand why PHP 7 can offer better performance and lower resource usage than PHP 5, and how this will affect the future of PHP. You will learn about the new language features introduced in PHP 7.0 and PHP 7.1.
Arne Blankerts, security and infrastructure expert, will go in-depth about the installation and deployment of the PHP software stack. He will make the point why LAMP is no longer en vogue, and introduce you to some state-of-the-art alternatives. You will learn how to better scale PHP 7 and find out how you can smoothly transition from PHP 5 to PHP 7 from a sytem architect’s point of view.
Stefan Priebsch, a leading PHP consultant and coach, will show you how to get your codebase ready for PHP 7. How can you leverage new features in legacy projects without having to rewrite everything from scratch? To prepare you for the big migration, common pitfalls will be covered, and you will get to know pragmatic solutions. He will also look at the business impact of PHP 7. The day is rounded up with a Q+A session where no question will go unanswered, and we will open up the room for discussions.
Sebastian Bergmann has instrumentally contributed to transforming PHP into a reliable platform for large-scale, critical projects. Enterprises and PHP developers around the world benefit from the tools that he has developed and the experience he shares.
Arne Blankerts solves IT problems long before many companies realize that they even exist. He focuses on IT security, performance and reliability, which he attends to with almost magical intuition creating solutions that clearly bear his hallmark. Companies around the world rely on his concepts and Linux-based system architectures.
Stefan Priebsch (@spriebsch) is a co-founder of The PHP Consulting Company (http://thephp.cc). As a consultant and coach, he helps teams to develop software successfully. He is a university lecturer for web programming and author of several textbooks. After all those years, he still thinks that programming is fun.
Sebastian Meyen, Chief Content Officer at Software & Support Media, and Tom Wiesseckel, editor for PHP Magazin welcome you and give you an introduction into the program.
Sebastian is Chief Content Officer at S&S Media. He has been actively involved with the IT industry for more than 10 years. As a journalist he is constantly in touch with thought leaders in software development and architecture. He is editor in chief of the German speaking Java Magazin and program chair of the JAX conferences since 2001. Prior to joining S&S Media, he studied philosophy and anthropology in Frankfurt, Germany.
Thomas Wiesseckel has been an editor with Software & Support Media since 2009. His scope of topics include web technologies and development as well as mobile development and open source. He’s contributing to periodicals such as Entwickler Magazin and PHP Magazin and was the founder of the magazine PHP User. Other than that he works on special editions in the mobile space and is an advisor for International PHP Conference and WebTech Conference. Before joining Software & Support Media he has studied sociology and did freelance PHP and frontend development work.
In dieser Einführung werden verschiedene Securityaspekte von Webapplikationen praktisch betrachtet und erlebt. Mit den folgenden möglichen Themen werden Sie sensibilisiert: Dass fremder SQL-Code in einem Request etwas ganz anderes auslöst, als der Entwickler dachte. Sind Read-only Attribute wirklich Read-only? Weshalb die Kreditkartennummern trotz https mitlesbar sind? Unverhoffte Update-/Delete-Operationen? Wie mit Passwörter umgehen? Eine kleine Einleitung stimmt uns auf dieses Thema ein. Danach werden exemplarisch Securityprobleme anhand von Livedemos demonstriert, und ich erläutere, was man dagegen machen kann. Das Ziel ist, sich mit diesen Erfahrungen im Rucksack in das Thema Security vertiefen zu können.
Philipp Friberg arbeitet als SAP Development Consultant bei itelligence Schweiz. Seine dortigen Arbeitsschwerpunkte sind Architekturberatung sowie Entwicklung und Projektleitung für kundenindividuelle Softwarelösungen. Er ist im Coreteam für mobile Anwendungen mit Fiori. Darüber hinaus vermittelt er an der TBZ Höheren Fachschule Zürich sein Wissen in der Softwareentwicklung, insbesondere zur mobilen Cross-Plattform-Entwicklung. Er publizierte verschiedene Fachartikel und schrieb das Buch „Web-Apps mit jQuery Mobile“ im dpunkt.verlag. Er absolvierte ein Studium zum Software-Engineer FH an der Hochschule Rapperswil und zum Master of Science in Business Information Systems an der Hochschule Liechtenstein.
High availability is becoming a de-facto requirement of today’s applications. Customer-facing IT failures mean directly losing customer revenue and trust, as users have grown accustomed to easily switching service providers for more reliable ones. Thus, it is critical to have a healthy, performant, resilient IT structure serving as a backbone of conducting your business. But there are no textbook solutions to achieving five 9s availability. Data redundancy, computing clusters, load balancing, fail-over mechanisms, each of these individually addresses one potential issue, but none treats systems in your organisation holistically for maximising business revenue. Silos are a clever method of grouping servers in such a way that they can be scaled both horizontally and vertically, depending on the actual application needs. Most importantly, it frees you from over-optimizing the architecture upfront, by allowing fine adjustments easy to integrate in your Agile workflow.
Having crafted professional software since 2003, Georgiana Gligor is living proof that geek girls are an asset to any team. She loves coding large-scale applications and mentoring team mates in achieving craftsmanship. Georgiana has experience in every aspect of the life cycle of software development and is hungry for more.
Though we "believe" in testing and "know" it helps deliver better quality code, many of us struggle to incorporate testing into our daily work. Why? And how do we get both technical and non-technical stakeholders not only on the same page with regards to delivering quality software but also actively involved in the process?
In this session, Sebastian Bergmann, creator of PHPUnit, and Jeffrey A. "jam" McGuire, Evangelist, Developer Relations at Acquia, discuss how adopting and consistently applying testing to software development delivers better results at a lower overall cost and how the benefits of testing accrue over time.
Sebastian Bergmann has instrumentally contributed to transforming PHP into a reliable platform for large-scale, critical projects. Enterprises and PHP developers around the world benefit from the tools that he has developed and the experience he shares.
Jeffrey A. "jam" McGuire—Evangelist, Developer Relations at Acquia—is a memorable and charismatic communicator with a strong following at the intersection of open source software, business, and culture. He is a frequent keynote speaker at events around the world. He writes and talks about technology, community, and more on weekly podcasts and as a blogger on dev.acquia.com <http://dev.acquia.com>. This all helps satisfy his inner diva, which he also feeds with performances as a storyteller and musician.
Single Page Applications sind aktuell der Toptrend in der webbasierten Anwendungsentwicklung. Doch die notwendige Entscheidung für ein konkretes SPA-Framework bedeutet auch, dass sich alle Entwicklerteams eines Projekts zwingend nur noch in dieser Frameworkdomäne bewegen können. Vorhandenes Wissen zu anderen Frameworks bleibt ungenutzt und spätere Frameworkwechsel oder Versionsupdates sind faktisch unmöglich. Oder doch nicht? Manuel Rauber und Marco Frodl mögen die Gleichberechtigung und präsentieren einen Weg, der den Traum von unterschiedlichen SPA-Frameworks und Frameworkversionen auch in größeren Softwareprojekten Realität werden lässt.
Marco Frodl ist Consultant bei der Thinktecture AG und versteht sich als ein IT-Dolmetscher: Er vermittelt Entwicklern die Bedürfnisse der Anwender und Anwendern die Denkmodelle von Entwicklern. Das Verständnis für die Belange beider Seiten hat er sich in einer Vielzahl von Softwareprojekten aus den letzten fünfzehn Jahren erarbeitet und kennt daher die Nöte beider Seiten. Er interessiert sich für moderne Technologien und neueste Hardware – hinterfragt dabei aber gerne, ob jeder Fortschritt auch einen echten Nutzen für die Anwender mitbringt. Auf Twitter erreichen Sie Ihn unter @marcofrodl.
Seitdem mit HTML5 und JavaScript moderne Multi-Plattform-Lösungen entwickelt werden können, begeistert sich Manuel Rauber für die Umsetzung großer Applikationen auf mobilen Endgeräten aller Art. Als Softwareentwickler bei der Thinktecture AG unterstützt er die Entwicklung mobiler Cross-Plattform-Lösungen mit AngularJS, Cordova und .NET im Backend. Sie erreichen Manuel auf Twitter unter @manuelrauber.
Jeder von uns kennt sie - die alten PHP-Projekte, die vor vielen Jahren entstanden und heute noch eine wichtige Funktion im Unternehmen erfüllen. Und es gibt ebenso viele Ratschläge, mit diesen Applikationen umzugehen: Tests und Continuous Deployment einführen. Kompatibel zu Symfony2 machen oder gleich dahin portieren - oder doch lieber Laravel? Domain-driven Design und Microservices nutzen, durch Node.js, Go, Rust ersetzen. Der Talk zeigt, welche Optionen man hat, welche Probleme sie jeweils mit sich bringen und wie man sich entscheiden kann.
Johann-Peter Hartmann ist CTO (Chief Tailwind Officer) bei der Mayflower GmbH und eigentlich ein Entwickler mit Hackerherz. Die Weltsicht aus der Hackerperspektive wirkt sich sowohl in der Nähe zu Themen wie Security und komplexe Systeme als auch in der Herangehensweise an Managementthemen aus.
Webseiten kontinuierlich zu testen, ist eine Aufgabe, die keiner gerne macht. Der Mensch versucht seit Generationen unliebsame und repetitive Aufgaben zu automatisieren. Mit Unit-Tests kann der Quelltext mittlerweile kontinuierlich getestet werden, das Problem ist weitestgehend gelöst. Das Frontend/UI wird eher nachlässig behandelt, obwohl seit Langem Werkzeuge wie Selenium oder das Dickschiff HP UFT existieren. Mit Nightwatch.js existiert ein umfangreiches JavaScript-Framework zur Erstellung und Ausführung von Frontend-Tests im Web. Diese Session zeigt, warum automatisierte Frontend-Tests wichtig sind, wie wir Tests automatisiert haben und wie Nightwatch.js den Schmerz von automatisierten Frontend-Tests lindern konnte.
Carsten Sandtner ist Head of Software Development bei mediaman Gesellschaft für Kommunikation mbH in Mainz. Seit 1998 ist er in der professionellen Webentwicklung tätig und hat zahlreiche Großprojekte für namhafte Kunden als Entwickler und Projektmanager durchgeführt. Für Zynga war Carsten Sandtner als Senior JavaScript Developer an der Entwicklung eines zentralen JavaScript-API beteiligt und hat an der Portierung von Spielen auf HTML5 mitgewirkt. Privat und beruflich hat er ein starkes Interesse für die Entwicklung des „open Webs“ und dem dazugehörigen Umfeld.
Live document collaboration, playing cooperative and competitive games, updating sports scores, booking seats. Stateless and belated nature of HTTP requests is not a perfect match for these and other similar use cases. WebSockets offer immediate delivery of messages in two-way communication between the client and the server. Instead of periodic polling for new messages, they are pushed to the receiver over TCP/IP connection. Implementing WebSockets is not limited to technologies like Node.js but has also been possible in PHP for quite some time with impressive results. In this talk, I will introduce this technology and tell the audience how to successfully adopt it in their PHP applications while avoiding problems and pitfalls.
Lead developer at Slevomat, Czech largest Groupon-like e-commerce site offering deals to >200k daily visitors. I am especially interested in developing web apps outside of the traditional LAMP stack using technologies like RabbitMQ, Elasticsearch, Redis, Supervisor, ReactPHP, and WebSockets. I love continuous integration, unit testing, versioning, and code reviews. To broaden my horizons outside of my daily job, I also develop native apps for iOS.
What is Neural Network? Why is Deep Learning so important? What are the challenges for introducing those technologies to production services? In this session, we will look at the answers for those questions and how Google has been successfully deploying large scale neural network on services such as Google Photos, Android and Google Search. Also, we will introduce the new Google Cloud products such as Cloud Vision API, Speech API, TensorFlow and Cloud ML that allows developers to take advantage of the power of Google’s machine intelligence with scalable and fully managed services.
Kaz Sato is Staff Developer Advocate at Cloud Platform team, Google Inc. He leads the developer advocacy team for Machine Learning and Data Analytics products, such as TensorFlow, Vision API and BigQuery, and speaking at major events including Google I/O 2016, Strata+Hadoop World 2016 San Jose, Google Next 2015 NYC and Tel Aviv and DevFest Berlin. Kaz also has been leading and supporting developer communities for Google Cloud for over seven years. He is also interested in hardwares and IoT, and has been hosting FPGA meetups since 2013.
Decembre 2015 marked a milestone in over 20 years of PHP development: with the release of PHP 7 everything changed. Let’s have a look at what happened in the first 12 months after its release. Spoiler alert: You will be surprised!
Sebastian Bergmann has instrumentally contributed to transforming PHP into a reliable platform for large-scale, critical projects. Enterprises and PHP developers around the world benefit from the tools that he has developed and the experience he shares.
Robert Lemke is founder of the Neos Open Source Project and initial creator of the Flow Framework. He's also co-founder and CEO of Flownative, a venture supporting web agencies and organizations to realize successful projects with Neos and Flow. Robert lives in Lübeck, Germany, together with his wife, two daughters, and Rocket, their espresso machine.
Stefan Priebsch (@spriebsch) is a co-founder of The PHP Consulting Company (http://thephp.cc). As a consultant and coach, he helps teams to develop software successfully. He is a university lecturer for web programming and author of several textbooks. After all those years, he still thinks that programming is fun.
Thomas Wiesseckel has been an editor with Software & Support Media since 2009. His scope of topics include web technologies and development as well as mobile development and open source. He’s contributing to periodicals such as Entwickler Magazin and PHP Magazin and was the founder of the magazine PHP User. Other than that he works on special editions in the mobile space and is an advisor for International PHP Conference and WebTech Conference. Before joining Software & Support Media he has studied sociology and did freelance PHP and frontend development work.
I show how we managed to make a relaunch of an existing PHP 4 Application without a Big Bang. The new App should fulfill the common -ables and for sure run quite well on mobile devices. To be asynchronous in some areas we also use some Node.js Microservices which are helping us to make a smart backend for the React/Redux Frontend. I will show how we designed the API to be able to generate status information of all kind of actions for different purposes like statistics dashboard or just notification. Testing all this might be interesting, too.
Since 1998 Mike Lohmann works as software engineer focussing on web technologies. His passion is to bring PHP applications to the next level. Mike is co-founder of Protofy where he is consultant and engineer in the fields of automation and software architecture for complex web and mobile systems.
Single-page applications (SPAs) are clearly superior to classic web applications in terms of user experience and offline support. However, they might be a little behind when it comes to SEO and speed of first page impressions. Universal web applications can render both on the server and on the client using mostly identical code. They can thus combine the benefits of single-page applications and classic web applications. In this talk I will show how to build a universal web application using React and Redux. As a special extra I will share my experience of what impact the introduction of flow (http://flowtype.org/) had to the sample React/Redux App.
Oliver Zeigermann is a developer and consultant from Hamburg, Germany. He has developed software in many different languages and technologies over the past couple of decades, including C, C++, Java, Python, and JavaScript.
Dependencies are at the core of every complex software system. We will never be able to get rid of them, but identifying and managing them in the right way, leads to clean architecture and more testable code. Michael wrote dePHPend (dephpend.com) as a tool to pick up the work where pdepend left off and bring dependency analysis and visualization to PHP 5 and 7. In this session we’ll discuss questions like “Are we doing MVC right?”, “Why does Class X always break?” or “Where do I start refactoring?” and we’ll have a look at how dePHPend can be used to back up the answers with facts.
Michael is a freelancer and open-source enthusiast who’s in love with high-quality software development. His weapon of choice for most of his professional and private work is PHP. Often forced to work with legacy software, he believes in a rational and pragmatical approach to software development.
AngularJS ist eines der derzeit am meisten verwendeten Frameworks für Single-Page-Webandwendunge. Zurecht, vereint es doch viele bereits seit Jahren in der Native-Richt-Client Entwicklung etablierte Techniken wie Dependency Injection und Data-Binding. Doch auch AngularJS hat seine Schwächen und eine steile Lernkurve. Um diese Situation zu verbessern, wird derzeit an Angular 2 gearbeitet. Eine Beta Version ist bereits verfügbar. Was bietet sich da mehr an, als gemeinsam die ersten Schritte zu wagen. In diesem Talk wird anhand einer Demo-Anwendung der Aufbau einer Angular-2-Anwendung gezeigt und auf die Unterschiede zu AngularJS 1.x eingegangen.
Philipp Burgmer ist ein Web-Native. Seit fünfzehn Jahren in der Webprogrammierung unterwegs, gibt er sein angesammeltes und ständig aufgefrischtes Wissen gerne in Schulungen, Vorträgen bei Konferenzen und Blogeinträgen weiter. Er arbeitet als Entwickler, Berater und Trainer für die w11k GmbH und beschäftigt sich mit der Gestaltung und Optimierung von Benutzeroberflächen. Philipp bloggt zusammen mit seinen Kollegen unter http://blog.thecodecampus.de. Privat interessiert er sich für Klettern und DJing.
This talk covers the lessons learned on my journey of developing large-scale PHP applications for the past ten years. I will cover the core areas of software design (OOD) and programming (OOP) that are important to consider when building your own software applications, with a focus on building them in PHP 7.
Paul Dragoonis, from Scotland, is passionate about software quality, architecture and continuous delivery. He spends his time contributing to the PHP project and php.net website, PHP-FIG, many frameworks and open source projects. He’s a member of the PHP-FIG group and lead developer of PPI Framework Engine (www.ppi.io), where he focuses on multi-framework interoperability. When not working on software Paul enjoys fishing, martial arts and sleeping.
Kommunikation mit JavaScript war lange Zeit sehr überschaubar: HTTP-Anfragen waren dank Ajax möglich, aber auch nur an den Ursprungsserver und mit weiteren Einschränkungen. Dies hat sich mittlerweile geändert: JavaScript-Code kann jetzt auch mit fremden Browsertabs und Servern reden, sofern diese mögen; ebenfalls ist eine bidirektionale Kommunikation anstelle des altbackenen Pull-Modells möglich. Auch Zugriff auf Kamera und Mikrofon sind (nach Nutzerbestätigung) möglich. Diese Session zeigt zahlreiche bekannte und weniger bekannte Kommunikationsmöglichkeiten mit JavaScript und HTML5 auf und beleuchtet Vor- und Nachteile aus dem Projektalltag.
Christian Wenz ist Berater, Trainer und Autor für Webtechnologien. Als Teilhaber der Arrabiata Solutions GmbH (http://www.arrabiata.de/) sorgt er für schnellere und sicherere Webanwendungen. Er ist Hauptautor der PHP-Zertifizierung von Zend (Versionen 5.3 und 5.5), Contributor mehrerer Open-Source-Projekte und spricht regelmäßig auf Entwicklerkonferenzen rund um den Globus.
Granted, having multiple services that share a common login without re-authenticating for every request may seem like a rather complex task. One that seemingly can only be solved by rather complex solutions like OAuth or SAML. Luckily it doesn’t necessarily have to be your only choice: this talk will demonstrate how easy it can be to setup an SSO-Service proxy with nginx, some simple LUA scripting and PHP.
Arne Blankerts solves IT problems long before many companies realize that they even exist. He focuses on IT security, performance and reliability, which he attends to with almost magical intuition creating solutions that clearly bear his hallmark. Companies around the world rely on his concepts and Linux-based system architectures.
Mit dem Varnish Cache Proxy werden Webseiten richtig schnell. Der Einsatz von Varnish ist simpel, wenn man die Cacheregeln von HTTP verstanden hat. Zum Einstieg schauen wir uns deshalb HTTP und die Varnish-Konfiguration an. Der Hauptgang ist das Integrieren des FOSHttpCacheBundle in ein Symfony-2-Projekt. Wir schauen uns Caching-Regeln, Cache-Tagging, Integrationstests und andere leckere Funktionen an. Zur Nachspeise gibt es eine Einführung in Edge Side Includes (ESI).
David arbeitet als Symfony-Experte bei der Liip AG. Er ist aktiv an Open-Source-Projekten beteiligt, insbesondere am Symfony-Content-Management-Framework, der PHPCR-Implementierung Jackalope, Koautor des FOSHttpCacheBundle und des HTTP-Client-Projekts HTTPlug.
Gestaltungsraster kennt jeder Designer, und Grid-Layouts sind seit 960 gs auch keine Neuigkeit mehr für Frontend-Entwickler. Trotzdem ist es nicht immer leicht nachzuvollziehen, wie Grid-Systeme funktionieren, gerade im Responsive Webdesign. Sven Wolfermann zeigt in seiner Session, wie man von einem Bootstrap Grid zum eigenen individuellen Grid kommt und wie Entwickler in Zukunft die neuen Features von CSS Grids nutzen können.
Sven Wolfermann ist freier Webdeveloper mit Fokus auf moderner Frontend-Entwicklung aus Berlin. Er gilt als Experte im Bereich „Responsive Webdesign“ und gibt sein Wissen in Vorträgen und Workshops weiter. Sein Augenmerk liegt dabei auch immer auf der User Experience, der Accessibility und der Performanceoptimierung. Bereits seit 2003 unterstützt er mit seiner Firma maddesigns Agenturen und Firmen im Projektgeschäft. Bei Twitter ist er unter @maddesigns anzufinden.
Single Page Applications (SPAs) let your applications run in the browser using JavaScript. They can thus be an alternative to classic server rendered applications – in particular if you need more interactivity or the programming model of a classic web application just does not cut it. In this talk I will explain what makes SPAs different from classic web applications and give you a quick overview over the most popular SPA frameworks Angular 1 and 2, React, and Web Components. I will also compare them based on features that might be relevant in your project.
Oliver Zeigermann is a developer and consultant from Hamburg, Germany. He has developed software in many different languages and technologies over the past couple of decades, including C, C++, Java, Python, and JavaScript.
Long gone are the times where we could get away with creating websites which were pixel-perfect replications of a printed brochure. But publishing to multiple channels, multiple devices, multiple audiences not only creates challenges on the editorial side: how should developers approach content and create content types which support the purpose of the website? What's a modern approach to CMS-based projects?
This session starts with a 101 of content modelling and then walks you through an actual content-driven implementation of a website based on Neos CMS.
Robert Lemke is founder of the Neos Open Source Project and initial creator of the Flow Framework. He's also co-founder and CEO of Flownative, a venture supporting web agencies and organizations to realize successful projects with Neos and Flow. Robert lives in Lübeck, Germany, together with his wife, two daughters, and Rocket, their espresso machine.