SlideShare a Scribd company logo
Text



Building a VOD portal with the Flow
Inspiring Flow 2013                         Inspiring people to
A short story about a real life projet      share
medialib.tv - building a real life project with the flow


About our agency
ttree ltd pronounced “tea-tree”
Small but nice webagency based in Lausanne, Switzerland
More that 10 years of experience with TYPO3 CMS
VOD solutions providers for major film festivals since 2008




                                                          Inspiring people to
A short story about a real life projet                    share
medialib.tv - building a real life project with the flow


About myself
Dominique Feyer
Cofounder of ttree agency
One of the men behind the TYPO3 CMS XLIFF support
Leader of the translation team
Work with TYPO3 since 2000 and with TYPO3 Flow since 2012
Member of a nice family, a girlfriend and a 5 years old daughter

                                                          Inspiring people to
A short story about a real life projet                    share
Stop to
 Topictext




promote
your
self !

                                          Inspiring people to
 A short story about a real life projet   share
medialib.tv - building a real life project with the flow


About this presentation
A short introduction and history of the project
How TYPO3 Flow help us
Live demonstration of the current development version
Questions & Answers




                                                          Inspiring people to
A short story about a real life projet                    share
medialib.tv - building a real life project with the flow


First real life projet with TYPO3 Flow
Short development period
Kickoff of the project in september 2012
First private beta in mid november
Release of the 1.0 early in 2013
                                                                                 du ct
We need to be lean
                                                                             p ro
                                                                     ab le
                                                                al vi
                                                            inim
                                                          m
A short
history
of the
project
medialib.tv - building a real life project with the flow


What’s the goal of the project ?
Hey men, that’s simple ...
I just need to watch movies, you understand ?
Look like a simple domain ...
So we can start with it with a really fresh framework !
                                                          First user story



                        User need to watch movie
medialib.tv - building a real life project with the flow


But the real domain is a bit more complex ...

                                                      Client


                    User                                               Strea
                                                  Movie                     m



                          News                                   pic
                                                      Advice   To
medialib.tv - building a real life project with the flow


Key features
Multi-domain support in the same datastore
Handle security access (PlayToken) for our
Wowza Streaming Server cluster
Clear backoffice with easy to use forms
“Auto discoverable” features
Customizable frontend & notifications templates
medialib.tv - building a real life project with the flow


Time to code
Rapid prototyping
Focus on the domain
No authentication, no log, no security, ...
But a full working prototype
Validated learning
medialib.tv - building a real life project with the flow


First contact with Flow
✓     Really clean code base
✓     A lots of new concept to learn
✓     But the learning curve is not so strong
✓     Documentation in constant improvement
✓     Awesome community support
medialib.tv - building a real life project with the flow


       Feedback Loop
       Build - Mesure - Learn



Min
      imiz
          e th
              e to
                      tal
                            tim
                                  e th
                                      rou
                                          gh   t th
                                                      e lo
                                                           op
medialib.tv - building a real life project with the flow


Does TYPO3 Flow support the loop ?
No, he did not support it,
it’s just a framework ! But ...
+ TYPO3.Flow
+ TYPO3.Surf
+ GIT
+ Continous Intergration Server
That support the loop well !!
medialib.tv - building a real life project with the flow


  Quality Assurance
  ✓     Functional Test are awesome
  ✓     Unit Test


Avo
                                                                      myself t, please
   id r
                                                            N ote for
                                                                           test and
       egr
                                                                    e more
          e     ssio
                     n                                         writ
                        , cli
                             ent                                      sse TD D/BDD
                                 d   on’                        embra
                                         t   like
                                                    it
medialib.tv - building a real life project with the flow


Private Beta & Continous Improvement
We code to solve real problems
Who know the problems ?
Ask or challenge your final user
Understand the problems, discuss & adapt
3 real customers during 2 sprints of 2 weeks each
A really intensive period
How TYPO3 Flow help us to
implement our key features ?
medialib.tv - building a real life project with the flow


Multi domain in the same datastore
Any DO can be “private” or “shared”
Features that help us
AOP + Domain object Annotations
Content Security

Missing features
A way to extend TYPO3FlowSecurityAccount
Property introduction with AOP don’t work
medialib.tv - building a real life project with the flow


PlayToken
Handle the security access to our
                                                          Yes
Wowza Streaming Server cluster                               we
                                                          cur     bro
                                                              ren      ken
                                                                  tly,     one
                                                                       hel     uni
Features that help us                                                      pw      t te
                                                                              elc       st
                                                                                  om
TYPO3.Soap                                                                           e

Contributions during the project
TYPO3.Soap Flow 2.0 support
medialib.tv - building a real life project with the flow


Multi level administration roles
Our clients need to delegate some administration task, like user
management & content management.
Features that help us
Content Security & Policy

Missing features
A brain capable of correctly understanding policy configuration
More documentation around this subject, with real life exemple
A solution to disable content security for a specific query
medialib.tv - building a real life project with the flow


Backoffice & Complex form
Form need to be composed by
multiple DO

Features that help us
TYPO3.Fluid awesome form support
PropertyMapper & Validator flexibility
Aloha Editor
medialib.tv - building a real life project with the flow


Custom Interface Vocabulary
Client must be able to customize vocabulary used by the service.
Features that help us
Aloha Editor + RestController
medialib.tv - building a real life project with the flow


Custom Notifications
Notifications template can be
edited with Aloha Editor
Features that help us
Aloha Editor + RestController
TYPO3.Fluid + Custom Parser

What’s next
TYPO3 Flow package to
use this in any project
medialib.tv - building a real life project with the flow


External webservice
Modern webapplication can use a lots of different API over HTTP

Features that help us
TYPO3FlowHttpClientBrowser + Curl Engine

Contributions during the project
Ttree.Oembed - oEmbed Consumer with auto discovery
Ttree.Tmdb - Client Interface for The Movie Database API
medialib.tv - building a real life project with the flow


Public API
A clean and modern RESTFull interface to
integrate the service with external applications

Features that help us
RestController + JsonView
Is TYPO3
Flow a
good
choice ?
medialib.tv - building a real life project with the flow




                                   YES
medialib.tv - building a real life project with the flow




     Do you want to view a
      live demonstration ?
medialib.tv - building a real life project with the flow




         Questions & Answers
medialib.tv - building a real life project with the flow




                           Thanks you !
www.ttree.ch www.medialib.tv

 @ttreeagency @medialibtv

   http://github.com/dfeyer
http://github.com/ttreeagency

       info@ttree.ch

More Related Content

Similar to Building a vod portal with the flow @ Inspiring Flow 2013

I broke what?!??!? Taking over maintenance on well loved projects
I broke what?!??!? Taking over maintenance on well loved projectsI broke what?!??!? Taking over maintenance on well loved projects
I broke what?!??!? Taking over maintenance on well loved projectsBert JW Regeer
 
I broke what? Taking over maintenance on existing (well loved) projects, by B...
I broke what? Taking over maintenance on existing (well loved) projects, by B...I broke what? Taking over maintenance on existing (well loved) projects, by B...
I broke what? Taking over maintenance on existing (well loved) projects, by B...T. Kim Nguyen
 
10 tips for a usable website
10 tips for a usable website10 tips for a usable website
10 tips for a usable websiteBart De Waele
 
How to Get More Out of Your Project Teams
How to Get More Out of Your Project TeamsHow to Get More Out of Your Project Teams
How to Get More Out of Your Project TeamsInnoTech
 
Keeping It Realtime!
Keeping It Realtime!Keeping It Realtime!
Keeping It Realtime!Mojo Lingo
 
Destruction, Decapods and Doughnuts: Continuous Delivery for Audio & Video Fa...
Destruction, Decapods and Doughnuts: Continuous Delivery for Audio & Video Fa...Destruction, Decapods and Doughnuts: Continuous Delivery for Audio & Video Fa...
Destruction, Decapods and Doughnuts: Continuous Delivery for Audio & Video Fa...Rachel Evans
 
Paul william richards the unofficial guide to open broadcaster software - o...
Paul william richards   the unofficial guide to open broadcaster software - o...Paul william richards   the unofficial guide to open broadcaster software - o...
Paul william richards the unofficial guide to open broadcaster software - o...DrPMarkandeyaRajuMVG
 
Video Captioning: How-To & Other Resources
Video Captioning: How-To & Other ResourcesVideo Captioning: How-To & Other Resources
Video Captioning: How-To & Other ResourcesKeira Dooley
 
Livecasts & livestreams
Livecasts & livestreamsLivecasts & livestreams
Livecasts & livestreamsSamu Vilkki
 
Evaluation Question 4
Evaluation Question 4Evaluation Question 4
Evaluation Question 4Holly Suddaby
 
The Difference Between Your Project Succeeding or Burning To A Crisp Is Actua...
The Difference Between Your Project Succeeding or Burning To A Crisp Is Actua...The Difference Between Your Project Succeeding or Burning To A Crisp Is Actua...
The Difference Between Your Project Succeeding or Burning To A Crisp Is Actua...Alan Quayle
 
Engaging a Developer Audience: Documentation and More
Engaging a Developer Audience: Documentation and MoreEngaging a Developer Audience: Documentation and More
Engaging a Developer Audience: Documentation and MoreAnya Stettler
 
Git yo'self video lit'rit (annotated)
Git yo'self video lit'rit (annotated)Git yo'self video lit'rit (annotated)
Git yo'self video lit'rit (annotated)David Evan Harris
 
Lean engineering for lean/balanced teams: lessons learned (and still learning...
Lean engineering for lean/balanced teams: lessons learned (and still learning...Lean engineering for lean/balanced teams: lessons learned (and still learning...
Lean engineering for lean/balanced teams: lessons learned (and still learning...Balanced Team
 
Video production in the cloud for live streaming
Video production in the cloud for live streamingVideo production in the cloud for live streaming
Video production in the cloud for live streamingPaul Richards
 
Decided To Mobilise? How to Engage with the Mobile Internet User.
Decided To Mobilise? How to Engage with the Mobile Internet User.Decided To Mobilise? How to Engage with the Mobile Internet User.
Decided To Mobilise? How to Engage with the Mobile Internet User.Paul Golding
 

Similar to Building a vod portal with the flow @ Inspiring Flow 2013 (20)

I broke what?!??!? Taking over maintenance on well loved projects
I broke what?!??!? Taking over maintenance on well loved projectsI broke what?!??!? Taking over maintenance on well loved projects
I broke what?!??!? Taking over maintenance on well loved projects
 
I broke what? Taking over maintenance on existing (well loved) projects, by B...
I broke what? Taking over maintenance on existing (well loved) projects, by B...I broke what? Taking over maintenance on existing (well loved) projects, by B...
I broke what? Taking over maintenance on existing (well loved) projects, by B...
 
10 tips for a usable website
10 tips for a usable website10 tips for a usable website
10 tips for a usable website
 
How to Get More Out of Your Project Teams
How to Get More Out of Your Project TeamsHow to Get More Out of Your Project Teams
How to Get More Out of Your Project Teams
 
Keeping It Realtime!
Keeping It Realtime!Keeping It Realtime!
Keeping It Realtime!
 
Destruction, Decapods and Doughnuts: Continuous Delivery for Audio & Video Fa...
Destruction, Decapods and Doughnuts: Continuous Delivery for Audio & Video Fa...Destruction, Decapods and Doughnuts: Continuous Delivery for Audio & Video Fa...
Destruction, Decapods and Doughnuts: Continuous Delivery for Audio & Video Fa...
 
Paul william richards the unofficial guide to open broadcaster software - o...
Paul william richards   the unofficial guide to open broadcaster software - o...Paul william richards   the unofficial guide to open broadcaster software - o...
Paul william richards the unofficial guide to open broadcaster software - o...
 
Video Captioning: How-To & Other Resources
Video Captioning: How-To & Other ResourcesVideo Captioning: How-To & Other Resources
Video Captioning: How-To & Other Resources
 
Oxymoron
OxymoronOxymoron
Oxymoron
 
Articulo
ArticuloArticulo
Articulo
 
Livecasts & livestreams
Livecasts & livestreamsLivecasts & livestreams
Livecasts & livestreams
 
World wide web
World wide webWorld wide web
World wide web
 
Evaluation Question 4
Evaluation Question 4Evaluation Question 4
Evaluation Question 4
 
The Difference Between Your Project Succeeding or Burning To A Crisp Is Actua...
The Difference Between Your Project Succeeding or Burning To A Crisp Is Actua...The Difference Between Your Project Succeeding or Burning To A Crisp Is Actua...
The Difference Between Your Project Succeeding or Burning To A Crisp Is Actua...
 
Engaging a Developer Audience: Documentation and More
Engaging a Developer Audience: Documentation and MoreEngaging a Developer Audience: Documentation and More
Engaging a Developer Audience: Documentation and More
 
Git yo'self video lit'rit
Git yo'self video lit'ritGit yo'self video lit'rit
Git yo'self video lit'rit
 
Git yo'self video lit'rit (annotated)
Git yo'self video lit'rit (annotated)Git yo'self video lit'rit (annotated)
Git yo'self video lit'rit (annotated)
 
Lean engineering for lean/balanced teams: lessons learned (and still learning...
Lean engineering for lean/balanced teams: lessons learned (and still learning...Lean engineering for lean/balanced teams: lessons learned (and still learning...
Lean engineering for lean/balanced teams: lessons learned (and still learning...
 
Video production in the cloud for live streaming
Video production in the cloud for live streamingVideo production in the cloud for live streaming
Video production in the cloud for live streaming
 
Decided To Mobilise? How to Engage with the Mobile Internet User.
Decided To Mobilise? How to Engage with the Mobile Internet User.Decided To Mobilise? How to Engage with the Mobile Internet User.
Decided To Mobilise? How to Engage with the Mobile Internet User.
 

More from dfeyer

Liiptalk Neos CMS
Liiptalk Neos CMSLiiptalk Neos CMS
Liiptalk Neos CMSdfeyer
 
Inspiring Conference - architectes.ch case study
Inspiring Conference - architectes.ch case studyInspiring Conference - architectes.ch case study
Inspiring Conference - architectes.ch case studydfeyer
 
Inspiring conference - Automation & external service integration
Inspiring conference -  Automation & external service integrationInspiring conference -  Automation & external service integration
Inspiring conference - Automation & external service integrationdfeyer
 
Typo3 Neos - Introduction - WebMardi - Lausanne
Typo3 Neos - Introduction - WebMardi - LausanneTypo3 Neos - Introduction - WebMardi - Lausanne
Typo3 Neos - Introduction - WebMardi - Lausannedfeyer
 
Inspiring conference 2014 - Node Kingdom
Inspiring conference 2014 - Node KingdomInspiring conference 2014 - Node Kingdom
Inspiring conference 2014 - Node Kingdomdfeyer
 
Traduction des extensions et du core de TYPO3 CMS avec XLIFF
Traduction des extensions et du core de TYPO3 CMS avec XLIFFTraduction des extensions et du core de TYPO3 CMS avec XLIFF
Traduction des extensions et du core de TYPO3 CMS avec XLIFFdfeyer
 
Développer une solution VOD pour les festivals de cinéma
Développer une solution VOD pour les festivals de cinémaDévelopper une solution VOD pour les festivals de cinéma
Développer une solution VOD pour les festivals de cinémadfeyer
 
TYPO3 User Group - Lausanne - 12 novembre 2013
TYPO3 User Group - Lausanne - 12 novembre 2013TYPO3 User Group - Lausanne - 12 novembre 2013
TYPO3 User Group - Lausanne - 12 novembre 2013dfeyer
 
T3DD11 Inspire people to translate
T3DD11 Inspire people to translateT3DD11 Inspire people to translate
T3DD11 Inspire people to translatedfeyer
 

More from dfeyer (9)

Liiptalk Neos CMS
Liiptalk Neos CMSLiiptalk Neos CMS
Liiptalk Neos CMS
 
Inspiring Conference - architectes.ch case study
Inspiring Conference - architectes.ch case studyInspiring Conference - architectes.ch case study
Inspiring Conference - architectes.ch case study
 
Inspiring conference - Automation & external service integration
Inspiring conference -  Automation & external service integrationInspiring conference -  Automation & external service integration
Inspiring conference - Automation & external service integration
 
Typo3 Neos - Introduction - WebMardi - Lausanne
Typo3 Neos - Introduction - WebMardi - LausanneTypo3 Neos - Introduction - WebMardi - Lausanne
Typo3 Neos - Introduction - WebMardi - Lausanne
 
Inspiring conference 2014 - Node Kingdom
Inspiring conference 2014 - Node KingdomInspiring conference 2014 - Node Kingdom
Inspiring conference 2014 - Node Kingdom
 
Traduction des extensions et du core de TYPO3 CMS avec XLIFF
Traduction des extensions et du core de TYPO3 CMS avec XLIFFTraduction des extensions et du core de TYPO3 CMS avec XLIFF
Traduction des extensions et du core de TYPO3 CMS avec XLIFF
 
Développer une solution VOD pour les festivals de cinéma
Développer une solution VOD pour les festivals de cinémaDévelopper une solution VOD pour les festivals de cinéma
Développer une solution VOD pour les festivals de cinéma
 
TYPO3 User Group - Lausanne - 12 novembre 2013
TYPO3 User Group - Lausanne - 12 novembre 2013TYPO3 User Group - Lausanne - 12 novembre 2013
TYPO3 User Group - Lausanne - 12 novembre 2013
 
T3DD11 Inspire people to translate
T3DD11 Inspire people to translateT3DD11 Inspire people to translate
T3DD11 Inspire people to translate
 

Building a vod portal with the flow @ Inspiring Flow 2013

  • 1. Text Building a VOD portal with the Flow Inspiring Flow 2013 Inspiring people to A short story about a real life projet share
  • 2. medialib.tv - building a real life project with the flow About our agency ttree ltd pronounced “tea-tree” Small but nice webagency based in Lausanne, Switzerland More that 10 years of experience with TYPO3 CMS VOD solutions providers for major film festivals since 2008 Inspiring people to A short story about a real life projet share
  • 3. medialib.tv - building a real life project with the flow About myself Dominique Feyer Cofounder of ttree agency One of the men behind the TYPO3 CMS XLIFF support Leader of the translation team Work with TYPO3 since 2000 and with TYPO3 Flow since 2012 Member of a nice family, a girlfriend and a 5 years old daughter Inspiring people to A short story about a real life projet share
  • 4. Stop to Topictext promote your self ! Inspiring people to A short story about a real life projet share
  • 5. medialib.tv - building a real life project with the flow About this presentation A short introduction and history of the project How TYPO3 Flow help us Live demonstration of the current development version Questions & Answers Inspiring people to A short story about a real life projet share
  • 6. medialib.tv - building a real life project with the flow First real life projet with TYPO3 Flow Short development period Kickoff of the project in september 2012 First private beta in mid november Release of the 1.0 early in 2013 du ct We need to be lean p ro ab le al vi inim m
  • 8. medialib.tv - building a real life project with the flow What’s the goal of the project ? Hey men, that’s simple ... I just need to watch movies, you understand ? Look like a simple domain ... So we can start with it with a really fresh framework ! First user story User need to watch movie
  • 9. medialib.tv - building a real life project with the flow But the real domain is a bit more complex ... Client User Strea Movie m News pic Advice To
  • 10. medialib.tv - building a real life project with the flow Key features Multi-domain support in the same datastore Handle security access (PlayToken) for our Wowza Streaming Server cluster Clear backoffice with easy to use forms “Auto discoverable” features Customizable frontend & notifications templates
  • 11. medialib.tv - building a real life project with the flow Time to code Rapid prototyping Focus on the domain No authentication, no log, no security, ... But a full working prototype Validated learning
  • 12. medialib.tv - building a real life project with the flow First contact with Flow ✓ Really clean code base ✓ A lots of new concept to learn ✓ But the learning curve is not so strong ✓ Documentation in constant improvement ✓ Awesome community support
  • 13. medialib.tv - building a real life project with the flow Feedback Loop Build - Mesure - Learn Min imiz e th e to tal tim e th rou gh t th e lo op
  • 14. medialib.tv - building a real life project with the flow Does TYPO3 Flow support the loop ? No, he did not support it, it’s just a framework ! But ... + TYPO3.Flow + TYPO3.Surf + GIT + Continous Intergration Server That support the loop well !!
  • 15. medialib.tv - building a real life project with the flow Quality Assurance ✓ Functional Test are awesome ✓ Unit Test Avo myself t, please id r N ote for test and egr e more e ssio n writ , cli ent sse TD D/BDD d on’ embra t like it
  • 16. medialib.tv - building a real life project with the flow Private Beta & Continous Improvement We code to solve real problems Who know the problems ? Ask or challenge your final user Understand the problems, discuss & adapt 3 real customers during 2 sprints of 2 weeks each A really intensive period
  • 17. How TYPO3 Flow help us to implement our key features ?
  • 18. medialib.tv - building a real life project with the flow Multi domain in the same datastore Any DO can be “private” or “shared” Features that help us AOP + Domain object Annotations Content Security Missing features A way to extend TYPO3FlowSecurityAccount Property introduction with AOP don’t work
  • 19. medialib.tv - building a real life project with the flow PlayToken Handle the security access to our Yes Wowza Streaming Server cluster we cur bro ren ken tly, one hel uni Features that help us pw t te elc st om TYPO3.Soap e Contributions during the project TYPO3.Soap Flow 2.0 support
  • 20. medialib.tv - building a real life project with the flow Multi level administration roles Our clients need to delegate some administration task, like user management & content management. Features that help us Content Security & Policy Missing features A brain capable of correctly understanding policy configuration More documentation around this subject, with real life exemple A solution to disable content security for a specific query
  • 21. medialib.tv - building a real life project with the flow Backoffice & Complex form Form need to be composed by multiple DO Features that help us TYPO3.Fluid awesome form support PropertyMapper & Validator flexibility Aloha Editor
  • 22. medialib.tv - building a real life project with the flow Custom Interface Vocabulary Client must be able to customize vocabulary used by the service. Features that help us Aloha Editor + RestController
  • 23. medialib.tv - building a real life project with the flow Custom Notifications Notifications template can be edited with Aloha Editor Features that help us Aloha Editor + RestController TYPO3.Fluid + Custom Parser What’s next TYPO3 Flow package to use this in any project
  • 24. medialib.tv - building a real life project with the flow External webservice Modern webapplication can use a lots of different API over HTTP Features that help us TYPO3FlowHttpClientBrowser + Curl Engine Contributions during the project Ttree.Oembed - oEmbed Consumer with auto discovery Ttree.Tmdb - Client Interface for The Movie Database API
  • 25. medialib.tv - building a real life project with the flow Public API A clean and modern RESTFull interface to integrate the service with external applications Features that help us RestController + JsonView
  • 27. medialib.tv - building a real life project with the flow YES
  • 28. medialib.tv - building a real life project with the flow Do you want to view a live demonstration ?
  • 29. medialib.tv - building a real life project with the flow Questions & Answers
  • 30. medialib.tv - building a real life project with the flow Thanks you !
  • 31. www.ttree.ch www.medialib.tv @ttreeagency @medialibtv http://github.com/dfeyer http://github.com/ttreeagency info@ttree.ch