Microsoft Has Trouble Programming the Intel Architecture
Microsoft Office 2008 for the Macintosh is out, and as there is in any software release from anyone there’s a lot of whining from people who don’t like change. (This is not a criticism of those people; I am often in their ranks.)
Most of the whining comes because Office 2008 does not include Visual Basic. In some respects, this is welcome change because Office never should have had Visual Basic. VBA is what enabled the Macro Virus. Furthermore, Office 2009 (for Windows) is not going to have VBA, either.
However, not shipping VBA in Office 2008 means that people who want to have cross-platorm documents that are pseudo-applications have to deal with it in 2008, not 2009. That’s worth complaining about.
The reason, according to El Reg is blink-inducing:
Microsoft argued that the technical problems involved in porting Visual Basic at the same time as revamping Mac Office to work on Apple’s Intel platform would have meant further delays.
I have demonstrated the absurdity of that argument in my headline. Please, I’m a technologist. I can imagine the real reasons. It was a pain in the butt; it would have required hiring another person or two; it seemed futile to port it when Office 2009 is going to get rid of it. I understand. Don’t insult my intelligence. Don’t lie to me.
The truth is that you didn’t want to, because it would suck. And what are we customers going to do, anyway? So that means you don’t have to do it because you don’t want to.
OpenOffice sucks. No, really, it does. I have co-workers that use it and watching them always brings a smile of schadenfreude to my lips. When trying to bend Word or PowerPoint to my will makes me want to put my fist through the screen, nothing makes me feel better faster than strolling into someone’s office and saying, “I dunno, maybe I ought to switch. How do you do XXXX in OpenOffice?” It’s cruel; it is the equivalent of seeking out someone with no feet because you have no shoes. But hey. I admit and argue the necessity of using Office, but I am Mordaxus, not Pangloss.
Pages is cute and nice for new work, but people don’t send me Pages documents, they send me Word documents. Keynote rocks — it got Al Gore both an Oscar and the Nobel Prize — but when someone says, “Would you look at this deck” it’s a ppt.
There will be those who are scrolling for the reply button to tell me that Pages and Keynote can import Office documents. They can. I still need Office, because they import Office document, not interoperate with them.
Longer work is another issue. Over the last couple of years, I’ve become a LaTeX expert again. The irony is that I stopped doing most of my work in LaTeX because Word 3 was better for so many things. Nonetheless, nothing is as drop-dead gorgeous as a TeX document.
This weekend, a friend who writes books recommended Scrivener to me as an alternative for long documents. Scrivener is more or less a project manager for large documents. I’m going through the tutorials, which are amusing. It reminds me in other ways of the wonderful Notebook by Circus Ponies.
Nonetheless, the friend who pointed me there uses Word.
This brings us back to the matter at hand. As painful as it is for Microsoft, they are a monopoly. Not using Office is not an option. Sure, I can screw around with beautifully designed, fun to use productivity managers, but you have to use Office. (Or LaTeX.)
The plus side of being a monopoly is that you are ubiquitous, and money doesn’t do anything as plebeian as grow on trees for you. The minus side is that when a tree falls in the forest on some power lines, you hear it, and you have to fix it!
Forget duty, let’s talk self-preservation. Microsoft, if you don’t want to go the way of Western Union, AT&T, IBM, Bessemer Steel, or The Railroads, you have to at least pretend you like us, your customers. Getting rid of VBA is a great idea. It was an abomination in the first place, breaking the data/code separation that security needs. But if you’re going to can it in 2009, you have to can it in 2009, not 2008. The result is that we’re going to get more hair-pulling for another year.
This doesn’t indicate to me that Microsoft has any trouble programming on the Intel architecture. This indicates to me that someone in Microsoft who holds the purse strings for the Mac Business Group is not inclined to give them sufficient resources to allow them to effectively compete with the Office for Windows group. If you were struggling to get people to buy Vista in the face of Leopard, would you give them all the resources they wanted?
Recent versions of OpenOffice.org are actually usable for casual, home type stuff — in that they’re stable (at least to the degree that any office suite is stable) and have basic functionality. You can write your letter to grandma, and you can open (most) Word documents and read them. Unfortunately, that’s about as far as it goes. I don’t know anyone who does serious business work in it.
IMHO, the best evidence that the open source software model is not a viable replacement for proprietary software is its failure to produce a real business-strength office suite and an industrial-strength CAD package.
To David Brodbeck: Nicely said. Faint praise is always good.
To Nicko: The Mac BU in MSFT is the most profitable BU in the company. Admittedly, it’s profitable because they do a lot with a little. Nonetheless, how bad could it have been to flip some compiler switches?
openoffice is the worst piece of shit ever written, i would pick word97 over that openoffice anytime.
Back in August 2006, when dropping VBA for Mac Office 2008 was announced, Eric Schwiebert posted the exact technical reasons that the port was going to be very very hard, at http://www.schwieb.com/blog/2006/08/08/saying-goodbye-to-visual-basic/.
Summary: the PowerPC VBA execution engine is very scummy assembly code, implementing a JIT compiler, which targets even a different Application Binary Interface, not just a different processor architecture. The Windows/Intel code is an interpreter, but it’s also written in assembly (in a different dialect to that understood by the Apple/GNU assembler) and Windows has a different ABI to the Mac anyway. The whole thing would probably have to be rewritten in C++ with the usual rewrite risks.
Rick Schaut added (http://blogs.msdn.com/rick_schaut/archive/2006/08/09/693499.aspx) that Mac BU was already running with open head count, that is, they had funding for more developers than they could actually hire.
I think the decision to kill VBA in Windows Office 2009 was taken after the decision to kill it in Mac Office. It’s certainly not mentioned as a factor in the above posts.