An introduction to Docker Swarm
Having some Docker and Docker Compose knowledge in your pocket, you need to consider how you will eventually deploy your services. After all, that’s what Docker’s promise was to begin with, right? Deploying new container images should be painless and without surprises.
During this workshop you will learn about Docker Machine and how it can help you prepare your servers for container deployments. Then you will get acquainted with the Swarm Mode of the Docker Engine. You will deploy services to virtualized servers on your own machine (which is just as easy as deploying to an actual cloud server it turns out).
Service Integration
This 2-day workshop takes a closer look at the communication that happens between the applications in their larger environment. We take insights from Strategic Domain-Driven Design, about Bounded Contexts and Context Mapping. We’ll combine those with the accumulated knowledge about Microservice architecture and draw from the catalogue of Enterprise Integration Patterns to design services that communicate in a reliable fashion.
Some of the keywords for this workshop: commands, queries, domain events, event sourcing, projections, eventual consistency. bounded contexts, enterprise integration patterns, (de)serialization, (de)coupling, messaging, DTOs versus domain objects, encoding formats, extracting serializable data, versioning, upcasting, reflection.
Living documentation
“Documentation”, a word that makes developers yawn. It’s what you write because you have to. Documentation is a failure by definition. You know it, it’s true. Writing it is going to be a tiresome, mindnumbing exercise. Documentation is going to be incomplete, outdated, unreliable and soon to be abandoned anyway. Why would you ever start working on it in the first place?
That’s why we were happy when we discovered the Agile Manifesto, which says: “Working software over comprehensive documentation” That’s a good reason to drop all our documentation efforts, right? Well, no. We shouldn’t quit writing docs. We should simply prevent documentation from being an impediment to other prominent Agile values, like “Responding to change”.
Living documentation (workshop)
A mini-workshop on maintaining a Living documentation for your software projects. The workshop is based on the book Living documentation by Cyrille Martraire.
An introduction to Docker Compose
You know the Docker command line tool and the Dockerfile configuration format. You have familiarized yourself with containers and images. Now it’s time to use Docker to develop a real-world application.
To keep your sanity, you’ll need to learn Docker Compose, which lets you define multiple containers and their images as services, with lots of interesting configuration options, all in one silly Yaml file!
This workshop will be all about Docker Compose, and we’ll cover its configuration file format, command line tool and take a closer look at Docker networking and volumes.
An introduction to Docker
The ideal occasion to finally get started with Docker! You’ll learn everything you need to know to start using Docker in a professional environment.
I’ll provide some general background information, but we will mainly take the time to make ourselves familiar with the Docker command line tool and the Dockerfile configuration format.
Tactical DDD (just better OOP)
We’ll cover the concepts you need to know and we’ll put them to practice in a sandboxed environment (a very simple example PHP project). Some of the topics that will be discussed:
Aggregate, entity, repository, value object, domain event, domain service, application service
@matthiasnoback again! Killing it with his Tactical DDD workshop. #symfonycat pic.twitter.com/T2QDkrNO86
— Symfony Catalunya (@symfonycat) July 23, 2016
The Tactical DDD workshop by @matthiasnoback was beyond awesome! Had at least 4 a-ha moments! Really good! #phpbnl17
Integrating Bounded Contexts with RabbitMQ
We’ll cover the concepts you need to know and we’ll put them to practice in a sandboxed environment (a very simple example PHP project). Some of the topics that will be discussed:
Bounded contexts, domain events, commands, enterprise integration patterns, (de)serialization, (de)coupling, messaging, RabbitMQ
Software Architecture Diagrams
The workshop is based on the book Visualizing Software Architecture by Simon Brown.
- 11/28/2016 website
As always @matthiasnoback organized yet another interesting workshop, this time about visualizing software architecture.
— 猫 (@n0x13) November 28, 2016
Coding Dojo
A coding dojo is all about a programming challenge called a code kata. Famous katas are the FizzBuzz kata, the Roman Numerals kata and the Bowling Game kata. To solve them, you need pair programming and TDD.
All attendees are expected to know just enough PHP to write a simple program. Everybody gets a turn to be the driver and take the keyboard, together with a navigator who can give some additional directions. Meanwhile everybody else can watch on a big screen how the program evolves.