Accompanying slides to the half-day tutorial at T3CON10 Dallas. Most of the session consisted of code demonstration and development.
Here’s the link to the Conference App example used throughout the tutorial:
https://svn.typo3.org/FLOW3/Applications/Conference/trunk/
Keynote address from the International TYPO3 Conference in Stuttgart. During the talk, the new branding concept for the TYPO3 project and the new CMS, TYPO3 Neos are revealed.
IPC16: A Practical Introduction to Kubernetes Robert Lemke
Kubernetes is an open source system for automating deployment, operations, and scaling of containerized applications. It’s one of the promising options you have for deploying your container-based applications to the Internet. In this session we’ll take a look at the concepts of Kubernetes and then go trough all steps necessary to launch and maintain a real-world PHP application in your own Kubernetes cluster.
This session from the TYPO3 Developer Days 2008 outlines new features and concepts which have been developed since T3CON07. It starts with a Hello World example and continues with topics like Dependency Injection, Configuration, the FLOW3 Bootstrap and Caching.
FLOW3 is a modern web application framework for PHP, developed as the foundation of the upcoming version of the TYPO3 CMS. It introduces new development concepts to the PHP world such as Domain-Driven Design, Dependency Injection and Aspect-Oriented Programming. In this session you’ll get a first-hand introduction to the concepts behind FLOW3.
This session from the TYPO3 Conference 2007 gives you a peek into the current development state of the TYPO3 Framework and its main features such as Aspect Oriented Programming, Dependency Injection and the Model View Controller Framework. Bottom line of all development with 5.0 is: Domain Driven Design.
Keynote address from the International TYPO3 Conference in Stuttgart. During the talk, the new branding concept for the TYPO3 project and the new CMS, TYPO3 Neos are revealed.
IPC16: A Practical Introduction to Kubernetes Robert Lemke
Kubernetes is an open source system for automating deployment, operations, and scaling of containerized applications. It’s one of the promising options you have for deploying your container-based applications to the Internet. In this session we’ll take a look at the concepts of Kubernetes and then go trough all steps necessary to launch and maintain a real-world PHP application in your own Kubernetes cluster.
This session from the TYPO3 Developer Days 2008 outlines new features and concepts which have been developed since T3CON07. It starts with a Hello World example and continues with topics like Dependency Injection, Configuration, the FLOW3 Bootstrap and Caching.
FLOW3 is a modern web application framework for PHP, developed as the foundation of the upcoming version of the TYPO3 CMS. It introduces new development concepts to the PHP world such as Domain-Driven Design, Dependency Injection and Aspect-Oriented Programming. In this session you’ll get a first-hand introduction to the concepts behind FLOW3.
This session from the TYPO3 Conference 2007 gives you a peek into the current development state of the TYPO3 Framework and its main features such as Aspect Oriented Programming, Dependency Injection and the Model View Controller Framework. Bottom line of all development with 5.0 is: Domain Driven Design.
Session from the T3CON08 in Berlin. Report about the development of TYPO3 5.0 since the last year’s conference. Demonstrates the persistence framework, content repository and REST services
Webinar: Building Conversational Search with FusionLucidworks
Traditional approaches put the burden on the user to specify fields and learn more about how the information is stored before composing a query. New approaches enabled by Fusion allow the end user to type in their normal everyday business language and get back meaningful results.
Webinar: Building Customer-Targeted Search with FusionLucidworks
Customers ask questions, but often those questions are vague or incomplete. Simply showing male customers men’s shoes when they search for “shoes” is no longer enough. You now need to “know your customer” including who they are, where they are, what they’re interested in, what they looked at last time, and what similar customers looked at next. By providing a custom search experience to every user you can increase relevancy – and revenues.
SOBOLEO – Editor and Repository for Living OntologiesSimone Braun
presentation of the demo paper "SOBOLEO - Editor and Repository for Living Ontologeis" at ORES 2010 workshop, co-located with ESWC 2010, Crete, May 31 2010
T3CON11 Building a service oriented application with FLOW3Christopher Hlubek
This talk shows a real-world example of using FLOW3 for a service-oriented enterprise application and what's possible right now.
FLOW3 is a framework that's not only great for web applications: with features like AOP, a clean architecture and the domain driven design concept it is very suited for business solutions. And it has the power to take PHP into areas that were previously driven by Java or other languages.
This talk will show the benefits and experience of using FLOW3 for building a larger-scale service oriented application. From design and implementation to deployment and operation it'll give an overview what's possible with this new framework.
n this presentation we looked at the architecture and explain it’s structure from a practical point of view: - what are the features and benefits of this design for developers, administrators and users - how to explain this architecture to prospective and existing clients - how it compares to previous TYPO3 versions and competing products. The presentation ends with a number of application scenarios.
Listen Veronica! Can You Give Me a Hand With This Bug?Juan Pablo Sáenz
Presentation of the paper "Listen Veronica! Can You Give Me a Hand With This Bug?" at the 15th ACM SIGCHI Symposium on Engineering Interactive Computing Systems in Swansea, United Kingdom, on June 27-30, 2023
Examples Of Online Promotion - HEA Professional Presences For Academics Works...Thomas Lancaster
This presentation formed part of the HEA workshop on Professional Presences For Academics. The focus was on strategies that academics could use to add content to their blogs and social sites, increase the reach of their reseach, gain publicity and benefit from the wider possibilities afforded through social media.
Neos Content Repository – Git for contentRobert Lemke
The core team of the Open Source CMS Neos has been working on a new content repository for the last 8 years. What took us long? The new CR is event-sourced, with sophisticated projections and a thoroughly designed PHP API, something which has not been done before, not even outside the PHP ecosystem. This content repository allows you to work with content similar to managing Code with Git – branches, versioning, and multi-language with fallbacks included. There's a big range of applications for the Neos CR and since it is available as a standalone component, you can use it in any Composer-based project. We'll guide you through the concepts, architecture, and API of the Neos CR, enough for you to start with your own experiments.
A General Purpose Docker Image for PHPRobert Lemke
There are many reasons to use Docker for development, but if you don't have a PHP image which is tailored to dev and production, your daily work can become a big hassle.
In this session we'll go through what it takes to create a flexible Docker image providing PHP which fits both, development and production environments. We'll look at various aspects, like the operating system, PHP extensions, configuration, debugging, speed, security and the image size.
Session from the T3CON08 in Berlin. Report about the development of TYPO3 5.0 since the last year’s conference. Demonstrates the persistence framework, content repository and REST services
Webinar: Building Conversational Search with FusionLucidworks
Traditional approaches put the burden on the user to specify fields and learn more about how the information is stored before composing a query. New approaches enabled by Fusion allow the end user to type in their normal everyday business language and get back meaningful results.
Webinar: Building Customer-Targeted Search with FusionLucidworks
Customers ask questions, but often those questions are vague or incomplete. Simply showing male customers men’s shoes when they search for “shoes” is no longer enough. You now need to “know your customer” including who they are, where they are, what they’re interested in, what they looked at last time, and what similar customers looked at next. By providing a custom search experience to every user you can increase relevancy – and revenues.
SOBOLEO – Editor and Repository for Living OntologiesSimone Braun
presentation of the demo paper "SOBOLEO - Editor and Repository for Living Ontologeis" at ORES 2010 workshop, co-located with ESWC 2010, Crete, May 31 2010
T3CON11 Building a service oriented application with FLOW3Christopher Hlubek
This talk shows a real-world example of using FLOW3 for a service-oriented enterprise application and what's possible right now.
FLOW3 is a framework that's not only great for web applications: with features like AOP, a clean architecture and the domain driven design concept it is very suited for business solutions. And it has the power to take PHP into areas that were previously driven by Java or other languages.
This talk will show the benefits and experience of using FLOW3 for building a larger-scale service oriented application. From design and implementation to deployment and operation it'll give an overview what's possible with this new framework.
n this presentation we looked at the architecture and explain it’s structure from a practical point of view: - what are the features and benefits of this design for developers, administrators and users - how to explain this architecture to prospective and existing clients - how it compares to previous TYPO3 versions and competing products. The presentation ends with a number of application scenarios.
Listen Veronica! Can You Give Me a Hand With This Bug?Juan Pablo Sáenz
Presentation of the paper "Listen Veronica! Can You Give Me a Hand With This Bug?" at the 15th ACM SIGCHI Symposium on Engineering Interactive Computing Systems in Swansea, United Kingdom, on June 27-30, 2023
Examples Of Online Promotion - HEA Professional Presences For Academics Works...Thomas Lancaster
This presentation formed part of the HEA workshop on Professional Presences For Academics. The focus was on strategies that academics could use to add content to their blogs and social sites, increase the reach of their reseach, gain publicity and benefit from the wider possibilities afforded through social media.
Neos Content Repository – Git for contentRobert Lemke
The core team of the Open Source CMS Neos has been working on a new content repository for the last 8 years. What took us long? The new CR is event-sourced, with sophisticated projections and a thoroughly designed PHP API, something which has not been done before, not even outside the PHP ecosystem. This content repository allows you to work with content similar to managing Code with Git – branches, versioning, and multi-language with fallbacks included. There's a big range of applications for the Neos CR and since it is available as a standalone component, you can use it in any Composer-based project. We'll guide you through the concepts, architecture, and API of the Neos CR, enough for you to start with your own experiments.
A General Purpose Docker Image for PHPRobert Lemke
There are many reasons to use Docker for development, but if you don't have a PHP image which is tailored to dev and production, your daily work can become a big hassle.
In this session we'll go through what it takes to create a flexible Docker image providing PHP which fits both, development and production environments. We'll look at various aspects, like the operating system, PHP extensions, configuration, debugging, speed, security and the image size.
Scaleable PHP Applications in KubernetesRobert Lemke
Kubernetes is also called the "distributed Linux of the cloud" – which implies that it provides fundamental infrastructure, which can solve a lot of challenges. Let’s see how PHP applications fit into this picture. In this presentation, we are going to explore when Kubernetes is a good fit for operating your PHP application and how it can be done in practice. We’ll look at the whole lifecycle: how to build your application, create or choose the right Docker images, deploy and scale, and how to deal with performance and monitoring. At the end you will have a good understanding about all the different stages and building blocks for running a PHP application with Kubernetes in production.
Flownative Beach ist ein Platform as a Service für Neos CMS und Flow basierte Projekte. In diesem Vortrag von dem Hamburger Neos Meetup erfährst du mehr über die technischen Hintergründe.
Infrastructure and applications running in Kubernetes clusters are based on a plethora of "resources". You can manually create and maintain deployments, pods, services and ingress resources, but may soon loose track of your configuration. Fortunately, there’s an alternative way to manage your Kubernetes cluster – the GitOps way.
GitOps is a way of managing your cluster so that the whole system is described declaratively and version controlled. An automated process makes sure that the resources in the cluster match the desired state defined your Git repository. Flux (https://fluxcd.io) is an Open Source solution which automates this task.
Given that you have some basic idea about Kubernetes (or don’t mind shrugging at a few nitty-gritty details during the talk), I’ll show you, how you can control applications and infrastructure in Kubernetes using Flux and Helm.
In this home-recorded session for the Neos Online Conference 2020 I explain what OpenID Connect (OIDC) is all about and demonstrate how you can configure Neos to use an identity provider like Auth0 as a central login.
A practical introduction to Kubernetes (IPC 2018)Robert Lemke
Kubernetes is an open source system for automating deployment, operations, and scaling of containerized applications. It currently is the most promising option you have for deploying your container-based applications to the Internet. In this session you’ll get an understanding of the concepts of Kubernetes and the tooling you need to launch and maintain a PHP application in your own Kubernetes cluster. We will also take a look at topics like load-balancing, (auto-)scaling, persistent storage and typical fun killers which might spoil your Kubernetes party.
A practical introduction to Event Sourcing and CQRSRobert Lemke
Event Sourcing is supposed to be a great thing: silver bullet; at least. But only if your business case requires it. And if you event-source, you of course need CQRS. Unless you don't. After all, if it's business critical, you really want to use DDD.
Enough of the theory? How about some practical introduction to the world of commands, aggregates, events, projectors and process managers? After this session you'll surely have a better idea of what all of this is about.
https://www.youtube.com/watch?v=cUXi9fUqWQ0
These are the slides of the Neos Conference 2017 keynote in Hamburg. A full recording of this talk is available at Youtube: https://youtu.be/8SXfms-qoKE?t=18m45s
IPC 2016: Content Strategy for DevelopersRobert Lemke
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?
You’ve heard about Docker, maybe you use it already as a development environment for virtualising your project on your local machine. But running your application or website with Docker in production is a whole different deal. In this session you’ll get a deeper insight into working with Docker in practice. Starting with the 101 of concepts we’ll go through a practical scenario for hosting, automatically deploying and monitoring an application in production with recommendations for a variety of tools and services.
Is this Open Source Thing Really Worth it? (IPC 2016 Berlin)Robert Lemke
Starting an Open Source Project is way more than sharing the code you produced. It is very much about human interaction, achieving high quality on a zero budget, having to do things you don’t have the expertise for, being allowed to do things you don’t have the expertise for, pride, hate, friendships, big visions, hopelessness. You catch yourself thinking: Is this Open Source thing really worth it? And push away the thought, because there are pull requests to review.
Um dir den Einstieg in Flow und Neos zu erleichtern, zeigen wir dir Einstiegspunkte, laden dich ein in unsere Community, und unterstützen bei den ersten Schritten.
Außerdem geben wir einen Einblick in die aktuelle Entwicklung und einen Ausblick für die Zukunft.
Neos ist eine moderne Content Application Platform, die vielseitige Anwendungsfälle ermöglicht: One Pager, Multi-Domain-Webseiten, Mehrsprachigkeit, Personalisierung und Integrationen mit bspw. eCommerce Systemen.
In diesem Vortrag werden wir die Einsatzgebiete und Vorteile von Neos aus Business und technischer Sicht beleuchten.
You've heard about Docker, maybe you use it already as a development environment for virtualising your project on your local machine. But running your application or website with Docker in production is a whole different deal. In this session you'll get a deeper insight into working with Docker in practice. Starting with the 101 of concepts we'll go through a practical scenario for hosting, automatically deploying and monitoring an application in production.
2. The FLOW3 experience
Flow [flō] The mental state of operation in which the person is fully immersed in
what he or she is doing by a feeling of energized focus, full involvement, and
success in the process of the activity. Proposed by positive psychologist Mihály
Csíkszentmihályi , the concept has been widely referenced across a variety of
fields.
FLOW3 [flō'three] The application framework which takes care of all hassle and lets
you play the fun part.
[ˈmihaːj tʃiː
kˈsɛntmihaːj
i]
Inspiring people to
Fluent Development with FLOW3 share
3. FLOW3 = Application Framework
Not just a collection of components or code snippet library
Comes with ready-to-go default configuration
Package based
Tailored to Domain-Driven Design
Inspiring people to
Fluent Development with FLOW3 share
4. Get the FLOW experience
Intuitive APIs
Readable source code (like a book)
Consistent naming for classes, methods and properties
Focus on the essential, the framework takes care of the infrastructure
Inspiring people to
Fluent Development with FLOW3 share
5. TYPO3 and FLOW3
FLOW3 acts as a reliable basis for any kind of web application
TYPO3 Phoenix is a package based on FLOW3
TYPO3 extensions are packages as well, all based on FLOW3
Packages can be used
as extensions for TYPO3
as libraries for standalone applications
Inspiring people to
Fluent Development with FLOW3 share
6. Model - View - Controller
Inspiring people to
Fluent Development with FLOW3 share
7. The MVC Pattern
Model
an object which contains data and business logic of a
certain domain
doesn't contain any information about the presentation of
that data, but rather defines the behaviour
in the FLOW3 project we prefer a special kind of model,
the Domain Model
Inspiring people to
Fluent Development with FLOW3 share
8. The MVC Pattern
View
represents the display of the model on the web or another
output channel
views only display data, they don't build or modify it
Inspiring people to
Fluent Development with FLOW3 share
9. The MVC Pattern
Controller
reacts on user input, selects and manipulates the model as
accordingly
selects a view and passes it the prepared model for
rendering
Inspiring people to
Fluent Development with FLOW3 share
10. MVC
Action Controller
An action controller
accepts a request
evaluates arguments
calls the action defined in the request
and adds output to the response
Inspiring people to
Fluent Development with FLOW3 share
11. Routing
Inspiring people to
Fluent Development with FLOW3 share
12. Things to play with
Blog
Try out the Blog Example:
svn co https://svn.typo3.org/FLOW3/Application/trunk/BlogExample/
Inspiring people to
Fluent Development with FLOW3 share
13. Things to play with
Conference
https:/svn.typo3.org/FLOW3/Applications/Conference/trunk/
Inspiring people to
Fluent Development with FLOW3 share
14. Links
FLOW3 Website
http://flow3.typo3.org
TYPO3 Forge
http://forge.typo3.org
Coding Guidelines
http://flow3.typo3.org/documentation/coding-guidelines/
Inspiring people to
Fluent Development with FLOW3 share