Ted Patrick > { Events & Community } > Adobe Systems


Rich with Reach

Having been involved in the Flash Player evolution since 1997, the value of "Rich with Reach" has become ever more obvious to me of late. The long term success of Flash Player and more recently AJAX, are based at their core on the idea of widely deployable rich technologies. It is a balance of devlivering the richest user experience that supports the largest customer base, ie. Rich with Reach.

I started a company in 1998 called Indigo Networks and we created an online shopping service. In our first round of venture funding we raised 1.2 Million dollars and within the deal we got a new CEO, Terry Johnson. Terry is a long time friend and taught me a great deal about business. The key is that Terry was brass tacks when it came to business. In Terry's eyes my role as CTO was to make sure our technology choices excluded as few people as possible. At the time were were spending $$ to drive customers to our site and every incompatible user was wasted money. Reach was essential but we really valued Rich as well. To some extent, we were willing to sacrifice some reach to provide a better user experience. In using Flash, our user retention rates were much higher than our competitors and our site was far easier to use. In highlighting these statistics and showing measurable success, we sold the venture at the height of the .COM era. My goal was to make the most compatible site with the best end user experience possible. What is interesting is that at the time many people thought I was insane for targeting Flash Player 4 with a total market reach of 65% when we first launched. Within 3 months that stat moved to 75% and then 85% moving ever higher and higher. We were certainly early but we made the right decision in choosing Flash Player back then, it gave us a huge advantage at the time in terms of user experience.

I want to take a look at the various rich technologies from a RICH/REACH perspective. I have selected AJAX, WPF, APOLLO, WPFE, FLASH as the base technologies. I first provide a score on RICH and REACH and then explain the technology and my opinion on the matter.

HTML - RICH:3 REACH:10
SM-HTML+CSS+JS - RICH:5 REACH:8
LG-HTML+CSS+JS - RICH:7 REACH:6

The AJAX revolution is really is about providing the best end user experience using HTML, JavaScript, and CSS, again "Rich with Reach". The problem is that browser compatibility and developer productivity continue to plauge development teams using AJAX for certain types of applications. If there were a sliding scale from document to application, AJAX technologies can get you a long way but as things get much more complex on the application side, the runtime differences cross-browser and the overall performance break down. AJAX is a great technology choice in the small but as it becomes more rich it looses reach in terms of compatibility.


WPF RICH:9 REACH:1

Microsoft's Windows Presentation Foundation, WPF provides a way to deliver rich desktop applications on Windows Vista and XP (with surgery). These applications take advantage of specialized hardware, allow for all sorts of 3D/vector functionality, and leverage the .NET runtime. The problem here is reach. It is certainly rich, but Windows Vista adoption is expected to be much slower than XP. It will be a long time before this is a viable choice for desktop application development with the same reach that XP had. Also more generally the rise of Apple OSX and Linux are key indicators that the native desktop application market will only become more fragmented and platform specific.


"APOLLO" - RICH:7 REACH:? (Scored at M3 Builds, Reach not available )

"Apollo" made its debut last night at ApolloCamp and I think we are going to see some amazing things happen here. "Apollo" embodies "Rich with Reach" in supporting Flash and HTML technologies while being 100% cross-platform compatible. In allowing a single binary .AIR file to run cross-platform on Windows, OSX, and Linux we are going to see a revolution occur. "Apollo" isn't the richest runtime (lack of feature XYZ) but over time I think it will support 90% of all desktop application and in its first release it will support a healthy 80%. If you look at applications in general, many are pure data entry and in this class Apollo is a sweet spot. Then again developers are going to innovate on Apollo and will push it to the limit. Last night EffectiveUI presented a framework that extends Apollo using a local server model. The developer used a Wii remote via BlueTooth as a light saber in an game written with "Apollo". Given that Apollo is a 6MB runtime it should get very widely deployed as the runtime need only be installed once on an end users machine.


WPF/E - RICH:4 REACH:? (Scored at PR Builds, Reach not available )

Hard to say much about WPF/E here. It is 0% deployed and Microsoft has a bad reputation regarding cross-platform software as it is so contrary to their core business. Seeing the recent delay in adding managed code to the 1.0 release, I wonder if it will survive. At most I think it will become a video player technology for folks that have MS video assets. If MS force installed this technology via Windows update, they would reach 40% quickly but stall because of the lack of content in WPF/E. Having worked with the Alpha (Technology Preview), it is like Flash 4 without commands, unskinable components, vectors, and video. Scripting and logic is 100% JavaScript of the browser and without complex tooling this makes the solution fall into the not ideal category for me. Also using XML prevents content streaming and thus loading will need to complete before rendering starts. This solution is plagued by identical limitations that SVG encountered when it attempted to challenge Flash years ago while lacking the support of an actual standard like SVG. DOA?


FLASH PLAYER 7 - RICH:6 REACH:9
FLASH PLAYER 8 - RICH:7 REACH:9
FLASH PLAYER 9 - RICH:8 REACH:7

Flash Player 9 is hitting critical mass surpassing the 70% market penetration mark. Every day more and more end users upgrade Flash Player to the latest version at a rate of 5+ Million Flash Players a day and rising. Flash Player 9 is very rich (JIT AS3, graphics, vectors, animation, video, text) and reach improves every single day like clockwork. The growing buzz around Flash Player technologies is that Flash Player 9 is hitting critical mass. Businesses are choosing Flash because of the balance of "Rich with Reach" and a mature development toolset in Flex, Flash, and the CS3 Suite will unleash a set of designer tools that independently are best of breed with seamless developer integration. When a new Flash Player launches it starts with a wimper but over time becomes a huge bang. As Flash Player is backward compatible with all proir SWF files there is a huge market demand for Flash Player from content. And just when you wanted 3D support in Flash Player 9, an open source engine arrives like PaperVision3D to add features and richness that Adobe never anticipated. The Flash ecosystem adds a ton of richness that extends the base feature set of the Flash Player. This aspect is really key to seeing the full value of Flash. It isn't that the raw technology is great, but that our customers make it even better by extending it and using it in innovative ways. The developer base of Flash adds tremendous value to the RICH side of Flash and in turn drives the REACH by delivering great sites.

What is really cool is that you are never limited to using one technology. Some of the best sites/application I have seen embrace a holistic approach and provide rich content where it makes sense. Using rich content is not an all or nothing choice but rather a wide spectrum from which to pick and choose. Over the next year we are going to see AJAX and Flash become ever closer and work better together. There are shared capabilities that make the use of both better. On the desktop we will see a revolution in "Apollo" in Flash and AJAX based technologies. Better together is the key.

Chose your technology wisely and balance "Rich with Reach". You will have more happy customers and that is good business.

Cheers,

ted :)

17 Responses to “ Rich with Reach ”

  1. # Blogger Ryan

    Whoa Ted, I think you're skewing your numbers here. For Apollo you seem to be talking about potential reach while the WPF and WPF/E you're talking about actual reach.

    As of right now, WPF/E arguably has more reach than Apollo, because Apollo isn't out yet. But if we're talking about potential reach, Apollo blows WPF out of the water while WPF/E should be much higher than a 1.  

  2. # Blogger Ted Patrick

    I agree, there is some confusion on the unreleased technology. I can rate the RICH there but not reach. On both "Apollo" and WPF/E I have added a "?" to the reach score. Valid point.

    Ted :)  

  3. # Anonymous Anonymous

    I think the rich scores are a little skewed. Apollo should get HTML/AJAX's score plus Flash Player 9's, plus some for PDF integration, and off the scale for ease of obtaining said richness in a UI.

    What makes WPF richer besides hardware accelerated graphics and the framework? That in itself seems kinda like saying that Windows is faster than the Flash player.(well, yeah usually) And I'm not aware of the desktop code based program besides the browser that has all the cool kids flocking around trying to make their digital mark with it like they are the Flash based YouTube extravaganza.

    Apollo could let me browse the web, connect me to web based apps and services, manage my mp3 library, and serve me my daily dose of Foster's Home in it's native language, frames.  

  4. # Anonymous Scott Barnes

    WPF realistically isn't a problem per say, as the potential path going forward is going to be much stronger for .NET adoption then it has been in the past. WPF is Richer in the sense it will enable and empower folks a much easier overlay in terms of accessing GPU level concepts without having to be snowed under with "how to DirectX". The flipside of this is that it also allows the same model of .NET 2.0 Applications but much more digestable flavours (ie .XBAP, Runtime etc). Yes it's limited to Windows, but in the next 1-5 years, Windows Vista and Longhorn Servers will grow in adoption rates that out strip Apple OSX and Linux. In fact, statistics show that in the 5 years Apple OSX has been in the market, they've had small iterative growth. This is alarming, as their biggest competitor (Microsoft has been silent for 5 years in terms of shipping operating systems, and now we are back on the radar again with Vista. XP was still outselling OSX, Vista is doing great especially with hardware vendors supporting it more and more each day).

    Since Apollo will inherit the Rich/Reach factors of Flash Platform, I'd argue WPF/e will inherit the LG-HTML+CSS+JS Rich/Reach scorecards with +'s on them.

    WPF/e although is still beta (you essentially have the primatives at present), will soon have more features rolling off the assembly line, but the key piece to remember here is that WPF/e in some aspects is an extension onto the AJAX model by providing rich centric features that are X-platform. It's also transparent in terms of code while Flash Platform is blackboxed.

    I won't go there on Tools in terms of empowering developers/designers to drill out WPF/e applications in the future as it would give away part of the game firstly but secondly it probably sists under "potential category" vs "reality category".

    I think you're overselling Apollo per say, revolution needs to occur back at the FLEX level first. Apollo shifts the realms of possibilities when Adobe adds more functionality to the solution, but the initial problem hasn't changed - Flex adoption and development cycles.

    It's great to be optimistic but I could argue optimism for WPF and WPF/e scores that would match FLash Platform and Apollo scorecards :)

    At anyrate, I see where you're going Ted but you've skewed the numbers to suite the Adobe Party Line. What would be relevant is a pulse check on whats here/now vs mixture of "potential and here/now".

    I could live with that.

    --
    Scott Barnes
    Developer Evangelist
    Microsoft - A Dev who plays with all Adobe & Microsoft products.  

  5. # Anonymous Florian Krüsch

    Ted, I don't agree on your ratings but I don't expect you to come up with something realistic comparing your - Adobe - technology to the competitor.
    I've been a Flash developer for a long time and I've also had the chance to help building a revolutionary WPF based ecommerce experience.
    Comparing WPF to Flash 9, WPF adds way more than 1 point on my scale.
    First off you got 3D which is huge.
    You got documents, which you have in Apollo as well but not in Flash. But most of all you got integration on into the whole .NET framework, web-services, XSLT, database access, native interop, networking... you name it.  

  6. # Blogger Ria Flex

    I couldn't agree more with Florian Krüsch - there's a huge .NET community out there waiting for something platform independent to use on the client side but Adobe isn't really helping them out I would say. And companies that are not willing to help...  

  7. # Blogger Ted Patrick

    ok, a few things first:

    Scoring:

    1. This is my blog and my opinion. Simple as that.

    2. Rich - Scoring a technology on a 10 scale for rich features.

    3. Reach - Scoring a technology on a 10 scale for ability to work without installation.

    WPF == Is Vista installed? Is .Net 3.0 Installed? Is supported hardware present?

    Apollo == Is the Apollo Runtime Installed?

    WPFE == Is the WPFE plugin installed? Is any dependent API Installed (Codecs, .NET, DRM Vista)

    Flash Player == Is the Flash Player installed?

    I scored WPF a 1 in REACH because WPF has a very small runtime base of support. Choosing WPF today is really limited to apps where MSFT is funding development directly. Choosing WPF for an end user facing app is a death sentence right now due to limited reach of the technology. It got a 1 because of this, same as WPFE.

    That might seem biased but it is the truth.

    Scott, I scored everything here and now. Also I am a bit as odds with you statement that WPFE will helped in reach by AJAX? If you use WPFE with AJAX your app has the reach of WPFE not higher. REACH numbers are not additive, they are a ceiling. Adding a technology in with a low REACH brings your app down to that level of support.

    Apollo is not limited to an OS, it is cross operating system. Apollo is also not feature limited cross-platform, features are identical cross-platform. Apollo is not limited by hardware. I really cannot say the same thing about MSFT technologies.

    Barnes, Get your facts straight before we have beers! :)

    Cheers,

    Ted :)  

  8. # Blogger Ted Patrick

    .NET is great on the server side with Flex and Apollo!!! Adobe has some improved technologies coming in this regard and there are several 3rd parties with solutions.

    Java on the client side is fairly limited with a 20MB runtime so how is .NET any better on the client given it is many times larger?

    Client runtime size matters here. the smaller the runtime the larger the reach.

    Ted :)  

  9. # Blogger Mauricio Longo

    Ted,

    I understand that you want to sing the praises of Adobe's Flash, Flex and Apollo, however I believe you are discounting Ajax a bit prematurely. The problems and limitations you mention do in fact exist but are intrinsic to hand coded Ajax. We, at Morfik, are now turning the page on that and entering the era of Ajax 2.0, where applications are written in high-level languages and compiled to 100% Ajax code. This approach removes the limitations you mention and allows developers to code sophisticated applications, in a single consistent manner, to run across all major Web browsers. No plug-ins required.

    Mauricio Longo
    Technology Evangelist
    Morfik Technology  

  10. # Anonymous Anonymous

    I'm wondering how the "reach" metric is arrived at? I would think that reach should calculated along the lines of:

    (UsersA * PlatformA_penetration + UsersB* PlatformB_penetration + ... + UsersN*platformN_penetration)/(All Users) * 10

    The multiplier 10 gives you a scale of 0-10.

    This way if platformN only has a market penetration of 10%, the maximum it could contribute to the reach score would be 10% of 10 or 1.

    Conversely, if a platformX has a market penetration of 80% then the maximum reach score it could contribute would be 80% or 8.


    Using this metric, shouldn't WPF get a (potential) reach score of 8? ;-)

    This whole "Reach" thing will be a subjective opinionated mass of conjecture until someone sits down and defines how to measure it.  

  11. # Blogger Dan G

    This post has been removed by the author.  

  12. # Blogger Dan G

    I found installing .NET 3.0 - and thus WPF - onto my XP system trivial, via Windows Update. Hardly "surgery".

    I think WPF will actually have a substantial reach. It's not tied to Vista.  

  13. # Blogger Kenneth

    One thing I'm questioning is how much value 3D adds beyond the "wow" factor. I guess it depends on your domain, I mean the demos I've seen of WPF doing online shopping sites are cool, getting a real 3D feel for a product is great. But for my domain which is business apps - and which I think is about 90% of the real stuff being built out there at least in terms of reach and $$ - and I could be way off on that - I can't see being important that it looks like a real page is turning when you flip to a new page in a report.

    Seems like Vista is pretty fat client compared to Flex. I know we geeks like to build cool things but does the business user care?  

  14. # Anonymous Mary P

    Can you please define what do you mean by "SM-HTML" and "LG-HTML"?  

  15. # Blogger Rajaram

    Ted,
    I attended your recent Web 2.0 presentation on "Rich to Reach"
    Is this presentation available for download and reference.  

  16. # Blogger Flash Teh Ripper

    >> FLASH PLAYER 9 - RICH:8 REACH:7

    Maybe the reach of Flash Player 9 is closer to the 8 now, instead of 7?  

  17. # Blogger Ted Patrick

    >> FLASH PLAYER 9 - RICH:8 REACH:9

    It is closer to 9. Over 90% can run FP9 content without download. Currently it is over 2.381 Billion players installed and growing at 8 million a day.

    Ted :)  

Post a Comment



Jobs


Flex Jobs
city, state, zip


© 2008 Ted On Flash