building a vod saas service based on typo3 flow

Post on 19-May-2015

316 Views

Category:

Technology

1 Downloads

Preview:

Click to see full reader

DESCRIPTION

This presetentation talk about medialib.tv, a SaaS streaming service, based on the opensource PHP framework, TYPO3 Flow. Location: Inspiring Flow 2013, Friday, April 19th 2013 http://www.inspiring-flow.com/program.html

TRANSCRIPT

Inspiring people toshare

Inspiring Flow 2013

A short story about a real life projet

Text

Building a VOD portal with the Flow

Inspiring people toshareA short story about a real life projet

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

About our agencyttree 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 toshareA short story about a real life projet

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

About myselfDominique 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 toshareA short story about a real life projet

TopictextStop to promote your self !

Inspiring people toshareA short story about a real life projet

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

About this presentationA short introduction and history of the project

How TYPO3 Flow help us

Live demonstration of the current development version

Questions & Answers

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

First real life projet with TYPO3 FlowShort development period

Kickoff of the project in september 2012

First private beta in mid november

Release of the 1.0 early in 2013

We need to be lean

minimal viable product

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 !

User need to watch movie

First user story

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

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

MovieStream

Client

User

NewsTopic

Advice

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

Key featuresMulti-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 codeRapid 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 LoopBuild - Mesure - Learn

Minimize the total time throught the loop

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

Avoid regression, client don’t like it

✓ Functional Test are awesome

✓ Unit Test

Note for myselft, please

write more test and

embrasse TDD/BDD

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

Private Beta & Continous Improvement

Understand the problems, discuss & adapt

3 real customers during 2 sprints of 2 weeks each

A really intensive period

We code to solve real problems

Who know the problems ?

Ask or challenge your final user

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 datastoreAny DO can be “private” or “shared”

AOP + Domain object Annotations

Content Security

Features that help us

A way to extend \TYPO3\Flow\Security\Account

Property introduction with AOP don’t work

Missing features

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

PlayTokenHandle the security access to our Wowza Streaming Server cluster

TYPO3.Soap

Features that help us

TYPO3.Soap Flow 2.0 support

Contributions during the project

Yes we broken one unit test

currently, help welcome

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

Multi level administration rolesOur clients need to delegate some administration task, like user management & content management.

Content Security & Policy

Features that help us

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

Missing features

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

Backoffice & Complex formForm need to be composed by multiple DO

TYPO3.Fluid awesome form support

PropertyMapper & Validator flexibility

Aloha Editor

Features that help us

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

Custom Interface VocabularyClient must be able to customize vocabulary used by the service.

Aloha Editor + RestController

Features that help us

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

Custom NotificationsNotifications template can be edited with Aloha Editor

Aloha Editor + RestController

TYPO3.Fluid + Custom Parser

Features that help us

TYPO3 Flow package to use this in any project

What’s next

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

External webserviceModern webapplication can use a lots of different API over HTTP

\TYPO3\Flow\Http\Client\Browser + Curl Engine

Features that help us

Ttree.Oembed - oEmbed Consumer with auto discovery

Ttree.Tmdb - Client Interface for The Movie Database API

Contributions during the project

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

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

RestController + JsonView

Features that help us

Is TYPO3 Flow a good choice ?

YESmedialib.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 !

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

www.ttree.ch www.medialib.tv !

@ttreeagency @medialibtv !

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

!

info@ttree.ch

top related