Se ha denunciado esta presentación.
Utilizamos tu perfil de LinkedIn y tus datos de actividad para personalizar los anuncios y mostrarte publicidad más relevante. Puedes cambiar tus preferencias de publicidad en cualquier momento.
Platform as Art: A Developer’s Perspective
Ashley Streb, Vice President of Technology
© 2006 Brightcove, Inc. All rights reserved. Company Confidential.2
Start at the end
Media enables us to
Touch
Inspire
Ent...
© 2006 Brightcove, Inc. All rights reserved. Company Confidential.3
Agenda
Platform as a Service (PaaS) Landscape
Brightco...
Platform as a Service (PaaS) Landscape
Defining “Platform as a Service”
PaaS: What, where and how
Defining “Platform as a Service”
© 2006 Brightcove, Inc. All rights reserved. Company Confidential.6
Services through Cloud Computing
Consume broad range o...
© 2006 Brightcove, Inc. All rights reserved. Company Confidential.7
Three Broad Categories
Infrastructure
Amazon EC2/S3, G...
© 2006 Brightcove, Inc. All rights reserved. Company Confidential.8
Platform Defined
A "platform" is an expressive medium....
PaaS: What, where and how
© 2006 Brightcove, Inc. All rights reserved. Company Confidential.10
PaaS: What
Problem, what problem?
Targeted capabiliti...
© 2006 Brightcove, Inc. All rights reserved. Company Confidential.11
PaaS: Where
Marc Andreessen Blog
Access API: Flickr, ...
© 2006 Brightcove, Inc. All rights reserved. Company Confidential.12
PaaS: How
How can we build and
create?
Different type...
Brightcove’s Media PaaS – the “How”
© 2006 Brightcove, Inc. All rights reserved. Company Confidential.14
Media PaaS – the “How”
Templating WYSIWYG Tool
Web se...
© 2006 Brightcove, Inc. All rights reserved. Company Confidential.15
Templating Example
© 2006 Brightcove, Inc. All rights reserved. Company Confidential.16
Templating Usage
WYSIWYG Interface
Control colors, st...
© 2006 Brightcove, Inc. All rights reserved. Company Confidential.17
Web service Example
© 2006 Brightcove, Inc. All rights reserved. Company Confidential.18
Rendering Engine, Player API Examples
Stats
Process & Team Organization
Infrastructure and Architecture
The Making of a Platform with Adobe
Technology
© 2006 Brightcove, Inc. All rights reserved. Company Confidential.20
Stats
135 Million Unique Users/month (as of 6 – 9
mon...
Process & Team Organization
© 2006 Brightcove, Inc. All rights reserved. Company Confidential.22
Process
We use the Scrum Methodology
Month long sprin...
© 2006 Brightcove, Inc. All rights reserved. Company Confidential.23
Process
Common language across the entire
organizatio...
Infrastructure and Architecture
© 2006 Brightcove, Inc. All rights reserved. Company Confidential.25
Brightcove’s Applications
Server
Consumer Players Bus...
© 2006 Brightcove, Inc. All rights reserved. Company Confidential.26
Adobe Technology Used
ActionScript 2, ActionScript 3
...
© 2006 Brightcove, Inc. All rights reserved. Company Confidential.27
Consumer Video Player
© 2006 Brightcove, Inc. All rights reserved. Company Confidential.28
Consumer Video Player Technology
ActionScript 3, AVM2...
© 2006 Brightcove, Inc. All rights reserved. Company Confidential.29
Challenges
• Speed + Dynamic Experience
• Dynamic del...
© 2006 Brightcove, Inc. All rights reserved. Company Confidential.30
Speed + Dynamic Experience
• AVM2 (97% penetration)
•...
© 2006 Brightcove, Inc. All rights reserved. Company Confidential.31
Speed + Dynamic Experience continued….
• Client/Serve...
© 2006 Brightcove, Inc. All rights reserved. Company Confidential.32
Dynamic Delivery of Media
• Personalized underwear bu...
© 2006 Brightcove, Inc. All rights reserved. Company Confidential.33
Business Applications
© 2006 Brightcove, Inc. All rights reserved. Company Confidential.34
Business Applications Technology
• Flex 2, AVM2
– Fle...
© 2006 Brightcove, Inc. All rights reserved. Company Confidential.35
Challenges
• Development process
• Fast UI Responses
© 2006 Brightcove, Inc. All rights reserved. Company Confidential.36
Development process – skills and workflow
• Not enoug...
© 2006 Brightcove, Inc. All rights reserved. Company Confidential.37
Development process – code layout
Common
(Shared UI +...
© 2006 Brightcove, Inc. All rights reserved. Company Confidential.38
Development process – code layout
• Each project cont...
© 2006 Brightcove, Inc. All rights reserved. Company Confidential.39
Fast UI Responses
• AVM2
• How to get Data?
– Structu...
© 2006 Brightcove, Inc. All rights reserved. Company Confidential.40
Servers on Fire!
© 2006 Brightcove, Inc. All rights reserved. Company Confidential.41
Server Technology Overview
• Java 6, 64 bit JVM
• Tom...
© 2006 Brightcove, Inc. All rights reserved. Company Confidential.42
Challenges
• Low latency, high throughput
– Better us...
© 2006 Brightcove, Inc. All rights reserved. Company Confidential.43
Summary
• Understand PaaS and how to evaluate
• Case ...
Question and Answers
Drop me a line: astreb@brightcove.com
Próxima SlideShare
Cargando en…5
×

Platform as Art: A Developer’s Perspective

4.544 visualizaciones

Publicado el

Keynote presentation from Webmaniacs 2008, presented by Ashley Streb of Brightcove. Posted with the permission of the author.

  • Sé el primero en comentar

Platform as Art: A Developer’s Perspective

  1. Platform as Art: A Developer’s Perspective Ashley Streb, Vice President of Technology
  2. © 2006 Brightcove, Inc. All rights reserved. Company Confidential.2 Start at the end Media enables us to Touch Inspire Entertain Build, create and be passionate about Adobe!
  3. © 2006 Brightcove, Inc. All rights reserved. Company Confidential.3 Agenda Platform as a Service (PaaS) Landscape Brightcove’s Media PaaS The Making of a Platform with Adobe Technology Q + A
  4. Platform as a Service (PaaS) Landscape Defining “Platform as a Service” PaaS: What, where and how
  5. Defining “Platform as a Service”
  6. © 2006 Brightcove, Inc. All rights reserved. Company Confidential.6 Services through Cloud Computing Consume broad range of services on demand No Software or Servers! Easy to scale with infrastructure in the cloud Dynamically adapt compute power Take advantage of utility metered models Tap into operational excellence and economies of scale
  7. © 2006 Brightcove, Inc. All rights reserved. Company Confidential.7 Three Broad Categories Infrastructure Amazon EC2/S3, Google AppEngine, Sun Grid, 3Tera, IBM Blue Cloud Software Brightcove, Salesforce, NetSuite, Omniture, Ning, SpringCM Platform Brightcove, Salesforce, Ning, LongJump, Intuit QuickBase, Bungee Labs Connect
  8. © 2006 Brightcove, Inc. All rights reserved. Company Confidential.8 Platform Defined A "platform" is an expressive medium. Many existing platforms: Windows, SymbianOS, Flex Ability to build and create Platform as a Service Create, consume, deploy and run in “the cloud”
  9. PaaS: What, where and how
  10. © 2006 Brightcove, Inc. All rights reserved. Company Confidential.10 PaaS: What Problem, what problem? Targeted capabilities Example: Consumer Platform Backend Applications Fast, sexy UIs Tap into Internet fabric Analytics/Reporting
  11. © 2006 Brightcove, Inc. All rights reserved. Company Confidential.11 PaaS: Where Marc Andreessen Blog Access API: Flickr, yelp. Plug-in API: Facebook, MySpace Runtime Environment: BungeeConnect Runtime Environment Plug-in API (plug into core interface) Access API (consume from cloud)
  12. © 2006 Brightcove, Inc. All rights reserved. Company Confidential.12 PaaS: How How can we build and create? Different types of developers Need a blend of tools Code SDKs WYSIWYG Tool XML DSL Web service APIs Application
  13. Brightcove’s Media PaaS – the “How”
  14. © 2006 Brightcove, Inc. All rights reserved. Company Confidential.14 Media PaaS – the “How” Templating WYSIWYG Tool Web service APIs Runtime Engine, Player APIs
  15. © 2006 Brightcove, Inc. All rights reserved. Company Confidential.15 Templating Example
  16. © 2006 Brightcove, Inc. All rights reserved. Company Confidential.16 Templating Usage WYSIWYG Interface Control colors, styles, themes and policies Fast, easy, custom!
  17. © 2006 Brightcove, Inc. All rights reserved. Company Confidential.17 Web service Example
  18. © 2006 Brightcove, Inc. All rights reserved. Company Confidential.18 Rendering Engine, Player API Examples
  19. Stats Process & Team Organization Infrastructure and Architecture The Making of a Platform with Adobe Technology
  20. © 2006 Brightcove, Inc. All rights reserved. Company Confidential.20 Stats 135 Million Unique Users/month (as of 6 – 9 months ago) ~2 billion server transactions/month 1.5 Petabytes (1,500,000 GBs) of media delivered/month Thousands of platform users, hundreds of major media brands, 50 television networks, newspaper and magazine publishers, and all the major record labels in the US
  21. Process & Team Organization
  22. © 2006 Brightcove, Inc. All rights reserved. Company Confidential.22 Process We use the Scrum Methodology Month long sprints 2x2 major release schedule Cross-functional team, 4 – 9 people Stand-up, user stories, story points, PO, burndown, retrospective Operate 10 teams across 3 geographies
  23. © 2006 Brightcove, Inc. All rights reserved. Company Confidential.23 Process Common language across the entire organization. Adapt to changing market Deep collaboration It’s a marathon, not a sprint!
  24. Infrastructure and Architecture
  25. © 2006 Brightcove, Inc. All rights reserved. Company Confidential.25 Brightcove’s Applications Server Consumer Players Business Applications Media Publishing AdsVideo Player Photo Player Server Server Server Server Server Server Server
  26. © 2006 Brightcove, Inc. All rights reserved. Company Confidential.26 Adobe Technology Used ActionScript 2, ActionScript 3 Flex 1.5, Flex 2 AMF 0 (OpenAMF), AMF 3 (BlazeDS) FMS 2.1, FMS 3.0 FlexBuilder
  27. © 2006 Brightcove, Inc. All rights reserved. Company Confidential.27 Consumer Video Player
  28. © 2006 Brightcove, Inc. All rights reserved. Company Confidential.28 Consumer Video Player Technology ActionScript 3, AVM2 AMF3 as client/server communication protocol • ~70K LOC written • FlexBuilder as IDE/Developer Tool • Migrated from AS2 Players
  29. © 2006 Brightcove, Inc. All rights reserved. Company Confidential.29 Challenges • Speed + Dynamic Experience • Dynamic delivery of media
  30. © 2006 Brightcove, Inc. All rights reserved. Company Confidential.30 Speed + Dynamic Experience • AVM2 (97% penetration) • Partition into libraries (~50% savings) • Obfuscation/minification • Consumer client load vs. business application load 0 2000 4000 6000 AS2 AS3 No Modules 341K Player Load 169K Menu 34K Overlay Controls 40K Volume Controls 16K Ad Support 45K Load Time in MS SWF Size in KB
  31. © 2006 Brightcove, Inc. All rights reserved. Company Confidential.31 Speed + Dynamic Experience continued…. • Client/Server communication – Think about how to organize server calls – Think about wire protocol • Getters vs. e4x, 13x faster access • AMF Open specification; JMeter and other applications 0 10000 20000 30000 40000 AMF0 AMF3 XML Payload in bytes
  32. © 2006 Brightcove, Inc. All rights reserved. Company Confidential.32 Dynamic Delivery of Media • Personalized underwear but not media?! • Media files are BIG! • PD vs. Streaming for video delivery
  33. © 2006 Brightcove, Inc. All rights reserved. Company Confidential.33 Business Applications
  34. © 2006 Brightcove, Inc. All rights reserved. Company Confidential.34 Business Applications Technology • Flex 2, AVM2 – Flex vs. ActionScript vs. DHTML • AMF3 as client/server communication protocol • Cairngorm as micro-architecture • ~100K LOC written, 150 Commands • FlexBuilder as IDE/Developer Tool • FlexUnit for unit testing • Homegrown integration tool
  35. © 2006 Brightcove, Inc. All rights reserved. Company Confidential.35 Challenges • Development process • Fast UI Responses
  36. © 2006 Brightcove, Inc. All rights reserved. Company Confidential.36 Development process – skills and workflow • Not enough Flex people! Training Java people. • Work across technology lines • Strong emphasis on design; auto-generate SWCs
  37. © 2006 Brightcove, Inc. All rights reserved. Company Confidential.37 Development process – code layout Common (Shared UI + Classes) Services (Server Integration) Parts (Cairngorm Specifics) Ad Application Publishing ApplicationMedia Application
  38. © 2006 Brightcove, Inc. All rights reserved. Company Confidential.38 Development process – code layout • Each project contains own set of unit tests • Shared project layers are compiled as SWC, enables faster compile • Each project checks in .project, .actionScriptProperties and .flexProperties file
  39. © 2006 Brightcove, Inc. All rights reserved. Company Confidential.39 Fast UI Responses • AVM2 • How to get Data? – Structure server API; initial view, lazy load, different types of DTOs – Make clients intelligent about their needs – Datagrid presentation strategies
  40. © 2006 Brightcove, Inc. All rights reserved. Company Confidential.40 Servers on Fire!
  41. © 2006 Brightcove, Inc. All rights reserved. Company Confidential.41 Server Technology Overview • Java 6, 64 bit JVM • Tomcat, Spring, Hibernate and Coherence • BlazeDS as AMF gateway • ~350K LOC • JUnit, JMeter, Lunt • Eclipse IDE, Emacs, Vi
  42. © 2006 Brightcove, Inc. All rights reserved. Company Confidential.42 Challenges • Low latency, high throughput – Better user experience – Minimize capex, Facebook was rumored to have raised 100M to buy 50K servers. That’s a lot of dough! • Scale
  43. © 2006 Brightcove, Inc. All rights reserved. Company Confidential.43 Summary • Understand PaaS and how to evaluate • Case study of a successful company built on Adobe Platform • Great platforms enable great applications - Go forth and create!
  44. Question and Answers Drop me a line: astreb@brightcove.com

×