Microsoft OneDrive and Office Online is Office 365 lite

Microsoft has transitioned its cloud storage service name from SkyDrive to OneDrive.

Is OneDrive just cloud storage though? Not really. It is part of a suite of cloud applications. Go to OneDrive, drop down the Create menu, and you see this:

image

These links to Office document types open in Office Online, formerly Office Web Apps, which is a browser version of Microsoft Office, and now pretty good.

image

No offline functionality, and if you print you just generate a PDF, but not bad for free.

Drop down the OneDrive menu and there are the other apps in Microsoft’s consumer cloud suite, including Outlook.com, People and Calendar.

image

The functionality parallels that in Office 365, where you get Exchange online in place of Outlook.com and hosted SharePoint in place of OneDrive.

Microsoft also has Skype, which is the consumer version of Lync in Office 365.

It all looks rather coherent, though Microsoft has a bit of work to do under the covers. It makes little sense for OneDrive to use different technology than SharePoint for online storage, though frankly OneDrive beats SharePoint in some respects so it would be good to see some of the consumer tech migrating into the enterprise offering. Lync and Skype are also separate products though work is under way to bring them together.

Microsoft’s big problem is this. To what it extent can it continue to improve the browser-based apps before it threatens its desktop Office business? Its dilemma is that if it holds back the browser versions, it will cede market share to Google which has no qualms about crushing Microsoft Office.

Microsoft improves its web app builder for Windows Phone, but where is it going with this?

Microsoft has improved its browser-based Windows Phone App Studio beta and added the ability to generate Windows Store apps. The changes are described here.

First, a quick tour. App Studio is carefully described as a tool for building “content-based apps”. The personal use case is an app to show off your recent holiday, favourite band, movie or team, and for businesses, a showcase for your company or a menu for your restaurant.

I find this curious. What is the point of this kind of app? If I want to create a fan project, wouldn’t a mobile-friendly web site or blog be better? And for businesses, what is the value of an app that lacks intelligence? For example, a restaurant might want an app linked to a loyalty scheme where you collect points towards a free meal or qualify for offers, but how many will want an app just to check a menu, which they could easily do online?

Still, I like the idea of an app that will make it easier to read this blog on Windows Phone, so I went in and built an app.

Microsoft is continuing its peculiar and infuriating aversion to proper documentation, but there is a a how to that is somewhat informative. “You can also create a custom action”, it says, but does not tell you what such an action can do or how to use it.

That said, the development environment is reasonably intuitive. There is no interface builder at the level of buttons and listboxes; rather, you drag high-level elements into sections and the user interface is built for you. For example, I added an RSS feed, entered the URL for this blog, and it built a UI to browse and read blog entries.

image

Everything is data bound, and the data can be stored either locally or else hosted by Microsoft, in which case you can amend it dynamically:

App Studio Data Services means the data is stored in App Studio and depends on an internet connection. If you update your data in App Studio, your app will automatically update. This allows you to create live apps that don’t need to be updated when you want to change data.

Large or sophisticated data sets are not the target here though. You could store a short list of addresses, for example.

You can also add elements including HTML text, RSS feeds, YouTube videos, Flickr photos, and Bing searches. You can add actions including initiating a phone call or email, searching Nokia music, or getting directions from Nokia HERE maps.

As you work, a live preview of the app appears alongside your work, a nice feature.

Once done, you can generate the app.

image

New in this version is the ability to generate a Windows Store App for Windows 8.1, as well as a phone app. Once in Visual Studio, you can do what you like, though there is no way back to the visual builder. Apps generated use XAML and C#.

image

App Studio also compiles a Windows Phone binary package (not yet for Windows Store apps) which you can install immediately, provided you have added the necessary certificate. You can install the app by scanning a QR code.

image

There is good work here, and if by any chance you do want to build a “content app” of the type envisaged, it is great.

I have a couple of reservations though.

First, it is too limited to be useful for real-world apps, unless you just use it as a starting point for a Visual Studio project. It needs the ability to write snippets of code, and the ability to link to business data sources like Azure Mobile Services and SQL Server. It also needs a login facility supporting at least Office 365 and Microsoft IDs.

Second, it seems to me that Microsoft is working simultaneously on several projects with overlapping purpose, which is to simplify app building.

Project Siena is a visual app builder implemented as a Windows 8 app; I looked at it here.

Visual Studio Lightswitch is a visual app builder in Visual Studio, which builds apps for Silverlight and HTML.

Access 2013 Web Apps let you build custom databases that hook into Office 365. I looked at these here. This is one easy app builder that really makes sense to me, allowing reasonably sophisticated data models and using Office 365 identities for log-in and permissions.

Windows Phone App Studio as described above.

Now, I appreciate that there are slightly different target markets in each of these. Lightswitch cannot build store apps, Access Web Apps require SharePoint or Office 365, Project Siena cannot build phone apps, and so on.

However, Microsoft needs to unify its development platform, and a proliferation of tools all going for the supposed non-technical app developer is not helping its cause. I also suspect that the demand for consumer “content-based apps” is vanishingly small.

Personally I think Microsoft should both improve and shout from the rooftops about the under appreciated Access 2013 web apps, scrap at least two of the other three, and integrate their functionality so that we have one easy to use app builder that can target Windows Store apps and Windows Phone apps.

What’s up with Facebook acquiring “we don’t sell ads” WhatsApp

Facebook has acquired WhatsApp for a breathtaking $16 billion. Too much money by any normal valuation; but that might not matter if it makes sense strategically.

image

What is the value of WhatsApp?

WhatsApp is on a path to connect 1 billion people. The services that reach that milestone are all incredibly valuable.

says Facebook’s founder and CEO Mark Zuckerberg. Facebook is purchasing an extension to its “social graph”, a billion people’s interconnections. The obvious goal is to accomplish two things:

  • Defend Facebook from disruption and keep users on its network – particularly the younger demographic that may be drifting away.
  • Gather more data which will be used for targeted advertising and potentially rich future services.

There are two companies which dominate the Internet today, and they are Facebook and Google. Their business model is mainly advertising, but they may be better perceived as data companies than as advertising companies. The big bet is that future technology will revolve around smart, deeply personalised services that will improve our lives, based on what they know about us, our friends and connections, our location, our preferences and and our schedule. The clearest expression of this is Google Now which can notify you when to leave for your meeting based on current traffic – without you having to spend time configuring settings or entering data. Google looks at your schedule (which it knows through your calendar), your location (which it knows through your smartphone), mashes that data with its mapping and traffic services, and surfaces the result as a notification.

The trade-off is that you hand over your data to Google (enabling it to provide ever-richer services) while receiving in return an easier life.

Does the deal have a dark side? Undoubtedly. Might future services be paid for, might Google or others take advantage of that data in ways we dislike? Quite possibly. This is the bet though; and it is everywhere.

Take the automotive industry for example. I wrote up the latest buzz in automotive marketing for the Guardian, and heard this from one of the experts I consulted:

“The actual car; the engine, the wheels, the drive shaft, the bodies, those have become commodities. The differentiator for cars is the in-dash system, the computer," says Patrick Salyer, CEO of Gigya. “If car companies can connect with their customers’ social login, they can build a permanent lasting relationship. If the car company tracks things about me like my driving habits and where I go, it is actually a value add insight. That is a reason to stay with that car company”

Salyer thinks that Facebook, Google and automobile companies are in a war to own that data. It is all about the data.

This therefore is what Facebook is buying: future data, in a messaging service that because of its mobile orientation may prove to be a kind of successor to email and SMS messaging.

That is the rationale, but will it work? The problem with WhatsApp is that it is fashionable; and what comes into fashion can go out, too, especially for the young. You can bet too that Google (Facebook’s biggest problem) will counter by using its OS platform, Android, to point users towards its own messaging services. If you have an Android phone you are already logging into Google, no need to sign up for another service.

Who knows, two to three years from now we may be joking about how much Facebook paid for WhatsApp. But Facebook can afford a few big gambles, and does not need for all of them to come off.

Postscript: you should read WhatsApp founder Jan Koum’s blog post on Why we don’t see ads while it is still online.

Advertising isn’t just the disruption of aesthetics, the insults to your intelligence and the interruption of your train of thought. At every company that sells ads, a significant portion of their engineering team spends their day tuning data mining, writing better code to collect all your personal data, upgrading the servers that hold all the data and making sure it’s all being logged and collated and sliced and packaged and shipped out… And at the end of the day the result of it all is a slightly different advertising banner in your browser or on your mobile screen.

Remember, when advertising is involved you the user are the product.

Money, as songwriter prophet Bob Dylan observed, does not talk. It swears.

Microsoft Office 365 and the battle for simplicity

Last week I reviewed a Google Chromebook. Next, I assisted a small business move from Office 365 to Office 365 – yes, Microsoft’s software as a service (SaaS) offering is divided into plans, such that if you want to move from certain plans to certain other plans you have to start again with a new account and copy your data across as best you can, which seems contrary to the smooth experience the cloud is meant to offer. The experience prompts some reflections.

image

Do not move between Office 365 plans then, you might argue; but this is not the only complication with Office 365. There are two reasons for its complexity:

1. Although it is SaaS, Office 365 uses a hybrid model in that users are expected to run desktop Office as well as having an Office 365 account. This is a strength in that Word, Outlook and especially Excel are mature and capable products which many users (myself included) find more productive than equivalent browser-based apps, though familiarity is a factor in this. It is also a weakness, since you have a traditional desktop installation working alongside cloud services. Further, if your PC is stolen, you cannot just pick up another PC, log in, and carry on where you left off. You need to install Office first.

Contrast this to the Chromebook, which adopts a pure cloud model. Technically, many browser apps do run locally, in that JavaScript, Flash applets or Google’s native client executes on your local machine just like Office. This is hidden from the user though, and any installations are tucked away in temporary internet files. If you sign into Chrome on another computer, your settings,  bookmarks, history, passwords and browser extensions are synched automatically.

Microsoft has made great strides with its Office installer. Office 2013 installs in most cases using application virtualisation, based on Microsoft’s App-V technology, which means it runs in an isolated environment and is not prone to problems like dynamic library version conflicts or registry errors. The application streaming is also smart enough to let you run applications before they are fully downloaded, by downloading the essential features first and finishing off in the background. The speed with which you can get started with desktop Office, when downloaded as part of an Office 365 subscription, is impressive.

Nevertheless, Microsoft has not eliminated all the issues with desktop software. Outlook was tricky to migrate, for example, in the move with which I assisted. You have to go to the Mail applet in Control Panel, delete the Outlook profile, and create a new one. If you are not careful you can get a scenario where Outlook tries to start up, pauses for a while, and finally announces “Cannot open the Outlook window” and quits. Then you need a web search or a Windows expert to help you out. This kind of experience is less likely with a Chromebook or any pure cloud model where you simply log onto your cloud service.

The worst example of desktop complexity spoiling cloud simplicity is the SharePoint client confusingly called SkyDrive Pro. It is meant to synch SharePoint documents with your local computer but does not work reliably, and trying to fix it involves fiddly instructions to clear your cache, and subsequent re-download of lots of data (I recommend that you do not use SkyDrive Pro).

2. Office 365 is based on applications which were originally built to be managed by system administrators. The core of it is Exchange and SharePoint, both of which come with a myriad of dependencies and configuration options. In their Office 365 guise, these complications are somewhat hidden, and Microsoft has wrapped them with a decent web user interface, both for end users and Office 365 administrators. Nevertheless, the complexity remains, and there is not much in on-premise Exchange that is not also available in Office 365, particularly if you are willing to log on with PowerShell.

This is not a bad thing as such. For businesses with sophisticated Exchange setups it is a good thing, since the features they need are available in Office 365, and the tools with which to configure it are familiar.

However, it does mean that administering Office 365 is more demanding than perhaps it would have been if designed from the ground up as a cloud application. There are also odd limitations and overlapping features. Let’s say you want to have contacts shared between multiple users. Do you use a SharePoint list, or an Exchange public folder? If you use a public folder, why is it that a top-level public folder can only contain mail items whereas a sub-folder can contain contacts, tasks or calendar items? And if you use an Exchange public folder, don’t forget to go into Outlook and add it to public folder favorites, which enables magic like offline access, and to check the option to “Show as an Outlook address book” so you can select email addresses from it when sending an email – all knowledge which comes from experience of Exchange and Outlook, and which is not intuitive or obvious.

The battle of simplicity versus productivity and features

Considering how Office 365 was created, and Microsoft’s desktop heritage, the progress Microsoft has made in wrestling it into a comprehensive and relatively low-maintenance cloud platform is impressive; but more needs to be done before it comes close to Google’s offering in terms of ease of use and freedom from the hassles of maintaining PCs. Microsoft’s battle is to achieve Google-like simplicity of use but without losing the productivity and features which users value.

The question on Google’s side is how quickly it can offer enough of the features for which users and administrators value Microsoft’s platform to tempt more businesses to make the transition. That means the ability to work on documents and spreadsheets in Google’s browser apps without missing Word and Excel, as well as archiving, compliance and management features to match Exchange.

Many are already happy to work in Google apps, of course. I would be interested to hear from others what keeps them on Microsoft’s platform, or alternatively, why they have found Google (or another cloud provider) a satisfactory alternative.

Notes from the field: manually migrating between Office 365 plans

Microsoft’s Office 365, which provides hosted Exchange, SharePoint and other services, comes in a variety of flavours, some of which include a license to run desktop Office. In some cases it is even possible to mix and match plans. For example, you can have some of your users on Enterprise 1 (E1) (no desktop Office) and some on Enterprise 3 (E3) (includes desktop Office). It gets more awkward though if you want to switch between “families”: the small business family and the Enterprise family. A table here sets out which plans are eligible for switching.

But what if you do want to switch between families, for example to take advantage of the good value Office 365 Midsize Business, which gets you hosted services and desktop office for £9.80 or $15.00 per user/month, compared to E3 which costs £15.00 or $20.00 per user/month? There are some extra features in E3, like Exchange archiving and legal hold, but the cost saving is substantial.

The answer is that you have to switch manually. Microsoft helpfully remarks:

Switching plans manually involves purchasing a new plan, reassigning the licenses, and then cancelling your old plan … If you have a custom domain, you’ll have to remove it from Office 365 and then add it again after you’ve switched plans. This will require some downtime of your services. If you’re switching to a plan in a different service family, you’ll need to back up all of your company’s information before switching plans.

Put another way, you are pretty much on your own. In Active Directory terms (Microsoft’s directory service), it means a new directory and therefore a new cloud identity for all your users. Any other services linked to that directory, such as Intune for PC and device management, will also need replacing.

I helped a small business make this change, so here are a few notes from the field.

The first step is to create the new Office 365 site. You can use a trial and purchase licenses later. It cannot have the name as the old site, for obvious reasons. Every Office 365 is part of the onmicrosoft.com domain. If your old site is mydomain.onmicrosoft.com, you can call the new site mydomain1.onmicrosoft.com.

These onmicrosoft.com subdomains are useful, since they are not affected when you move the custom domain (eg mydomain.com) from one site to the other. You can still use the old onmicrosoft.com domain to access the old site.

Then set up the users. In this case the business is so small it can easily be done manually.

1. Migrating SharePoint

Moving a SharePoint document store from site to another is painful if you cannot do what you would normally do, that is, backup the content database and reattach to a different SharePoint site. Microsoft does not provide any bulk export feature, though you can write your own code. There are third-party migration tools like Sharegate which probably works fine, but for a very small business it is not cheap, starting at $995 for a one-year subscription to the “Lite” version.

I found a quick and dirty solution using an Azure virtual machine. Create an Azure VM running Server 2012 R2, log in using Remote Desktop and install the Desktop Experience. Then navigate to the old SharePoint site, add sites to trusted sites as necessary, and “Open in Explorer” to use WebDAV and view the documents in Windows Explorer. Copy all the documents to a local directory. Then connect to the new site and do the same in reverse.

Why Azure? The idea is to benefit from fast connectivity between Office 365 and Windows Azure. This worked well and the documents copied much more quickly than I could achieve when connecting from my own network.

You do lose document history using this technique. Further, all documents will now be “last modified” on the date the copy is made.

Timing is a problem. In order to minimise downtime, you want users to be able to keep working on the old site for as long as possible. However, during this time they might add or edit documents in SharePoint. I did two passes, once before the cut-off point to get the bulk of them copied, and once after, using Search in Explorer to identify the documents added or changed.

2. Migrating Exchange

Exchange migration is also tricky. Office 365 includes Exchange migration tools but they are designed for moves on-premise to Office 365, not for moving between families. It may be possible to make them work, though this official advice is not promising:

Since they are different service family, and we cannot use such as  Cutover migration to achieve this goal, we just can use export and import pst. Moreover, we cannot parallel 2 user accounts which have the same domain in both 2 tenants, so the service may be impacted. Sorry for the inconvenience.

This support person is suggesting using Outlook to move a mailbox by exporting and importing data. It is an ugly procedure, especially if you are trying to do this without involving the users much. You would have to impersonate each user, connect in Outlook, download the entire mailbox, export it, and then connect Outlook to the new mailbox and import.

I used a third-part cloud service, MigrationWiz, instead. This connects to each hosted Exchange using either impersonation (an Exchange feature which lets a user connect to a mailbox as if they were the mailbox owner) or a user with full control permission on all mailboxes, and copies all the items across.

Unlike Sharegate, MigrationWiz is priced per mailbox, at $11.99 each for a multi-pass license. This make it affordable for a business of any size.

I found MigrationWiz excellent. It was not entirely trouble-free and I got some time-out errors on my first attempt, but these may well be the fault of Office 365 itself. The user interface is good with plentiful statistics on how your migration is going. It did not create any duplicate items.

The worst thing about MigrationWiz is that you have to give your mailbox administrator credentials to a third-party. In some cases that might rule it out; but the company says:

Mailbox credentials are stored using AES encryption. Once credentials are submitted by either the administrator or end-user, the credentials cannot be retrieved or seen. The credentials are immediately purged from the system once you delete the corresponding configuration to which it is associated.

The company is based on Microsoft’s doorstep in Kirkland, Washington, and given how detrimental a security breach would be to the company’s reputation I figured that the risk is small.

3. Moving the domain

How do you move your company domain from one Office 365 account to another? MigrationWiz has a help document on this which is mostly helpful. You do have to accept some email downtime. I did what MigrationWiz suggests, which is to point the MX records for the custom domain at an unreachable site, temporarily. You can do this in the middle of the night or at the weekend to minimise the inconvenience.

However, I did not like this advice:

Delete all users, contacts and groups from the source Office 365 account.  This step is important to ensure that no object reference the domain.  Just removing the email address from objects is not sufficient.

I am cautious and wanted to keep the old site intact with its mailboxes until the business says it is confident that everything has been transferred successfully. Therefore I tried doing this the way Microsoft suggests:

  • Remove all references to the custom domain from the old site. This includes making sure it is not the default domain, and removing any email addresses which reference it, not only from users, but also from mail-enabled groups or resources in Exchange. If you have a public web site using the custom domain, remove it from there as well.
  • Remove the custom domain from the old site.
  • Add the custom domain to the new site, verify it, and amend the DNS records as needed.

I was successful and moved the custom domain without having to delete the old user accounts.

4. Reconfiguring Outlook

What happens when users now run Outlook? Might Outlook prompt for the new password (presuming you changed user passwords), connect to the new site, and upload the contents of its old mailbox to the new mailbox, duplicating the work of MigrationWiz and leaving users with two of everything?

Apparently it does not do this, though my recommendation is to delete the old Outlook profile (mail applet in control panel) and create a new one before attempting to connect to the new account. Outlook will have to re-download the mailbox, though it is smart about downloading new and recent emails first.

5. Migrating Intune

If you also use Intune, you have to set up a new Intune account linked to the new Office 365 domain (even if the custom domain is the same), and remove PCs from the old Intune account. You do this by “retiring” them in the Intune portal. This is meant to set up a scheduled task on the client PCs which removes the Intune client. Then you can join the client PC to the new Intune account by running the Intune client setup from the Intune portal.

If this does not work, and the client PC remains stubbornly enrolled to the old Intune account, you can use this procedure:

  1. Open an admin command prompt
  2. Navigate to C:\Program Files\Microsoft\OnlineManagement\Common
  3. Run "ProvisioningUtil /UninstallAgents /WindowsIntune"

It will create a scheduled task and shortly uninstall all the agents. (be patient)

For more information on removing the Intune client, see http://douwevanderuit.wordpress.com/2014/01/30/removing-windows-intune-client/.

There is a downside to this. Imagine you have used Intune to suppress some update that breaks something on your client PCs. When the Intune client is removed, the PC will revert to using Microsoft Update until it is re-enrolled in the new Intune. During that time it may install the update you were trying to suppress.

Note:

On one machine we got this error when reinstalling the Intune client:

image

“The software cannot be installed. The account certificate must be in the same folder as the installer, or the user account must already be authorized to use Windows Intune”

My guess is that the new Intune setup is fining the old Intune account certificate and therefore failing. The fix is to download the setup manually from the Intune Admin portal. This setup is a zip which includes the account certificate (the .exe download is different and does not include the certificate – you must use the zip setup). This setup ran successfully and rejoined the machine to Intune.

6. Why is this necessary?

Everything worked and while it is not entirely pain-free, with relatively little inconvenience for the users.

However, how difficult would it be for Microsoft to adapt its “switch plans” wizard to accommodate this kind of switch, subject to the proviso that anything which depends on a feature that does not exist in the target plan would not be migrated?

In fact, I am not sure why it is necessary to have so many plans at all. Why not have it so that you can mix and match licenses from any plan?

Review: Acer C720 Chromebook and reflections on Chrome OS

When I saw the first announcement of Chrome OS I was amazed and wrote a breathless post:

I’m watching Google’s press briefing on the forthcoming Chrome OS. It is amazing. What Google is developing is a computer that answers several of the problems that have troubled users since the advent of the personal computer.

That was in November 2009. Unfortunately it has taken me a while to try a Chromebook (the generic name for a computer running Chrome OS) for myself; but I have been trying out an Acer C720 and what follows is in part a review of this machine, and in part some wider reflections on the Chrome OS and Chromebook concept.

image

In terms of hardware, a Chromebook is another take on the netbook idea: a small, light laptop but running Linux rather than Windows. The earliest netbooks also ran Linux but the mass market could not cope with it; Google has done what is necessary to make it work for non-technical people, not least by hiding almost all of the operating system other than the browser.

I have given detailed specifications at the end of this post, but in summary this is an 11.6″ traditional clamshell laptop/netbook with 1.4Ghz Intel Haswell processor, 2GB RAM and 16GB SSD. It weighs just 1.2Kg

It’s cheap. You can pick one up for just under £200 at Amazon; it’s smart looking and does not feel as cheap as it is.

At left we have power input, HDMI out, USB 3.0 port and a standard headset socket.

image

On the right there is an SD card slot, USB 2.0, and a lock attachment point.

image

You can get a touchscreen version for an additional £80 or so but it does not seem worth it to me.

When you turn on for the first time, you have to accept the Google agreement. You won’t read it all, but here is something you should note:

You acknowledge and agree that Google may stop (permanently or temporarily) providing the Services (or any features within the Services) to you or to users generally at Google’s sole discretion, without prior notice to you…

You acknowledge and agree that if Google disables access to your account, you may be prevented from accessing the Services, your account details, or any files or other content which is contained in your account.

More on this later.

You can sign in as guest, and use the device to browse the web, or you can sign in with a Google account. If you sign in as guest, none of your activity (including any files you download) will be preserved when you sign out. This is a nice feature for, literally, guests for whom you want to give internet access while protecting both your privacy and to some extent theirs.

Normally you will sign in with a Google account. If you have used Google’s Chrome browser, much will be familiar. What you get is the browser, which you can run full screen or in a resizable window, and a taskbar along the bottom which shows running apps, date and time, network connection, battery status, and notifications.

Local storage is accessible via a file browser. This gives access to a Downloads folder, Google Drive which is cloud storage but includes offline files that are available locally, and USB storage devices that you attach.

I attached a drive full of media files and was able to play MP4 video and FLAC audio without any problems. Some file types, such as PDF and Microsoft Office, open in the browser. This aspect can be disorienting; there is no Quit option, but you just close the browser tab when you are done.

At the left of the taskbar is an Apps button which you might think of as a Start button since it has the same purpose. Click it, and app shortcuts appear in a window. You can also press the Search key, which sits where you would expect to see Caps Lock.

image

A Chrome OS app is a web app, though it can take advantage of Chrome features like access to local storage or NaCl (Native Client), which lets you run compiled native code in the browser. NaCl is enabled by default.

I actually have a web app in the Chrome Store – apologies it is not very good, but it was a demonstration to support this how-to; it is really not difficult to adapt a web site though as ever, excellence is more challenging.

As an app platform, it would be wrong to think of a Chromebook as “crippled”, though it does require a change of mind-set if you are used to apps on Windows, OSX, iOS or Android. Apps are sandboxed, of course, and run in the browser, but native performance is possible and there are ways to access devices like the camera and local storage. Adobe Flash is also available. This is a physics demo using Native Client:

image

and this is an audio editor:

image

Can you get your work done? Probably, but if you are like me you will miss a few things like Microsoft Office or equivalent, or the Live Writer blog authoring tool (for which I have not found a good replacement on any platform). Of course you have full access to Google Docs, for browser-based document editing.

It also turns out that a Chromebook is a rather good Microsoft SkyDrive or Office 365 client. Perhaps it is just familiarity, but I prefer Office Web Apps to the Google Docs equivalents.

image

I did experience an oddity in Office 365. I clicked a link to a recently opened document, which was an URL to a .docx file. This should have opened the document in Word web app, but instead it opened in a beta of Quickoffice running as a Chrome extension. This is bad, since editing the document and hitting save opened a Save As dialog for the local drive, or Google Drive, not the SharePoint site, and when I tried a document including an image, it was reported as corrupt.

It is possible to do some coding on a Chromebook, for example using the rather good online scripting IDE at script.google.com. This is a debugging session using the example script, which creates a document in Google Apps and emails a link:

image

If you get stuck, there is always remote desktop to a Windows box as a fallback. There are several clients to choose from, of which I used 2X:

image

Although the Linux shell is hidden unless you enable developer mode, you can press Ctrl-Alt-T and open crosh (Chrome OS Shell), enabling simple network testing with ping as well as an ssh client. More features magically appear if you do enable developer mode.

image

Chromebook pros and cons

A Google Chromebook has several big advantages.

One, it’s safe; not entirely safe perhaps, but relatively immune from malware given that most users never get deeper into the operating system than the web browser, and therefore neither does anything else – though the machine is in fact hackable (in a good way) if you switch to Developer mode, and you can do things like getting shell access or installing Ubuntu if you want.

Second, it is good value. You are not paying for Windows or Office, and whatever deal Google makes with OEMs like Acer must be generous enough to allow for low prices.

It would actually make sense for Google to subsidise Chromebooks if it needed to, since they drive users to its services.

Third, a Chromebook is cloud-centric. If you lose it, or upgrade to a new machine, all your data will be there on Google’s cloud and you will hardly notice, with seamless sync of settings when you log in.

Fourth, Google and its hardware partners (in this case Acer) have done a good job. Sleep and resume works reliably – more so than any Windows machine I have known – and boot from cold takes seconds. Performance is fine, provided you have a strong internet connection.

There is no unwanted third-party software here unless you count Google’s own services; but if you did not want them you probably should not have bought a Chromebook. The out of box experience is good.

What are the annoyances? Here are a few.

The user interface is effective and not difficult to learn, though I do find that the screen fills with multiple tabs which is ugly and not that easy to navigate. You can float a browser window by dragging it down, in which case you get something that behaves as a new instance, and you can switch between instances with alt-tab.

Printing is awkward in that you have to set up Google Cloud Print and send your documents to Google and back even if the printer is right next to you.

Working offline is a problem but maybe not as bad as you have heard. The app store has a section devoted to apps that work offline, and you can create and edit documents offline other than spreadsheets, which are read-only. There is no problem with playing some videos or music from the built-in storage or from a USB drive when on the move and offline. If you are going to be offline a lot though, this is probably not the best choice.

Is this machine locked to Google? Maybe not as much as you would expect. There is no alternative web browser, but you can set your search engine to Bing, DuckDuckGo or anotehr if you prefer. Or you can enable developer mode and you install Linux, either in place of, or alongside Chrome OS. The two obvious choices are ChrUbuntu and Crouton, and setup is nicely explained here

http://www.kitware.com/blog/home/post/498

Does this machine breach your privacy? That is tough to answer; but it is worth noting that Chromebook offers, as far as I can tell, the same privacy settings that are in the Chrome browser. If you are happy using the Chrome browser in Windows or elsewhere, there is no reason not to be happy with a Chromebook from this perspective.

That said, this machine is committed to, on the one hand, cloud and web apps, and alongside that, the Google life. The two main objections to the Google life, it seems to me, are that Google’s business model depends on advertising and mining personal data for that purpose; and that it has been known for individuals to get locked out of their Google accounts for what might be arbitrary reasons whereupon comeback is difficult. It may be though that I worry too much, since this is uncommon, and trusting everything to Google is probably not high on the list of the most stupid things to do in IT.

Summing up

This is not a machine for every task. It is not a powerhouse, and in case you had not noticed, will not run apps other than browser apps. Either of those could be deal-breakers and might mean that you need a different device.

It is early days for laptops that run only browser apps, and there are areas of immaturity. Some file types are not supported or badly supported. The app store has limitations, and although there is a browser-based solution to most common tasks, it may not equal what can be done with a conventional app. The user interface is reasonable but utilitarian. Tastes vary, but personally I do not find Google Apps the equal of Microsoft Office yet, and I even miss Outlook, despite its many annoyances.

There are compromises then; but this is still a great little laptop, light and convenient, quick and responsive, and almost immune to PC-style problems and slowdowns.

In business or education, it is easy to see the attraction of a machine that is low maintenance and simple to replace if it breaks, provided that its capabilities match the tasks that are required.

The comparison with Windows RT is interesting and will be the subject of a separate post.

Watch this space. Chromebooks are already making inroads into the market for budget laptops, and in education, and I would expect this momentum to gather force as the platform matures.

Detailed specification:

  • Intel Celeron 2955U 1.4 GHz processor
  • 2GB RAM
  • SD card slot
  • 16GB SSD
  • 11.6″ 1366 x 768 TFT screen
  • Intel GMA HD Graphics
  • Webcam and Microphone
  • 3.5mm headset socket
  • HDMI out, 1USB 3.0, 1 USB 2.0
  • Wireless: 802.11a/b/g/n, Bluetooth 4.0 +HS (High Speed)
  • 3950 mAh battery, quoted 8.5 hr battery life
  • Weight: 1.25 Kg

Something that needs fixing in Office 365: sometimes you cannot log out

Microsoft is notorious for asking users to log in multiple times, even when you check “Keep me signed in”.

Now we have the opposite problem. Here I am in Office 365, logged in as the admin user:

image

I need a break and want to stay secure, so I drop-down the menu top right and choose Sign out:

image

Lo, I am still signed in:

image

And no, it is not just a browser cache issue or similar. You can still do administrative tasks.

I have seen references to the bug in Microsoft support forums, so it is known, but unfixed for ages.

I do not publicise this sort of stuff because of any antipathy towards Microsoft. Rather, I do it because it needs to be improved.

A closer look at Azure web sites: beware suspension

I am investigating moving this site to Windows Azure. The major benefit would be scalability. Currently it runs on a Linux VM which works very well, but in the event of a major spike in traffic (which is always possible with a news/comment site) it cannot scale.

Windows Azure web sites have nice scalability features. You can add and remove instances, or set up autoscaling based on a schedule or by CPU usage.

Unfortunately this does not come cheap. For autoscaling, you need a Standard web site, which starts at around £35 per month (1 core, 1.75GB RAM) for a Small instance, if you buy a 6 month plan.

Backtracking a little, Azure offers three levels of web site:

  • Free: Shared hosting, 1GB storage, 165MB per day outbound transfer
  • Shared: Shared hosting, 1GB storage, 5GB per day outbound transfer, up to 6 instances. In preview but currently around £7.00 per month per instance
  • Standard: Dedicated hosting, starts at £48 per month pay as you go, £35 per month 6 month plan.

For a quick test, I set up Brandoo WordPress from the Azure app gallery. Brandoo WordPress uses SQL Server rather than MySQL. MySQL on Azure is only available from a third party, ClearDB, which puts me off using it, unless you go a different route and use your own Windows or Linux VM to run it, losing the scalability benefit.

I started with a free web site. I have used free web sites in the past to prototype .NET applications, for which purpose they are excellent. The experience with WordPress was not so good. The site seemed to hang during the WordPress install wizard. My second go was successful, but the site was slow even just navigating the dashboard. Hopeless for any serious use beyond prototyping.

I converted the site to Shared hosting. The price is modest, and I wondered if the ability to scale manually up to 6 instances when needed might be sufficient. The performance improved markedly, compared to the free version. However I noticed these odd metrics in the dashboard: CPU time and Memory Usage, with notes like “Resets in 5 hours” or “Resets in 33 minutes”.

image

In particular, I noted that I had used nearly half of my allocated “Memory usage” just installing an empty WordPress site.

I am not familiar with measuring memory usage per hour and I am not even sure what it means. However, it seems that the consequences of exceeding either the CPU or the memory limit is extreme. The web site is suspended. See for example here:

Something strange happened today. My website on windowsAzure was suspended and inaccessible because my site had exceeded the CPU quotum. I am running the website in shared mode, but I had removed all quota. So why is my website suspended, I thought I would pay for the extra usage, not that my website would be suspended. What is happening here? And what should I do to prevent this from happening again?

See also Jonas Gauffin’s post Azure Failed Me (which has a more positive conclusion than you might expect from the title):

Today I were going to search my blog (http://blog.gauffin.org) about how to do a (almost) a generic type constraint for enums. But instead I got this screen: This site is currently not available. The scary thing is that I’ve got no notification what so ever about my site being down. So I browsed to the manage web site part of Azure and was greeted by the following screen: Suspended. As you see the CPU time has been consumed.

The same problem, I am guessing, hit this user, who has a tutorial on setting up a WordPress blog to Azure, but says at the end not to use it:

Also, even after perfect configuration of the website, Windows Azure was still showing some problems like this “This site is currently not available…” what a joke, the site is in cloud – global cloud – and not available, so when will?

though he apparently did not identify the reason.

It does not seem to me unreasonable that the free option suspends your site; it is free after all. The shared site is low-budget, but still paid for, and it seems to me that the problem of suspension should be spelt out more clearly. If you read:

A web site running in Shared mode benefits from high availability even with a single instance, but you can add up to 6 instances ("scale out") for even greater performance and fault tolerance.

you do not expect that the site will simply stop responding for up to a day if it exceeds CPU or memory limits that are often not easy to predict.

There are thousands of hosting services offering shared hosting or WordPress blogs at low prices, not least WordPress.com, and in general these sites do not get suspended because of exceeding CPU or memory limits.

The conclusion though is that if you want to use Azure for a site whose uptime you care about, you should plan to use no less than a Standard instance.

Ah, Microsoft! Should it give up Windows Phone, adopt Android, abandon Windows 8 “Metro”? No, and here is why.

On Windows 8, Gruber puts it succinctly:

Rather than accept a world where Windows persisted as merely one of several massively popular personal computing platforms, and focus on making Windows as it was better for people who want to use desktop and notebook PCs, Microsoft forged ahead with a design that displeased traditional PC users and did little to gain itself a foothold in the burgeoning tablet market.

The implication is that Microsoft should make Windows “9” more like Windows 7, and give up trying to push Windows as a tablet OS.

And Charles Arthur argues:

To add to all the advice being ladled out to Satya Nadella, Microsoft’s new chief, here’s another piece: stop bothering with Windows Phone. It’s a waste of money which will never pay off.

Instead, focus the efforts of Microsoft and soon-to-be subsidiary Nokia on forking Android – because that way you can exploit the huge number of Chinese handset makers who want to burst out of China and sell to the rest of the world.

These pieces raise deep questions. Can Microsoft – which, you recall, announced record revenue for its most recent financial quarter – prosper in applications and services while ceding the client to Apple and Google?

Despite its record revenue, I do not want to belittle Microsoft’s problems. Windows Phone has some momentum, but only as a distant third in the smartphone market. Windows 8 is broadly unpopular and its tablet personality has not taken off or driven the big app opportunities that were hoped for. OEMs are withdrawing from the PC market, with Sony the latest casualty, while others such as Asus are experimenting with Android/Windows hybrids – this last a huge testimony to the failure of Windows 8 as a tablet OS.

And let’s not forget the Surface RT writedown, and the withdrawal of all OEM support for Windows RT, the ARM variant of Windows 8.

Stephen Sinofsky, who masterminded Windows 8, but left soon after its launch for reasons that are still not entirely clear, was not a fool though.

image

He saw, correctly, that while Windows 8 was a big risk, carrying down a path of incremental improvements to Windows 7 would not stem its decline. Instead, he crafted a new Windows that can still be “Windows 7” when configured and used that way, but which also runs a modern operating system:

  • Apps deployed from a store, isolated from one another and from the OS, seamlessly kept up to date
  • Roaming data and settings for all users, not just in carefully managed enterprises
  • A true touch-friendly OS, not just Windows desktop with better touch support bodged on top

I have no doubt that this is the direction for client operating systems. There is still a role, and will be for the foreseeable future, for open operating systems like desktop Windows, Mac OSX, Linux, which can run unrestricted applications and are infinitely tweakable, but such operating systems are high maintenance, vulnerable to malware, and painful when you buy a new personal computer and want to migrate.

My guess is that in Windows vNext we will see a softening of the division between the Windows Runtime “Metro” environment and that of desktop Windows. It is already known that previews of the next Windows update show Metro apps on the desktop taskbar, and more integration may become. Metro Apps in floating desktop windows? The taskbar present in both environments? Could there be provision for desktop apps, subject to some restrictions, to be deployable from the Windows Store as Apple has done for OSX? Such things are possible and at this point would help to drive Metro adoption by making Windows Store apps more acceptable to desktop users, but without losing the underlying benefits of the Windows Runtime.

What though of Windows Phone? It seems to me obvious that “Windows Phone” and “Windows Runtime” have to become one operating system. It is not yet clear how the mix of device form factors will settle in the coming years. It may not be dominated by tablets; I have seen arguments that converged “phablet” devices will eat into the traditional tablet market. The laptop-style device is by no means dead, as the success of Google’s Chromebooks demonstrate; I have gone off the clamshell design myself, but it makes sense if you want to have a screen and keyboard in a single device without the expense of hybrid designs where the screen pulls off to make a tablet. Operating system vendors need to be flexible and to support a variety of screen sizes and touch/keyboard/mouse configurations. For Windows then:

  • The Windows Phone runtime and the Windows Runtime need to come together as a single development platform. Phone apps should run on full Windows and Windows Runtime apps should run on the Phone subject to designing for smaller screens.
  • There will be some Windows devices that run only the touch-friendly environment, and some that run desktop Windows as well.

If you follow this reasoning, then abandoning Windows Phone makes little sense, unless you abandon both Windows Phone and the “Metro” platform in Windows 8, because they will become the same thing.

But why not do that then? Microsoft could let iOS and Android handle the phone/tablet/phablet platform, preserve Windows as a desktop OS for running Office, Photoshop, Autocad and so on, and focus on apps for iOS and Android including Office and rich clients for Office 365. Adapt Visual Studio so that it targets iOS and Android (maybe a deal with Xamarin?).

This scenario may prevail whether or not Microsoft encourages it, but it seems to me a doomed strategy that will result in a much shrunken Microsoft. The problem is that if you own the client OS, you can direct users to your own platform services, making it hard for others to compete at the same level.

Think of Apple and mapping. Apple was willing to take a significant blow to its reputation by rolling out an inferior mapping service with iOS 5.0, to meet a long-term goal of removing dependency on Google Maps. Mapping is strategic because via maps can come location-based marketing which is a big deal.

Now think of that from Google’s perspective. Despite having the best maps, it could not prevent Apple driving a majority users to its own inferior mapping service, because it did not own iOS.

This is not quite what Charles Arthur is suggesting though. His proposal:

Forking Android wouldn’t be trivial, but Microsoft could take the Android Open Source Platform (AOSP) that is already widely used in China and put new services on top. It is already licensing Here maps from Nokia (the bit that’s not being sold to it). It could add its own mail client and app store. It has its own search engine, Bing, which has needed a major mobile deal. As with Windows Phone, setting up or signing in to an outlook.com email account could be your first step. Everything’s ready.

Most useful of all, developers who have written Android apps would be able to port them over with minimal effort – as has happened with Amazon’s Kindle Fire effort.

In other words, he suggests that by forking Android Microsoft could continue to own the operating system on its own devices, but could get access to a wider range of apps.

Unfortunately there are too many downsides and too little benefit:

  • Google is working hard to make Android unforkable, via increasing the dependency on proprietary Google Mobile Services. Microsoft could make an Android-based device, but without Google Mobile Services it would be in effect a new variant, neither Android nor Windows Phone but something else. Amazon has done this with Kindle Fire, but is starting from the base of a successful line of eBook readers. Why would anyone buy Microsoft’s Android devices?
  • Microsoft’s remaining developer community would be broken irretrievably by yet another dramatic change of direction.
  • Whatever the differences may be between the Windows Runtime or Phone Runtime, and Windows Desktop, the differences between Android and Windows Desktop are even greater. The synergy between the two would be lost. The strategy for supporting multiple form factors outlined above would no longer be possible.

Last night I talked to a Microsoft partner about the state of Microsoft’s client platform. His company provides IT services and some software development for local businesses. He understands the unpopularity of Windows 8, but said that most objections disappear after a day of handholding. He sees the value of Windows Runtime in business for security and easy deployment. He is writing a Windows Runtime app as part of a solution in the healthcare industry, where tablets will be used. He worries about lack of security in Android.

One final thought. There are only two companies that own an entire stack from cloud to device, for businesses and consumers. One is Microsoft (strong in the enterprise, weak in consumer devices, weak in search). The other is Google (weak in the enterprise, strong in consumer devices, strong in search). I do not count Apple because it has no cloud application platform to compete with Office 365/Google apps or Azure/Google App Engine. I do not count Amazon because it has no Office 365 (software as a service) and no mobile phone (yet).

It would be a mistake for Microsoft to cede a key part of that stack to a competitor, leaving Google standing alone.

Reflecting on Microsoft’s choice of Satya Nadella as new CEO

Microsoft has announced it’s new CEO at last: Satya Nadella, formerly in charge of Cloud and Enterprise (in other words, the server part of Microsoft’s business).

image

The press release also states that co-founder and former CEO Bill Gates will be a little more active:

Microsoft also announced that Bill Gates, previously Chairman of the Board of Directors, will assume a new role on the Board as Founder and Technology Advisor, and will devote more time to the company, supporting Nadella in shaping technology and product direction.

Microsoft is a curious company, perceived as failing due to the rapid decline in PC sales and failure to break through in mobile devices, yet announcing record revenue. What is significant about this appointment?

First, it is internal. That means the board decided that the risk of appointing an outsider who might shake up the company and change its focus was too great. I am inclined to agree.

Second, Microsoft is replacing a marketing guy (Ballmer) with a technical guy. “The best code is poetry,” he says in his bio. This also is a smart move. The key influencers in the IT industry – developers, IT admins, geeks – relate best to executives who also have a technical background.

Third, it is building on success. Microsoft has struggled with Windows client and devices, but has charged ahead in server and is progressing fast in cloud, both Azure and Office 365. That is in part a credit to Nadella.

I have met Nadella on several occasions; he is less shouty than Ballmer and will likely come over better in most public appearances. I had an opportunity to put a few questions at the launch of Visual Studio 2012, shortly before the release of Windows 8, and wrote this up for the Register. I asked him, “Is Windows so much weighed down by legacy and the need to support existing applications that Microsoft cannot advance its platform?” His answers demonstrate a clear understanding of the legacy problem that still entraps Microsoft: too much change, and you lose the confidence of existing users; too little change, and your platform races towards irrelevance.

Nadella’s appointment may be perceived as cautious, on the grounds that as an insider he is less likely to introduce a radical chance of direction. There is much nonsense talked about Microsoft though, and critics can be self-contradictory, seeing changes made to Windows as negative while at the same time stating that Microsoft has done too little to keep pace with Apple and Google in devices. The Ballmer and Sinofsky era was more one of too much change than too little, and the challenge now is make those changes work, rather than to tip them out and start again, so a certain amount of caution is no bad thing.