Intel AppUp is Up, but underwhelming.

Intel has launched AppUp, its application store for Windows and Moblin/MeeGo Linux.

image

Isn’t Moblin obsolete, and now merged into MeeGo? That is the plan, but AppUp still talks about Moblin:

image

Apparently:

The Intel AppUp developer program will support MeeGo. The current Moblin SDK for the Intel AppUpSM developer program is MeeGo ready and is upward compatible for Moblin and MeeGo.

The web site is pretty confusing, even though it is supposedly out of beta. Click Frequently Asked Questions, and you get a document dated December 2009, though “Last Modified” in August. It does seem to be out of date though, referring throughout to the Beta and stating that only Windows is supported by the AppUp client.

image

I downloaded the client and had a look. The client is a simple affair, with apps in various categories, though the current selection of apps is uninspiring. Prices currently range from free to £28.19 for Easy Flyer Creator (Desktop Publishing), the most expensive I could find. All the “Featured apps” are games, though the other categories are populated to some extent.

image

If you want to develop for AppUp you need the SDK, which provides the tools and libraries to link your app to the AppUp client. The SDK is native code, and the natural developer platform for AppUp is the cross-platform Qt, but the main requirement is that you can link to the SDK; there is also an approval process.

Adobe has done the work to support AIR applications, which use the Flash runtime, in AppUp. Adobe has also come up with an interesting project to address the coming proliferation of app stores. The Melrose project, now in beta, targets multiple app stores:

Melrose provides a repository that distributes applications to multiple application stores so that publishers can reach millions of users.

Intel AppUp Center and the Adobe AIR Marketplace are the first two storefronts available in Melrose. Melrose also provides analytics that let publishers measure success of their applications.

It is a shame that Melrose does not yet include Android Market.

Who knows, AppUp may have a bright future, but Intel could have done better with the launch. There is a poor selection of apps, confusing Moblin/MeeGo branding, and out of date information on the site. Of these, the biggest problem is the lack of apps themselves. The main target is netbooks, and Intel will need a greatly improved selection before AppUp comes close to enhancing netbooks in the way that Apple’s App Store enhances iPhone, iPad and iTouch, which is the obvious model.

How many app stores will there be? Alongside Apple, there is AppUp, Nokia’s Ovi, Android Market, as well as older app stores like handango. Microsoft is rumoured to have big plans for an App Store for Windows 8, and of course Windows Phone 7 will have its own store – and these are just the ones which come to mind immediately.

Not all these app stores will succeed, and Intel should have made more effort with this launch.

Latest job stats on technology adoption – Flash, Silverlight, iPhone, Android, C#, Java

It is all very well expressing opinions on which technologies are hot and which are struggling, but what is happening in the real world? It is hard to get an accurate picture – surveys tend to have sampling biases of one kind or another, and vendors rarely release sales figures. I’ve never been happy with the TIOBE approach, counting mentions on the Internet; it is a measure of what is discussed, not what is used.

Another approach is to look at job vacancies. This is not ideal either; the number of vacancies might not be proportionate to the numbers in work, keyword searches are arbitrary and can include false positives and omit relevant ads that happen not to mention the keywords. Still, it is a real-world metric and worth inspecting along with the others. The following table shows figures as of today at indeed.com (for the US) and itjobswatch (for the UK), both of which make it easy to get stats.

Update – for the UK I’ve added both permanent and contract jobs from itjobswatch. I’ve also added C, C++, Python and F#, (which hardly registers). For C I searched Indeed.com for “C programming”.

  Indeed.com (US) itjobswatch (UK permanent) itjobswatch (UK contract)
Java 97,890 17,844 6,919
Flash 52,616 2,288 723
C++ 48,816 8,440 2470
C# 46,708 18,345 5.674
Visual Basic 35,412 3,332 1,061
C 27,195 7,225 3,137
ASP.NET 25,613 10,353 2,628
Python 17,256 1,970 520
Ruby 9,757 968 157
iPhone 7,067 783 335
Silverlight 5,026 2,162 524
Android 4,755 585 164
WPF 4,441 3,088 857
Adobe Flex 2,920 1,143 579
Azure 892 76 5
F# 36 66 1

A few quick comments. First, don’t take the figures too seriously – it’s a quick snapshot of a couple of job sites and there could be all sorts of reasons why the figures are skewed.

Second, there are some surprising differences between the two sites in some cases, particularly for Flash – this may be because indeed.com covers design jobs but itjobswatch not really. The difference for Ruby surprises me, but it is a common word and may be over-stated at Indeed.com.

Third, I noticed that of 892 Azure jobs at Indeed.com, 442 of the vacancies are in Redmond.

Fourth, I struggled to search for Flex at Indeed.com. A search for Flex on its own pulls in plenty of jobs that have nothing to do with Adobe, while narrowing with a second word understates the figure.

The language stats probably mean more than the technology stats. There are plenty of ads that mention C# but don’t regard it as necessary to state “ASP.NET” or “WPF” – but that C# code must be running somewhere.

Conclusions? Well, Java is not dead. Silverlight is not unseating Flash, though it is on the map. iPhone and Android have come from nowhere to become significant platforms, especially in the USA. Beyond that I’m not sure, though I’ll aim to repeat the exercise in six months and see how it changes.

If you have better stats, let me know or comment below.

Delphi XE includes licenses for older versions back to Delphi 7

I’ve just picked up that Delphi XE, the latest RAD Windows development suite from Embarcadero, includes licenses for older versions going back to Delphi 7.

There’s an explanation and list of what’s on offer here. Delphi 7 was the last version to use the old fully native code IDE and is delightfully fast and lightweight by today’s standards. Delphi 2007 was the last version before big Unicode changes in Delphi 2009, which often broke code, so could be useful for older projects.

The FAQ includes a few points of interest. Embarcadero is dismissive of the old Delphi for .NET (before Prism) and will not supply it:

That is an old technology that was replaced by Delphi Prism and we don’t want to encourage use of that old product.

If you have purchased XE and want to take advantage of the offer, you must do so within 180 days.

Microsoft’s Scott Guthrie: We have 200+ engineers working on Silverlight and WPF

Microsoft is countering rumours that WPF (Windows Presentation Foundation) or Silverlight, a cross-platform browser plug-in based on the same XAML markup language and .NET programming combination as WPF, are under any sort of threat from HTML 5.0.

We have 200+ engineers right now working on upcoming releases of SL and WPF – which is a heck of a lot.

says Corporate VP .NET Developer Platform Scott Guthrie in a Twitter post. Other comments include this one:

We are investing heavily in Silverlight and WPF

and this one:

We just shipped Silverlight for Windows Phone 7 last week, and WPF Ribbon about 30 days ago: http://bit.ly/aB6e6X

In addition, Microsoft has been showing off IIS Media Services 4.0 at the International Broadcasting Conference, which uses Silverlight as the multimedia client:

Key new features include sub-two-second low-latency streaming, transmuxing between H.264 file formats and integrated transcoding through Microsoft Expression Encoder 4. Microsoft will also show technology demonstrations of Silverlight Enhanced Movies, surround sound in Silverlight and live 3-D 1080p Internet broadcasting using IIS Smooth Streaming and Silverlight technologies.

No problem then? Well, Silverlight is great work from Microsoft, powerful, flexible, and surprisingly small and lightweight for what it can do. Combined with ASP.NET or Windows Azure it forms part of an excellent cloud-to-client .NET platform. Rumours of internal wrangling aside, the biggest issue is that Microsoft seems reluctant to grasp its cross-platform potential, leaving it as a Windows and desktop Mac solution just at the time when iPhone, iPad and Android devices are exploding in popularity. 

I will be interested to see if Microsoft announces Silverlight for Android this autumn, and if it does, how long it will take to deliver. The company could also give more visibility to its work on Silverlight for Symbian – maybe this will come more into the spotlight following the appointment of Stephen Elop, formerly of Microsoft, as Nokia CEO.

Apple is another matter. A neat solution I’ve seen proposed a few times is to create a Silverlight-to-JavaScript compiler along the lines of GWT (Google Web Toolkit) which converts Java to JavaScript. Of course it would also need to convert XAML layout to SVG. Incidentally, this could also be an interesting option for Adobe Flash applications.

As for WPF, I would be surprised if Microsoft is giving it anything like the attention being devoted to Silverlight, unless the Windows team has decided to embrace it within the OS itself. That said, WPF is already a mature framework. WPF will not go away, but I can readily believe that its future progress will be slow.

Adobe extends SVG, HTML 5 support in Illustrator

Adobe has released a preview of the Illustrator CSS5 HTML5 Pack. There is already an HTML 5 Pack for Dreamweaver.

Illustrator CS5 could already export in SVG (Scalable Vector Graphics) format, but the pack adds some interesting features.

One is the ability to specify strokes and fills as variables, so that you can modify them in JavaScript.

image

Exporting an image that uses this feature creates a JavaScript file as well as the SVG itself.

You can also mark an Illustrator object as Canvas. This will convert the object to a bitmap that is drawn to a Canvas element within SVG.

There is also increased support for CSS (Cascading Style Sheets). You can use CSS to define fills, strokes, opacity, gradient, position, and named character styles.

Other features in the Pack include the ability to detect the HTML window size and vary the SVG that is delivered accordingly – to support mobile browsers.

When Apple’s Steve Jobs posted his thoughts on Flash – still online despite the company’s change of heart on cross-platform development tools for iPhone and iPad – he remarked:

Perhaps Adobe should focus more on creating great HTML5 tools for the future, and less on criticizing Apple for leaving the past behind.

Of course Adobe was doing this anyway, but it is interesting to see HTML 5 support now being extended. Export more HTML 5 goodness at the forthcoming MAX conference next month.

If you try the new HTML5 Pack read the installation instructions carefully. You have to back up certain files, otherwise it may affect whether you can apply future official updates.

Microsoft Vine formally withered

Remember Microsoft Vine? It was a well-meaning but puzzling product intended to assist communication in emergencies, but with additional potential for social communication. To nobody’s surprise, Microsoft has emailed beta testers to inform that that the project is to be discontinued:

The decision to discontinue future development of Microsoft Vine was not easily made. Multiple options were thoroughly explored and evaluated with rigor and in the end it was determined that Microsoft Vine is not sustainable as a standalone offering.

image

If there is a need for something like Vine in disasters and emergencies, it could only work as a cross-industry, cross-platform initiative. On the other hand, if Microsoft had in mind new ways to exchange local information, maybe enhancing Live Messenger would have been a better idea. One of the snags with Vine is that for it to be useful in an emergency, users would have to be signed up beforehand, but many of us are too busy on Facebook, Twitter or Messenger to think about it.

More on Microsoft’s difficult choices: WPF, Silverlight, HTML 5

Earlier today I posted a story speculating about the future direction of Microsoft’s development platform, which has proved controversial and to some extent has been misunderstood. Although it is speculative, the issues are important since developers want to target platforms with a strong future. Here’s another take on why Microsoft, whichever way it decides to go, faces some difficult choices.

First, let me be clear: I don’t see Microsoft abandoning Windows Presentation Foundation let alone Silverlight. Microsoft has an good track record when it comes to continuing support for its technologies, better than competing platforms. Visual Basic 6 applications mostly still run today on Windows 7, perhaps with a few issues caused by User Account Control for which there are workarounds. Whatever you target, there is an excellent chance Microsoft will continue to support it long into the future. The main exception I can think of is Windows Mobile, which is incompatible with the new Windows Phone 7 series, but given the challenges Microsoft faces in mobile you can understand the decision.

Nor is there any chance of Microsoft reviving old frameworks. There will not be a return to Windows Forms. WPF is a better GUI framework in every way, other than performance on older systems – though note that Windows Forms applications still run fine today, and I imagine will run fine on Windows 8 and probably 9 as well.

The real question is not about support, but future investment. Microsoft has finite resources. It is in overdrive right now on Internet Explorer, on Silverlight, on Windows Phone 7, and on Azure, for example. There will be other products and technologies that receive less attention, because someone has decided they are not strategic.

It also seems to me that Microsoft’s server and cloud story is less conflicted. From the developer’s perspective it is thoroughly .NET based, and you can be confident that technologies like C#, IIS, ASP.NET, SQL Server, Exchange and SharePoint will be around for the foreseeable future.

With that out of the way, a few further comments.

Windows Presentation Foundation

The history of WPF goes back to the early days of Windows Vista, then called Longhorn. WPF was one of the the “three pillars”, Avalon, where the others were Indigo (WCF) and WinFS. Avalon was the future of the Windows GUI API, based on .NET code and XAML layout.

If Longhorn has proceeded as planned, WPF would be the loose equivalent of Cocoa on Apple’s OS X, the standard way to code Windows GUI applications. Unfortunately, in 2004, Microsoft discovered that Longhorn was heading for disaster. The project was reset, delaying release and resulting in Vista being both late and rushed. The reset project included Avalon as a supported framework, but made it incidental to the workings of Windows itself. The Windows team, in other words, lost faith in Avalon and reverted to native code with a dash of DirectX.

Windows 7 is more of the same. WPF is there but it is not at the heart of the OS. Developers are encouraged to use it for their own apps, but the Windows team is focused on native code.

When Visual Studio 2010 was released, with a shell built in WPF, Microsoft made some noise about how it showed its commitment to the framework. It was also noted that the Visual Studio team had worked with the WPF team to fix some issues. However, there is little sign of WPF changing its role as a layer in Windows primarily to support custom applications, rather than being used for the shell of Windows itself.

The question now: how much should Microsoft invest in future WPF development? It is not essential for Windows itself. Nor it is compelling for developers wanting to take advantage of the cloud model and support diverse clients. Frankly it does not look strategic unless it becomes the Windows shell API; and you could understand Microsoft having a “once bitten twice shy” attitude to that possibility.

I find it plausible that Microsoft would throttle back on WPF development.

Silverlight

Silverlight by contrast is strategic. Silverlight is a framework that runs in the browser, out of browser, and on Windows Phone 7. It is lightweight and cloud-oriented, and it runs .NET code, ticking lots of boxes for developers moving on from Windows desktop applications. It is also designer-friendly, with rich graphics and multimedia support. There are still a few gaps – printing is crude, for example – but it makes more sense for Microsoft to invest in Silverlight than WPF. It is significant that the new LightSwitch tool for rapid development of database apps targets Silverlight, not WPF, and not ASP.NET (except on the server). Silverlight is also the application platform for Windows Phone 7.

Then again, Silverlight is WPF. It was originally WPF/Everywhere, and uses the same XAML language for layout.

I will be surprised if Microsoft back-pedals on Silverlight. Nevertheless, I can also understand this being a matter of debate. Despite Microsoft’s efforts to distinguish them, there is considerable overlap between what Silverlight does, and what HTML 5 in IE9 does, especially when in the browser. There is also the Apple problem: HTML applications will run on iPhone and iPad, but Silverlight will not. What if Microsoft focused on the new IE engine instead of Silverlight, supporting it properly in Visual Studio, and providing ways for developers to create out-of-browser apps that run with full trust and have access to local system APIs? This would be along the same lines as the Palm WebOS and Google’s Chrome OS.

Put another way, does it make sense for Microsoft to invest equally in HTML 5 and Silverlight, when possibly IE 9 could be the basis of a unifying technology, a subset of which would work on any modern browser on any client?

It seems to me that Microsoft will have to invest in tooling for HTML 5 clients in some forthcoming edition of Visual Studio, and that this will be a selling point for its cloud platform, while possibly undermining the role of Silverlight.

There is also a continuing case for Silverlight, both because of the inherent advantages of a plug-in – consistency of client platform as well as features that HTML 5 lacks – and because it supports .NET. The .NET languages (Mono aside) tie developers to Visual Studio and to Microsoft’s platform. Visual Studio combined with .NET is a formidable tool for both client and server and a key advantage for the platform.

Watch this space.

Apple lifts restrictions on app development tools, publishes review guidelines

Apple has lifted its restrictions on the development tools used to create iOS (iPhone and iPad) apps, in a statement published today:

We have listened to our developers and taken much of their feedback to heart. Based on their input, today we are making some important changes to our iOS Developer Program license in sections 3.3.1, 3.3.2 and 3.3.9 to relax some restrictions we put in place earlier this year. In particular, we are relaxing all restrictions on the development tools used to create iOS apps, as long as the resulting apps do not download any code. This should give developers the flexibility they want, while preserving the security we need.

In addition, Apple says it is publishing the App Store Review Guidelines in the hope that this will make the approval process more transparent.

Good news I guess; but why? Maybe in part because the restrictions made little sense and were possibly unenforceable; and in part because Android’s popularity is putting pressure on Apple to be more developer-friendly. In practice, some apps that you would have thought breached the requirements apparently made it through the approval process; and those publishers of cross-platform tools which kept their nerve have their patience rewarded.

But what about Adobe? Apple’s development restrictions seems to trigger a significant change of direction, with work on the Packager for iPhone stopped, Android devices issued to employees, and evangelism for Android in Adobe blogs and tweets.

Since Apple is not changing its mind about runtimes, but only about development tools, this change of mind does not enable Flash on the iPhone; but I guess Adobe could now revive its cross-compilation work. On the other hand, Apple’s pronouncements have caused disruption for Adobe and perhaps served more as a wake-up call: this is a closed platform with one owner and therefore a risky target for investment.

Microsoft wrestles with HTML5 vs Silverlight futures

Former Microsoft Silverlight Product Manager Scott Barnes has posted a series of tweets following a visit to Microsoft:

So.. after a week in Microsoft HQ etc.. i have a lot of inside info that just basically puts into question the future of #Silverlight #wpf

he remarks, and then:

Right now there’s a faction war inside Microsoft over HTML5 vs Silverlight. oh and WPF is dead.. i mean..it kind of was..but now.. funeral.

Barnes positions it as a fight between Windows/IE9 backing HTML5, and the developer division backing Silverlight. He also suggests that Microsoft is contemplating a classic “Embrace and extend” strategy for HTML:

HTML5 is the replacement for WPF.. IE team want to fork the HTML5 spec by bolting on custom windows APi’s via JS/HTML5

He says further that Microsoft has “shut down the designer story” – I am not sure what that implies, though I can imagine that a lot of money has been sunk into the Expression tools without drawing significant market share from Adobe’s Creative Suite.

Barnes is a straight-talking guy but clearly this is all speculation. Nevertheless it is obvious that, on the eve of launching IE9 beta with its fast JavaScript engine, hardware accelerated graphics, and pixel-precise bitmap drawing, Microsoft has a tricky job positioning HTML5 vs Silverlight. For that matter, even positioning Silverlight vs desktop Windows Presentation Foundation is not easy.

Since we are also on the eve of launch for Windows Phone 7, which Microsoft has flagged as a strategic product and which uses Silverlight as its app platform, it seems unlikely that the technology will be sidelined; but rumours of internal divisions on the subject do not surprise me.

The Salesforce.com platform: what’s new, what’s coming

I’m attending the Cloudforce conference in London to catch up on what’s new with the Salesforce.com platform. CEO Marc Benioff was on good form, with a fun slide in his keynote presentation saying “Beware of the false cloud” – this was a jab at private clouds which he considers lack the advantages of a multi-tenanted public cloud platform like, you know, Salesforce.com. He has some justification – operating your own cloud is clearly a significant IT burden to carry – but that is the price of freedom. His company continues to report impressive growth.  The theme this year is Salesforce.com Chatter, a Twitter-like service embedded into the platform, for which there are just-announced mobile clients (Apple iOS, Blackberry, Android coming) as well as integration with the web UI and programmable platform.

Chatter is reducing email usage for adopters, apparently; Benioff says by 40% in his own company. Another of its advantages (aside from general social media goodness) is that users cannot attach documents directly, but only links to documents – pass by reference not by value – which is a better approach to collaboration. Of course you can do this in emails as well, but people habitually do not. It makes you think – maybe the likes of Outlook should do this by default, saving no end of space in corporate mailboxes. Or perhaps we should just use Chatter instead.

But what about the developer angle, the Force.com platform that lets you build custom applications? I attended a session on the subject. There was a comment from partner Nimbus which caught my ear – the speaker said that they avoid writing custom Apex code wherever possible, and generally find ways to use the platform’s built-in features instead. His rationale: “You will have to live with that code for ever”. It is another angle on declarative programming, in which you declare your intentions and let some underlying engine transform them into actual code. The advantage is not only ease of development, but also that improvements in the engine can enhance the application without any need to rewrite code.

I asked what is new and what is coming in the Force.com platform. Chatter is one element; one of its key features is that applications can “chat” as well as individuals. Another theme is workflow tools, and integrating the technology acquired with Informavores, which is being rebuilt on the Salesforce.com platform as Visual Process Manager. In tune with the remarks from Nimbus, there is also an effort to reduce the need for Apex code and to offer guided steps that business users can apply without the need of a development specialist. Another focus is scalability – “people are starting to use the platform in ways that we didn’t think of” – which mean back end work to handle their demands. Finally, there is the joint development with VMWare called VMForce that lets you run Java with full access to the Force.com API.