Category Archives: windows

Thirty years of mainly not the Mac

It’s Mac anniversary time: 30 years since the first Macintosh (with 128K RAM) in 1984 – January 24th according to Wikipedia; Apple’s beautiful timeline is rather sketchy when it comes to details like actual dates or specs.

My first personal computer though was a hand-me-down Commodore PET 4032 with only 32K of RAM, which pre-dated the Mac by about 4 years (though not by the time I got hold of it).

image

The PET was fun because it was small enough that you could learn almost everything there was to know about it though a book called The PET Revealed that listed every address and what it did. I had a word processor called Wordcraft that was excellent, provided you could live with only having one page in memory at a time; a spreadsheet called VisiCalc that was even better; and a database that was so bad that I forget its name. You could also play Space Invaders using a character-based screen; the missiles were double-dagger (ǂ)characters.

The small company that I was a little involved with at the time migrated to Macs almost as soon as they were available so I had some contact with them early on. The defining moment in my personal computer history though was when I needed to buy a new machine for a college course. What would it be?

If all the choices had cost the same, I would have purchased a Mac. My second choice, since this was a machine for work, would have been a PC clone. Both were expensive enough that I did not seriously consider them.

Instead, I bought a Jackintosh, sorry an Atari ST, with a mono 640 x 200 monitor and a second disk drive. It had the GEM graphical user interface, 512K RAM, a Motorola 68000 CPU, and built-in MIDI ports making it popular with musicians.

The ST exceeded expectations. Despite being mainly perceived as a games machine, there were some excellent applications. I settled on Protext and later That’s Write for word processing, Signum for desktop publishing, Logistix for spreadsheets, Superbase for database, the wonderful Notator for messing around with MIDI and music notation, and did some programming with GFA Basic and HiSoft C.

If I had had a Mac or PC, I would have benefited from a wider choice of business applications, but lost out on the gaming side (which I could not entirely resist). The ST had some quirks but most things could be achieved, and the effort was illuminating in the sense of learning how computers and software tick.

Despite the Mac-like UI of the Atari ST, my sense was that most Atari owners migrated to the PC, partly perhaps for cost reasons, and partly because of the PC’s culture of “do anything you want” which was more like that of the ST. The PC’s strength in business also made it a better choice in some areas, like database work.

I was also doing increasing amounts of IT journalism, and moving from ST Format to PC Format to Personal Computer World kept me mainly in the PC camp.

For many years though I have found it important to keep up with the Mac, as well as using it for testing, and have had a series of machines. I now have my desktop set up so I can switch easily between PC and Mac. I enjoy visiting it from time to time but I am not tempted to live there. It is no more productive for me than a PC, and Microsoft Office works better on a PC in my experience (no surprise) which is a factor. I miss some favourite utilities like Live Writer, dBpoweramp, and Foobar 2000.

That said, I recognise the advantages of the Mac for many users, in terms of usability, design, and fewer annoyances than Windows. Developers benefit from a UNIX-like operating system that works better with open source tools. There is still a price premium, but not to the extent there was when I picked an Atari ST instead.

Happy Anniversary Apple.

Microsoft financials: record revenue, consumer sales declining in drift towards Enterprise

Microsoft has announced record revenue for its second financial quarter, October-December 2013. Revenue was bumped up by the launch of Xbox One (3.9 million sold) and new Surface hardware. The real stars though were the server products:

  • SQL Server continued to gain market share with revenue growing double-digits.

  • System Center showed continued strength with double-digit revenue growth.

  • Commercial cloud services revenue more than doubled.

  • Office 365 commercial seats and Azure customers both grew triple-digits.

says the press release.

Another plus point is Bing, which Microsoft says now has 18.2% market share in the USA. Search advertising revenue is up 34%.

It is not all good news. While Microsoft is doing fine in server and cloud, the consumer market is not going well, leaving aside the expected boost from a new Xbox launch:

  • Windows OEM non-pro revenue down 20% year on year (that’s consumer PCs)
  • Office consumer revenue down 24% year on year – partly attributed to the shift towards subscription sales of Office 365 Home Premium

As usual, I have put the results into a quick table for easier viewing:

Quarter ending December 31st 2013 vs quarter ending December 31st 2012, $millions

Segment Revenue Change Gross margin Change
Devices and Consumer Licensing 5384 -319 4978 -153
Devices and Consumer Hardware 4729 +1921 411 -351
Devices and Consumer Other 1793 -206 431 -455
Commercial Licensing 10888 +753 10077 +751
Commercial Other 1780 +391 415 +199

The categories are opaque so here is a quick summary:

Devices and Consumer Licensing: non-volume and non-subscription licensing of Windows, Office, Windows Phone, and “ related patent licensing; and certain other patent licensing revenue” – all those Android royalties?

Devices and Consumer Hardware: the Xbox 360, Xbox Live subscriptions, Surface, and Microsoft PC accessories.

Devices and Consumer Other: Resale, including Windows Store, Xbox Live transactions (other than subscriptions), Windows Phone Marketplace; search advertising; display advertising; Office 365 Home Premium subscriptions; Microsoft Studios (games), retail stores.

Commercial Licensing: server products, including Windows Server, Microsoft SQL Server, Visual Studio, System Center, and Windows Embedded; volume licensing of Windows, Office, Exchange, SharePoint, and Lync; Microsoft Dynamics business solutions, excluding Dynamics CRM Online; Skype.

Commercial Other: Enterprise Services, including support and consulting; Office 365 (excluding Office 365 Home Premium), other Microsoft Office online offerings, and Dynamics CRM Online; Windows Azure.

Here is what is notable. Looking at these figures, Microsoft’s cash cow is obvious: licensing server products, Windows and Office to businesses, which is profitable almost to the point of disgrace: gross margin $million 10,077 on sales of $million 10,888. Microsoft breaks this down a little. Hyper-V has gained 5 points of share, it says, and Windows volume licensing is up 10%.

Cloud (Office 365, Azure, Dynamics CRM online) may be growing strongly, but it is a sideshow relative to the on-premises licensing.

How do we reconcile yet another bumper quarter with the Microsoft/Windows is dead meme? The answer is that it is not dead yet, but the shift away from the consumer market and the deep dependency on on-premises licensing are long-term concerns. Microsoft remains vulnerable to disruption from cheap and easy to maintain clients like Google’s Chromebook, tied to non-Microsoft cloud services.

Nevertheless, these figures do show that, for the moment at least, Microsoft can continue to thrive despite the declining PC market, more so that most of its hardware partners.

Postscript: Microsoft’s segments disguise the reality of its gross margins. The cost of “licensing” is small but it is obvious from its figures that Microsoft is not including all the costs of creating and maintaining the products being licensed. If we look at the figures from a year ago, for example, Microsoft reported a gross margin of $million 2121 on revenue of $million 5186 for Server and Tools. That information is no longer provided and as far as I can tell, we can only guess at the cost per segment of its software products . However, looking at the income statements, you can see that overall Microsoft spent $million 2748 on Research and Development, $million 4283 on Sales and Marketing, and $million 1235 on General and administrative in the quarter.

Results for Nokia’s last quarter with Windows Phone: slightly worse than flat? Over to you Microsoft

Nokia has released its fourth quarter results for 2013. They make odd reading because of the division into “Continuing operations” and “Discontinued operations”, the latter including the mobile phone business which has been acquired by Microsoft. This tends to cloud the key point of interest for some of us, which is how Windows Phone is faring in the market.

The answer seems to be that sales slightly declined, though it is not clear. Here is what we know.

Mobile phone revenue overall declined by 29% year on year and by 5% quarter on quarter, for the quarter ending December 2013.

Nokia states in its report:

The year-on-year decline in discontinued operations net sales in the fourth quarter 2013 was primarily due to lower Mobile Phones net sales and, to a lesser extent, lower Smart Devices net sales. Our Mobile Phones net sales were affected by competitive industry dynamics, including intense smartphone competition at increasingly lower price points and intense competition at the low end of our product portfolio. Our Smart Devices net sales were affected by competitive industry dynamics including the strong momentum of competing smartphone platforms, as well as our portfolio transition from Symbian products to Lumia products.

Disappointing; though in mitigation Lumia (ie Windows Phone) sales volume in 2013 overall is said to be double that in 2012.

We do know that much of Lumia’s success is thanks to the introduction of low-end devices such as the Lumia 520. That has been good for building market share, but not so good for app sales or mind share – on the assumption that that purchasers of high-end devices are more likely to spend on apps, and that aspirational devices have a greater influence on mind share than cheap ones.

That does mean though that units might have gone up even though revenue has fallen.

Still, the results do put a dampener on the theory that Windows Phone is taking off at last.

This is a moment of transition following the Microsoft acquisition. Microsoft has not got a good track record with acquisitions, and the Danger/Kin disaster is hard to forget, but Nokia comes with an influential executive (Stephen Elop) and common sense would suggest that the team which created excellent devices like the Lumia 1020, and which was able to engineer strong budget offerings like the 520, should be kept together as far as possible. Or will it be dragged into the mire of Microsoft’s notorious internal politics? Over to you Microsoft.

Update: it is now reported that Lumia sold 8.2m devices in Q4, down from 8.8m in Q3 but up from 4.4m in the same quarter 2012.

Microsoft and developer trust

David Sobeski, former Microsoft General Manager, has written about Trust, Users and The Developer Division. It is interesting to me since I recall all these changes: the evolution of the Microsoft C++ from Programmer’s Workbench (which few used) to Visual C++ and then Visual Studio; the original Visual Basic, the transition from VBX to OCX; DDE, OLE and OLE Automation and COM automation, the arrival of C# and .NET and the misery of Visual Basic developers who had to learn .NET; how DCOM (Distributed COM) was the future, especially in conjunction with Transaction Server, and then how it wasn’t, and XML web services were the future, with SOAP and WSDL, and then it wasn’t because REST is better; the transition from ASP to ASP.NET (totally different) to ASP.NET MVC (largely different); and of course the database APIs, the canonical case for Microsoft’s API mind-changing, as DAO gave way to ADO gave way to ADO.NET, not to mention various other SQL Server client libraries, and then there was LINQ and LINQ to SQL and Entity Framework and it is hard to keep up (speaking personally I have not yet really got to grips with Entity Framework).

There is much truth in what Sobeski says; yet his perspective is, I feel, overly negative. At least some of Microsoft’s changes were worthwhile. In particular, the transition to .NET and the introduction of C# was successful and it proved an strong and popular platform for business applications – more so than would have been the case if Microsoft had stuck with C++ and COM-based Visual Basic forever; and yes, the flight to Java would have been more pronounced if C# had not appeared.

Should Silverlight XAML have been “fully compatible” with WPF XAML as Sobeski suggests? I liked Silverlight; to me it was what client-side .NET should have been from the beginning, lightweight and web-friendly, and given its different aims it could never be fully compatible with WPF.

The ever-expanding Windows API is overly bloated and inconsistent for sure; but the code in Petzold’s Programming Windows mostly still works today, at least if you use the 32-bit edition (1998). In fact, Sobeski writes of the virtues of Win16 transitioning to Win32s and Win32 and Win64 in a mostly smooth fashion, without making it clear that this happened alongside the introduction of .NET and other changes.

Even Windows Forms, introduced with .NET in 2002, still works today. ADO.NET too has been resilient, and if you prefer not to use LINQ or Entity Framework then concepts you learned in 2002 will still work now, in Visual Studio 2013.

Why does this talk of developer trust then resonate so strongly? It is all to do with the Windows 8 story, not so much the move to Metro itself, but the way Microsoft communicated (or did not communicate) with developers and the abandonment of frameworks that were well liked. It was 2010 that was the darkest year for Microsoft platform developers. Up until Build in October, rumours swirled. Microsoft was abandoning .NET. Everything was going to be HTML or C++. Nobody would confirm or deny anything. Then at Build 2010 it became obvious that Silverlight was all-but dead, in terms of future development; the same Silverlight that a year earlier had been touted as the future both of the .NET client and the rich web platform, in Microsoft’s vision.

Developers had to wait a further year to discover what Microsoft meant by promoting HTML so strongly. It was all part of the strategy for the tablet-friendly Windows Runtime (WinRT), in which HTML, .NET and C++ are intended to be on an equal footing. Having said which, not all parts of the .NET Framework are supported, mainly because of the sandboxed WinRT environment.

If you are a skilled Windows Forms developer, or a skilled Win32 developer, developing for WinRT is a hard transition, even though you can use a familiar language. If you are a skilled Silverlight or WPF developer, you have knowledge of XAML which is a substantial advantage, but there is still a great deal to learn and a great deal which no longer applies. Microsoft did this to shake off its legacy and avoid compromising the new platform; but the end result is not sufficiently wonderful to justify this rationale. In particular, there could have been more effort to incorporate Silverlight and the work done for Windows Phone (also a sandboxed and touch-based platform).

That said, I disagree with Sobeski’s conclusion:

At the end of the day, developers walked away from Microsoft not because they missed a platform paradigm shift. They left because they lost all trust. You wanted to go somewhere to have your code investments work and continue to work.

Developers go where the users are. The main reason developers have not rushed to support WinRT with new applications is that they can make more money elsewhere, coding for iOS and Android and desktop Windows. All Windows 8 machines other than those running Windows RT (a tiny minority) still run desktop applications, whereas no version of Windows below 8 runs WinRT apps, making it an easy decision.

Changing this state of affairs, if there is any hope of change, requires Microsoft to raise the profile of WinRT among users more than among developers, by selling more Windows tablets and by making the WinRT platform more compelling for users of those tablets. Winning developer support is a factor of course, but I do not take the view that lack of developer support is the chief reason for lacklustre Windows 8 adoption. There are many more obvious reasons, to do with the high demands a dual-personality operating system makes on users.

That said, the events of 2010 and 2011 hurt the Microsoft developer community deeply. The puzzle now is how the company can heal those wounds but without yet another strategy shift that will further undermine confidence in its platform.

Figuring out Project Siena: a Windows 8 app to build Windows 8 apps

A couple of weeks back I took a look at Project Siena, a preview of a new tool for building Windows 8 apps. Project Siena features a simplified user interface builder, an Excel-like expression language, and data-bound controls. It generates Windows 8 JavaScript apps. Project Siena is itself a Windows Store app, and runs fine on Windows RT (the ARM version). I have been using it successfully on Surface 2, on which it runs sweetly.

When I first looked at Project Siena I tried to build the same first app that I have used for numerous simple tests of development tools over the years: a to-do list. I was impressed by how easy it was to create the user interface, but unable to work out the code to complete it. Unless I missed it, the key information is not included in any of the initial documentation. I found this disappointing, since it has been easy to work out the code in every other programming environment I have tried.

I gradually worked it out. Here is the app:

image

The idea is that you have a listbox, an input box, and two buttons. One button takes the contents of the input box and adds it to the list. The other button removes the selected item in the list. All the functionality you need for a to-do list (actually a simple memo control would do, but that would be a bit too simple).

In Siena, data is stored in Collection objects, and you can bind a listbox to a collection. By default, a new listbox is bound to an object called ListboxSample, but you cannot use it for this; if you try, you get a squiggly line error with the message that ListboxSample is not a collection.

image

Instead, you have to create your own collection object. In Siena, you declare a variable by using it and its type is inferred. Enter this for the OnSelect property of the Add button:

Collect(mycollection,{Value: InputText1!Text})

This is the code that took me so long to work out. The Collect function adds an item to a collection. If the collection does not already exist, it creates it. The first argument to Collect is a collection object, and the second, an item. What is an item? In effect, a record or row in a table. The syntax for an item in Siena is:

{Fieldname1: fieldvalue1,Fieldname2: fieldvalue2,…}

where the dots represent additional fields as required. Therefore, the code I entered for the Add button creates or appends an item with a single field, called Value, to a collection called mycollection.

Now you can select the listbox and tap Data and then Items. The collection called mycollection magically appears for selection. Select it. In the case of multi-field collections, you can also choose which field appears in the list. Only one field it seems; yes, Siena needs a grid control.

Then you can run the app, tap Add, and see the content of the input box added to the list.

The Remove button is easy:

Remove(mycollection, Listbox1!Selected)

However, our app has a flaw. The data does not persist. Next time you run the app, the list will be empty. This is easy to fix too. Go back to the OnSelect property of the Add button. Type a semicolon after the existing line of code, and then:

SaveData(mycollection,"mycollection")

This saves the collection to isolated storage on your PC. Alternatively, you could call a web service and save to the cloud, but I am not sure of the code for that yet.

Next, we have to load the data when the app starts. You can use the OnVisible property of the screen for this. Type:

Clear(mycollection);Collect(mycollection,LoadData("mycollection"))

Note that since Collect appends to the collection, we have to clear it first, to avoid duplicate items.

Now the app is complete.

What do I think of Siena after doing this? It certainly has its frustrations, but I like it. I do think that the designers have gone too far in pretending that code is unimportant; it is silly that you have to type into a single line editor. It would also have saved me time if Microsoft had provided a syntax guide and programming guide, rather than concentrating on how to show pretty pictures.

Who is going to use Siena, if anyone? That is the harder question.

Something Microsoft has never fixed: why Windows is slow to start up

One of the most common complaints I hear about Windows is that it is slow to start up. Everything is fine when a machine is new (especially if it is a clean install or purchased from a Microsoft store, and therefore free from foistware), but as time goes on it gets slower and slower. Even a fast PC with lots of RAM does not fix it. Slow boot is one of many factors behind the drift away from PCs to tablets, and to some extent Macs.

image

As far as I can tell, the main reason PCs become slow to start is one that has been around since DOS days. Some may recall fussing about TSR – Terminate and Stay Resident – applications that would run at startup and stay in memory, possibly causing other applications to fail. Windows today is generally stable, but it is applications that run at startup that cause your PC to start slowly, as well as having some impact on performance later.

I install lots of software for testing so I suffer from this myself. This morning I took a look at what is slowing down my desktop PC. You can view them easily in Windows 8, in Task Manager – Startup tab. A few of the culprits:

  • Adobe: too much stuff, including Service Manager for Creative Suite, Creative Cloud connection, Acrobat utilities
  • Intel Desktop utilities – monitors motherboard sensors
  • Intel Rapid Storage Technology – monitors on-board RAID
  • Sync applications including SkyDrive, Dropbox, SkyDrive Pro (Groove.exe)
  • Seagate Desktop, manage your Seagate NAS (network attached storage)
  • Google stuff: Google Music Manager, Google update, some Chrome updater
  • Plantronics headset updater
  • Realtek HD Audio Manager
  • Fitbit Connect client
  • SpotifyWebHelper
  • Microsoft Zune auto-launcher
  • Microsoft Lync, famously slow to start up and connect
  • Roccat Gaming mouse settings manager
  • Flexera “Common software manager” (InstallShield updater)

Many of these applications run in order to install a notification app – these are the things that run at bottom right, in the notification area of the taskbar. Some apps install their own schedulers, like the Seagate app which lets you schedule backup tasks. Some apps are there simply to check for updates and inform you of new versions.

You can speed up Windows startup by going through case by case and disabling startup items that you do not need. Here is a useful guide. It is an unsatisfactory business though. Users have no easy way to judge whether or not a specific app is doing an important or useful task. You might break something. When you next update the application, the startup app may reappear. It is a mess.

Microsoft should have addressed this problem aggressively, years ago. It did put great effort into making Windows boot faster, but never focussed on the harder task of bringing third-parties into line. A few points:

  • If Windows had a proper notification service, many of these apps would not need to exist. In Windows 8, it does, but that is little help since most applications need to support Windows 7 and even in many cases Windows XP.
  • The notification area should be reserved for high priority applications that need to make users aware of their status at all times. The network connection icon is a good case. Printer ink levels are a bad case, aside from reminding us of the iniquity of printer vendors selling tiny ink cartridges at profiteering prices. In all cases it should be easy to stop the notification app from running via a right-click preference. The Windows 7 idea of hiding the notification icons is counter-productive: it disguises the problem but does not fix it, therefore making it worse. I always set Windows to show all notifications.
  • Many tasks should be done on application startup, not on Windows startup. Then it is under the user’s control, and if the user never or rarely runs the application, no resources are grabbed. Why do I need to know about an update, if I am not running the application? Have the application check for updates each time it runs instead.
  • It is misguided to run a process on start-up in order to speed up the first launch of the application. It may not be needed.
  • If a background process is needed, such as for synchronisation services, why not use a Windows Service, which is designed for this?
  • Windows has a scheduler built in. It works. Why write your own?

Of course it is too late now for desktop Windows. Microsoft did rethink the matter for the “Metro” personality in Windows 8, which is one reason why Windows RT is such a pleasure to use. Apple does not allow apps to run on startup in iOS, though you can have apps respond to push notifications, and that strikes me as the best approach.

Update: I should mention a feature of Windows 8 called Fast Boot (I was reminded of this by a commenter – thanks Danny). Fast Boot does a hybrid shutdown and hibernation:

Essentially a Windows 8 shutdown consists of logging off all users and then hibernating.

This is almost another subject, though relevant. Microsoft has for years sought to address the problem of slow boot by designing Windows never to switch off. There are two basic approaches:

Sleep: the computer is still on, applications are in memory, but in a low power state with screen and hard drives off.

Hibernation: the computer writes the contents of its memory to disk storage, then powers off. On startup, it reads back the memory and resumes.

My own experience is that Sleep does not work reliably long-term. It sometimes works, but sooner or later it will fail to resume and you may lose data. Another issue on portables is that the “low-power state” is not as low power as it should be, and your battery drains. These factors have persuaded me to shut down rather than sleep.

My experience of hibernation is better, though not perfect. It usually works, but occasionally fails and again you lose data.

Fast boot is a clever solution that works for some, but it is a workaround that does not address the real issue which I have outlined above: third-party and Microsoft applications that insist on automatic start-up.

Toshiba ships DVD media with laptop without DVD drive

One day you will be able to buy a Windows device and have a smooth and delightful experience getting started.

To be fair, something like a Surface tablet can give offer a reasonable experience if you are lucky.

Not so a Toshiba Portege Z930 ultrabook – at least, not if you buy one with Windows 7 pre-installed, and want to run Windows 8, as a contact of mine has just done.

Why would you not buy one with Windows 8 pre-installed instead? With hindsight, that is what I would recommend; but since it says on the box, “This system is pre-installed with Windows 7 Pro software and also comes with a license and media for Windows 8 Pro software,” he did not think it much mattered.

The problem: The Z930 has no optical drive, but Windows 8 is supplied in the form of two recovery DVDs.

image

I thought that was pretty silly, but luckily I know all the tricks about creating a bootable USB drive from a DVD. I even spotted the note in the box that instructs you to go into the BIOS and change it from CSM Boot to UEFI Boot.

No go. It would not boot from the USB drive in UEFI mode, and in CSM mode (which is also meant to work for Windows 8, with a few limitations) it boots, starts a Toshiba recovery wizard, and then bombs out.

I spoke to support. The first thing they told me, unprompted, was to make Windows 7 recovery disks, since not everyone likes Windows 8.

Next, the support guy was surprised that a model without a DVD drive ships with DVDs. Had the machine been tampered with? Then he looked it up, and admitted that they are all like that.

After a little more investigation, he said there is no way it will work from a bootable USB drive, because it is coded to look for the DVD. The only way is to buy an external DVD drive and attach it via USB.

The behaviour began to make sense to me. The scripts must be hard-coded to look on the optical drive for the files. I’d guess you can fix it by modifying the scripts if you know where to look, but life is too short and I went out and bought a DVD drive.

Smooth after that? Not brilliant. Recover Windows 8, go to Store for Windows 8.1, remember that you have to apply updates before it appears, apply 80 Windows updates, remove McAfee trialware and a few other unwanted applications, back to Store, do large Windows 8.1 download, and done.

In an era where usability is king, it is remarkable that Toshiba thinks that shipping DVDs with a computer that cannot read them is a smart thing to do. That said, I have a few more observations.

  • If you got a product key for Windows 8 and could download the media from Microsoft, that would work. But OEM Windows 8 is now pre-pidded so you don’t get a key.
  • If Microsoft were not still making so much money from businesses paying for Windows licenses, it could give Windows away and offer users a more Apple-like upgrade experience.
  • If Microsoft had not come out with a Windows upgrade which many of its customers do not like, companies like Toshiba would not be selling so many laptops with Windows 7 pre-installed.

As for the Z930, it is a lovely light, fast laptop if you do not need touch. But when will Windows OEMs, and to some extent Microsoft itself, learn the importance of out-of-the-box user experience?

Will Microsoft scrap Windows RT? Here’s why it might not matter

At the UBS Global Technology Conference (aimed at investors, since UBS is an investment bank), Windows Executive Vice President Julie Larson-Green was interviewed about the future of Windows, and Microsoft has helpfully posted the audio and full transcript.

Larson-Green was asked about the viability of the “dual track” for Windows, or put another way, does Windows RT have a future?

I will interject an anecdote here. A neighbour came to me this weekend with a Windows XP laptop. Internet Explorer 8 no longer worked, and as no other web browser was installed, she could no longer get to the web on that machine. Microsoft has advice on reinstalling IE8; you re-run setup. We downloaded the setup from another machine and re-ran setup. It made no difference.

The only clue was an icon in the notification area for secure search. What was it? My neighbour did not know. She mentioned that she had been offered a free backup service and had started installing it. The service informed her that her backup was too large and she would have to pay. She thought she had cancelled and uninstalled it successfully, but maybe this toolbar, which redirects all searches to conduit.com, came along for the ride. Removing the toolbar from add/remove programs brought IE 8 back to life; if she is lucky, that will be end of the incident, if not, there could be other surprises.

It is just hopeless; and although later versions of Windows have improved security, users ultimately have full control of their machines and therefore the ability (with the help of unscrupulous third parties) to break them.

Now listen to Larson-Green’s description of Windows RT, evidence that Microsoft understands these issues very well:

Windows on ARM, or Windows RT, was our first go at creating that more closed, turnkey experience, where it doesn’t have all the flexibility of Windows, but it has the power of Office and then all the new style applications. So you could give it to your kid and he’s not going to load it up with a bunch of toolbars accidentally out of Internet Explorer and then come to you later and say, why am I getting all these pop-ups. It just isn’t capable of doing that by design.

That said, in its first year on the market Windows RT has largely failed. OEMs like Lenovo and Dell, who produced Windows RT tablets last year, have abandoned it. Microsoft is now the only Windows RT vendor, with Surface RT and Surface 2, other than Nokia with the Lumia 2520 – wait, that’s Microsoft too, following the Nokia acquisition.

Why has RT failed? Performance is an issue on most first generation devices (solved on Surface 2), users have been infuriated and/or flummoxed by the inability to install desktop applications, and even those (like myself) who understand and like the Windows RT concept run into functionality gaps, where there is no suitable Windows Store app and nothing built into the desktop that will do.

Nevertheless, something like Windows RT is necessary if Windows is to survive as a mainstream client operating system. What are Microsoft’s plans?

We have the Windows Phone OS. We have Windows RT and we have full Windows. We’re not going to have three. We do think there’s a world where there is a more mobile operating system that doesn’t have the risks to battery life, or the risks to security. But, it also comes at the cost of flexibility. So we believe in that vision and that direction and we’re continuing down that path.

You can read this as saying that Windows RT will be scrapped, to be replaced by Windows Phone OS adapted for larger form factors (which is what some of us thought Microsoft should have done three years ago). Some have drawn that conclusion, even in the mainstream press. However, this is not what Larson-Green said. Rather, she confirmed what has been strongly hinted for some time, that Windows Phone and Windows RT will converge. In fact, the company has already said that there will be a single development platform for Windows Store / Phone apps at some future date. Note that Windows Phone 8 is no longer built on Windows CE, the cut-down version of Windows, but uses the full Windows kernel, so some convergence has already taken place.

There are rumours of a battle within Microsoft: should Windows Phone adopt Windows RT, or vice versa? Windows Phone is increasing its market share, whereas Windows RT struggles, so from a marketing perspective the phone may be the winner here, though from a technical perspective it might be better to adapt Windows RT for the phone so that desktop Office remains possible on future devices.

If Microsoft gets this right, it will not matter to end users which way it goes. Here is what makes sense to me. Microsoft should converge the development platforms for Windows Phone and Windows Store apps so that both types of apps run on both platforms (though developers should be able to specify a minimum display size to avoid issues with apps designed for a larger screen), and a single project in Visual Studio should be able to target both platforms.

The most interesting question is the future of the desktop on Windows ARM tablets. I love having the desktop on Surface RT and Surface 2, because it greatly increases the utility of the devices; my perspective is that it’s great to have the Windows desktop and Office on a locked-down device, rather than lamenting the inability to install new desktop applications. However, it is a compromise that needs keyboard and trackpad or mouse for optimum operation, and means that Windows RT devices suffer from the same dual personality issues as full Windows 8.

If Microsoft managed to implement a decent version of Office as a Windows Store app, could we live without the desktop? Maybe, though I doubt it will be easy to match the full Windows version of Office (even without VBA) in the Windows Runtime environment.

Microsoft cloud account problems

I am working extensively with Visual Studio 2013, Office 365 and Windows Azure, researching cloud development on Microsoft’s platform. It is in general a reasonable experience, but the way Microsoft manages its cloud accounts is a constant annoyance and sometimes a source of bugs.

The problem is that you cannot manage with just one Microsoft cloud account. I have an MSDN subscription which is a Microsoft account, and an Office 365 subscription for which I log in with an Organizational account, for example. Microsoft accounts are for accounts with Microsoft itself, while Organizational accounts are controlled by my business. The distinction makes some sense, but Internet Explorer does not cope all that well when you are using both, which for development seems unavoidable.

Right now, for example, I have encountered a bug. I want to log in to Office 365, so I browse to http://portal.microsoftonline.com. However, this is redirecting automatically to login.live.com (it should not do this), which is a Microsoft account. So I get this screen:

image

This is for a Microsoft account, which will not work with Office 365. If I now present Organizational account credentials, it says the account is not recognized. If I present valid Microsoft account credentials, I get an error. “Sorry, that didn’t work”.

image

Agreed – but if I now click Sign out, I bounce back to the very same screen. In other words, I cannot sign out.

I have also seen the scenario where you cannot sign out of Office 365. You choose Sign out, Internet Explorer thinks for a moment, then logs you back in automatically. This may be a consequence of checking the mysterious “Keep me signed in” option when logging into Office 365. This should only keep you signed in until you specifically log out, but it can fail in both directions, asking you to sign in again later, or failing to sign you out. “Keep me signed in” is actually required for some features to work properly, such as Open in Explorer (or WebDav) in SharePoint online.

The inability to sign out is a security issue, since you may need to leave your machine, think you have signed out, and find someone else can access your account; though I suppose you can lock your Windows account to overcome this.

It can also be a practical problem. As a developer, you might want to log in with an Office 365 administrator account to configure a new app, and then with a non-administrator account to test. You need to be able to switch accounts for this purpose. It might be better to use a virtual machine for one of the two accounts.

I am not sure what the fix is, though it usually starts working again eventually. As ever, rebooting Windows may well help. Microsoft has a problems when signing out article which hints at some of these problems; it suggests that you to a couple of special logout urls to log out from an organizational account and logout from a Microsoft account but this does not always work. It also suggests clearing all cookies, which is a nuisance because then have to log back in to all your internet accounts, but even this can fail in my experience. Using another browser is a partial workaround. I do not know if you can get this problem in other browsers.

Visual Studio can also get confused. Imagine you are developing an Office 365 application hosted on Azure. You might have a Microsoft account for Azure along with the Organizational account for Office 365. You proceed through a publish wizard which needs both sets of credentials, and you are likely to get an error in my experience.

I can understand that this stuff is complex to get right, but from the user’s perspective logging in and logging out is basic functionality and something Microsoft should get right.rrrrrrrrr

First thoughts on Xbox One: difficult to recommend right now

I received an Xbox One on launch day last week.

image

I ordered this because I am interested in tracking Microsoft, and because I have had a lot of fun from the Xbox 360 and its predecessor, the original Xbox.

In the box you get the console, power brick, the new Kinect sensor, a single controller, a headset, and several leaflets including a pointless Day One “achievement” and a code to download FIFA 14.

image

Setup is a matter of connecting an HDMI cable to your TV or, in my case, a receiver, and the Kinect to its special port. I also connected an ethernet cable.

image

Finally I connected a digital TV PVR to the HDMI in. This enables the TV app on the Xbox One.

First impressions of the hardware are good. It looks elegant and feels well made. The controller is lovely to hold. The Kinect looks solid and sits comfortably in front of our TV.

I looked in vain for any specifications in the box. From other sources I believe the Xbox One has:

  • AMD chipset with 8 CPU cores at 1.75 GHz and 8GB DDR3 RAM
  • 500 GB hard drive
  • AMD GPU with 768 cores supporting up to 3840×2160 (2160p) graphics.
  • Blu-ray drive
  • Gigabit Ethernet
  • 802.11n wifi
  • HDMI out, HDMI in, 2 USB 3.0 ports, S/P DIF optical audio out.
  • 7.1 surround sound

First impressions of the software are so-so. It began by downloading a firmware update, which went quickly enough. However that was just the start. The Xbox One dashboard uses an app model; almost everything is an app. Each app has to be downloaded and installed, including the Blu-ray player, Xbox Music, Skype and so on. Even the system settings is an app.

I made the mistake of registering my free download of FIFA 14 as one of the first things I did. The download is huge, and while it proceeded most of the other functionality showed as “Queuing”.

I expected to be wowed by some gorgeous effects in the new dashboard, but in fact the design is rather pedestrian. It is a tiled user interface but not quite the same as Windows 8. The dashboard features a larger tile which represents the currently selected app. This may be a live preview in some cases, TV for example. You can select this to run full screen, or you can have a snap view which shows a secondary app running alongside.

The dashboard overall feels rather spartan, especially to begin with when nothing much has been downloaded.

All of this contributed to an overall out of box experience of “is that it?”

I remember unpacking the original Nintendo Wii, running the Sports game, and having an amazing time. By contrast getting started with Xbox One was rather drab.

There is a video store where you can buy or rent downloads. I tried a few previews which show in extremely poor quality, which I trust bears no comparison to what you get if you actually pay. It beats me why you would show worse-than-VHS previews of movies when trying to tempt people into paying for a download.

There there is Kinect. I have mixed feelings. First, it really is amazing. It feels like a huge step forward from the original Kinect. I downloaded Kinect Sports Rivals preview, which lets you ride a water racer where you clench your fist to accelerate and move invisible handlebars to steer. It works perfectly even when you are seated. Technically that is a huge achievement.

At the same time I have to say that I would rather use a controller. Are we ever going to get equally precise control with motion sensors, compared to what you get with a controller? If it is a bowling game, motion sensors do make sense, but for controlling a water racer I am not so sure.

I am looking forward to trying the fitness app, but currently I a get a log-in failure with a message “unable to connect to token service”. It could be a firewall issue. Annoying.

Voice control is another big feature. Again, I have mixed feelings. It works for the most part very well. You say “Xbox select” and available options show in green text on the screen.

The main problem I have with the voice control is lack of consistency. I am willing to invest the time getting good at voice control, but only if I can do nearly everything with it. Unfortunately many apps are not voice enabled. So you can start the YouTube app with voice, for example, but not search within it.

I also worry that voice control will be a liability in some scenarios. Such fun to enter a room full of intense gamers and say “Xbox Go Home”.

It is getting there though, and worth some effort just to be able to go into a room, say “Xbox play Miles Davis” and have it be so.

That brings me to Xbox Music. It seems pretty good for streaming from Microsoft’s service, but not for much else. In my case I have a huge library of music ripped from CD and would like to be able to play it on the Xbox One. Rumour said that there would be support for DLNA streaming but I cannot see any sign of it.

FIFA 2014 looks good though football games are not so much my thing. I do miss having a little leaflet with a quick guide to the controls; a downside of download games.

There are not many games available and some are extraordinarily expensive, £68.99 for Dead Rising Deluxe Edition for example.

The YouTube app is nicely done and a good way to while away time, lack of voice search aside.

There are occasional Windows-like annoyances. You start the console, it says “Hello Tim” and you think you are signed in. You open Xbox Music and it says you must sign in. You select to sign in and you get another screen saying you should sign in. Then you sign in and it works.

There is a lot more Windows in Xbox One than in its predecessor. The SkyDrive app lets you view your uploaded photos which is handy. Internet Explorer is there and works reasonably with voice control, but lack of Flash is a big problem given that multimedia is important in the kind of web browsing you are likely to do on a TV.

So what do I think? On the plus side, the hardware seems excellent. I like the new controller. I like the Blu-ray support. I like the YouTube app.

The sad thing though is that as of now an Xbox 360 is a lot more fun, with its rich array of available games, and mature dashboard and apps.

Lack of any backward compatibility is a disaster at this point in the new console’s lifecycle. It is also disappointing that you cannot yet install Windows 8 apps, which would have instantly provided an array of reasonably priced casual games.

Populate XBox One with some strong games and apps, give the dashboard a bit more polish, and it could be really good. As it stands though, I find this hard to recommend. This is a long-term worry, since it gives the competition a head start from which the One may never recover.

Microsoft also needs to be a little less greedy in terms of pushing its subscription services and give us more fun out of the box.

Kinect is the major differentiator, and we will have to watch this space. The technology is amazing but where are the stunning and delightful games or apps that take advantage of it? Whether or not these will arrive is a big unknown.