How Microsoft is Taking Office Cross-Platform

How Microsoft is Taking Office Cross-Platform

Or, how Microsoft is embracing mobile first, cloud first

A Microsoft distinguished engineer has provided some crucial information about how the firm intends to extend its dominance in office productivity software to devices in this "mobile first, cloud first" era. As you might expect, Microsoft will tailor Office to the platforms it targets, and not offer a lowest-common-denominator experience. But we already knew this. What's really neat about this talk is how effortlessly and pragmatically the firm has moved into this new era.

For me, this one is a little bit personal. When I spoke with Microsoft's Brad Anderson about the firm's mobile device management solutions recently—a discussion that was condensed heavily into the article Microsoft Ideally Situated to Own Mobile Device Management—he was nice enough to tell me that my explanation of Microsoft's strategy in Satya Nadella Explains the "Mobile" in "Mobile First, Cloud First" was exactly right.

"Your thoughts are dead-on," he said. "In the mobile first, cloud first world, we build services that are first class solutions for all customers. We now require that our services run on every platform, and at the same time. Not Windows first, but across all the devices."

With this in mind, Microsoft's plans for Office make plenty of sense. To date, Microsoft has of course offered first-class Office versions on both Windows and Mac—OK, mostly Windows, but presumably Mac catches up some day—and mobile and web versions of some key applications and services. On the mobile front, we're seeing a two-tier system evolve. Basic Office Mobile offerings on phones—Windows Phone, Android and iOS—and now full-featured Office for iPad. We know, too, that this tablet offering—which I think of as Office Touch—will come to Android as soon as this fall, and to Windows in early 2015.

So what have we learned about these plans?

Microsoft distinguished engineer Igor Zaika recently appeared at Facebook's @Scale conference, where he held a talk that was seriously titled Microsoft Office Cross-Platform Architecture: How Microsoft Uses C++ to Deliver Office Applications Across Windows, Apple, Android, and Web Platforms." You can watch it on YouTube, if you want (the video can be found below too), but here's a rundown of the information he provided, starting with a bit of history for context.

C++ is at the heart of Microsoft's (Office-based) cross-platform work. This amazes me. But Office's legacy as largely C++ code must explain it. The Office codebase is literally 30 years old, though the initial apps were C-based, not C++.

Office was completely rewritten in 1992-93. The idea was to develop a common code base between Windows and Mac. It didn't work out well on the Mac, however, as Mac users of that era can explain.

Office went 32-bit with Office 95 and Windows 95/NT 4.0 as you may recall. But this was also the time where Microsoft went to C++, and with Office 97, most of the new code was C++. (Also COM support and VBA.) It's also when the Mac efforts split off from Windows, which was good for the Mac—Office 98 was very well-received—but bad for cross-platform compatibility.

Modern changes to traditional Office implementations. Here, you know the drill: Ribbon. Web Apps. Plus Modern C/C++ compilers.

Mobile versions of Office. Office Mobile. Office for iPad. Moved to modern C++, currently working on Android and WinRT versions of Office. C++ is still the king, Zaika said, and key to Microsoft's cross-platform efforts.

Strategic goals moving forward. Here, we get to the meat. Microsoft wants a first-class version of Office available on all major platforms: Windows, Apple, Android and Web. "Everyone is using mobile devices," Zaika said. "But devices run different platforms." So they need to target each, providing content fidelity across each while providing the best-possible experience on each as well. And in keeping with the new rapid release mantra at Microsoft, changes can't come in major releases every two to three years.

He doesn't mention the Mac ... at first. Early in the talk, he mentions Microsoft's two platforms, Win32 and WinRT. He mentions Apple, but calls it iOS. This might be a troubling development, given the recent silence on a new Office version for Mac. It might not. But later on, he hints at where Microsoft is going: They are developing new iOS and OS X versions of Office in tandem, no doubt because of the underlying technical similarities of those platforms. This suggests that something truly great is in the works.

Form factors. Microsoft will target phone, tablet, desktop, large screens, Apple Watch (with a smiley face) with future Office apps.

User experience models: Mouse/keyboard and touch (with gestures), of course.

Quality of experience. Office will provide rich, native experiences across the supported platforms, not a lowest-common-denominator experience common to all. It will use the most native interfaces and integrate with the underlying platform as much as possible, but it will not sacrifice document fidelity in doing so, and apps should look/work similar across platforms. (PowerPoint is obviously PowerPoint no matter which app the platform is running on.)

Cross-platform technical strategy. Microsoft has created platform abstraction layers to help manage the difficulty of taking legacy code forward to mobile devices. It's like rebuilding a jumbo airplane while it's flying, Zaika noted, and Microsoft is serious about not making the same mistakes it did in the past with Windows/Mac Office 6.0. If you're a developer, you may be interested in more detail, so watch the video. He provides it.

Indeed, there's a lot of good stuff in there. But the thing I enjoyed most about this talk was how good natured and pragmatic Igor Zaika is about platforms that Microsoft ostensibly competes with. This is the type of nonpartisan discussion that is almost always lacking in tech circles, and something I've been trying to lean towards in my own writing. There is an element of the Microsoft old guard, for lack of a better term, that doesn't understand or appreciate that the software giant is embracing popular mobile device platforms, and this talk goes a long way towards explaining, implicitly, why those folks are dead-enders. This is a new world, people, and embracing it isn't a choice. It's the only choice. Fortunately, it's a good one. And it's nice to see Microsoft on the right side of history, which isn't always the case.

Here's the video.

Hide comments


  • Allowed HTML tags: <em> <strong> <blockquote> <br> <p>

Plain text

  • No HTML tags allowed.
  • Web page addresses and e-mail addresses turn into links automatically.
  • Lines and paragraphs break automatically.