Schedule

 

from 16:00 -Checkin Hostel for arrivals on Wednesday

19:00  Beersafari for all who registered for this event

Meeting Point: Hall of Jugendherberge Düsseldorf. Here you need to pay your €27.50 for this event directly.
Andrea Kumpfe will wait for you and lead you to Schlossturm, it's a short walk over the bridge.
Have fun guys!

 

09:00 - 13:00 Registration

10:00 - 12:00 Certification - Precert,  Certification / Room Heinrich Heine 2. Floor

10:00 - 12.00 Coding Night Preparation Workshop (Benni Mack) / in the Restaurant

13:30 - 14:00 Opening / Room jweiland.net 2. Floor

14:00 - 15:30 Christian Kerschbaum, Challenges for Developers in a Digital World / Room jweiland.net 2. Floor

15:45 - 16:00 Teaser talks (Hannes and Sanjay) / Room jweiland.net 2. Floor

16:15 - 18:30 Hacker Jeopardy / Room jweiland.net 2. Floor

16:15 - 17:30 Hannes Lau, Frontend Prototype integration / Room Jan Wellem 1. Floor

17:45 - 18:30 Sanjay Chauhan, 10 Tips & Tricks For TYPO3 Upgrade Projects / Room Jan Wellem 1. Floor

18:30 - 21:00 Dinner in Restaurant

21:00 - 00:00 Karaoke till death - Like it loud? Join the band / Room jweiland.net 2. Floor

21.00 - (open end) Lounge Club - For people who want it a bit more quiet, no program

 

Keynote: Challenges for Developers in a Digital World (Christian Kerschbaum)

Data on the Run - The General Data Protection Regulation
Know your Customer
Copyright in the Digital Age
Documentation? You can't be serious!

Frontend Prototype integration (Hannes Lau)

It's common practice for many web agencies to build frontend prototypes of their web projects before integrating the frontend into TYPO3 as Fluid templates. During the integration, the markup gets duplicated, which is tiresome and error prone. Additionally, every change to the markup requires an adaption of the backend code.

Common FE prototyping frameworks like Patternlab or Fractal allow FE developers to build their prototypes as Twig or Handlebars templates on top of data objects.
This talk shows how to integrate those templates directly in TYPO3 without duplicating the markup. Content controllers and data converters produce the necessary data objects to be passed to a template engine and into the existing FE templates.
This allows markup changes without the need to adapt BE code.
Additionally, the separation of markup and view logic allow to serve the data objects via API and use them for client-side templating.

 

Workshop: 10 Tips & Tricks For TYPO3 Upgrade Projects (Sanjay Chauhan)

About Workshop

In this talk, I want to give some tips & tricks for TYPO3 upgrade projects, which is one of the most crucial tasks for TYPO3 developers & agencies. The workshop will help from Sales to the Production team, like convince your customers to choose relaunch website or upgrade, how to analyze & estimate upgrade projects, useful technical tips etc.,

Agenda
  • Relaunch Website vs TYPO3 Upgrade
  • Importance of TYPO3 Upgrade
  • How to analyze & estimate TYPO3 Upgrade?
  • Introduce TYPO3 Extension EXT:ns_ext_compatibility
  • Checklist before start TYPO3 Upgrade
  • Note down Useful TYPO3 extensions from TER
  • Technical Tips during the TYPO3 upgrade process
  • Checklist before Go-live
  • QC/QA Testing (Manual and Automation)
  • Questions Answers

 

09:30 - 10:00 Teaser Talks: Piccia, Christian, Fedir, Hannes / Room jweiland.net 2. Floor

10:15 - 11:00 Piccia Neri, UI that rocks: A practical introduction to Gestalt principles applied to web design / Room Jan Wellem 1. Floor

10:15 - 11:00 Christian Kerschbaum, Agile Software Development - A Challenge on its own / Room W. von Schadow 1. Floor

10:15 - 12:30 Hannes Lau, Docker based demo server / Room Clara Schumann 1. Floor

11:45 - 12:30 Piccia Neri, How to use the principles of Design Thinking for better UX and marketing results / Room Jan Wellem 1. Floor

11:45 - 12:30 Fedir RYKHTIK, Feature-rich CMS architecting and development with Go language (part 1) / Room J. von Schadow 1. Floor

12:45 - 14:15 Lunch in Restaurant

14:30 - 15:00 Teaser Talks: Karla, Thomas, Piccia, Sybille / Room jweiland.net 2. Floor

15:15 - 16:00 Karla Schönicke, Life (or Death) of a Product Owner - Working in Agile Teams / Room Jan Wellem 1. Floor

15:15 - 18:30 Fedir RYKHTIK, Feature-rich CMS architecting and development with Go language (continued) / Room J. von Schadow 1. Floor

15:15 - 16:00 Piccia Neri, Colour on the web: colour theory, usability and accessibility / Room jweiland.net 2. Floor

16:15 - 18:30 Thomas Löffler, How do I get my deployment for a project / TYPO3 extension running with GitLab CI / Breakfast room (ground floor)

16:15 - 18:30 Sybille Peters, Improve core contribution workflow / Room Friedrich Spee 1. Floor

19:00 - 20:30 Dinner in restaurant

21:00 - open end Coding Night / Room jweiland.net 2. Floor

 

UI that rocks: A practical introduction to Gestalt principles applied to web design (Piccia Neri)

This talk shows how the application of simple principles of Gestalt psychology can greatly enhance the design of WordPress websites. Most of us probably use some of those principles intuitively already. However, consciously adopting a Gestalt-driven approach helps us hugely towards creating a more meaningful, efficient and improved experience of our websites for our end users. And by the way: it's not necessary to be an expert to use these principles. The talk covers a selection of the Gestalt principles that have a real, practical role in the designing of web pages. Examples of real-world applications will be provided.

Agile Software Development - A Challenge on its own (Christian Kerschbaum)

Contracts? WTF! Who needs contracts! Is Agile Development acceptable? What to do, when fecal matter hits the rotary impeller

Workshop: Docker based demo server (Hannes Lau)

Many QA workflows suffer from an issue that new features can only be demonstrated to the product owner, once the code has been integrated to the mainline branch. This sometimes leads to premature merging of instable code.

This talk shows how to configure Jenkins to build a TYPO3 project as a set of docker images and demonstrate all active code branches as docker stacks in a docker swarm. A dynamic reverse proxy assigns domain names to all branches. The resulting URLs allow non-developers to look at features in isolation, before they are integrated into the main product.

How to use the principles of Design Thinking for better UX and marketing results (Piccia Neri)

Many clients come to us thinking that design is just about making things pretty in a website. And as such, it’s a luxury that can be taken out of the overall investment.
On the contrary!
This talk will show you how using the 5 stages of the Design Thinking process in a new website build will guarantee great results in terms of UX as well as marketing. This solution-based approach makes sure that you start building a website knowing exactly what the target audience needs are, and how to meet them. What’s even better is that knowing the basics of the Design Thinking methodology will also give you a rock-solid framework to solve any problem. The Design Thinking approach can make all the difference between a website that converts, and one that gathers cyber dust.

Workshop: Feature-rich CMS architecting and development with Go language (Fedir RYKHTIK)

"We are living in the time of clouds and microservices, which gives great flexibility and scalability. In this new world, traditional PHP application development approach is not enough, that's why we could see many new micro- or precompiled PHP frameworks appeared last time. But when we begin to build something big and rich in functionality, we could need an another approach, and even probably change the language. And it will be great to keep our customer happy with traditional methods of content management, without major functional regressions. In this situation it could be interesting to redesign TYPO3 historical features in Go language, which designed for clouds and scalability.

In this workshop You will discover all the ecosystem of Go language, implement different development techniques, methods of quality control and deployment of large scale Web projects."

Life (or Death) of a Product Owner - Working in Agile Teams (Karla Schönicke)

You may know that “Product Owner” is a Scrum role, but where does it differ from Project Manager and Product Manager roles? And maybe you are familiar with agile development but do you also know how Product Owners can effectively interact with their self-organizing, cross-functional development teams? Or simply put: Which behaviors in an agile team are helpful and which deadly?

This talk will answer the above questions from a theoretical and practical point of view using my experience as a Product Owner at RatePAY to provide examples.

 

Colour on the web: colour theory, usability and accessibility (Piccia Neri)

Colour is an essential design element. When we design for the web, we’re sometimes conditioned in our colour choices by the colour palette of the brand we’re building the site for. However, usability and accessibility must be the first consideration in our choice of colours and their application.

This talk starts from basic colour psychology and theory, and gives practical guidance on how to approach and use colour on the web for better accessibility and UX.

 

Workshop: How do I get my deployment for a project / TYPO3 extension running with GitLab CI (Thomas Löffler)

We will setup a GitLab project for an extension and for a website project, incl. testing and deployment.
A gitlab.com account is needed, registration is free.

 

Discussion: Improve core contribution workflow (Sybille Peters)

Some people have been contributing to the core for years and new people join on a regular basis. It's a huge task to manage and it is running very smoothly. What can we do to make it even better?

  • Do you have ideas for optimizing the workflow or the documentation?
  • Do people keep asking the same questions and run into the same problems? Are there common pitfalls or sources of frustration?
  • What tools do you use when you develop? Can you share some of your knowledge?
  • How can we motivate people to contribute?

What bugs you the most and what is worth the time to do something about it?
This is a brainstorming session.
Core contribution includes opening issues, improving / managing issues, submitting patches, commenting on, reviewing or testing patches, raising common questions, helping others, providing tools, contributing to the testsuite and documenting the workflow.

 

09:30 - 10:00 Teaser Talks: Georg, Florian, Jigal/Michael, Oliver / Room jweiland.net

10:15 - 12:30 Georg Ringer, How TYPO3 can help you with GDPR / Room jweiland.net

10:15 - 11:00 Florian Wessels, TYPO3 and Composer - A Basic Setup / Room Jan Wellem

10:15 - 12:30 Oliver Klee, Getting started with test-driven development with PHPUnit (part 1) / Room W. von Schadow

11:45 - 12:30 Michael Oehlhof, Start developing for TYPO3 in minutes using DDEV / Room Jan Wellem

12:45 - 14:15 Lunch in Restaurant

14:30 - 15:00 Teaser Talks: Helmut, Fedir, Thomas / Room jweiland.net

15:15 - 17:30 Helmut Hummel, Create your perfekt TYPO3 (Composer) project setup / Room jweiland.net

15:15 - 16:00 Fedir RYKHTIK, Open source Web frameworks comparison and ratings / Room Jan Wellem

15:15 - 16:45 Jigal van Hemert, ddev: docker made easy / in Breakfast Room

15:15 - 17:30 Oliver Klee, Getting started with test-driven development with PHPUnit (continued) / Room W. von Schadow

16:15 - 17:30 Thomas Löffler, Improve productivity on your computer and IDE / Room Jan Wellem

18:00 - 20:00 Dinner in Restaurant

20:00 - 22:00 Soccer match (Sweden-Germany) in Restaurant, hopefully socializing in the garden

 

Workshop: How TYPO3 can help you with GDPR (Georg Ringer)

With end of May the GDPR will start and currently nobody really knows what this will mean for the customer, for the agencies and for TYPO3 itself. However TYPO3 can support the customer to deal with the GDPR. We will discuss a current proof of concept or final extension and what is missing and how this can be achieved.

 

Create your perfekt TYPO3 (Composer) project setup (Helmut Hummel)

Nowadays especially in larger scale TYPO3 projects it isn't enough any more to install TYPO3 once on one server and then create a website within this single installation.

A typical TYPO3 project setup involves docker setups for developers, one or more staging environments and of course one or more live environments. TYPO3 core does not provide much to cope with these needs and because of that a lot of diverse solutions and tooling was developed both internally in agencies as well as published as open source.

In this talk I present the perfect setup to easily kickstart, develop with and finally deploy TYPO3 projects. The setup is built around Composer and TYPO3 Console, with some additional building blocks I created to make TYPO3 easily run in multiple environments, is easily setup up in seconds and runs securely in production environments.

 

TYPO3 and Composer - A Basic Setup (Florian Wessels)

This talk will be about how to setup composer based TYPO3 projects, import extensions and use other repositories than composer.typo3.org. Also it includes how to apply patches to the TYPO3 core or other packages, autoloading and basic composer settings and possibilities.

 

Workshop: Getting started with test-driven development with PHPUnit (Oliver Klee)

In this hands-on workshops, you'll learn

  • why automated tests are a good thing
  • how to write your first unit test with PHPUnit
  • what ""test-driven development"" (TDD, ""test first"") means and how to do it
  • how and what to test
  • common testing patterns
  • why there is a plush elk in the room

The workshop requires a working knowledge of object-oriented PHP. Prior testing experience is not required.

You will need a laptop with a working local PHP 7 and composer installation and an IDE like PhpStorm.

 

Start developing for TYPO3 in minutes using DDEV (Michael Oehlhof)

This session covers how to setup your computer for TYPO3 development. A summary of the different ways to do the setup are shown and then the fastest way today using DDEV is shown in more detail.

This session is also an introduction for the DDEV workshop

 

Open source Web frameworks comparison and ratings (Fedir RYKHTIK)

In this talk we will discover, compare and rate more than 100 open source Web frameworks from different languages and universes.

 

Workshop: ddev: docker made easy (Jigal van Hemert)

A local development environment can be complex to set up. Container solutions like Docker already make it easier to use different PHP versions. Ddev takes this a step further by automating the configuration. It has knowledge of TYPO3, Wordpress, Drupal and Backdrop to make configuration very easy. It currently supports PHP 5.6, 7.0, 7.1 and 7.2 inside each container.

We will install ddev, set up a new TYPO3 installation and take a look at some of the tools that ddev provides to make development easy.
Requirements:

  • macOS Siera and higher, Linux (most recent distros run docker), Windows 10 Pro
  • docker 17.05 or higher (docker-compose 1.10.0 or higher; bundled in Docker for Mac or Windows)
  • git (Windows users: Git for Windows)
  • composer

 

Improve productivity on your computer and IDE (Thomas Löffler)

In this talk I want to present several things I use to improve my productivity and to don't care about little things. I have an open collection of things and will add your feedback to it as well.

 

 

09:30 - 10:00 Teaser Talks: Jigal, Carmen, Nicole, Marcus / Room jweiland.net

10:15 - 11:00 Carmen Bremen, Remote. Relaxed. Related. Working as a freelancer / Room Jan Wellem

10:15 - 11:30 Nicole Cordes, How to better maintain your (public) extensions / Room jweiland.net

10:15-12:30: CANCELED: Rebecca Cotton, Trouble-free Newbie - How to give newbie developers an easy start in TYPO3

11:45 - 12:30 Jigal van Hemert, Having fun with fluid / Room Jan Wellem

11:45 - 12:30 Marcus Schwemer, TYPO3 Performance / jweiland.net

11:45 - 12:30 CANCELED: Mathias Bolt Lesniak, Useful Bling: Marketing Driven Development

12:45 - 13:30 Closing Session

 

&nb

Workshop: Having fun with fluid (Jigal van Hemert)

Fluid is the templating language we all use. In some situations we need a bit of creativity to make it do what we need. In this session I'd like to exchange creative solutions and perhaps have a look at unsolved mysteries.

 

Remote. Relaxed. Related. Working as a freelancer (Carmen Bremen)

Working remote means the freedom of being able to plan your time and the greatest possible flexibility but also, that there is no one to talk to. A fellow freelancer said the thing he missed the most is shared humor. So twitter and messenger having heavily signs of usage, they are the best way to get some jokes or help just in time.

Working as a freelancer also means that you have to manage everything on your own, to teach yourself and to make so many decisions. What kind of contract? Do I need insurance? Which tax consultant shall I choose, and do I need a lawyer?

But the best thing is: you can attend every conference you want. You can choose to talk or to listen. You can choose how much you will be committed to community things. And the best thing: you can decide with whom you want to work, if you are well known by Google or anyone who can provide a referral.

 

CANCELED: Workshop: Trouble-free Newbie - How to give newbie developers an easy start in TYPO3 (Rebecca Cotton)

Attracting and onboarding newbees is one of the hardest tasks for any community - and also one that TYPO3 community is struggling with. With good reason. An outsider needs to be interested the new project, find a foot in the door and then have a worry free beginning to making first contributions to the project. Especially doing this in an efficient manner is important since many active contributors have very limited time resources themselves.

The good news is thousands of companies struggle to do the same when onboarding new users and have found a simple answer: the Landing Page. In this workshop we will create a mockup for a newbie landing page for new typo3 developers to help them find their feet and start contributing to the project fast and successfully.

To achieve this we will manifest best practices of community management into the landing page mockup. In the course of this workshop you will also learn more about best practices of community management and how everyone can implement these in everyday interactions.

All you need to bring is your head, passion to solve the problem.
Attendees: max 15 participants

 

TYPO3 Performance (Marcus Schwemer)

Performance is like an onion: There are several layers, where performance can be optimized. Starting up in the Frontend and going down to the server level. On each level there are hints, on what TYPO3 can do for you.

 

CANCELED: Discussion: Useful Bling: Marketing Driven Development (Mathias Bolt Lesniak)

When selling TYPO3 CMS, the customer's final conversion can often come through an emotional experience with the software, rather than a technical specification. Adding a "useless", but cool and good-looking feature to your software can help your company and TYPO3 succeed in the marketplace. How can we make our software give a great first impression?

 

How to better maintain your (public) extensions (Nicole Cordes)

I'd like to show what you can do to improve your extension maintenance. Which tools can you use. What benefits do you get. Let me explain why you should use a CI server, some code style scanner, how to extend your test infrastructure without tests and what you can learn from using a static code analysis.