Category Archives: flash

Google Gears out, HTML 5 in: what this means for offline web apps

I was interested to read that Google is abandoning Gears in favour of HTML 5.

While that makes sense, it is a hassle for developers who have developed for Gears, since there are differences between features such as HTML 5 local storage and Gears LocalServer. The Gears API was tidy and effective so in some ways I’m sorry to see it go, though a broad standard will be much more useful.

Still, this does mean that you can develop to the HTML 5 standard for Offline Web Applications with some hope that, although broad implementation is lacking now, it will come in future. Even IE 9 is likely to have a fair amount of HTML 5 in it.

It is a critical standard because the success of something like Google’s Chrome OS will depend on it. Nobody can count on being always connected.

In the meantime, there are also offline features in Adobe Flash and Microsoft Silverlight.

PDC day two: Silverlight 4 and a free laptop

There were two big themes at PDC in Los Angeles today. One was the Silverlight 4 beta, the subject of the most impressive section at the keynote. The other was the announcement of free laptops for every attendee – aside from press and government. It is remarkable how a generous gift can change the atmosphere. The lack of breakfast or Universal Studios party was soon forgotten as the audience cheered its own good fortune.

There is actually some justification for handing out this hardware. It’s a decent machine, a modified Acer Aspire 1420P with Windows 7 x64, 2GB RAM, multi-touch display, and accelerometer. Most of us do not have multi-touch machines, and giving them to the core Windows developers who attend PDC may help stimulate the creation of applications that properly support this feature.

Otherwise, it was a Silverlight day. Although SharePoint 2010 was also in the keynote, the cheers it received felt more like relief, that it finally has sensible development and debugging tools in Visual Studio, than real enthusiasm. Somehow the keynote did not capture the potential of the product.

Silverlight though was well received. It is a huge release that opens up many new possibilities, though I am discovering some details that look awkward. There is also one troubling aspect, which is that Microsoft is introducing imbalance in its cross-platform story. The Windows version of Silverlight 4.0 supports COM automation, enabling integration with local APIs such as location on Windows 7, and Microsoft Office. There is no equivalent in the Mac release. It would not be so bad if Microsoft offered some route to similar functionality on the Mac, but there is none that I am aware of.

Microsoft folk that I spoke to about this dismissed it as a minor point, but it is not. Cross-platform is a discipline; this is a failure to observe that discipline and hands an advantage to Adobe Flash for developers that require broad reach.

Web advertising goes outside: digital signage using force.com and Media RSS

In the last 10 years or so video advertising screens have replaced static posters in busy public places like the London Underground. This is known in the trade as digital signage or Digital Out of Home (DOOH) advertising; and I was interested to speak to a company at the recent Salesforce.com Service Cloud 2 launch which is running digital signage systems on the Salesforce force.com platform. The company is signagelive, run by http://www.remotemedia.co.uk/, and and its secret sauce is to use the internet and commodity technology to run 10,000 displays around the world cheaply and efficiently. As I understood it from my brief conversation, a force.com application provides customers with dashboard for managing their screens, usable from any web browser. Content is served to the screens over the Internet using Media RSS. This is well suited to the purpose since it is easy for customers to update, and fail-safe in that if the system fails or the connection breaks, screens just carry on displaying the last version of the feed which they retrieved. Since Media RSS is a standard, the content can also feed desktop applications; and of course it doesn’t have to be advertising though often it is.

A sinagelive display could be a low-powered network-connected device attached to a display; or a display alone with enough intelligence to retrieve a Media RSS feed and display its images; what you can do in the home with something like a estarling connected photo frame or a PhotoVu wireless digital picture frame but with bigger displays. The company is looking forward to displays which include on-chip Adobe Flash players since this will enable animation and video to be included with little extra cost. The media itself is currently stored on company servers, but is likely to move to Amazon S3 in future – which makes sense for scalability, pay as you go, and for taking advantage of Amazon’s global network, reducing latency.

If you want to see an example, apparently the London Dockland Light Railway screens are driven by signagelive; they are also in Harrods.

CEO Jason Cremlins has a blog post about the future of DOOH. My further thought is that if you had devices able to run Flash applications, you could put this together with touch screens and add interactivity to the mix.

The boundaries between internet and non-internet advertising are blurring. Ad networks such as those run by Google can be extended to networks using this kind of technology in a blink. Why shouldn’t advertisers be able to select airport lounges or underground stations alongside Adsense for websites?

The less compelling aspect of the technology is that as the costs of running these advertising networks come down, the likelihood of intrusive advertising screens invading every possible public space increases.

I also found this interesting as an innovative use of the Salesforce platform. As I recall, it hooks into other force.com applications to handle billing, customer record management and so on, and shows the potential for Salesforce to move beyond CRM. With the Adobe Flash aspect as well this example brings together a number of themes that I’ve been mulling over and I enjoyed hearing about it.

The Sneak Peeks at Adobe MAX 09

I was looking for a list of the Sneak Peeks shown at last week’s Adobe MAX conference in Los Angeles. I couldn’t find one quickly, so here is mine. Note that these are billed as experimental features that may never ship.

Thin client gaming: this is a kind of application virtualisation. We saw a 3D game that was rendered on the server, and streamed as video to a variety of clients. The clients send keystrokes back to the server enabling the users to control the game. Processing graphics on the server could enable effects that would otherwise require a more powerful graphics processor than would typically be available on a small device, as well as reducing the local install footprint to near zero.

Physics engine in Flash: Very interesting demo showing how you might apply physics effects to objects in the Flash designer. Instead of tracing an animation path, you set parameters that say in effect “behave as if dropped” or “behave as if thrown”. Great for games; if you wanted to code a pinball machine (as shown in the demo), for example, this would save a lot of mathematics.

Smart Paste: a cool demo showing how you might be able to paste content from vector graphics designers (like Adobe Illustrator) into an HTML web page, using the HTML 5 Canvas element and preserving scalability. The intermediate format is FXG, an XML format for Flash Platform graphics interchange. We were shown how the vector graphics could be bound to data from Excel to create a chart. The best bit was when we saw a Flash animation exported to JavaScript and HTML using this technique. Flash export to HTML from Adobe?

Flex mobile framework: Ely Greenfield showed a demo of Slider, a version of the Flex SDK optimised for mobile devices. Despite this being a Sneak Peek, there’s little doubt that this will ship.

Project ROME: an AIR application (20,000 lines of code) for graphic design, with a context-sensitive designer, text flow between containers, the ability to import Photoshop art, video embedding, and output including SWF, PDF, JPG, SVG. ROME also runs in the browser as a web application. This is interesting if you envisage a time when applications now part of Creative Suite could be implemented as web apps. See this on YouTube.

Developer cloud: Develop client and server parts of an application in an integrated manner and with the same programming language, with smooth debugging between the two. Demo of server-side ActionScript. Microsoft platform developers already enjoy something like this with C# or VB.NET in combined Silverlight and ASP.NET projects in Visual Studio 2008.

Fireworks hierarchical undo: This demo didn’t actually work, but it is a great idea. The problem with Undo is that it is linear. Therefore, if you do some bad work, and then some good work, you have to undo the good to undo the bad (if you see what I mean). This feature would let you undo selectively instead.

Pause and resume development: Also known as Edit and Continue, this lets you make changes to Flex code while paused during a debug session. Another one Microsoft developers already enjoy.

Photoshop intelligent hole-filling: this one got loud whoops of applause. The idea is that you take an image which includes an unwanted object – like a pretty view spoilt by an electricity pylon – select the object and ask for it to disappear, intelligently replaced by parts of the rest of the image. The demo worked fairly well; the image below shows how a group of water buffalo were disappeared from a photo. Now you will trust digital images even less.

That’s it; if I’ve missed something, let me know!

Adobe’s chameleon Flash shows its enterprise colours

Duane Nickull is Senior Technical Evangelist at Adobe and co-author of Web 2.0 Architectures which I reviewed recently. He is also Duane Chaos of grunge band 22nd Century and entertained us at the Adobe MAX party last night in Los Angeles.

Duane Chaos at Adobe MAX bash in LA

It’s appropriate that he works for Adobe, whose Flash runtime has parallel chameleon characteristics. Most of the time it is delivering annoying ads, games or silly videos; but it also turns up as a flexible cross-platform client runtime for Enterprise applications.

We saw this demonstrated yesterday in an excellent session on scaling Flex for a large trading application, given by the developers of Morgan Stanley’s Matrix application about which I have written before. This session was far more informative than the earlier online briefing, and a fascinating case study in how to create Enterprise-grade software.

Matrix was built by a team of around 30 Flex developers, over a period of between 18 months and two years. It uses a REST-based service layer which talks to a variety of Java and .NET back-end servers – we didn’t hear much about these – and delivering XML to the Flex client. The team did not use the Flash-optimised AMF protocol because the app uses Lightstreamer which did not support it at the time, though we were told that AMF would be advantageous and may be used in future. LiveCycle Data Services were ruled out because of lack of support for edge server deployment; again, this has apparently been fixed in the latest LiveCycle so migrating in that direction is possible.

Matrix uses the Cairngorm 3 architecture, which specifies best-practice design patterns for Flex, implemented using the Parsley Application Framework. The application is modular, and we heard a lot about how rigorous module encapsulation makes a large application like this – 600,000 lines of Flex code – manageable, reliable, flexible and testable. One module cannot access the implementation details of another, and a message bus handles communication.

I was also impressed by the attention given to performance. Another advantage of using modules is that they are loaded on demand, reducing the load time and memory footprint. Each module is profiled separately. The team also found that a big factor in Flex performance is efficiency in managing redraw regions – apparently Flash can easily be sloppy about this and redraw regions that have not actually changed. The team patched the UIMovieClip component to overcome problems in this area.

A model-view-controller architecture is used for the user interface, and this enables better testability. The team uses continuous integration to maintain quality.

According to the session presenters, the result is an application that has the high performance required of a financial trading application, and can run for extended periods without issues.

Although I had the impression that developing Matrix has been bleeding edge at times, with the team using beta software to get access to new features, there was also evidence that Adobe was responding to issues and using this as an opportunity to improve its platform.

This makes a great case study for those sceptical about whether the Flash runtime is really capable of powering Enterprise clients, or for any Flex developer.

Adobe hoping to marginalise Flash-free iPhone

We got a few more clues about Adobe’s iPhone problem at a press conference today with Chief Technology Officer Kevin Lynch. There is no doubt about the importance Adobe attaches to the device. “Flash needs to get there in order to stay relevant on the web”, says Lynch, though there was some ambiguity about whether he meant the iPhone specifically, or the mobile web in general.

Yesterday’s announcement of Applications for iPhone, a feature of the forthcoming Creative Suite 5, solves a problem for developers wanting to port Flash applications to iPhone apps for Apple’s App Store, but does nothing for Flash content in web pages. Here’s the page you get if you follow a “Get Flash” link using an iPhone:

Note Adobe’s slightly more aggressive wording in the latest version of this page: “Until Apple eliminates these restrictions, Adobe cannot provide Flash Player for the iPhone.”

So what if Apple continues to refuse Flash – something which some users would actually welcome? Lynch made reference to the number of hot new Smartphones now appearing, including Palm Pre, Android phones, Windows Mobile 6.5 phones, and Nokia’s latest devices. He then referenced the early history of the PC, when Apple was first to market with a mouse-driven GUI but lost out to Windows in the mass market, and suggested that history might repeat itself, as these new devices incorporate many of the features for which the iPhone is popular.

The implication is that if Apple continues to be Flash-free it might lose market share to others; and that this might happen anyway thanks to the iPhone’s premium price and closed platform.

This may be wishful thinking. Closed or not, Apple has built up impressive third-party support for the iPhone and it will be hard to tempt existing users away.

Still, in the absence of any other possible strategy, it’s a reasonable one to try. We will not know the impact of having the full Flash player on Smartphones for a while yet, but if it successful, more of Apple’s customers will ask for Flash to be supported.

Technorati Tags: ,,,

Three reasons why Adobe Flash is hated

In the Adobe-shaped bubble of MAX 2009 in Los Angeles, Flash is the answer to everything, almost. That impression was reinforced yesterday when Chief Technology Officer Kevin Lynch spoke of his ambition to make AIR, the Flash-based out of browser runtime, into a universal runtime for SmartPhones, as I reported yesterday on The Register.

Many users and developers have a different perspective, and you can easily find examples in the comments on the piece linked above. I was also struck by the loud and spontaneous cheer accorded Opera’s Bruce Lawson when he presented HTML 5 as an alternative to Flash and Silverlight at the Future of Web Applications conference last week.

So why is Flash hated? Three main reasons come to mind.

The first is because most of the Flash content that we see is marketing and advertising. Most users prefer web sites that are ad-free, or at least where the advertising is low-key. On the marketing side, there are still plenty of occasions where you want to skip the intro. When I link to Adobe’s home page for MAX 2009, I always link to the Sessions page, not the home page which auto-plays a Flash movie with sound – because I think users would rather get straight to the content, rather than be startled or embarrassed by an unexpected broadcast. Fellow journalist Jon Honeyball tweeted recently:

using a blocker to rid myself of unwanted flash nonsense on web pages. And most of it is unwanted and unnecessary rubbish

A more nuanced angle on this same problem is that Flash developers are inclined to add a little bling to their applications, even if it is not marketing as such. Users who like applications that are sparse and lean react against this.

The second reason is that Flash can be detrimental to browser performance. There are two angles on this. One is that bugs or performance characteristics in the Flash Player, combined with perhaps badly written Flash content, can cause slowdowns or at worst lock-ups in the browser. The other is that much Flash content downloads a lot of data, to create its multimedia effects. This makes Flash pages larger and therefore slower. It is a consideration that matters particularly on mobile devices with slow or intermittent connections, which is why not everyone welcomes the prospect of full Flash on every SmartPhone.

Third, there are those who do not regard Flash as part of the open web, and want to see web content that can be rendered completely without the use of a proprietary runtime, and web standards controlled by a cross-industry group rather than by a single vendor. There could be political, ethical or pragmatic reasons behind this view; but it is one that is still strongly felt, as shown by the reaction to Lawson’s comments at FOWA.

Before you tell me, I realise that there are also plenty of reasons to like Flash; and I am not going to attempt to iterate them here. My argument is that even those who love Flash need to recognise that users with negative perceptions may have good reasons for them. From this perspective, Apple’s resistance to Flash on the iPhone is a force for good, since it compels web developers to continue offering non-Flash content.

It also follows that anything Adobe can do to mitigate these problems will strengthen its campaign to get Flash everywhere. I am thinking of things like improved performance and reduced memory footprint in the player, and better handling of errant applications; demonstrating lean and mean Flash usage in its own sites and examples; and continuing to open the Flash runtime and its future to cross-industry input, even at the expense of relinquishing some control.

Technorati Tags: ,,,,

Web video ascendant as Flash goes mobile

It is one of those days when separate announcements reinforce a single message.

On the technical side, we’ve had Adobe’s announcement, here at MAX in Los Angeles, of Flash Player 10.1 which will bring hardware accelerated HD video to a number of smartphones, including Windows Mobile, Palm Web OS, Google Android and Symbian. Blackberry maker RIM is also on board. Spot the missing Smartphone – though who knows, there could be an Apple-shaped announcement too at any time.

Users on the other hand do not care what software is delivering their video, they just want it to work. England’s numerous football fans will care even more about that now, since the forthcoming World Cup qualifying match with Ukraine will apparently be shown only on the Web, on a pay-per-view basis. Actually it is not quite web-only; you can also to out to watch it in the cinema, harking back to the days when few had TVs at home:

Fans will be asked to pay between £4.99 and £11.99, depending on when they sign up, to watch the match on their computer and it will also be screened in selected Odeon cinemas.

I’m particularly interested in the developer angle. Web video is programmable, and where Flash goes, so too goes the ActionScript runtime. One angle is social media, which the BBC talked to me about at the end of last year in the context of iPlayer. It will be fun to see this and other innovations as the possibilities opened up by web broadcasting sink home.

Technorati Tags: ,,,

Future of Web Apps cheers the independent Web

The Future of Web Applications conference in London is always a thought-provoking event, thanks to its diversity, independence and character. That said, it is a frustrating creature at times. The frustration on day 1 was the barely functional wi-fi, which ruined a promising interactive application called HelloApp, built with ASP.NET MVC. HelloApp would have told us who we were sitting next to, what their interests were, their twitter ID and so on. Microsoft must be disappointed since the developers, some of them more used to technologies like PHP and Ruby, said how impressed they were with the framework and Visual Studio. The poor connectivity was a shame, and a bad slip-up for a web application conference. Even the speakers had to work mostly offline – cloud devotees beware.

Ryan Carson at the Future of Web Apps London, 2009

FOWA has been at London Excel recently, but this event was back to its earlier venue of Kensington Town Hall, more crowded but a better atmosphere and easier to get to. I suspect a little downsizing, but much prefer it. Organizer Ryan Carson has his heart set on enabling start-ups, proffering business advice and uniting developers, designers and money folk, though many attendees are not in the start-up category at all. When revealing the results of a survey showing that many web app hopefuls had less then 1000 site visitors a month he shook his head despairingly “you’re never gonna build a business on that kind of traffic”.

Carson has excellent contacts and the day kicked off with Digg’s Kevin Rose on how to get those visitor numbers up – he should know if anyone does. Rose exceeded my expectations with tips on massaging your visitor egos, avoiding analysis paralysis, hanging round event parties to meet influencers even when you can’t afford to attend the event, and even how to hack the press.

After that the day was disappointingly low-key, at least until midday. Then we got Francisco Tolmasky from 280 North and it all changed. Tolmasky’s line is that we should use pure web technology but with the richness of desktop applications, and to enable this he’s put forward cappuccino, a JavaScript framework inspired by Apple’s Objective C and Cocoa – Cappuccino uses Objective-J. This now has a visual development tool (web-based of course) called Atlas, and in Tolmasky’s demo it looked superb. See here for more details.

The surprising twist is that after developers told Tolmasky that they (or their companies) were not willing to trust code to the web, 280 North came up with a desktop version of Atlas with the added ability to create desktop applications as well. I am not clear about all the runtime details, though it no doubt involves webkit, but Tolmasky’s differentiator versus alternatives like Java or Adobe AIR is that Atlas uses only web APIs.

We heard a lot at FOWA about social media, how to use it for marketing, and how to integrate it into applications. Cat Lee from Facebook gave us a breathless presentation on how simple it is to hook into Facebook Connect. It was OK but it was a sales pitch, and that never goes down well at FOWA. 

The later afternoon sessions were excellent. Bruce Lawson of Opera gave us an entertaining overview of how HTML 5 would make life easier for developers. There was nothing new here, but nevertheless a revealing moment. He showed some rich media working in HTML 5 and made the comment, jabbing at Adobe Flash and Microsoft Silverlight, that the web was too important to place control in the hands of any one vendor. A loud and spontaneous cheer went up.

This was echoed later when Aza Raskin of Mozilla gave us a browser-centric view of social media, suggesting that the browser could broker our “social graph” by integrating with multiple identity providers. Raskin’s line: social media is too important to be in the hands of any one vendor.

The Guardian’s Chris Thorpe gave a bold presentation about how the Guardian wants to embed itself in the web through its open platform. Like most print media, the Guardian has many challenges around its future business model (disclaimer: I write for the Guardian from time to time); but Thorpe’s presentation shows that his newspaper is coming up with an intelligent response, promoting interaction and building out into the wider web rather than erecting paywalls. Having said that, maybe the Guardian will try other business models too; it is a journey into the unknown.

Overall a day for social media and the open web, and a good antidote to the more vendor-centric conferences at which I often find myself. Next week, for example, it is the Flash-centric Adobe MAX; and having heard very little about Flash at FOWA that will make an interesting contrast.

Flash spell check developer upset by competition from Adobe Squiggly

Grant Skinner is the developer of Spelling Plus Library, a spell checking engine for Flex, Flash and AIR. He is displeased that Adobe has now released Squiggly on Adobe Labs – a free component that does the same kind of thing. Skinner refers to the general lack of commercial Flash components:

One of the things that the Flash world really lacks is a strong commercial component marketplace. We have a thriving OSS culture, which is awesome, but while it is very prolific it rarely creates highly reliable, documented, and well-supported libraries. It’s a weakness of the platform, especially when you look at the hundreds or thousands of enterprise class commercial components available for languages like Java or C#.

It is an interesting point. I have always found it intriguing that the commercial component market is so much dominated by Microsoft, thanks perhaps to its early success with VBX and then ActiveX controls for Visual Basic. Despite the maturity of Flash and its popularity among developers, I can more easily name companies with commercial Silverlight components than Flash equivalents – companies like Devexpress, Infragistics, ComponentOne, and Telerik.

Skinner is therefore upset that Adobe has picked a spell checker for its free offering:

When Adobe spends a large amount of resources building a spelling component that directly competes with one of the few successful commercial components in the Flash world, it frustrates me.

though I imagine the impact on his sales is a large factor in his reaction.

The truth is that component vendors always have to play this game of trying to stay ahead of what developers can get for free, either from open source or from what is bundled into the core SDK.

Note that Intel’s just-announced AppDeveloper program for Atom netbooks includes a component marketplace for AIR. I am not sure how significant it will be, but it is another outlet for Flash component vendors.