Upcoming events

Currently there are no upcoming events.

Past events

TechNight, Developers.nl, Rotterdam, The Netherlands

21-10-2022

Talk: Welcome to the Age of Static Analysis and Automated Refactoring

Programmers live a dangerous life. It's so easy to make mistakes and mess things up, so we like to limit the scope of our changes. There may be large parts of a code base that we don't dare to touch at all. It makes us somewhat conservative when it comes to large upgrades or refactorings.

If only we could have a tool that has our back when we make changes that influence remote parts of a code base, or that can even make those changes for us. One that tells us about mistakes immediately after we make them. And maybe even one that fixes our problems, without the risk of making a mistake.

Actually, since a few years such tools exist (for PHP that is, so get ready to change your mind about this language!). In this talk, I'll explain why you should use them, what its use cases are, and what amazing things are to be expected from them in the near future.

Sign up here

Slides

Corgibytes Legacy Code Rocks Podcast

13-06-2022

Podcast: Rector with Matthias Noback

Imagine if you could refactor legacy code with a single CLI command? Well, you can, at least if you are working with PHP.

Today we talk with Matthias Noback, a long-time web developer and the author of several programming books, including Rector - The Power of Automated Refactoring, which he co-wrote with Tomáš Votruba. Matthias tells us how to use Rector in your daily workflow, how it automates repetitive maintenance and refactoring tasks, and what is the potential of this approach for other programming languages.

Voices of the Elephpant podcast

19-05-2022

Podcast: Voices of the Elephpant

Cal Evans hosts his friend Matthias Noback as they talk about Domain Driven Design and Matthias’ new book Recipes for Decoupling.

Leanpub Frontmatter podcast

17-05-2022

Podcast: Leanpub Frontmatter episode 224

Matthias Noback is the author of the Leanpub book Recipes for Decoupling. In this interview, Leanpub co-founder Len Epp talks with Matthias about what he’s been up to since he last appeared on the podcast over eight years ago, changes related to widespread use of the PHP programming language in that time, how the pandemic affected his consulting work and meetups, legacy code, his books, and at the end, they talk a little bit about his experience as a self-published author, specifically, a method he has developed for keeping programming books up to date, even as the technologies they’re about evolve.

PHP-WVL online meetup

23-11-2021

Talk: Rector Ring of Fire

Matthias Noback & Tomas Votruba

More information on meetup.com

PHPMiNDS online meetup

09-09-2021

Talk: The Power of Automated PHP Refactoring

Matthias Noback & Tomas Votruba

More information on meetup.com

PHPUGMRN online meetup

26-08-2021

Talk: Rector Fireside Chat

Matthias Noback & Tomas Votruba

More information on meetup.com

devMode.fm

28-06-2021

Podcast: What even is PHP?

On this episode hosted by Jennifer Blumberg with guest Matthias Noback, we continue the "What is even…?" series by delving into exactly what even is PHP?

We talk about PHP's originals, how PHP works from request to php-fpm worker processes to lexer to bytecode to JIT, the whole shebang!

We also discuss there are so few feature-rich, authoring experience focused CMSs written in languages other than PHP.

Finally, we talk about Rector, which is like Babel but for PHP, allowing you to improve and upgrade PHP code on the fly. It can even downgrade your code to older PHP versions if you like!

The Legacy of SoCraTes 5th Edition, online

17-06-2021

Talk: Design patterns for modernizing legacy code bases

Domain-Driven Design Africa Meetup, online

16-12-2020

Talk: DDD in unexpected places (and ways)

DDD Africa banner

Online

25-06-2020

Workshop: Decoupling from infrastructure (3 hours)

DPC 2020 banner

Most application code freely mixes domain logic with infrastructural concerns. Models are directly tied to the relational database of the project, use cases are inseparable from their web controllers, and external services are used without an appropriate abstraction. This limits your ability to design the application in a domain-driven, test-first way.

What we need is a way to separate core code from infrastructure code. And that's surprisingly easy. All the design patterns have already been invented for that. Until we run out of time, we'll keep (re)discovering patterns like Controller, Application Service, Entity, Read Model, Domain event, and so on. These patterns can be used to establish a testable, portable application core, with a focus on behavior, instead of data.

Get your tickets here

Developer Melange

01-05-2020

Podcast: Design- and Style-Guides

Developer Melange logo

We talk about guides and rules for programmers in the scope of their code style and object style. With the help of book author Matthias Noback we realize that there is more possible with static analysis than one might think. And there is definitely a use for a catalogue of stereotypes of classes.

TYPO3Camp Venlo 2020, Venlo, The Netherlands

05-03-2020

Workshop: Advanced Web Application Architecture (cancelled)

Typo3 Webcamp Venlo banner

About the workshop

This workshop covers all of the three layers from what is known as a layered architecture: the domain, application and infrastructure layer.

You'll learn how to:

  • Design a clean domain model
  • Model your application's use cases as application services
  • Connect those well-designed layers to the world outside

Protecting your high quality domain model and use cases from external influences can be accomplished by applying a so-called ports & adapters or hexagonal architecture.

The result

At the end of the day you know how to separate infrastructure from core (domain) code, divide your application into layers, and clearly distinguish its ports and adapters.

The program

  • Separating infrastructure from core code
  • Repositories and entities
  • Application services and command objects
  • Value objects
  • Read models and read model repositories
  • Layers; The Dependency Rule; The Dependency Inversion Principle
  • Ports and Adapters

For who

This is a workshop for PHP developers with at least some experience with building web applications using a framework (or CMS) and a database.

Unfortunately, Web Camp Venlo has been cancelled.

Techforce vol. 8, Pixel Federation, Bratislava, Slovakia

20-02-2020

Talk: A testing strategy for hexagonal applications

Techforce banner

Program:

  • 18:00 - Opening
  • 18:10 - Matthias Noback: A testing strategy for hexagonal applications (in English)
  • 19:00 - Martin Fris: Value objekty a ich praktické využitie napr. aj v hrách (in Slovak)
  • 20:00 - Networking + refreshment

Reserve a seat

PHP Benelux 2020, Edegem, Belgium

24-01-2020

Workshop: Decoupling from infrastructure

Most application code freely mixes domain logic with infrastructural concerns. Models are directly tied to the relational database of the project, use cases are inseparable from their web controllers, and external services are used without an appropriate abstraction. This limits your ability to design the application in a domain-driven, test-first way.

What we need is a way to separate core code from infrastructure code. And that’s surprisingly easy. All the design patterns have already been invented for that. Until we run out of time, we’ll keep (re)discovering patterns like Controller, Application Service, Entity, Read Model, Domain event, and so on. These patterns can be used to establish a testable, portable application core, with a focus on behavior, instead of data.

PHP Coach

18-12-2019

Vodcast: Talking with Matthias Noback

An hour talking about open source, communities and conferences.

PHP com Rapadura

09-12-2019

Vodcast: [Live] #1 - Making Money While Doing Open Source

On the first PHP com Rapadura [Live], we're going to receive @matthiasnoback and @matthieunapoli to discuss how to make money while doing open source.

TechNight, Developers.nl, Rotterdam, The Netherlands

27-11-2019

Talk: Advanced Web Application Architecture

Docplanner meetup, Barcelona, Spain

11-11-2019

Talk: A testing strategy for hexagonal applications

Older events can be found on the Workshops & Talks pages.