Daniel Siepmann - Coding is Art

Blog Post

TYPO3 Camp Rhein Ruhr 2018 - Recap

Published: , Updated:

Topics: event


This is my personal recap of this years TYPO3 Camp Rhein Ruhr. Especially as this is a German speaking camp. I’ll publish the recap in English, so everyone not capable of understanding the Youtube videos or slides, has a chance to at least know what happened.

Right the day before official start of work shops, @Jens_der_Denker, @spooner_web and myself met. Jens and me set up a basic TYPO3 deployment at bitbucket.org using Bitbucket Pipelines.

Personal pre event two days before

Right the day before official start of work shops, @Jens_der_Denker, @spooner_web and myself met. Jens and me set up a basic TYPO3 deployment at bitbucket.org using Bitbucket Pipelines.

At the evening we went to some Italian restaurant for socializing.

Workshops the day before

The official event started with workshops at Friday morning. Thanks to the awesome location, the Unperfekthaus, we had a nice Brunch.

There were in total four parallel workshops:

Pre event Slot-Car Race

Friday ended with the social event in the evening. Two slot car racing tracks with 8 slots each were available. Together with table football and dinner, this was the best pre event I had so far.

Each player had in total 7 to 8 races, so everyone had a fair chance and used each slot and car once. The top 4 racers from each tracks were the finalists and played a last time.

Myself only was 7th, but had the fastest lap in the final!


The Saturday, of course, started with brunch and the opening, followed by session planning. The session plan, in German, is available at https://www.typo3camp-rheinruhr.de/sessions/2018/samstag.html.

As I had birthday, together with two others, everyone wished us all the best with a short song.

I went to the following sessions. Not much, but there was time enough to meet all the great people from the community. Also you could use the free time to help out each other with problems.

Deployable Records by @ArminVieweg

@ArminVieweg shared the current concepts and state of the new extension. The main goal is to make it easy to synchronize configured records between multiple TYPO3 installations. E.g. share a sys_template record between production, integration, staging and local environment.

Therefore PageTS is used for configuration, yaml or json is used to store the records, and one does not need to take care of uids anymore.

The extension will auto update constants to match the uids out of the box!

This looked very promising for agencies and freelancers that run into the problems to keep such things in sync.

We currently prevent such issues by following this approach:

For each necessary page where the uid needs to be known, e.g. a detail page where one would configure the uid within TypoScript, we will create this page in production while keeping it hidden. We then will create this page in our local environment and setup everything. Stuff that needs to be done within the database, e.g. insert a plugin record, are done with upgrade wizards. We use them like doctrine migrations. They have an method to check whether they need to run and an method to execute the necessary steps.

While the extension definitely makes things easier, we will keep our workflow for now.

TYPO3 Surf by @t3easy_de and @schreiberten

@t3easy_de and @schreiberten took over the responsibility for TYPO3 Surf from Helmut Hummel. They showed the current state and that Surf is nearly feature complete right now, only missing documentation. But as this is the only missing piece, they are currently working on the docs.

TYPO3 Surf provides the huge benefit that it comes with defaults to deploy TYPO3 out of the box. TYPO3 Surf itself is a Symfony command line application that provides and easy way to configure software deployments using PHP.

We will check out TYPO3 Surf and further solutions, which might replace our currently solution using GitLab-CI, with plain bash commands. Instead we might replace this with GitLab-CI and TYPO3 Surf, or some other solution, in the future.

This way you will get some benefits out of the box, e.g. a pre deployment where you can run smoke tests, rollback to the latest release if something will break during the deployment.

Accessibility by @computerzauber

@computerzauber allowed us to use her wheelchair to drive a round out of the room and back. Also @web2date pushed us a round inside the wheelchair. She already helped @computerzauber during one of the previous events.

Beside this very unique experience, @computerzauber explained us some situation a wheelchair driver experiences and how everyone could help.

This was a very special session, quite interesting and helpful.

Sponsoring Meeting

As this was the first Camp we sponsored, by we I mean our new founded company Codappix GmbH, we were invited together with all sponsors to a small session. Everyone got his sign for sponsoring and one could exchange some information.

Hacker Jeopardy

The last session was the Hacker Jeopardy, quite funny and with categories like TYPO3 Event Shirts, or Persons and “sin in youth”. Funny and educational everyone learned some new exploits or facts regarding TYPO3.

Video recording

All sessions within room 404 were recorded, thanks to the @joomla video team, in person @jeha_cgn. This again shows how awesome OpenSource can be. Joined forces by competitors in the CMS ecosystem, junited by one mission, like already through CMS Garden.


Beside the sessions, the organizers asked for interviews. These will be published, in German, at their Youtube channel. And I’m proud to be asked. Some questions contained: When did you start with TYPO3? What’s the most important extension for you? Where do you see TYPO3 be in 10 years?

Dinner and Whiskey Tasting

In the afternoon everyone had dinner and some went to the whiskey tasting afterwards. As @extcoder asked me to explain how to run acceptance tests for TYPO3 extensions within GitLab-CI, I’ve invested the evening by figuring out how to do this. After 6 hours I had a running setup.


The Sunday, of course again, started with brunch and the session planning. The session plan, in German, is available at https://www.typo3camp-rheinruhr.de/sessions/2018/sonntag.html.

I went to the following sessions.

TYPO3 & agencies by @mattLefaux and @benjaminkott

This session was a discussion and outlook into TYPO3s and TYPO3 agencies future.

Current plans are to make TYPO3 CMS feature complete by the release of CMS v10. Where feature complete doesn’t mean there will be no further releases. But TYPO3 will cover all necessary CMS features we know right now.

Everyone is invited to provide feedback to the core team. E.g. @jweilandnet had a feature request that makes sense inside the core.

Also upgrades will be easier again, freeing up time. So agencies will no longer make money with updates, like they do right now. It will become a much smaller part for agencies and freelancers.

By not making money with updates anymore, one needs to find our ways, e.g. consulting.

TYPO3 will also improve further with partners like Google Ads to provide helpful features out of the box.

Current plans for TYPO3 CMS 10 will be:

Consistent data API

Replacing current DataHandler, Extbase persistence, FormFinisher. See: https://typo3.org/community/teams/typo3-development/initiatives/persistence/

Rewritten Filemodule

The current backend module for files is not state of the art. It will be developed from scratch, and @benjaminkott already showed some early layout ideas.

GitLab-CI TYPO3 - Functional - Acceptance Testing by myself

As written earlier, @extcoder asked me to provide information about this topic. As I’m not an expect with Codeception and acceptance testing, I added some information about functional testing your TYPO3 content elements.

First of all I showed the running GitLab-CI setup, with TYPO3 and Codeception acceptance testing. This example is available at GitHub: https://github.com/DanielSiepmann/workshop-gitlab-acceptance As of time writing, there is no readme or anything else provided. @lolli42 might provide official documentation in the upcoming weeks, so I did not plan to extend the information.

Just check out the .gitlab-ci.yml for information about how to setup the environment and how to run the tests.

Also I had some time to show how we have added functional tests for content elements for one of our customers. Right now we have more then 200 functional tests for our content elements covering all possible combinations of user input. As the customer is running a CMS v7 right now, we added the tests to make update to v8 and v9 possible. Also we need to refactor some parts in the future.


The TYPO3 Camp Rhein Ruhr was my very first camp back in time, and it’s always the last camp in each year. Thanks to the huge organization team and the very unique location with endless food and drinks, it’s one of the best camps so far.

This year I’ve visited every single TYPO3 Camp in DACH region, together with TYPO3 Camp Venlo, the Developer Days (thanks to @merzilla who gave me his ticket) and CertiFunCation day.

Every single camp is special and unique, you meed different people from the community and enjoy all the talks.

I’m looking forward to the next year where my company will try to sponsor me, so I’ll be there, at every single camp, again next year. We will also sponsor TYPO3 Camp Rhein Ruhr again next year.