Category Archives: flash

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

The desktop versus web application debate

I posted a piece entitled Desktop applications are dead which attracted the following comment:

Web apps have plenty of cons too. You seem to only be looking to the Pros.

There’s something in it; though the article is a little more nuanced than its title. There’s also another debate to be had around the question of what a web application really is. If thousands of lines of JavaScript are executing on the client, is it a web app? If it is running in Flash or Silverlight is it a web app? If it is running out of browser (Adobe AIR, Silverlight, JavaFX) has it crossed the border to become a desktop app? This last case is particularly interesting, since although something like AIR should probably be categorised as desktop, its programming model is normally that of a web application with an offline cache.

The semantic discussion can distract from the real issues. The ascendancy of web applications has a lot to teach software developers. The enforced simplicity, even crudeness, in the user interface of early web applications brought some surprising benefits: users generally liked the minimalist approach and ease of navigation. The page model, intended for documents, turns out to work for applications as well.

Another big lesson: users value zero-install extremely highly. The routine of go to the web page – run the app is easy to understand. Some find it easier than finding an application shortcut in the Windows Start menu, and that is after the potentially painful business of running setup.

Still, I am slipping into reiterating the advantages of web apps. What about their cons? What about the pros of desktop applications?

I still use desktop applications a great deal: Microsoft Office, Live Writer, Foobar, Visual Studio, Eclipse, all the things I listed in 10 Mac alternatives to Windows utilities. Doesn’t that prove that desktop applications are still important?

It does; but there is an important qualification. None of these are line of business applications of the type which occupy so much of the time of corporate software developers and contractors.

The real point: if there is a discussion about whether a particular project should be implemented as a desktop or web application, it is not the web application advocates who need to make their case. Rather, it is the desktop advocates who need to show the particular reasons (which may be good ones) why only a traditional local install will do.

It is also important to follow the curve on the graph. The list of things that can only be done by desktop applications gets shorter with every upgrade to the web platform – whether you think of that as HTML/AJAX, Adobe Flash, Microsoft Silverlight, or [insert your favourite web technology].

Ten years ago, a web version of Photoshop seemed an unlikely prospect. Today, here it is. Office and email is going the same way, even if it is not quite ready for all of us; Microsoft will have to accept that or lose its business.

I don’t follow Rich Internet Applications with such interest because they are cool, but because they are the future of the client – and increasingly the present as well.

Adobe to announce Flash, Creative Suite roadmaps at MAX 2009

It looks like Adobe has some significant announcements planned for its MAX 2009 [warning: auto-play video] conference on October 4-7. The sessions that intrigue me most are the roadmaps: these include:

  • Roadmap: Flash Platform Runtimes
  • Roadmap: Flash Platform Servers and Services
  • Roadmap: Flash Platform Tooling and Framework – this session is to be given by Greg DeMichillie, now director of product management for Developer Tools. DeMichillie is ex-Microsoft and used to work on Visual Studio in the early days of C# and Visual J++, though he left in 2001.
  • Roadmap: Web Professional Tools and Services in Creative Suite
  • What’s ahead for Flash Catalyst
  • What’s coming in Adobe AIR 2

Looks like a lot to take in; it will be fascinating to see more detail about where Adobe is taking its platform.

BBC trying out HTML 5, video element

The BBC has an HTML 5 demonstration using the video element. The video itself is encoded in both Ogg and H.264. In the screenshot below I have just clicked on a navigation image to jump to a specific place in the video. The demonstration is meant to work in Firefox, Safari and Chrome, though for me it only ran in Firefox (3.5).

There is a detailed comment from the BBC’s Sam Dutton on why the proof of concept was put together here. There is an interesting remark on why the BBC is interested in this approach, which does not require a plugin like Adobe Flash or Microsoft Silverlight:

Flash and other Rich Internet Applications (RIAs) provide something like this already via timeline scripting, but RIAs are ‘black boxes’, using compilers and obfuscators to hide code and data: great if you want to protect intellectual property, whereas we needed to provide a mechanism whereby data and the code acting on it were open and accessible. HTML 5 and the jQuery JavaScript framework gave us the tools we needed without requiring extra plugins or proprietary software.

From a technical perspective, Dutton remarks that the HTML 5 solution is more efficient if you want to synchronize other elements with the playing video:

The HTML 5 audio and video elements remove the need for player plugins, work like any other HTML element in terms of styling and positioning, and standardise the programming interface for playback control. Less well known is that these elements emit a timeupdate event (at a frequency adjusted to fit available processing and memory) which removes the need to poll a player for the current time position. This makes media scripting far more efficient, since there is no need to run a loop or use setTimeout. In tests run on several machines we found that timeupdate events are emitted regularly and frequently (particularly in Firefox), whereas polling a media player for current video time is unreliable.

Dutton adds:

… it’s early days for us on this and there are a number of serious challenges before this becomes anything near mainstream – if ever.

The BBC is an influential site and its experiments will attract keen interest from those watching the evolution of web video.

Google buys On2, plans to integrate video into web platform

Google is buying On2 Technologies, a video technology company. Although On2 is not a household name, it is well-known to Adobe Flash developers since its codec is used in Flash Player 8; it is also in JavaFX. Flash has since moved to H.264 for high definition though the older codec is still supported.

Why does Google want a video compression company? This is from the press release:

Today video is an essential part of the web experience, and we believe high-quality video compression technology should be a part of the web platform," said Sundar Pichai, Vice President, Product Management, Google.

That could mean any number of things; but it does imply that Google does not intend to rely on Flash for its video content. The acquisition will re-open the debate about the video element in HTML 5, which has been left without a codec because of lack of consensus about what might be suitable and affordable. See Ian Hickson’s post from June 2009:

After an inordinate amount of discussions, both in public and privately, on the situation regarding codecs for <video> and <audio> in HTML5, I have reluctantly come to the conclusion that there is no suitable codec that all vendors are willing to implement and ship.

Could Google now establish its own codec as the standard in HTML 5?

I’m guessing Google is also keen to integrate On2 technology with its communication products.

Technorati Tags: ,,,,

Morgan Stanley: why we didn’t use Silverlight for Matrix

I attended an online briefing about Morgan Stanley’s Matrix [warning: lots of Flash with sound effects], a tool for financial trading which has been written in Adobe Flex.  Adobe’s Andrew Shorten has more information here, and notes:

Matrix was developed by Morgan Stanley with user experience consultation from Adobe Professional Services and technical delivery by Lab 49 in partnership with Adobe Professional Services and others.

Unfortunately I missed the first part of the briefing thanks to streaming issues (I wasn’t alone), but things settled down after 15 minutes or so. Hishaam Mufti-Bey, Matrix founder and global director at Morgan Stanley, spoke about the application and the technology it uses. He emphasized the value of zero-install:

The technology is out of the way, no-one has a problem with running the application. It’s now about how tight our prices are, how good our content is, which is always what we wanted to have happen … we want to deliver our franchise to the client without taxing their systems, or having to get past firewall issues, or install software and IT security will get in the way and it takes months to deploy.

I couldn’t agree more. The app itself looks great, though details of how it works were sketchy, I guess for commercial reasons. We were also told little about the server side of the application. Performance is said to be good, despite what is apparently 600,000 lines of code (I’m not 100% clear if this is all Flex code running on the client):

We’ve seen up to 40 currency players running on the screen and getting up to about 400 updates a second

claimed Mufti-Bey, though he added later than lack of multi-threading support is an issue. Next, he took a pop at Microsoft’s Silverlight:

Going out to clients and not installing software, that is a major show-stopper for Silverlight. If Silverlight turned around and offered that one day, that I didn’t need to install stuff on the client’s PC, then it would be a head-to-head. Flash is on 97.7% of the world’s browsers. That was a major consideration for us.

It’s an interesting point, though I’d have thought his comments need some qualification. Flash and Silverlight are both browser plug-ins, so the install issue is similar: if the plug-in is already installed, the app will just run in the browser, but if it is not installed in the right version, the user will need to install the plug-in first. According to riastats.com Flash is up to about 74.5% for version 10 and 20.5% for version 9; I’m not sure if Matrix requires version 10, but if it does then Mufti-Bey is exaggerating a little. Matrix currently uses Flash 9 (see comments). Silverlight by contrast is on 30% for version 2 and 1% for the just-released version 3.

Installing a browser plug-in is easy for most of us, but in a locked-down corporate environment may be problematic, and there is always some percentage of installs that will be troublesome. I’ve found installing Silverlight a smooth and quick process; but undoubtedly Flash is a de-facto standard whereas Silverlight is not. Microsoft can only address this by persuading more of us to develop Silverlight apps, and using it more in its own sites and products – like the forthcoming Office 2010 web applications, for example.

Still, the need to install the Silverlight plug-in where necessary is far less burdensome than either a classic Windows setup, or a requirement for the full .Net Framework; and Microsoft has also removed the requirement to run Windows itself by supporting Intel Mac. It sounds as if Microsoft is going in the right direction, even if catching Flash is a tough challenge.

That might not be enough, according to Mufti-Bey. Asked about the importance of designer-developer workflow, he remarked:

You have to look at the people that use that technology. The design community. That’s the biggest problem that Microsoft has. The designers all carry around Apple laptops, they all use the Photosuite [sic] set of software tools. It’s like asking structural engineers to stop using CAD applications. That’s the tool that they use, and if you can’t convince them to switch away from your software suite you are going to get a limited number of designers that will use Microsoft’s toolset … if you can’t get the designers to switch, to learn a new language, then how can you possibly ever get some traction?

Well, it wasn’t the answer to the question posed, but an interesting point nevertheless. Let’s presume that he is right, and nobody will switch from Photoshop. Is it so hard for Mac-wielding designers to work with .NET developers? There must be something in it, bearing in mind the effort Microsoft has made to improve Photoshop import in Expression Blend 3.0.

Overall I would like to have heard more about the process and challenges of developing a large Flex application, and less about why not to use Silverlight, interesting topic though it is.

What next for Adobe LiveCycle ES?

Yesterday I met Adobe’s Duane Nickull for a chat about the company’s efforts in SOA. Nickull is a battle-scarred enterprise architect with a deep knowledge of SOA standards, who is now a senior technical evangelist for Adobe. He represents what I think of as the other Adobe: not the company that does things you would not believe in Photoshop, but the one that has created an end-to-end development platform with LiveCycle Enterprise Suite (plus your favourite application server) at one end, and Flex at the other.

It is an aspect of Adobe that deserves more attention. For example, this note in Anil Channapa’s What’s New in LiveCycle Data Services 3 caught my attention:

The LiveCycle Data Services 3 beta supports an acknowledge capability that enables all communications between Flex-based applications for Flash and the LiveCycle Data Services server to be guaranteed. All that you have to do is mark the LiveCycle Data Services 3 beta server destination as reliable.

I think this is huge. As Channapa goes on to note, for developers contemplating ecommerce or financial applications, this is a key feature.

I learned from Nickull that this feature is based on WS-RX and that in general we should expect more WS-* implementations to turn up in LiveCycle ES. RESTafarians will be sceptical, but I suspect this will help Adobe to make inroads into enterprise development.

That said, I do think Adobe has issues positioning and promoting LiveCycle ES. The more glitzy Creative Suite tends to grab all the attention, and indeed accounts for by far the largest slice of Adobe’s revenue. When I attended MAX in Milan last year, I don’t recall any mention for LiveCycle in the keynotes; it was one of those things you had to discover, though there were some excellent sessions on the subject.

I think Adobe should push LiveCycle ES harder, particularly as a business model based mainly on selling a huge suite of design tools strikes me as precarious. Adobe is making a start and has announced a LiveCycle@MAX bundle for MAX 2009 [warning: autoplay sound] in early October.

The LiveCycle ES brand encompasses what used to be Macromedia’s Flex Data Services as well as Adobe’s PDF-oriented software for managing workflow and data gathering. If you look at Adobe’s LiveCycle ES page, it all seems PDF-centric and Data Services is hidden away as the last item under Data capture.

In reality LiveCycle Data Services ES has a lot to offer even if you don’t care a bean about PDF, but that is a fact that is easy to miss. Another positioning issue. Adobe has been over-zealous in its PDF-with-everything strategy.

I also asked Nickull how Acrobat.com fits with with Adobe’s SOA strategy. He said that a move to application hosting would be a logical one, though he implied that it would be geared towards SMEs.

Host your Java application on Adobe’s servers, with built-in LiveCycle Data Services for your Flex client? That makes sense to me.

Technorati Tags: ,,,

Adobe “Committed to bringing Flash Player to the iPhone”

Adobe CEO commented during yesterday’s earnings call:

We are also equally committed to bringing the Flash Player to the iPhone, so now we do have a Flash Player 10 version for smartphones. We continue to work with Apple. We need more APIs and cooperation to bring the capabilities of Flash to the iPhone and we think it’s in both of our best interests to make sure that 85% of the top 100 websites that use Flash, that that experience is available to the Apple customers.

The real question is not whether Adobe is committed to this, but whether Apple will allow it. I think the stake are high for Adobe, which is why I have such keen interest. The longer the iPhone remains Flash-free, the more those “85% of the top 100 websites” will question their use of Flash and wonder if they should try to migrate towards more universal HTML and JavaScript technology. On the other hand, if Adobe gets its stuff on iPhone it will give it a further advantage over rival plug-ins like Microsoft’s Silverlight.

I mean, if you build your entire cloud platform around the Flash client, what do you do if the key mobile device out there refuses to support it?

Transcript from Seeking Alpha.

Technorati Tags: ,,,

Adobe’s Flex Builder to Flash Builder name change does not go far enough

As expected, Adobe is strengthening its “Flash Platform” strategy by renaming the forthcoming Flex Builder 4 (codename Gumbo) to Flash Builder 4:

This change will provide better naming consistency for the Flash family of tools and position Flash Builder as the development tool for the Flash Platform.

This is only a name change, nothing more. Flash Builder will still be based on Eclipse, and the original Flash Professional IDE, also part of Creative Suite, will continue as before.

My question: why doesn’t Adobe go further in clarifying and promoting its Flash brand? The current situation is still confusing:

Flash Builder vs Flash Professional: the names give you no clue about the difference. Why not Flash Developer and Flash Designer?

Adobe AIR (Adobe Integrated Runtime): non-techie people do not realise this has anything to do with Flash. Flash Desktop Runtime would be better, though I guess that would not reflect the option for HTML applications. It would do a lot to promote Flash as more than just a browser plug-in.

Flex SDK: why retain the Flex brand at all? I presume the name was originally a contraction of Flash and XML, but since it is a language that compiles to Flash, this could just be called the Flash SDK.

Name changes themselves are confusing of course, so I’m surprised that Adobe is not being more thorough now rather than risking more piecemeal changes later.