All posts by onlyconnect

Enterprise app development on Apple iPhone and iPad

Apple’s iPhone is still perceived as primarily marketed to individuals rather than corporates. However, I was interested to see how much Apple is doing to attract corporate developers. First, Apple now supports some basic enterprise-friendly features, such as Microsoft Exchange (with a few caveats), VPN, remote wipe, and the ability to lock down iTunes to some extent. Without these capabilities, the devices would not be acceptable in many environments, making it pointless to consider them for custom applications.

Unfortunately iTunes is still needed for activation, deploying software updates, and installing applications. It is silly that Apple requires business users to install a music library to use its phone, I guess reflecting the device’s history as a music player. It is also a somewhat intrusive application especially on Windows.

If you then want to develop internal applications, you sign up for the iPhone Developer Enterprise Program. At $299 per year this is more expensive than the more general equivalent, but no big deal. Then you have to get a digital certificate from Apple. Next, create one or more “provisioning profiles” that install onto the device and authorize it to run your applications. Applications you create must be signed with your digital certificate. Finally, you can add the signed applications to an iTunes library, and users can then drag them to their iPhone or iPad. It will only run on devices that have the matching provisioning profile installed. Organisations can also revoke applications by revoking the identity used to sign the provisioning profile.

As Adobe pointed out to me, since these apps do not go through Apple’s approval process, there is nothing to stop corporate developers using the Flash Packager for iPhone that is available in Creative Suite 5.

There is more detail on Apple’s iPhone in Business page.

HP will not do Android or Windows Phone 7 smartphones – but what chance for webOS?

HP’s Todd Bradley, Executive Vice President of Personal Systems and formerly CEO of Palm, was interviewed by Jon Fortt at CNBC. Fortt asks some great questions which mostly get woolly answers, but did get this statement from Bradley:

We will not do a Linux, Android phone. We won’t do a Microsoft Phone … we’ll deliver webOS phones.

I will be interested to see if HP sticks to this commitment. HP is Microsoft’s biggest customer and huge in business systems, but that does not necessarily mean it can make a success of a mobile platform on its own.

Mobile platforms stand (or fall) on several pillars: hardware, software, mobile operator partners, and apps. Apple is powering ahead with all of these. Google Android is as well, and has become the obvious choice for vendors (other than HP) who want to ride the wave of a successful platform. Windows Phone 7 faces obvious challenges, but at least in theory Microsoft can make it work though integration with Windows and by offering developers a familiar set of tools, as I’ve noted here.

RIM Blackberry is well entrenched in the Enterprise and succeeds by focusing on messaging and doing it well. Nokia and Intel will jostle for position with MeeGo.

It is obvious that not all these platforms can succeed. If we accept that Apple and Android will occupy the top two rungs of the ladder when it comes to attracting app developers, that means HP webOS cannot do better than third; and I’d speculate that it will be some way lower down than that.

You have to feel for HP, which has supported Microsoft’s failing mobile platform for many years – with the occasional lapse, remember when it became an OEM vendor for Apple’s iPods? – and now has decided it cannot rely on the company in this area. That is understandable. However, HP is heavily invested in Windows. It may be choosing just the wrong moment to abandon ship; or it may find that doing its own thing with webOS is no better. Google Android would have been a safer though less interesting choice.

The Genius of Elton John

I remember talking to a friend about Elton John when I was at school. We liked Bob Dylan, David Bowie, The Who, and of course, Elton John. We were convinced that artists like Dylan were for the ages. But Elton John? “Do you think he will last?” I asked. “Of course” was the reply.

My friend was right. The reason for my doubts were ill-founded; the verbal mystique of Dylan seemed to touch the soul, whereas Elton John seemed to be all pop. If you were a serious progressive music fan there was a trace of guilt in enjoying Elton John and his gift for melody.

Time has shown such distinctions to be artificial. There is equal artistry in easy melody.

As for Elton John, his musical talent is amazing and merits the genius word. The rumour is that he worked quickly, writing melodies for Bernie Taupin’s lyrics in short sessions at the piano. Back in the seventies the music poured out of him:

1970
Elton John
Tumbleweed Connection

1971
Friends (Soundtrack)
Madman across the water

1972
Honky Chateau

1973
Don’t Shoot me I’m only the piano player
Goodbye Yellow Brick Road (Double)

1974
Caribou

1975
Captain Fantastic and the Brown Dirt Cowboy
Rock of the Westies

I find myself still listening to these albums. Elton is a great performer; he plays with extraordinary fluidity, he sings with passion, and Taupin’s lyrics are at times intense and bold, sometimes dark.

Although Yellow Brick Road is magnificent, the albums I play these days are more likely to be Madman or Honky Chateau. Songs like Madman Across the Water and Rocket Man that speak of outsiders who see the world in a different way resonate with me.

I enjoy many of his later albums too though he has never matched that early burst of creativity. His voice is not as strong as it was. He is one of the greats though and has nothing to prove now.

BBC News app arrives on iPhone

Today the BBC received approval from the BBC Trust to create apps for mobile devices such as Apple iPhone/iPad and Google Android. Wasting no time, the corporation published a BBC News App on the App Store today.   

But what is the point? Is this really better than simply going to the web site:

IMG_0001

It is worse in some ways, because there is a disconnect between content locked in an app, and content on the world web web where it can be linked and searched. There is also an argument over whether the publicly funded BBC creating apps for luxury mobile devices, instead of investing in more public content, though I’d imagine that the cost of creating the app is small relative to the cost of producing the content. The BBC no doubt feels under pressure to keep up with competitors such as Sky News, which already has an app available.

The BBC app becomes more interesting if you click the Live button, though you need a good connection, preferably wi-fi:

IMG_0004

The app becomes a news-dedicated iPlayer for iPhone; a full iPlayer is also promised. A nice feature; though even this can be done on the web as long as you use Apple’s QuickTime format rather than not-invented-here Adobe Flash.

Microsoft cash cows alive and well, lame ducks still lame

Here is my quick summary of Microsoft’s just-announced quarterly results:

Quarter ending June 30th 2010 vs quarter ending June 30th 2009, $millions

Segment Revenue Change Profit Change
Client (Windows + Live) 4548 +1379 3063 +1134
Server and Tools inc. Azure 4012 +84 1546 +340
Online 565 +64 -696 -111
Business (Office) 5250 +683 3284 +578
Entertainment and devices 1600 +343 -172 -31

What’s notable about these figures? Well, the big-picture Microsoft question is how it is coping with industry transitions, in particular the transition from on-premise servers and desktop software to cloud services and mobile device clients. Of course you can debate the extent and speed of that transition, but I believe it to be real.

The story here is that Microsoft’s traditional products are still amazingly profitable, and that the effort invested in making Windows 7 a decent upgrade from Windows XP or Vista is paying off. Further, Microsoft Office sales actually exceed Windows sales. It does not really surprise me; despite the existence of capable cheaper or free alternatives, I rarely see business PCs that do not have Office installed; and Microsoft is busy locking in Enterprise customers with hooks between Office client and SharePoint server.

On the other hand, Microsoft’s progress in cloud and device looks amazingly bad. The figures are not all that easy to read, since Azure, Microsoft’s cloud platform, is part of the Server and Tools business; and BPOS, the cloud-based Exchange and SharePoint offering, probably sits there too. The “Online” business in the figures covers Bing and MSN, and earns its money primarily from advertising. This part of the business managed to turn in a loss greater than its revenue, which is remarkable considering how successful Google is with that same business model.

Entertainment and Devices is also hard to read. If you read the press release, it turns out that the reason revenue increased was not thanks to the success of Xbox or an unlikely rebound for Zune or Windows Mobile. Xbox actually declined, and so did Windows mobile, and the increase was thanks to increased sales of Windows Embedded:

Non-gaming revenue increased $35 million or 1% primarily reflecting increased sales of Windows Embedded device platforms, offset in part by decreased Zune and Windows Mobile revenue.

Windows Embedded is an interesting story. I don’t know how its figures break down, but I research things such as digital signage and point of service systems from time to time, and there is a lot happening in that space which deserves more attention from the technical press, especially as it directly touches our lives.

Despite the Embedded success, Entertainment and devices also turned in a substantial loss, though nothing like the horrors of Online.

Conclusions? One is not to write off Microsoft; it’s still a highly profitable giant. But the other is that the company desperately needs a big success outside Windows and Office to convince us that it really has a bright future. A sparkling launch for Windows Phone 7 would do nicely.

Developing for Windows Phone 7

I spent some time today watching parts one and two of Windows Phone 7 Jump Start presented by Rob Miles and Andy Wigley. After a slow start there were clear demos of basic coding for Microsoft’s new phone; and I’d guess that most Microsoft platform developers would be reassured that if they can code for Silverlight, or do games in XNA, they will not have any problem coding for Windows Phone 7. The further implication is that it will be relatively easy, with the proviso that complex applications with good performance and excellent design are never easy. There is also the challenge of learning Expression Blend, if needed.

All participants were asked to state what other mobile platforms they had developed for; and while we were not shown the results of these polls there was a comment to the effect that “Windows mobile and None are neck and neck”, which I found interesting. It suggests that iPhone and Android developers are in no hurry to learn about Microsoft’s phone. If Microsoft gets enough customers they may then take an interest. Competing with Apple was always a given; but it is the rise of Google Android which must be most troubling to Microsoft, since it has given the non-Apple phone vendors what they need.

Still, the combination of Visual Studio plus Windows Phone 7 does make sense for .NET developers.

An early slide presented the Windows 7 hardware, which is worth reviewing as it is a reasonable specification. Supposedly Microsoft is taking a hard line with OEMs to keep the spec at or better than this minimum:

Display

480×800 QVGA
320×480 HVGA

Capacitive touch

4 or more contact points

Sensors

A-GPS, Accelerometer, Compass, Light

Camera

5 mega pixels or more

Hardware buttons

Start, Search, Back

Memory

256 MB RAM or more

8GB Flash storage or more

GPU

DirectX 9 acceleration

Reviewing the Belkin Play Max wireless router

I’ve just reviewed Belkin’s Play Max wireless router. It’s a Wireless N access point and router; it works, though I was disappointed with the range. That said, I’m increasingly impatient with this kind of product, good value in one sense but chucked out with technical deficiencies, inadequate documentation, and poor supporting software. It is not too bad if you are familiar with networking and follow the principle of never installing any software that comes with a router/modem; but if you do what it says on the packet you end up with a suite of software installed that you probably do not want – including a bit torrent client that comes in uninvited – and I would think a high chance that you will run into some issues with the configuration.

The Belkin unit is ambitious and promises you extra features including a DLNA music server, automatic tagging of your music files, and scheduled backup of your computers. It also claims to be “self-healing”, a feature which turns out to be a scheduled reboot just in case, you know, something has gone slightly wrong. None of this stuff works well, and Belkin would have been better off focusing on the core features for which you might buy a wireless N router.

Using backup on Windows Hyper-V Server or Server Core

Hyper-V Server 2008 R2 is a free virtualisation platform from Microsoft and an excellent bargain; I guess it is something Microsoft feels it has to do in order to compete with VMWare’s vSphere Hypervisor (ESXi) which is also free. Of course Microsoft still gets your money if you run Windows Server on the VMs, in either case. Hyper-V Server is in essence Windows Server Core with just the Hyper-V Role enabled, which means there is no full GUI, just a command window and a few odd GUI apps like Task Manager, Notepad and Registry Editor which Microsoft decided we cannot live without.

So what happens if you want to backup Hyper-V Server with built-in tools? Windows Server Backup is not available, first because it is a GUI application, and second because it is not installed.

There is a way. Windows Server Backup has a command-line version called Wbadmin. In some ways it is better, because you can script it, schedule it, and easily configure it through command-line arguments. It is not installed by default on Hyper-V Server or Server Core, but you can add it:

ocsetup WindowsServerBackup

Aside: If you want to see what else you can install with ocsetup, try oclist. You can install all sorts of things on Hyper-V Server, using this and third-party software, but note the terms of the EULA:

2(b). The instance of the server software running in the physical operating system environment may be used only to:
· provide hardware virtualization services, and/or
· run software to manage and service operating system environments on the licensed server.

Backup comes into that category in my opinion, but there could be areas of uncertainty. Using Hyper-V Server as a general-purpose file server would be a breach of the license, but using a file share on Hyper-V Server to copy some utilities which which to manage the server should be OK. I think – consult your lawyer.

Once you have Wbadmin installed you can backup the server. Attach an external hard drive, say to drive E, and run:

wbadmin start backup -backupTarget:e: -include:c:,d: -quiet

Actually that is not quite right, though it was my first effort. If you run this, even on a system with only C and D drives, you will get a warning:

Note: The list of volumes included for backup does not include all the volumes that contain operating system components. This backup cannot be used to perform a system recovery. However, you can recover other items if the destination media type supports it.

The reason for this is that current versions of Windows use a hidden system partition by default. This partition does not have a drive letter, but is needed for system recovery. In order to include it, add the –allCritical argument:

wbadmin start backup -backupTarget:e: -include:c:,d -quiet -allCritical

This will add the hidden partition to the backup, and enable system recovery, where you can restore the OS and all its data in once operation.

Another important argument is –vssFull. This switch in effect tells the operating system it has been backed up. The archive bit on changed files is flipped. You want this to happen if this is your only backup, but you don’t want this to happen if you are also using another type of backup.

Note that you can quit the backup with Ctrl-C but in fact it continues running. If you quit and then want to check the status, type:

wbadmin get status

and if you really want to quit:

wbadmin stop job

Backing up running VMs

Now the interesting bit. Can we backup VMs while they are running?

It should be possible, though Microsoft does not make it easy. The idea is that the backup saves the state of the VM in a snapshot, and backs up the snapshot. This means it should start cleanly on restore. But there are several tricky points.

First, if you want to backup VMs from the host, you need to set a registry key – see the following article. I would like to know why this is not set by default – it must be deliberate, since the requirement has stayed the same in Server 2008 and Server 2008 R2.

Second, there are actually two different snapshot mechanisms, one operating entirely on the host called “saved state”, and one operating in conjunction with integration services in the VM, called “Child VM snapshot”, according to the most detailed official article on the subject. This feature is shown in Hyper-V settings as Backup integration. For the Child VM Snapshot to work, there is a further limitation, that:

The Snapshot File Location for the VM is set to be the same volume in the host operating system as the VHD files for the VM.

I am not sure what happens if you have VHDs in several locations, as you might do if you wanted to optimize performance by having VHDs on different physical disks. [Update – apparently in Windows Server 2002 R2 the .AVHD snapshot files are always in the same location as their parent VHD, and this is on a per-VHD basis, so it should not be a problem in R2].

Third, there is a question mark about whether either method works for VMs running Active Directory:

Active Directory does not support any method that restores a snapshot of the operating system or the volume the operating system resides on. This kind of method causes an update sequence number (USN) rollback. When a USN rollback occurs, the replication partners of the incorrectly restored domain controller may have inconsistent objects in their Active Directory databases. In this situation, you cannot make these objects consistent.

I am also not clear whether archive bits are flipped in the child VM, if you use –vssfull along with the Child VM snapshot. If so, you should definitely not use –vssFull in the host if you are also backing up from the guest. I am trying to get clarification on these points.

These are more questions than I would like for something as critical as backup and restore of VMs. For peace of mind you should either shut them down first, which is unacceptable in most production environments, or else backup from the guest instead of, or in addition to, backing them up from the host. I’ll update this post when I get further information.

Data Protection Manager

Finally, note that in grown-up Microsoft environments you are meant to use Data Protection Manager (DPM) rather than fiddling around with wbadmin. There is even a white paper on how this integrates with Hyper-V. Ultimately though this is also based on VSS so some of the same issues may apply. However, if you are using the free Hyper-V Server 2008 R2, you are probably not in the market for DPM and its additional hardware, software and licensing requirements.

OpenStack takes on Amazon with open source cloud computing

Today’s big open source announcement is OpenStack, an open source cloud platform that aims to be an non-proprietary alternative to Amazon’s Elastic Computer Cloud (EC2) and Simple Storage Service (S3).

There are nearly 30 companies currently signed up to support OpenStack, including NASA, Citrix, Dell, Intel, AMD and Right Scale, but the big mover here is Rackspace, which says:

On July 19, 2010, we announced that we are opening the code on our cloud infrastructure. That’s big news for us and for the hosting industry in general. The result? Cloud technology will never look back.

The full press release is here. The initial offering is a distributed object store and a virtual machine provisioning engine.

OpenStack is not itself a cloud provider. Rather, it is offering software that lets you build a cloud, either for public or private use. Therefore, it is of immediate use only to large organisations, though for smaller users it might make sense to purchase services from an OpenStack provider since you are protected against lock-in.

The OpenStack cloud is IAAS – infrastructure as a service – offering storage and virtual machine instances. Therefore it is going up against Amazon rather than, say, Salesforce.com or Google App Engine. It is also an open source alternative to Microsoft Azure, which is also available (or will be) for both public and private clouds.

Looking at Right Scale’s comment, it seems that concern about Amazon taking over this market is a key driver behind the initiative:

From the RightScale perspective we will of course continue to support a variety of public and private clouds. We already have basic support for RackSpace’s API, which OpenStack will start out with, and we have a number of implementations under way with Eucalyptus and Cloud.com which we’re looking forward to multiply. At the same time, having many fragmented cloud efforts doesn’t really help build a compelling alternative to Amazon which keep adding incredible new features at a blazing pace. And the industry needs an alternative to Amazon, not because of some problem with AWS, but because in the long run cloud computing cannot fulfill its promise to revolutionizing the way computing is consumed if there aren’t a multitude of vendors with offerings targeting different use-cases, different needs, different budgets, different customer segments, etc. OpenStack promises to build enough momentum to create an exciting cloud offering that is as feature rich as AWS, that is implemented by a number of service providers, like RackSpace, and that enterprises can also run internally, like NASA.

For more information see the OpenStack site.

Why is there so much junk in Apple’s App Store?

After 4 weeks with Apple’s iPhone 4 I’m mainly impressed with everything other than the call quality (I am in a poor signal area for O2). I’ve been exploring the App Store though, and while there are many great apps there, there is also a huge amount of junk. Here’s a review for an app I was looking at:

This app is such a con. The adverts are deliberately put in the most awkward places so they get pressed accidentally; there is no “would you like to make a call” dialog box, nothing, it goes straight to an 090 number and even if you cancel the call instantly you are still charged … Apple should be ashamed for letting this little con artist on to the app store!

Other users report frequent crashes, lost data and so on.

With over 200,000 apps available, it’s not surprising that some are duds. However, given Apple’s insistence on checking every one, I’d expected the overall standard to be higher. Apple cannot easily judge how useful an app is, particularly in a niche area, but things like instability or unfair advertising practices should be caught.

Another odd thing: if you browse the store on the device, you cannot sort by rating, as far as I can tell, making it hard to find the better apps quickly. I guess this could be designed to mitigate the “winner takes all” factor: if one or two apps in a common search category achieve high ratings, it is difficult for newcomers to get noticed sufficiently to drive up their own ratings. Still, give the amount of dross in there, it would help to have this as an option, even if it were not allowed to be the default sort.

The existence of so many poor apps also puts into context the Thoughts on Flash posted by Steve Jobs. I kind-of understand why Apple wants to exclude the Flash runtime from its device platform; but that does not explain the ban on Adobe’s Packager for iPhone, which compiles a Flash application to an iPhone binary. That might make sense if Jobs could point to the consistent high technical standard of iPhone Apps; but that is simply not the case.