Category Archives: adobe

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: ,,,,

Adobe uses Amazon platform for cloud LiveCycle ES2

Just spotted this from today’s Adobe’s LiveCycle ES2 announcement:

Adobe is also announcing the ability for enterprise customers to deploy LiveCycle ES2 as fully managed production instances in the cloud, with 24×7 monitoring and support from Adobe, including product upgrades. LiveCycle ES2 preconfigured instances will be hosted in the Amazon Web Services cloud computing environment.

This is neat: Amazon’s Elastic Compute Cloud handles the infrastructure, but customers get fully supported hosted services from Adobe.

Maintaining a global infrastructure for high-volume cloud services is hugely expensive, which restricts it to a few very large companies. Using Amazon removes that requirement at a stroke. I wonder if Adobe also uses Amazon for Acrobat.com – hosted conferencing and document-based collaboration – or plans to do so?

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: ,,,

Book review: Web 2.0 Architectures

This is an excellent read, though it was not what I expected from the title. It is written by three people who are always forthright, sharp and insightful, and who live on the Web: James Governor, Dion Hinchcliffe and Duane Nickull. Nickull works for Adobe, and the book labelled as part of the Adobe Developer Library, but don’t let that put you off if you are a Java guy, or a PHP developer, or a Microsoft Platform person: this is about concepts and patterns, not specific products.

So why was it not what I expected? Well, I thought it might focus on the challenge of developing highly distributed applications, looking at what it takes to make such applications reliable, performant and scalable. I know even from my own dabblings that decisions about where to locate different pieces of logic and handling things such as authentication, transactions and security are tough problems with which many of us need help. However, this title rarely descends to that level of detail – though it is a little unpredictable in that respect. The authors do find space, for example, for several pages on common mistakes in designing web forms, reflecting I imagine their level of frustration at how often they encounter them. Inconsistent, yes; but forgivable.

What you do find is detailed and often brilliant attention to the definition of terms. What is architecture? What is a model? What is a pattern? What is a Mashup? What is a Rich Internet Application? What is Service Oriented Architecture? What is a Reference Architecture? And of course, What is Web 2.0? These discussions are pithy, illustrated with real-world examples, and convey the authors’ enthusiasm for the new era which is now upon us.

As you read the early chapters you feel that this is all leading up to something big. That’s correct, but again it might not be what you expect. In fact, this feels like an introduction to a much longer book that is yet to be written, a fault which can only be excused by the idea that it is you, not they, that have the task of writing it.

Here’s a short extract from a section called The Timeless Way of Building Software: Inspiration for the next generation of Web Software:

Take a look at some of the great web software, such as Google’s search page, Flickr, or Delicious. They all have that unique yet unhurried grace that comes from perfect ease and natural balance. But what do they have in common exactly? They are beautiful, ordered and harmonious. But especially, and what strikes to the heart, is that they live. They are the perfect blend of logic and emotion, of the machine and the human experience, intrinsically intertwined and symbiotically embracing each other.

If you find this excessively rhapsodic you will probably not like this book. Note the title though: this is a Web 2.0 book as well as an architecture book; and a couple of pages on from the above quote we learn the significance of that:

…this timeless way of software architecture represents a more complete reconceptualization of what we thought we knew. We can give this place, where common sense and logic collide with humanity and society, a name.

We call that place Web 2.0.

And that is pretty much how it ends.

Overall it’s a great read, written I suspect in haste, accounting for the odd sloppy phrase or two, but always fluent and enjoyable. Recommended for those who are thoughtful about what it means to do software today.

View on Amazon.com: Web 2.0 Architectures: What entrepreneurs and information architects need to know

View on Amazon.co.uk: Web 2.0 Architectures: What entrepreneurs and information architects need to know

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.

Native API coming to Adobe AIR 2.0

Adobe’s Mike Chambers has revealed a new feature in AIR 2.0, the desktop runtime based on Flash.

At the Flash on the Beach conference in Brighton, he showed the NativeProcess API. You can “call and communicate” with external applications.

There are several restrictions, for security reasons. The application must be distributed as a native installer, not as an AIR download, and it cannot execute applications within its own directory.

Another new feature is that you can also open the default application for a specified file. For example, you could have your application generate a spreadsheet and open it in Excel on Windows or Mac (if Excel is the default handler for a spreadsheet). This feature works in any AIR application, though again the file cannot be within the application directory. There is also a blacklist of disallowed file types.

I am sure there will be debate about the security implications; it will be interesting to examine the new capabilities in more detail.

This strikes me as a useful new feature, significantly extending the capabilities of an AIR application.

More info in Mike Chamber’s slide deck; and comments from Marc Hibbins who says:

I’m sure this is would have been the most requested feature by far – that AIR should be able to launch files in their native apps and run other applications or processes securely.

Technorati Tags: ,,

Intel gets into the App Store game – but where does Silverlight fit in?

Intel has announced its Atom Developer Program including a new app store. The idea is to encourage a flow of applications that are well suited to netbooks, rather than general desktop applications that tend to get pressed into service because they are there, but may not be well suited to the smaller screen and more limited resources typical of netbooks versus full laptops. No doubt Intel has its eye on Apple’s successful iPhone App Store, which enhances sales of the hardware as well as providing a ready-made sales channel for independent software vendors, and wants to do the same for netbooks.

In order to participate as a developer, you have to sign up for the program, which will cost $99 annually though currently it is free. An interesting twist is that the developer program is a component market as well as an application market. Write a cool component, and you can get paid whenever any application that uses your component is sold. Intel handles all the business details, for a cut of course.

Intel is supporting two operating systems, Windows and Moblin, Intel’s Linux distribution. Your applications must be one of the following:

  • Native Windows (I am not sure whether .NET is allowed)
  • Native Moblin
  • Java
  • Adobe AIR

A puzzle is that Intel’s press release makes several references to Silverlight as a cross-platform runtime; yet although there is a Linux version of Silverlight, called Moonlight, there isn’t any exact equivalent to AIR for desktop Silverlight and I am not clear how Silverlight fits in any of the categories above. I may be reading too much into this; but perhaps all will be explained when Silverlight 4 is unveiled at PDC in November? Here’s what the press release says:

“Using Silverlight’s cross-device, cross-browser, cross-platform technology, developers will be able to write applications once and have them run on Windows and Moblin devices – expanding the reach of Silverlight applications to more consumers, regardless of whether the device they’re using is a PC, TV or phone,” said Ian Ellison Taylor, general manager, Microsoft Client Platforms and Tools.

Note that despite the above quote, Moonlight 2.0 is still in beta, and no current phones include the Silverlight runtime.

Apps must be delivered in one of the following forms:

  • .msi (for Windows*)
  • .jar (for Java*)
  • .air (for Adobe® AIR*)
  • .deb (for Debian Mobilin/Linux)
  • .rpm (for RedHat* Linux)

All applications in the store are subject to Intel’s approval (called validation):

The validation process checks your code for suitability for the Developer Program, licensing and legal issues, and some basic functionality.

Here’s the checklist. Note this requirement:

Runtimes and technologies the application can support can only be any of the following: Moblin* Native, Windows* Native, Adobe AIR*, Java FX *, and Microsoft* Silverlight*.

Hmm, Silverlight again.

Intel gets 30% of your revenue. You can also market components and if your application uses a paid-for component a share of the revenue will be paid to the component vendor. Free applications and components are also permitted.

I really like the checklist – I wish all desktop applications conformed to some of the requirements. Like this one:

The application will completely uninstall when desired, and leave no garbage files behind.

are great to read.

You can sign up here, though the SDK is not yet available.

One curious facet of the program is that although it is specifically for the Atom, in most cases your application will likely run fine on other processors. I am not sure if Intel will do anything to ensure that only Atom-powered computers use the store.

In May I posted that we should get ready for more app stores. This is really coming to pass now, with Adobe’s offering which I mentioned yesterday, Nokia’s Ovi, as well as others for Android, Palm Pre and so on.

Adobe’s new social platform for ads and apps

Adobe has announced the distribution side of its Flash Platform Services. The press release heading is quite a mouthful:

New Distribution Service Provides Web Application Sharing, Promotion, Measuring and Monetization across Desktops and Mobile Platforms

and it is hard to take in at a glance exactly what the services are offering. Here’s my quick take.

A good place to start is with this article on Gigya’s site, Gigya being Adobe’s partner for this. Here you will see Gigya’s Wildfire Flash widget; it’s a working example so you can try it out on the site – the illustration below is only a bitmap though.

This widget is what Adobe calls a Share Menu in its Distribution service overview. The idea is that you as the publisher display a widget like this alongside or within your new or existing Flash applications – perhaps customized to hide the ugly embed code. Your user comes along, sees the cool application, and wants to embed the application on their own blog, Facebook page, or even on the desktop. They click one of the buttons and the widget automates as far as possible the creation of a new post on the selected service which includes the embed code for your widget or application.

Along with services like Facebook, MySpace and WordPress listed above, Wildfire supports desktop widgets such as the Vista sidebar and bookmarks on services such as FriendFeed, Digg and Twitter. In the case of a mobile app, the button would generate an SMS message that would link to the application install.

I’m not a good candidate for this kind of widget as I try to keep logged out of social services. As an experiment though, I logged into Live Spaces. I clicked the Live Spaces button which prompted me for a post title. Clicking OK then pre-populated a new post to my Spaces blog; one further click would have confirmed the post.

Creating a Share Menu

The piece that confused me at first is that the Share Menu can be either external to the application you are distributing or embedded within it. Embedding it within the app is the most powerful option, since the application can then have a “get this app” button. This allows other users to display the Share Menu and install the app for themselves. The goal, of course, is viral distribution, where apps can become popular quickly via social networks, as happened to great effect in the early days of Facebook.

You can add a share menu to your application in Flash. I installed Adobe’s extension and found a new Share Menu component in Flash CS4.

However you choose to implement it, the Share Menu always includes a partner ID which identifies the application publisher and a Code ID which identifies the application. To get these you have to sign up for Adobe’s Distribution service.

You can also add an external Share Menu using a web page editor such as Dreamweaver. This creates a generic widget customised through script arguments.

Adobe’s advertising network

So far so good, but how do you kick-start the viral distribution of your app? This is where Adobe’s ad network comes in. There are several aspects to this:

– You can pay to have your application promoted through Adobe’s network. One mechanism for this is that when a user installs some other shared application, they are prompted to install yours as well.

– You can monetize your applications by hosting a shared install, the other side of the above.

– You can embed other advertising within your application and get paid for it

These processes are managed using Distribution Manager, an AIR application. You can use this both as an advertiser or as a publisher; indeed, you may well have both roles.

Making an application shareable is free, but if you want to promote it the cost is from $1 per install; if you host ads you can expect around $5.00 per thousand views (CPM).

The Distribution Manager also lets you track application install and usage.

More Flash Platform Services

There’s more to come; as Ryan Stewart explains. The Flash Collaboration Service is already in beta, and provides everything for sharing and communication including voice over IP, webcam, file sharing, chat, data exchange and more. There’s also a social piece which will integrate with social networks like Facebook and MySpace – given the link with Gigya, maybe a variant of the Gigya Socialize API, which “aggregates authentication and social APIs from Facebook Connect, MySpace ID, Twitter, Google, Yahoo, and AOL”?

Finally, a brief comment. I think Adobe is serious about this as one way of expanding its business model beyond tools, which I believe it has to do. It strikes me as an interesting platform, even though personally I am averse to widget proliferation and wary of the privacy implications of highly tracked applications. Serge Jespers remarks about his MAX widget:

The service also allows you to monetize your application and also track just about everything a user does with the app

perhaps not realising what a red light that is to some of us. Note however that all apps in Adobe’s distribution service are subject to approval.

Overall it’s an interesting platform to watch. In a nutshell: applications that install themselves (almost) and with built-in cross-promotion – but not quite (we hope) actual viruses.

.