Category Archives: flash

Apple locks down its platform just a little bit more

How much money is enough? “Just a little bit more”, said J D Rockefeller; and Apple is taking a similar line with respect to control of its mobile platform. It is no longer enough that all apps are approved by Apple, sold by Apple, and that a slice of any sales goes to Apple. It now wants to control how you make that app as well, stipulating the tools you use and prohibiting use of others:

Applications must be originally written in Objective-C, C, C++, or JavaScript as executed by the iPhone OS WebKit engine.

On the face of it, bad news for third-party companies like Adobe, whose Flash to iPhone compiler is released tomorrow, Novell’s Monotouch, or Unity3D:

JavaScript and C# scripts are compiled to native ARM assembler code during the build process. This gives an average performance increase of 20-40 times over interpreted languages.

What is interesting is not only the issue itself, but the way debate is being conducted. I don’t know how Novell is getting on in “reaching out to Apple” concerning Monotouch, but as far as I can tell Apple introduced the restriction by revising a clause in a contract shown only to paid-up iPhone developers and possibly under NDA, then seeing if anyone would notice. Now that sparks are flying, CEO Steve Jobs is participating by one-line emails to a blogger referencing a post by another blogger, John Gruber.

Further, his responses do not altogether make sense. Gruber’s post is long – does Jobs agree with all of it? Gruber says that Apple wants the lock-in:

So what Apple does not want is for some other company to establish a de facto standard software platform on top of Cocoa Touch. Not Adobe’s Flash. Not .NET (through MonoTouch). If that were to happen, there’s no lock-in advantage.

Probably true, but not the usual PR message, as lock-in is bad for customers. How much are inkjet cartridges? I suspect Jobs was thinking more of this part:

Cross-platform software toolkits have never — ever — produced top-notch native apps for Apple platforms. Not for the classic Mac OS, not for Mac OS X, and not for iPhone OS. Such apps generally have been downright crummy.

As it happens, I think Gruber, and by extension Jobs, is wrong about this; though it all depends what you mean by the output of a cross-platform toolkit. Firefox? NeoOffice? WebKit, as found in Safari? Jobs says:

We’ve been there before, and intermediate layers between the platform and the developer ultimately produces sub-standard apps and hinders the progress of the platform.

Well, we know he does not like Java – “this big heavyweight ball and chain” – but there are many approaches to cross-platform. In fact, I’m not even sure whether Jobs means technical layers or political layers. As Gruber says:

Consider a world where some other company’s cross-platform toolkit proved wildly popular. Then Apple releases major new features to iPhone OS, and that other company’s toolkit is slow to adopt them. At that point, it’s the other company that controls when third-party apps can make use of these features.

The point is: we don’t know what Jobs means. We might not know until apps hit the app store and are approved or not approved. It is a poor way to treat third parties who are investing in your platform; and that was one part of the reason for my initial reaction: it stinks.

The other reason is that I enjoy the freedom a personal computer gives you, to install what you want, from whomever you want, and the creativity that this inspires. At the same time, I can see the problems this has caused, for security, for technical stability, and for user experience. Personal computing seems to be transitioning to a model that gives us less control over the devices we use, and which makes a few privileged intermediaries more powerful and wealthy than anything we have seen before.

In the end, it is Apple’s platform. Apple does not yet monopolise the market – though my local supermarket has iPods in all sorts of colours but no other portable music player on sale – and the short answer is that if you don’t like the terms, don’t buy (or develop for) the product.

As Apple’s market share grows, the acceptability of its terms will lessen, and protests will grow louder, just as they did for Microsoft – though I hesitate to make that comparison because of the many differences between the two companies and their business models. Having said which, looking at Zune and Windows Phone 7, Microsoft seems to like Apple’s business model enough to imitate it.

Apple’s impact on Flash penetration

While checking the latest figures from riastats for an article, I noticed something that surprised me. The installed figures for Adobe Flash, while still over 96%, seemed a shade down on what they used to be. I could think of only one reason for that – Apple. I switched the operating system to Mac OS X and saw this:

image

That’s 14.18% of OS X users who do not have Flash installed. By contrast, only 3.98% of Linux users show “Not detected”. I am presuming that OS X includes iPhone and iPad, on which Flash is unavailable.

Apple banning Flash applications from iPhone 4.0? That stinks.

John Gruber reports on a new clause in the iPhone 4.0 SDK, to be agreed by developers before downloading:

3.3.1 — Applications may only use Documented APIs in the manner prescribed by Apple and must not use or call any private APIs. Applications must be originally written in Objective-C, C, C++, or JavaScript as executed by the iPhone OS WebKit engine, and only code written in C, C++, and Objective-C may compile and directly link against the Documented APIs (e.g., Applications that link to Documented APIs through an intermediary translation or compatibility layer or tool are prohibited).

Gruber interprets this as prohibiting Flash applications compiled to iPhone, as well as other development tools such as Monotouch. Flash compilation for iPhone is a feature of Creative Suite 5, to be launched on Monday 12th April.

This raises several questions, including:

1. Why? Why should Apple care what development tool is used, provided it behaves correctly? Applications are still subject to Apple’s approval,  distributed through the App Store, and if commercial are also subject to Apple’s fee.

2. Is this anti-competitive? I guess this depends on the answer to (1) above.

Either way, it stinks. It especially stinks if Apple gave no notice to companies such as Adobe and Novell; but it stinks anyway.

That said, it’s a beta SDK and a beta agreement so … it could change.

If the clause is intended, enforced and remains in the production SDK, expect fireworks. Given that the designer community loves both Apple and Adobe, there will be some stressed folk out there; they will make a lot of noise.

I have asked both Apple and Adobe for comment, and will report back on the responses.

Update: Adobe has tweeted:

We are looking into the new SDK language. We continue to develop Packager for iPhone OS which will debut in Flash #CS5

No Flash on iPad? No problem – we’ll redesign the site says NPR and others

It is fascinating to see the impact of Apple’s hostility to Adobe Flash on iPhone and now iPad.

On the one hand, it’s a gift to rival vendors such as Google, which is bundling Flash into Chrome (a contentious decision judging by the comments), and Microsoft, which has promised Flash support in Windows Phone 7, though not in the first release. These vendors can claim better Internet support than Apple, thanks to the large amount of Flash content, games and applications on the Web.

On the other hand, I’ve not seen many web sites that encourage their users not to use iPhone or iPad. Rather, those with the resources to do so are simply making their content available in ways that are iPhone/iPad compatible. There are two obvious ways to do so: either create an App, or make a Flash-free web site.

One of my favourite music sites is NPR, which is a great source of concerts and exclusive sessions, and which uses Flash for streaming. NPR’s research told it that five percent of its 26 million weekly listeners were likely to purchase an iPad. I was also intrigued to note that these purchasers consider it more of a “living space” device than something they take everywhere. Either way, they wanted to continue consuming NPR’s content.

NPR responded by taking both of the options mentioned above: a redesigned web site, optimised for touch control as well as eliminating Flash, and an iPad app that builds on an existing iPhone app.

We’re excited about this latest innovation because we think it brings us closer to capturing NPR’s unique identity on a digital platform. The iPad’s casual touch-screen navigation seems more conducive to immersive reading than even the lightest laptops. And it opens up new opportunities for casual listening.

The worrying thought for Adobe is that sites such as NPR might decide to use the Flash-free site for all browsers, instead of just those on an iPad, to save on duplicate work.

Adobe’s decision to enable native compilation to iPhone and iPad in the forthcoming Creative Suite 5 is looking increasingly significant.

Update: James Governor on Twitter says awesome! the new IE6! Good point, though how you see this depends on what you think of Flash in the first place.

Stephan Richter observes that “Judging by the comments, not many NPR users are happy that effort is wasted on supporting 5% of potential users.” There’s certainly evidence of resentment at Apple users getting preferential resources, though the fact that Apple purchasers pretty much match the dream profile for many advertisers may be a factor.

Adobe news: Flash Builder 4, Creative Suite 5, quarterly results

Lots of Adobe news this week.

First, the release of Flash Builder 4. It seems a long time ago that I was looking at the first preview of code-name Gumbo; it’s good to see this finally released. Since it is Eclipse-based, it looks similar to to Flex Builder 3.0; but under the covers there is the new Flex 4 SDK with the Spark component architecture. The design tools have been revamped, and a time-saving feature is that you can now generate an event handler with one click. Flash Builder 4 also has built-in unit testing with FlexUnit, which is a big deal for those enlightened folk who do test-driven development.

Adobe has also worked hard on database connectivity. Flash Builder 4 will generate wrapper code for a variety of data sources, including HTTP and REST, PHP, SOAP, and Adobe’s LiveCycle Data Services middleware.

image

There is a new data/services panel that shows all the available sources, with drag-and-drop data binding, batch updates, and other handy features.

There are a few downsides to Flash Builder 4. ActionScript feels dated if you have been playing with something like C# 4.0, soon to be released as part of Microsoft’s Visual Studio 2010. I’ve also heard complaints that equivalent projects built with Flex are larger than equivalents built with the Flash IDE. The naming is puzzling; we now have to distinguish between the Flash IDE and the Flash Builder IDE, which are completely different products, but the SDK for code-centric development is still called Flex. There is no support yet for AIR 2.0, the latest version of the desktop runtime; nor for the much-hyped iPhone app development. Patience is called for, I guess.

More information on Flex and Flash Builder here.

The next big product launch from Adobe will be Creative Suite 5, for which a launch date of Monday, 12th April has been announced. You can sign up for an online launch event and see some sneak peek videos here.

Finally, Adobe released quarterly financial figures today. The company says they are strong results; revenue is 9.1% higher than last year and GAAP earnings are positive (unlike the last quarter). However, looking at the investor datasheet [PDF] I noticed that new analytics acquisition Omniture now accounts for 10% of revenue; if you deduct that from the increase it does not look so good. Still, a profit is a profit, and the quarter before a major update to CS 5.0 may be under par as users wait for the new release,  so overall it does not look too bad.  The Q1 Earnings Call is worth looking at if only for its nice indexing; I wish all online videos worked like this.

One questioner asked about HTML 5 – “how quickly can you provide support when it comes”? An intriguing question. I suspect it reflects more on the publicity around Flash vs HTML than on the progress of the HTML 5 standard itself, which is coming in fits and starts. “The reality is that it’s a fragmented standard, but we will continue to support it”, was the answer from CEO Shantanu Narayen, though he added a plug for the “benefits of our runtime, which is Flash”.

Flash 10.1 mobile roadmap confusion, Windows phone support far off

When is the right moment to buy a mobile phone? Usually the answer is not quite yet; and that seems to the case if you want to be sure of support for Flash Player 10.1, the first full version of the runtime to run on mobile devices. Adobe recently struck off support for Windows Mobile in its entirety. Adobe’s Antonio Flores said on the company’s forums:

As for WinMo, we have made the tough decision to defer support for that platform until WinMo7.  This is due to the fact that WinMo6.5 does not support some of the critical APIs that we need.

“Defer support” is not straight talking. Windows Phone 7 is by all accounts very different from Windows Mobile and application compatibility is in question. In addition, the indications so far are that Windows Phone 7 primarily targets consumers in its first release, suggesting that Windows Mobile devices may continue in parallel for a while, to support business applications built for the platform. It is disappointing that Adobe has abandoned its previously announced support; and the story about critical APIs looks suspect, bearing in mind that Flash 10.1 on Windows Mobile demos have already been shown.

As for Flash on Windows Phone 7, that too looks some way off. Microsoft says it is not opposed to Flash, but that it will not feature in the first release.

There may also be politics here. Microsoft Silverlight competes with Flash, and it looks as if Silverlight is to some extent the development platform for Windows Phone 7. While Flash on Windows Phone 7 would be a selling point for the device, I doubt Microsoft likes the idea of developers choosing Adobe’s platform instead of Silverlight. Equally, I doubt it would break Adobe’s heart if Windows Phone 7 wasn’t much of a success, and if lack of Flash puts off customers, that cannot be helped.

In other words, both companies may want to make haste slowly when it comes to Flash on Windows Phone 7.

When it talks about Apple devices, Adobe is the even-handed runtime vendor doing everything it can to make its platform ubiquitous. However, the more it succeeds in its aim, the more power it has when it comes to less favoured platforms. This is a problem inherent to a platform where all the implementations come from a single vendor.

Flash developers are now mobile developers

Adobe’s announcement of AIR for mobile today at the Mobile World Congress means that any Flash or Flex developer can compile an AIR application that will run on a supported mobile device. I understand that AIR for mobile is a subset of desktop AIR, but does include Flash Player 10.1, local database support with SQLite, and access to local storage, so it is not lacking in capability. Apparently it will be possible to have a single .air file that will run across desktop and devices, perhaps with conditional code to account for differences in device capability. Some features, such as multitouch and accelerometer support, are more likely to be found on a mobile device than on a desktop, though things like screen size and available storage will be more constrained.

Until now it has been Java that comes closest to providing a common runtime across desktop and devices. Flash promises a more consistent runtime as well as stronger multimedia and graphics capability. Thanks to Apple, the app store concept is now well established and AIR applications fit well with this model, though not exclusively so. It will also be possible to deploy AIR applications from your own web site. I think there will be considerable interest and take-up for AIR on mobile.

Initial support will be for Google’s Android OS, with others to follow – with the exception so far being Apple.

This is where it gets interesting. Whereas Flash in the browser is blocked on Apple iPhone and (as far as we know so far) iPad, Adobe has a native compilation option for Flash applications targeting these devices, preserving some kind of deployment story. Clearly from Adobe’s perspective it would be better and easier if Apple allowed the AIR runtime onto the device. It’s less clear that Apple device users are really losing out though, and there is even an argument that they benefit, if you think that native code is a better solution for a mobile device.

In other words, the introduction of AIR for mobile does not really put any pressure on Apple, since Adobe has already come up with a good alternative. There may be some indirect pressure, since growing use of the Flash runtime outside the browser may also increase its significance within the browser.

A lot hinges on the quality of the mobile AIR runtime, particularly in respect of memory usage, which has tended to be greedy in desktop AIR.

Pros and cons of Adobe’s LiveCycle services in the cloud

Adobe has fully released LiveCycle Managed Services, offering a hosted platform for LiveCycle applications. The software is configured and managed by Adobe, but runs on Amazon’s EC2 (Elastic Compute Cloud) virtual servers.

LiveCycle is a suite of applications which I think of as two things combined. On the one hand, it forms a server platform for business process or workflow applications based on Adobe PDF forms and documents. On the other hand, it provides data services for Rich Internet Applications, usually but not necessarily to client applications on the Flash runtime, either in or out of the browser. It is a little confusing, but these two aspects are essentially the old Adobe Enterprise platform merged with Macromedia’s work in support of Flash, combined into one suite after Adobe’s takeover of Macromedia in 2005.

The usual arguments in favour of hosted services apply and this is a smart move from Adobe. Still, customers are currently forced to use Amazon for the actual virtual servers, even though others such as Rackspace Cloud Servers are substantially cheaper than Amazon EC2. Is that a problem? According to Adobe’s John Carione, senior enterprise product marketing manager at Adobe, “when we were evaluating vendors, we think that one of the areas Amazon excels in is around security.” I noticed that the security topic also occupies around one-third of this introductory video, suggesting that this remains a significant barrier to adoption for many potential customers.

So how will managed LiveCycle work? “We’re providing a fully managed service, and part of that is going to be delivered with what we’re calling  the Adobe Network Operations Center … which is going to provide 24×7 monitoring of the applications, backup and recovery, upgrades. They’ll be one contact at Adobe to talk to about everything,” says Carione. Apparently the Network Operations Center is based on a piece aquired with Omniture last year. Ominiture was a web analytics business which was based on hosted applications and services; maybe that was an important factor driving the acquisition.

When I asked Carione about ease of scaling, I got a slightly defensive answer. “This is a v1, we have the opportunity for customers to buy additional instances. In the future we’ll have more of that dynamic scaling.” Another issue is integrating with on-premise resources such as databases and directory services, which Carione says is a matter for business integrators; in other words, a significant challenge. And what if Amazon goes down? Carione did not answer directly, but said that 99.5% uptime is guaranteed.

Adobe Flash vs Apple iPad: RIA in the balance

Adobe evangelist Lee Brimelow has posted some images of well-known sites that break if Adobe Flash is not enabled. His point: if Apple’s iPad does not support Flash, none of these sites will work correctly.

While true in the short term, I do not think this is an effective line of argument. 

Let’s presume that you run one of these Flash-dependent sites. Now along comes a popular computing device that no longer displays Flash content. It’s already happened with the iPhone; but iPad is more serious because it has a full-size web browser, and many of us tolerate strange behaviour in a mobile web browser because we are used to it. Further, I’m guessing that some of these sites already adapt their content for iPhone.

What happens now? One of two things. Either Apple is persuaded to add support for the plugin; or the site owners fix their sites, detecting iPad/iPhone and substituting Quicktime or HTML5 content in place of Flash. In the case of the major sites such as those Brimelow lists, I doubt that second process would take long.

Result: people complain less, the pressure is off Apple and on Adobe.

I do not take the success of iPad for granted; but it is plausible; and if the device does become popular it is going to make Flash-centric web developers re-think their strategy. Further, if it fails, I doubt it will be for lack of Flash. Users do not care about Flash, they care about content, and the iPad will provide plenty of that.

The problem for Adobe is that much of its strategy is now built on the Flash runtime and its presumed ubiquity. If you compare Creative Suite 4 to Creative Suite 3 you can see how Flash is more pervasive, in several different roles ranging from rendering capabilities to code execution. It will be even more so in Creative Suite 5.

Applications built with Flex are equally affected. And note: if Flash is struggling to get over the wall into Apple’s orchard, Oracle Java will struggle more, and Microsoft Silverlight more still. It is not just Flash, but much of what we think of as RIA (Rich Internet Applications) that is at stake.

It is not over yet. If Apple is primarily concerned about browser stability, rather than controlling the platform, then Adobe may yet satisfy its requirements. Second, the iPad might fail – not completely, but enough to make it an unimportant niche. iPad is expensive and most users don’t get the tablet concept; it is not a sure-fire winner.

If neither get-out comes to pass, what can Adobe do? There are a couple of mitigating factors. One is that Adobe has already been thinking about how to deal with Apple devices. At the Adobe Max conference last year we saw its Flash to native code compiler, which will be in Creative Suite 5. It only targets iPhone; but no doubt iPad can be added. It raises the possibility of more Flash applets becoming native applications in the App Store. Money and control for Apple; but at least your code will run.

We also saw, in the Max sneak peeks, how Flash can be rendered server-side, and served to the browser as video. It’s an interesting thought if you simply must get your Flash content working on the iPad.

Another point is that Adobe is at a design tools company, and it can adapt its tools to be less focused on Flash. Another feature we saw at Max was an Illustrator to SVG converter. It is now in Adobe’s interests to work more intensely to advance HTML standards, to make them better clients for rich content.

Still, Apple has come up with what may be a significant roadblock to Adobe’s ambitions for what it calls the Flash Platform.

Web standards people may cheer this, on the grounds that a Flash-free web is less broken. I am not cheering though. Vendors locking down their devices is not a healthy way to advance web standards. Further, Flash is an amazing runtime. Flash enabled YouTube to succeed. The BBC iPlayer project did not deliver on its promise until it converted to Flash. Flash provides web developers with a consistent runtime that has value in entertainment, in education, and in general applications. One of the first things I install on Windows, Mac or Linux is Adobe AIR, which lets me run a desktop Twitter client.

Here’s my vote for Flash on iPad – and Silverlight and Java too, if the user wants their capabilities.

A year of blogging: another crazy year in tech

At this time of year I allow myself a little introspection. Why do I write this blog? In part because I enjoy it; in part because it lets me write what I want to write, rather than what someone will commission; in part because I need to be visible on the Internet as an individual, not just as an author writing for various publications; in part because I highly value the feedback I get here.

Running a blog has its frustrations. Adding content here has to take a back seat to paying work at times. I also realise that the site is desperately in need of redesign; I’ve played around with some tweaks in an offline version but I’m cautious about making changes because the current format just about works and I don’t want to make it worse. I am a writer and developer, but not a designer.

One company actually offered to redesign the blog for me, but I held back for fear that a sense of obligation would prevent me from writing objectively. That said, I have considered doing something like Adobe’s Serge Jespers and offering a prize for a redesign; if you would like to supply such a prize, in return for a little publicity, let me know. One of my goals is to make use of WordPress widgets to add more interactivity and a degree of future-proofing. I hope 2010 will be the year of a new-look ITWriitng.com.

So what are you reading? Looking at the stats for the year proves something I was already aware of: that the most-read posts are not news stories but how-to articles that solve common problems. The readers are not subscribers, but individuals searching for a solution to their problem. For the record, the top five in order:

Annoying Word 2007 problem- can’t select text – when Office breaks

Cannot open the Outlook window – what sort of error message is that? – when Office breaks again

Visual Studio 6 on Vista – VB 6 just won’t die

Why Outlook 2007 is slow- Microsoft’s official answer – when Office frustrates

Outlook 2007 is slow, RSS broken – when Office still frustrates

The most popular news posts on ITWriting.com:

London Stock Exchange migrating from .NET to Oracle/UNIX platform -  case study becomes PR disaster

Parallel Programming: five reasons for caution. Reflections from Intel’s Parallel Studio briefing – a contrarian view

Apple Snow Leopard and Exchange- the real story – hyped new feature disappoints

Software development trends in emerging markets – are they what you expect?

QCon London 2009 – the best developer conference in the UK

and a few others that I’d like to highlight:

The end of Sun’s bold open source experiment – Sun is taken over by Oracle, though the deal has been subject to long delays thanks to EU scrutiny

Is Silverlight the problem with ITV Player- Microsoft, you have a problem – prophetic insofar as ITV later switched to Adobe Flash; it’s not as good as BBC iPlayer but it is better than before

Google Chrome OS – astonishing – a real first reaction written during the press briefing; my views have not changed much though many commentators don’t get its significance for some reason

Farewell to Personal Computer World- 30 years of personal computing – worth reading the comments if you have any affection for this gone-but-not-forgotten publication

Is high-resolution audio (like SACD) audibly better than than CD – still a question that fascinates me

When the unthinkable happens: Microsoft/Danger loses customer data – as a company Microsoft is not entirely dysfunctional but for some parts there is no better word

Adobe’s chameleon Flash shows its enterprise colours – some interesting comments on this Flash for the Enterprise story

Silverlight 4 ticks all the boxes, questions remain – in 2010 we should get some idea of Silverlight’s significance, now that Microsoft has fixed the most pressing technical issues

and finally HAPPY NEW YEAR