Jul
11
A podcast about all things Macintosh. For Mac geeks, by Mac geeks. Episode 022. Use iMovie 09 to bring out your inner Hollywood. In this episode I cover how to set-up, shoot, and edit green screen effects using Apple’s built-in consumer video editing tool.
Maccast Members
The audio for this episode is available to Maccast Members. Sign-up or log in by visiting the Maccast Member site.
On Flash v Steve Jobs, this blog by Tim Arah seems very relevant: http://www.pcpro.co.uk/blogs/2010/07/01/the-fundamental-differences-between-flash-and-html-and-the-real-reasons-that-steve-jobs-wants-to-kill-it/
The fundamental differences between Flash and HTML (and the real reasons that Steve Jobs wants to kill it)
Recently I’ve been making the case that Steve Jobs’ refusal to allow Flash near the iPhone, iPod and iPad isn’t an inconsequential squabble but rather a fundamental attack on the very future of web-based design and development.
At first sight, the argument may well look perverse. After all, everyone knows that Flash is a proprietary and binary add-on format for web pages that has led to some appalling design excesses and is increasingly, and rightly, being flushed out of common web page usage (as when Flash rollovers were replaced by CSS). OK the format has currently found a niche delivering video, but really it’s an outdated technology ready to be put out to pasture by the brand-new, open standard, video-enabled, “Flash-killing” HTML5.
In this version of the story, Steve Jobs is simply doing everyone a favour by speeding the take-up of HTML5 and the inevitable purging of Flash from the Web. However underlying Job’s anti-Flash argument and most people’s thinking on the subject is a mistaken assumption (or carefully calculated deception in the case of Jobs). Most people assume that HTML will inevitably evolve to be able to do everything that Flash can; simply make HTML and the browser more powerful and the need for add-ons like Flash evaporates. Why do it in the player with a closed format when you can do it in the browser with open standards?
In fact Flash is a fundamentally different technology to HTML and can do things that HTML can’t and never will.
From Content to Presentation
HTML (HyperText Markup Language) was devised by Tim Berners-Lee as a simple language to mark up the content of web pages and the links between them. Key to this was his decision to leave presentation entirely out of the picture. What font the HTML page was displayed in and how markup elements were rendered was entirely up to the browser; the fluid web page would simply reflow to accommodate. It was precisely this content-focused and presentation-free approach that gave HTML its amazing strengths – core text-based simplicity, cross-platform universality, easy searchability and so on.
By contrast Flash takes the opposite approach, focusing on presentation rather than content. Key to this is Flash’s vector-based handling. By describing drawings and text mathematically, Flash can precisely describe fixed, resolution-independent content complete with advanced typography (multiple fonts etc) in attractive multi-column layouts that can scale to whatever size /screen they are viewed on.
In many ways Flash can be seen as a web-friendly equivalent to PostScript, Adobe’s cross-platform page description language which underpins the professional print industry. And under Adobe’s development this is exactly what Flash has become with direct support for Flash output built in to the two leading design applications – InDesign and QuarkXPress – and increasingly spreading through the other Creative Suite applications and beyond. This promises a future where rich web design is as simple and powerful as wysiwyg print design.
Interestingly when discussing the nature of future design-rich web development with Netscape’s Marc Andreessen, Berners-Lee acknowledged the need for such an option, “Yes I think there is a case for postscript with hypertext”. Moreover this sort of handling wasn’t seen as some sort of threat, but rather as a natural partner for HTML within the browser and within the extensible and universal web ecosystem “HTTP2 allows a document to contain any type which the user has said he can handle… So one can experiment.”
From Static Page to Live Screen
Flash’s PostScript-style nature is fundamentally different to HTML and, under Adobe, enables it to act as a universal, web-friendly, design-rich iPaper format. However the format is not inherently fixed and static like PostScript/PDF. In fact Flash was originally devised as a means of providing bandwidth-efficient vector cartoons, a rich media mission that it has enhanced with support for bitmaps, audio and video. It’s worth pointing out that these are all binary formats. Binary handling isn’t inherently evil or wrong in the web context; you can’t do video as mark-up (or, more accurately, it doesn’t make sense to).
Flash can also be live in another way that HTML can’t. HTML is built upon the model of separate web pages that load in replacement web pages via hyperlinks, it’s the fundamental principle of browsing. Workarounds such as AJAX can download fresh data from the server without a page refresh but this is awkward and inherently limited. Flash by contrast can seamlessly pull in new text and media as required and even offer P2P capabilities, video conferencing etc. Such live handling is key to delivering a seamless desktop-style application experience rather than the disjointed page-based browser experience.
From Basic Scripting to Advanced Programmability
Also key in this regard is interactivity and here Flash has another advantage in that its vector format is inherently object-oriented. Originally this enabled the technology to deliver simple rollovers and basic media control via attached “actions”, but over the years this has been built upon until now the format enables tight control of the powerful and open source cross-platform Flash VM (virtual machine) via the rich Flash Player API and the ECMA-based programming language ActionScript 3.0 (essentially object-oriented JavaScript).
Macromedia and now Adobe has also built on this ActionScript platform with its free and again open source FlexSDK based on the XML-based MXML markup language which acts as a natural presentational partner for application development. Using Flex allows developers to create fully-functioning applications with advanced skinnable controls – text boxes, dropdowns etc – within a traditional development environment.
Particularly when tied in to cloud-based services, Flex-based development can enable extraordinary online functionality within the browser/player as shown by Adobe’s own proof of principles: photoshop.com for rich online photo editing and acrobat.com’s rich word processing, spreadsheet and presentations software. And with AIR, Adobe can enable similar rich functionality outside the browser and when offline.
From Page or Screen to Paginated Screen
Under Adobe, Flash/Flex has added another potentially crucial capability which sees the format come full circle from its PostScript-style fixed handling to offering fully live design-rich handling. Thanks to the Flash Player 10’s new text engine and the new ActionScript-based Text Layout Framework, Flash can now deliver rich typography (kerning, discretionary hyphenation and so on) within live layouts (reflowing and resizing text containers). Imagine InDesign’s layout and typographic capabilities live in the the browser (within the player).
What this means in practice is highly readable, multi-column layouts complete with pictures that adapt to any screen size and orientation that they are viewed upon. It’s early days for this paginated screen capability but the potential is extraordinary as shown in the AIR-based New York Times Reader. Imagine a single engaging and truly readable (as opposed to browsable) layout that intelligently adjusts, elegantly and richly, to any and all viewing circumstances from any size of PC screen, slates/tablets (in either orientation), through to set-top box, projector and any and all mobile devices. Again such handling is just not realistic in the browser.
From Browsing to Engaging
Put together Flash’s PostScript-style vector architecture with its rich media support, live data handling, powerful development capabilities and unmatched type and layout engine and you can see that the common perception of Flash as only useful for video and irritating adverts is way off the mark. Because of its fundamentally different nature, Flash can deliver rich documents and rich applications that HTML just isn’t able to handle. Flash is the natural cross-platform web medium for both designer and developer for those occasions when they want to move on from the web page to add additional value.
Crucially this doesn’t mean that Flash is superior to HTML or should come to replace it. Because the two technologies are fundamentally different, Flash isn’t the right choice for the things that HTML is good for and vice versa. Rather, as Berners-Lee implied, the two should be seen as natural partners within the browser: HTML providing the perfect medium to make content easily discoverable and Flash providing the perfect presentational medium to enable designers and developers to add extra value to allow the end user to seamlessly move on from searching and browsing to engaging, reading, consuming, doing, creating and enjoying.
From Adobe to Apple
Flash is not a threat to HTML, but it certainly is for Steve Jobs who is of course promoting his own alternative route to enable end users to move on from browsing to consuming. The iPad in particular should make the perfect Flash device, but the last thing that Jobs wants is a unified and open Web platform where rich applications and rich content can be created by users in the design and development software of their choice, made freely available online by their creators in any way that they see fit and accessible by any user on any device capable of supporting the free, OSP-endorsed, mobile-optimised Flash player 10.1 (with AIR support to follow).
Jobs’ vision is very different. Key to it is the Flash-free, markup-only Web; rich but certainly not rich enough to challenge the power of his dedicated iApplications. It is this proprietary, Apple-only, developer-only route to rich content and application creation targeted at particular Apple devices and with all applications and content distributed only through Apple’s online stores that is really motivating Jobs. No wonder Jobs wants to kill Flash. No wonder Apple is now worth more than Microsoft.
From Open and Universal to Closed and Proprietary
Flash certainly isn’t perfect and creating a cross-platform highest common denominator is inherently a challenge. However I hope that I’ve shown that the Web without Flash will be a much poorer environment than the Web with Flash and that Jobs really wants to kill the format because of its inherent strengths not because of its current limitations .
Ultimately though that case is secondary. This is a matter of choice and freedom of expression.
The Web was never intended to be an HTML-only space (imagine it without bitmaps for a start) and Flash, Silverlight and Java are completely legitimate web technologies that do very different things to HTML. If designers and developers want to use these cross-platform technologies and end users want to see their work, Jobs has no right to stand in their way. The third-party player isn’t a threat to the integrity of the browser, rather it’s the natural means to build on the Web’s HTML-based foundations to ensure that the browser fulfil its full potential. Jobs’ action in banning Flash and indeed any other third-party web formats should be as unthinkable as refusing to support HTML; it is inherently anti-choice and is a fundamental attack on the core principles of the open and extensible, universal Web.
As Steve Jobs says, this is a matter of principle and of open standards and the very nature of the Web. It’s just that the villain in the piece is not Flash but Steve Jobs.
Read more: The fundamental differences between Flash and HTML (and the real reasons that Steve Jobs wants to kill it) | PC Pro blog http://www.pcpro.co.uk/blogs/2010/07/01/the-fundamental-differences-between-flash-and-html-and-the-real-reasons-that-steve-jobs-wants-to-kill-it/#ixzz0tSYkNkqj