Category Archives: microsoft

Why I want a Windows RT (ARM) tablet

Microsoft has now announced that the first Windows RT tablets will come from Asus, Dell, Lenovo, Samsung, and from Microsoft itself with Surface.

image

Windows 8 on ARM is a different thing to Windows 8 on Intel. On Intel, most Windows applications will run. On Windows RT, the ARM version, only Windows Runtime apps (also known at Metro-style, Modern and Windows Store) will run. There is still a desktop mode, but it is reserved for a special version of Office along with a few utilities like Explorer.

On the face of it, the Intel version is a better deal, because “you get it all.” However, there are times when less is more; in fact, that phrase practically defines the success of Apple’s iOS, which does not run applications coded for Mac OS X.

The problem is this. On a tablet, the Windows desktop is a horrid experience, unless you get out not only your tablet, but also your keyboard and your mouse or stylus. Even the stylus can be a problem, and having lived with Windows 8 on a Samsung Slate tablet for some months, I find a mouse works best.

We have seen this before, with the old Windows tablets starting with Windows XP. OEMs came up with clever designs with twist screens and styluses which clip into the side. These machines certainly have their uses, but they were not mainstream and they were not cheap. Intel Windows 8 tablets will have all the same problems. The poor experience offered by the Windows desktop user interface with touch was a key reason why Microsoft came up with the radical WinRT alternative.

Windows RT on the other hand promises a better tablet experience. with the additional bonus of longer battery life and a lighter, more efficient device. You cannot install desktop apps, but if the Windows 8 ecosystem fails to come up with WinRT apps to cover the essential computing activities, then the Windows 8 project will have failed in its goals.

There is also Microsoft Office of course, which makes some effort to support touch control though it could be better. Still, I would rather have Office which at least has been designed with the knowledge that some users will be controlling it with touch, than all those other desktop applications which presume keyboard and mouse.

The importance of having Office there is that it makes the difference between having to have a laptop with you as well while on the road, and being able to get all your work done on the tablet alone.

This issue does not seem to be well understood either by Microsoft’s OEM partners nor by the general public. I do not blame the latter. On the high street or at the airport, there will be rows of Windows 8 tablets with similar Start screens, and the difference between Windows RT and Windows Intel will be hard to convey. I can imagine salespeople saying, “You should get this one, it is the full Windows,” and steering customers towards the awkward, confusing experience that is Windows 8 on an Intel tablet.

One disappointing remark buried in the announcement:

Over 90% of the RTM applications in the Windows Store support Windows RT

That means 10% of WinRT apps currently do not support ARM, presumably because there is some native x86 code in there.

Microsoft really, really wants developers to build Windows Runtime apps

Or should that be Metro-style apps? or Modern UI apps? or Windows Store apps?

I am not sure; but one thing jumps out at me as I look at the Windows 8 development platform. Microsoft is doing all it can to push developers towards Windows Runtime (WinRT) rather than desktop development.

Here is a small piece of evidence. The contentious new Start screen uses tiles for application shortcuts. These can be static images and text, or live tiles that update with current information. There is only one Start screen though, so desktop apps also have tiles which you click or tap to launch the app in question.

However, there is no documented way for desktop apps to have good-looking tiles. Here is the tile for Excel 2013, for example:

image

It is mostly wasted space. A WinRT app on the other hand can fill that space:

image

or display a picture

image

or take up a double space

image

The question: how difficult would it have been for Microsoft to allow desktop apps to have pretty tiles? I can understand why desktop apps cannot have live tiles, but there is no technical reason I can think of why desktop apps could not have a resource used for a decent tile.

Here is the official answer though, from Microsoft’s Rob Caplan:

Desktop apps cannot customize their tiles and will always use the icon and name from their shortcut.

I guess Microsoft can argue that it wants users to know whether they are about to launch a desktop app or a WinRT app. This could easily be done with a little overlay signifying the desktop. There was no need to ensure that all tiles for desktop apps look ugly.

Except that Microsoft wants these tiles to look ugly. Because it wants you to develop WinRT apps, not desktop apps, and is even willing to have its own Office tiles look bad for the sake of the cause.

Update

This post was picked up by Reddit and of course there are some interesting comments. First, the desktop tiles are improved in the RTM build of Windows 8 (my screenshot above is from the Release Preview):

image

Second, here is a comment apparently from a Microsoft employee:

Wow, what a flimsy argument. The funniest thing about it, though, is that the desktop tiles look MUCH better in the RTM build (though customization is still left to Modern apps). Can’t seem to find a screenshot though.

But on the other hand, of course we want people to develop Modern apps. That’s why we built the platform. But the desktop tiles aren’t a part of that at all.

If I were the author, I’d bring up Contracts as a much better example. Desktop apps can’t support the Share Contract, or Search, or whatever; only Modern apps can. Of course, there’s no telling if this is simply a v1 limitation or a longer strategy; even I have no idea (I’ve only been at the company a little over a year). If we waited to release Windows until we had implemented everything we wanted to do, it wouldn’t come out for years. We have to draw the line somewhere.

Disclaimer: these are my thoughts, not the company’s.

In defence, I presented this only as a “small piece of evidence”.

Note the use of the term “Modern apps”.

Microsoft toughens logo requirements for Windows 8, forbids startup apps

Today I came across the certification requirements for Windows 8 desktop apps. This is the successor to the Windows 7 Logo program, and represents a set of best practices required for software to display the official Windows logo.

In practice, I am not sure how many buyers check that software is certified before buying, though it might make sense for businesses to do this as a matter of policy if they want keep Windows desktops running smoothly and safely.

The requirements are also interesting as a guide to what Microsoft considers to be well-behaved applications.

The new requirements are tougher than before. Some guidelines that were in the “Beyond Windows 7” section in the previous logo program have now moved to become full requirements. Others seem to be completely new.

Here are some highlights:

  • Your app must not depend on any Windows compatibility feature, nor the VB6 runtime.
  • Apps may not start automatically on startup. You may not set the “run” registry keys nor install a shortcut into a startup folder.
  • Apps must use “strong and appropriate ACLs” to secure executables, directories and registry keys.
  • Apps must be compiled with /SafeSEH (safe exception handling), /NXCOMPAT (no data execution) and /DYNAMICBASE (random address space layout).
  • All executables must be signed with an Authenticode certificate – this was the same in Windows 7 but worth repeating.

The automatic startup prohibition is particularly intriguing. It could not be clearer:

10.2 Your app must avoid starting automatically on startup

I hate unnecessary startup applications too; but I do not object to all of them. My password manager runs on startup and sits in the notification area. Some of Microsoft’s own applications do this, for example Lync, Skype and SkyDrive. I would have thought auto-startup is acceptable if it is under the user’s control.

One factor may be that Windows 8 desktop apps do not auto-start on log-in even if you set them to do so. Instead, they start when the user clicks or taps into the Desktop. Therefore, in a sense none of the normal auto-start techniques are reliable.

There is a way round this, which is to install an autorun service.

In general, tough certification requirements are a good idea, though if they are too demanding the risk is that vendors will simply ignore them.

Valve announces Steam-powered apps beyond games as well as embracing Linux

Steam maker Valve has announced that it is expanding beyond games, to sell software titles that “range from creativity to productivity”.

image

The Steam software is more than just a store. The platform handles updates, digital rights management, and supports multiplayer gaming. It also forms a chat network. The Steam overlay lets users access Steam features while playing a full-screen game.

Users can install a Steam title on multiple computers but can only play while logged in, and can only log in on one device.

Steam launched first on Windows, but also has clients for Mac and, via Wine compatibility, on Linux. There are also mobile clients for Android and iOS, and some support for PlayStation 3, though these have limited features. The mobile clients do not let you buy and run games for the mobile device itself.

With Apple, Google and now Microsoft backing their own app stores for their respective platforms, Valve has some tricky manoeuvring ahead if it is to avoid being squeezed out. Valve founder Gabe Newell made headlines recently by calling Windows 8 a “catastrophe”, though he is hardly a disinterested party. Note that he should not worry too much about Windows 8 in the short term, since Microsoft’s store does not support desktop titles other than by links to third-party sites, including Steam. However the general trend towards locked-down platforms with software installed only through an official store must be a concern to Newell.

Valve is turning towards Linux as a possible solution. It is talking at the Siggraph conference this week in Los Angeles about its work on OpenGL and Linux, and it seems that a native Linux Steam client is in prospect.

Could Windows gamers, or others disillusioned with Windows 8, turn to Linux in significant numbers as an alternative? While this is possible, it seems more likely that the Mac would benefit. You would also imagine that skilled gamers will be smart enough to operate the Windows 8 Start menu and discover that most of their stuff still runs fine on the new desktop.

The Steam platform is a strong one though, and with Microsoft not supporting desktop apps through its own Store, Valve has a good opportunity to extend its reach.

According to its own stats, Steam has peaked at over 4 million concurrent users this month.

image

Fixing Visual Basic for Applications code for 64-bit Microsoft Office

The first macro programming language in Microsoft Office was Basic, and it is still there in the forthcoming Office 2013. In fact, Visual Basic for Applications (VBA) has been slightly updated, and reports itself as version 7.1 in the preview. The version is Office 2010 is 7.0.

image

Although it is embedded in Office, VBA is a powerful tool and there is not much that you cannot do. It is based on the same runtime that powers Visual Basic 6.0, the last version before the .NET revolution.

Visual Basic makes it easy to call the Windows API though the Declare statement. One implication though is that code written for 32-bit VBA may need revising to work in 64-bit Office, and I ran into this recently with some VBA code of my own.

Some existing Declare statements will work fine on both platforms, but Microsoft chose to force developers to review all of them by introducing a new PtrSafe attribute. The name of this attribute is dubious in that it does nothing to ensure pointer safety. In fact it does nothing at all other than to say to the compiler that the Declare works in 64-bit Office, whether or not it really does. Still, it means you have to add PtrSafe to all your Declares, the idea being that you check that they work. Without PtrSafe, the Declares will not execute in 64-bit Office.

The details of what to change are here. What that article does not mention though is that Microsoft has provided declarations for the most commonly used API declarations that work in both 32-bit and 64-bit VBA. The file is called Win32API_PtrSafe.txt and you can download it here. The file is too large to load into a single VBA module but you can use it to find the declarations that you need.

It can still be difficult to work out how to call some APIs. Note that if you get it wrong VBA and Office may crash. You are giving up the safety of VBA once you use these functions.

I have not yet seen Office running on ARM in Windows RT, but the rumour is that VBA is not supported. That is not surprising, since with VBA you can code pretty much any desktop application, if you don’t mind it running within Office, undermining Microsoft’s intention that only Windows Runtime (formerly known as Metro) apps can be installed on Windows RT.

Windows 8 is done, available August 15th with final Visual Studio 2012

Microsoft’s Windows chief Steven Sinofsky has announced the release to manufacturing of Windows 8:

The Windows 8 team is proud to share with you that a short while ago we started releasing Windows 8 to PC OEM and manufacturing partners.

image

The separate post by Brandon LeBlanc has more details. Microsoft’s developer (MSDN) and IT admin (Technet) subscribers will be first to get the new Windows, leaks aside, on August 15th. LeBlanc adds:

On August 15th, developers will be able to visit the Windows Dev Center to get access to all the tools and resources they need including the final build of Visual Studio 2012 to design, build, and sell apps in the Windows Store.

from which we learn that Visual Studio 2012 is also done, or will be by the 15th.

Windows Server 2012, which uses the same core code, has also been released to manufacturing, says Microsoft’s Jeffrey Snover:

the final code is complete and we are delivering it to our hardware and software vendor partners this week

The Windows Store is also open for business, kind-of. Antoine Leblond says that you can submit a Metro-style app from today, though you will need an RTM build to do so, so for most of us that will actually mean from August 15th. Apps can include free, paid-for, trials, and those with in-app purchases. Only Metro-style apps can be submitted for installation through the store, though desktop apps can be offered through a link to the vendor’s web site.

Windows 8 is a bold release. Despite pressure from existing Windows users, Microsoft has held firmly to its decision to abandon the old-style Start menu and to make the Metro side prominent for all users. There are several big unknowns:

  • How will users react to the changes? The early moments with Windows 8 tend to be difficult, and some may be put off completely.
  • How popular will Metro-style apps be, relative to traditional desktop apps?
  • How well will Windows 8 and Office 2013 really work on a tablet without keyboard or mouse?
  • What proportion of users will want the ARM version, Windows RT, as opposed to the familiar, messy world of x86 Windows?

I have used Windows 8 intensively for some months now, both on desktop and tablet. It works fine, and seems a little faster than Windows 7 on the same hardware. On a tablet, the Metro-style apps are delightful but few, but desktop apps are a bit of a struggle, which is one reason I am looking forward to Windows RT devices on which those troublesome desktop apps cannot be installed.

Should Microsoft have made such radical changes in Windows? That is open to debate; but check out this report on how tablets, mainly Apple iPads, are eating away at the PC market to understand why the company felt that “reinventing Windows” was its only option.

Mac App Store, Windows Store, and the decline of the open platform

Valve Software’s Gabe Newell caused a stir recently when he said at the Casual Connect event in Seattle that Microsoft’s Window 8 is bad news gfor game vendors:

I think Windows 8 is a catastrophe for everyone in the PC space. I think we’ll lose some of the top-tier PC/OEMs, who will exit the market. I think margins will be destroyed for a bunch of people.

What did he mean exactly? He denigrates touch control, which he says is “short-term”, so I would guess he is not enthusiastic about the touch-centric Metro-style UI in Windows 8. However, he also talks about open platforms:

"Valve wouldn’t exist today without the PC, or Epic, or Zynga, or Google. They all wouldn’t have existed without the openness of the platform … We are looking at the platform and saying, ‘We’ve been a free rider, and we’ve been able to benefit from everything that went into PCs and the Internet, and we have to continue to figure out how there will be open platforms.’

The point: Valve runs its own Windows app store, called Steam, and will lose out if an increasing proportion of game downloads go through Microsoft’s Windows store instead.

image

Of course Steam will work fine on Windows 8, provided you have the x86 version. The x86 Windows 8 desktop operating system is just as open as Windows 7. The Windows Store also allows entries that link directly to a vendor’s web site, like the one for Winzip:

image

The immediate threat to Steam then is indirect. If Windows 8 fails in the market, it will not be too bad for Steam since it runs on Windows 7 and on the Mac, the most likely beneficiaries. Steam will suffer if Windows 8 users are drawn towards the Windows Store in preference, though note that the Store does not offer desktop app downloads except via links as for Winzip above. Steam will also suffer if the ARM version of Windows, Windows RT, eats into Windows x86 sales.

You have to follow the lines on the graph though, and this is where it does not look so good for Steam. Look first at Apple’s platform. The mobile variant, iOS, is entirely locked down so most users can only acquire apps from the Apple app store, unless they are developers or enterprise customers. Apps are also sandboxed so that you cannot break your iOS device by making bad install decisions. Partly as a side-effect of the sandboxing, apps are trivially easy to install and remove provided you have an internet connection. Far from limiting sales, this has encouraged users to experiment with apps they might not otherwise have found or wanted to risk installing, and users love the iOS platform overall.

On the Mac, Apple has introduced another app store. Unlike the iOS store, use of this is optional, though some apps cannot be obtained elsewhere. There is some not-so-subtle pressure to use the store though, partly because of how it is surfaced in the user interface, and partly because of the advantages for the user. Apps are easier to install and update themselves, in the same way as on iOS. They are vetted by Apple so should be safe to use. They have to conform to Apple’s application guidelines which form a kind of sandbox. Apps may not request root privileges, may not download additional code, may not use non-public APIs, cannot install code in shared locations, and so on. They also have to conform to certain ethical guidelines.

Whether this is altogether good for users is up for debate. It is a trade-off between freedom on the one hand, and convenience and safety on the other. On the whole though, users like it, which is great news for Apple which also takes a slice of any payments that go through the store.

Not all software vendors are happy. Sherman Dickman at Postbox is abandoning the Mac App Store. He gives these reasons:

    • No free trials
    • No discounted upgrades
    • No free upgrades if the prior version was purchased after a specific date
    • No way to provide license keys that could be used on Windows (many of our customers use both platforms)
    • No volume discounts or site licensing
    • No access to customer information, which prevented us from validating orders, offering discounts, running promotions, newsletter signups, etc.
    • Unclear refund policies
    • Most importantly, we had to create another version of Postbox for the Mac App Store that removed features such as iCal support, iPhoto integration, and Add-Ons in order to comply with Apple’s Application Guidelines

Postbox 3 is sold only direct from the vendor’s site. Dickman says he will reconsider if Apple loosens the restrictions on the App Store; but the real question will be whether his company can afford not to be in the official store, especially if future versions of Mac OS X further tighten the screws.

Returning to Windows 8, Microsoft is undoubtedly suffering from Apple envy. There are multiple reasons:

  • Users like the app store model, its convenience and safety
  • Apple has found a solution to a problem that plagues Windows: damage from third-party software installs
  • Microsoft would like a cut of the revenue from software transactions

Windows 8 therefore has an iOS-like store and policy for its Metro side. The net result is similar to that for iOS and Mac OS X. On the ARM Metro-only systems (ignoring for a moment the locked-down desktop which runs Office and a few utilities), apps can only be installed through the store. On the open x86 systems, use of the store is optional, except that Metro-style apps must be installed through the store unless you are a developer or an enterprise.

Microsoft has a harder job than Apple to make its store successful, because of the way it is combining the Metro-style platform and the old desktop into a single operating system. If users turn their backs on Metro, the store will fail too. Still, Microsoft is aiming for a platform that is equally as locked down as Apple’s.

Instinctively I dislike these lockdowns, yet I also see their merit. Recently I found myself helping a user clean up their Windows 8 Release Preview system, which already had unwanted software on it, put there by installers that foist unrelated software on users who forget to uncheck a box, including toolbars and security software. Vendors have abused the freedom that Windows gives them.

The evidence though is that users will happily give up some freedom in return for a secure and convenient operating system. The business model favours it too. The Windows 8 upgrade is cheaper than for earlier versions, maybe because Microsoft will earn more later if users buy lots of apps. It pays Google to sell the Nexus tablet with low margins, if it drives users to the Play Store.

The convergence of all these factors means one thing only: that open platforms are in decline. They are not gone yet, but that is the firm trend. The implications are profound and I doubt they will be fully appreciated until the line on the graph has progressed a little further. The internet is a huge mitigating factor of course, and perhaps the combination of an open internet with a locked-down client is one that we will be able to live with.

BBC web site has a Metro look

The BBC redesigned its web site last year borrowing elements of Microsoft’s Metro design language, as seen in Windows 8, Windows Phone, and Office 2013. Note the tiles, the typography, the horizontal scrolling, the way elements stand out against a pale background.

image

The BBC site is the 5th most popular in the UK and 47th in the world according to Alexa.

This strikes me as a significant design win for Microsoft. One of the goals of redesigns is to make your stuff look fresh and modern, while other stuff looks dated, and it helps drive an upgrade cycle. 

Update: amended to clarify that the design update was last year. Details here and here. Also interesting to note considerable hostility from users. Another point of similarity with Windows 8!

Access Web App: at last a simple web database app builder from Microsoft

One thing hardly mentioned in the press materials for Office 2013, and therefore mostly ignored in the immediate publicity, is Microsoft Access 2013. It is included though, and its most interesting new feature is a thing called an Access Web app.

image

To make one of these, you click the big “Custom web app” button on the opening screen. The first thing you are asked is where to put it. It is looking for a SkyDrive or Office 365 team site – essentially, online SharePoint 2013 I imagine. If you are not signed in, this screen appears blank.

Advertisement

I selected Skydrive at my Office 365 preview site.

image

Hit Create and you can select an app from a template. I chose a Music Collection app. Access generated several tables and forms for me and opened the design environment.

image

The template app is a bit daft – Artists and Labels are based on a People template, so you get Labels with a Job Title field – but that does not bother me. What interests me is that Access generates a relational database that you can edit as you like. The template UI offers either a list/detail view called a List, or a Datasheet which shows rows in a grid format. There is also a Blank view which you can design from scratch.

I had a quick poke around. Access Web Apps do too good a job of hiding their innards for my taste, but what you get is a SharePoint app with data stored in SQL Server Azure. You can also use on-premise SharePoint and SQL Server 2012.

Programmability in Access Web Apps is limited, but you do get macros which let you combine multiple actions. There are two kinds of macros, UI macros and Data macros. UI macros support a range of actions including SetVariableif and else statements. The only loop functions I can see are in Data macros, which include a ForEachRecord action. You can call Data macros from other macros and a Data macro includes a SetReturnVar statement, so I guess with a bit of ingenuity you can do many kinds of automated operations. Macros are described here.

image

In my quick test, I put a button on a view and had it show a message. Apologies.

The application files are all stored on SharePoint, rather than locally, so I presume you could easily edit the app on any machine with Access 2013 installed.

Click Launch App and the web app opens in the browser. Everything worked, including my MessageBox.

image

I also tried it on the Google Nexus 7 Android device. Again it seems to work fine, though I did get some odd behaviour returning to the app. There are possibly some authentication issues.

image

An Access Web App is just another SharePoint app, as explained here, so you can publish it to selected groups via the built-in store.

There is no way that I can see to craft your own SQL, which to me is a disadvantage, but maybe we will discover how to bypass the UI and open a database in SQL Management Studio, or access it programmatically from other environments.

It seems to me that what Microsoft is offering here is what it tried, but failed, to offer in Visual Studio Lightswitch: database programming for the non-specialist. Access has always done this, though unfortunately it is easy to make rather a mess if you do not know what you are doing. An Access Web App gives the developer/user fewer ways to go wrong, and builds cross-browser web apps. It is not yet possible to judge whether Microsoft has got the feature set right, but fundamentally this looks useful for simple custom business database applications of the kind that many small organisations and departments find they need. It is a big advance on MDB files stuck on a file share, fits with the BYOD (Bring Your Own Device) concept by working on iPads and the like, and makes it easy to get started and experiment. Good work.

Office 365 for developers: Getting started with Microsoft Napa

One key aspect of Microsoft’s forthcoming Office 2013 is its support for a new app model. The idea is that rather than building local add-ins for desktop Office, you will build web applications that live in one of four places:

  • In SharePoint
  • Within an Excel document
  • Within a Task pane in Excel or Word
  • Adjacent to an email in Outlook
Advertisement

If you have been following Office development for a while, it is hard to supress an initial reaction of “oh no, not another development model for Office.” After all, we have had Basic macros, Visual Basic for Applications, COM Add-ins, Visual Studio Tools for Office, and in the case of Exchange, other APIs such as MAPI and Exchange Client Extensions. Further, most of this stuff still works, which is a mixed blessing as the the whole thing gets more bloated and confusing.

Even so, I can see the sense of the new Apps for Office. One key advantage is that they work in Office Web Apps as well as in the desktop applications. They are also easier to deploy and secure, since they require no executable files on the client, are sandboxed, and only interact with the local document via a JavaScript library. That may not always be sufficient of course, in which case you can stick with one of the older extension models (personally I still find VBA useful), but where it is sufficient, this strikes me as a good approach.

That said, there are plenty of gaps in the list of supported app types:

Application Supported types
Excel 2013 Preview Task pane, Content
Excel Web App Preview Content
Word 2013 Preview Task Pane
Outlook 2013 Preview Mail
Outlook Web App Preview Mail
Project Professional 2013 Preview Task Pane

It would be good to see content apps supported more widely. Still, it is a start.

Office program manager Brian Jones has an excellent post on the background to apps for Office and SharePoint, which inspired me to sign up for a developer preview. Microsoft had already created an Office 365 preview account for me, but this other one is the real deal: you get to administer an entire test organization, complete with SharePoint, Exchange 2013, and all the Office 2013 preview apps.

After sign-up, it took a few minutes to provision, and then I was able to add the Napa development tools to the site. This is itself a cloud app. It is easy to get started: choose the type of app you want and you are in.

image

Napa is a cloud IDE, essentially a code editor with some syntax highlighting and code completion.

image

The real joy, if you have ever done SharePoint development, is how easy it is to deploy. Just click the Run button.

image

Once installed, you can launch the app with a click, provided you have enabled pop-ups on the site. An Excel content app works in the same way, but opens up the app running in an Excel Web App spreadsheet.

I am sure seasoned Microsoft platform developers will find Napa rather limiting, but there is also an Open in Visual Studio button, and all going well you should be able to do most of your coding in Visual Studio, upload back to Napa, and still get the benefit of easy test and deploy.

image

If you are pleased with your app you can easily offer it for sale by publishing to the Office store:

image

The implications for Office 365 are rather profound. It is evolving into a true extensible cloud platform, where businesses can add apps and deploy to their users using an app store model.

That said, you can argue that Microsoft is playing catch-up here. For example, Salesforce.com has had Force.com for years, and I know from visiting the huge vendor exhibitions at events like Dreamforce how strong that marketplace has turned out to be. Salesforce has also enabled its users to build apps in the cloud for many years now.

All true; but Microsoft’s approach does have the advantage of continuity. As I mentioned above, the old stuff still works, so customers can move at their own pace towards a cloud-based platform.

For more information, I recommend this overview.