I’m sitting in the Microsoft Blogger Lounge on the MacWorld show floor as I write this. I missed the SteveNote today as I was somewhere around 35,000 feet over Oregon as the show was going on, but it sounds like some neat gadgets were revealed today. Too bad I don’t use Cingular as my cell phone provider… :)

Anyway, the big news for MacBU today was our announcement of Mac Office 2008. (Finally, I can stop calling it “the next version of Office” all the time!)

There’s a couple of screenshots over on Ars Technica (along with some good old Charles Jade commentary — I see he had fun tlaking to Geoff) and MacFixit has a short writeup as well.

Please let us know what you think. There’s still more to come; we’ve got converters coming out in beta in a few months, as well as more information on new Office 2008 features in the months leading up to our release in the 2nd half of this year.

I spent a little while at the main Microsoft booth today. One person asked me about VB and another about file converters, but most of the questions were about things that users didn’t know they could do in Office 2004. It’s always nice to be able to show someone how to solve their problem on the spot!

Going back to Cali…

One of the more interesting aspects of working in the MacBU is the fact that our group is split into two main geographic locations — about half of our group is based in Redmond at Microsoft’s main campus, and the rest of the team is based in Mountain View at Microsoft’s Silicon Valley campus. Most recurring meetings that involve cross-locational groups of people occur by phone or video-conference, since otherwise whenever we need to get a particular mix of the MacBU together in person (like all the development leads, or whomever), many of them have to travel. Often the SVC (Silicon Valley Campus) folks travel to Redmond, but this month a meeting I need to attend in person has been set up in California. For me that would normally mean experiencing the ‘joy’ of a 18.5-hour work-day commute to the San Jose airport and back. (In order to get to the SVC campus for a normal work-day, I have to leave my house at 5:00am to catch a 6:30am flight, and then I get back home around 11:30pm! Bleargh.)

Not this time!

Since the meeting is happening during the 2nd week of January, I’m combining the travel for that meeting with a jaunt over to the Moscone Center. I’ll be at the 2007 San Francisco MacWorld Expo on Tuesday and Wednesday January 9-10. I haven’t been to a MacWorld in a long time; I think the last one I went to was MacWorld Tokyo in March 2002! The main reason I’m going this year (other than to avoid a brutal day of travel!) is to participate in some of the blogger events that Microsoft is sponsoring. In particular, I’ll be hanging out at the Microsoft Blogger Lounge (booth #702 in the South Hall) on Tuesday and Wednesday afternoons from 3:00 to 5:30pm or so, and a little bit at our main booth (#1112). Depending on what time my plane lands, I might get there a bit earlier on Tuesday.

So, if any of you reading this are planning to be at MacWorld, feel free to drop by with any questions or comments you may have, or your resumé if you’d like. If you want to be sure I’m around, you can send me an email from this page. I believe some of the other MacBU bloggers will be at MacWorld as well, so look for several of us there over the course of the week.

I’ve just put up some more information on Mac Mojo about the Office X and 2004 update that the MacBU released and promptly removed from MacTopia last week.

The short version is: there is no urgent need to uninstall the patch because we’ll release a new patch by the end of this week to fix everything up.

Rick Schaut just put up some back-of-the-envelope calculations on how long it would take to write new file format converters from scratch.

Conversion factors

A few articles appeared online today, talking about the new Windows Office 2007 file format and converters. They asked a very reasonable question — “Where are the converters for Mac Office?” but wrapped the question in some conjecture and a little bit of hyperbole. Sheridan put up a post over on Mac Mojo to give a little explanation and make a concrete affirmation that the MacBU will release converters for the new formats. So far there have been several dozen comments in reply, many of them expressing some strong emotions ranging from anger and frustration to incredulity and disbelief that we either can, want to, or will actually develop these converters.

Much of the sentiment expressed seems to stem from a number of theories, such as

  1. We have been sitting around doing nothing
  2. We have not talked to the Win Office team
  3. File format converters are trivial

None of these three beliefs are true, however. Let’s look at each one in turn.

1. The MacBU has been doing nothing
The reality is we have been working very hard on underlying technologies we need in order to make these converters. The new file formats are XML-based. On the Windows side, there is a very complete and modern XML parser built into the operating system that the WinOffice team uses. That parser does not exist on the Mac (there are certainly a variety of XML parsers out there, including libxml, but the only one that ships on Mac OS by default is libxml and it doesn’t support everything that the new file formats need.) So, we have spent significant development resources on porting MSXML over to the Mac and testing it to ensure it works. You may recall from earlier posts of mine that porting code from Windows to the Mac is not a trivial task, even when the code doesn’t use any OS-specific APIs. The compilers used by each team are very different, even the behavior of some of the standard runtimes is different, and of course we have to test in great detail any new code and especially any changes we make to it. Beyond that, there are changes that needed to be made to Office 2004 applications to support the upcoming converters, and we’ve been busy doing that. I spent much of the month of October going through Excel 2004’s load and save code path to make it aware of the new converter (I even went so far as to create a fake converter that pretends to handle the conversion commands so that I could actually test Excel 2004’s new behavior as much as possible in advance.)

2. The MacBU never talks to the WinOffice team
Various people in MacBU talk to their counterparts on the WinOffice team pretty frequently. For example, I coordinated the work I did on Excel 2004 with a developer on the WinOffice side who did similar work for WinXL 2003. Our Program Managers have had weekly and monthly meetings with WinOffice folks for the past few years. We’ve known the general plan for the scope of work we’ve needed to do for some time, and have been doing that work. Knowing what to do, however, doesn’t make the work happen instantaneously.

3. File format converters are trivial
Let’s step back and look at the problem again. Office 2007 for Windows and Office 12 for the Mac both need to support the old and the new formats. They need to support the formats natively — it would be pretty silly to invoke an external converter for the new native file format, right? Ergo, the code for the new file format should be written directly into these newest versions of the suites. Ok, so now you’ve got that code in place, and you need to create a converter for the older versions of the suites. What do you do? Should you rewrite or duplicate that file code in the converter project, and risk the converter and the actual product getting out of sync? Or do you take that existing code and repackage it as a converter itself? Well, the WinOffice team decided to do the latter, so their converters for Office 2003 are based off of a significant portion of the Office 2007 code. They shipped their final converter versions after shipping the actual suite that natively implements the formats.

That’s exactly what we’ve chosen to do as well. Rather than duplicating code and having to test each set, we are writing it once and repackaging the appropriate parts as the converters. The problem for us is that we’re following along behind WinOffice in a temporal sense. Because we’re shipping after WinOffice, there is a very real time delta where WinOffice users will be creating files with the new formats and the Mac converters won’t be ready. We’ve been porting the WinOffice code over to MacOffice in stages for many months now, but since they just shipped their final bits in November, we’ve only had those final pieces of source code available for less than a month. We’re porting it over as fast as we can. However, as I mentioned earlier, porting code across is not a trivial task. Our apps have diverged from WinOffice over the last 10 years, so we have to deal with internal implementation conflicts as well as compiler pecularities, OS differences, etc. Some parts even need to be rewritten — anything that deals with graphics on WinOffice probably uses the GDI+ library on Windows, which doesn’t exist on the Mac. So, we need to take time to rewrite it to use CoreGraphics, etc. Those changes need to be tested thoroughly! The converters even need that new graphics code, so that they can convert Office 12-style pictures with all the fancy new effects into some format recognizible by Office 2004.

So, you can see that our Office 2004 converters are very dependent on the progress we make on Office 12 itself. We can’t just drop work on Office 12, as some have suggested, to get the converters ready faster, because the converters use a core subset of the actual Office 12 code. The overall Office 12 project, however, is not yet ready for beta use. The WinOffice file format code changed in some pretty significant ways between their Beta 2 and their final shipping bits, and we had to wait for them to ship so we could get those bits. Our code (not necessarily the file format code, but the whole of Office 12) has some rough edges still; they need to get smoothed out before we can ship.

None of these issues are intractable, insolvable, or something that has surprised us. These issues are just part of the facts of developing and porting code cross-platform (especially code that was not written with cross-platform specifically in mind.) We’re making great progress, and can even see the light at the end of the tunnel (and it’s not a train!) As Sheridan said in a followup comment to her post, back in November we weren’t ready to talk about dates because we didn’t have the latest WinOffice code and couldn’t predict our progress based on missing data. Now that we’ve had the code for a few weeks and have made significant forward progress, I can actually tell you about where we are and when you can expect to see some of the fruits of our labors.

We plan to release a beta of the converters in late March or early April (roughly 3 1/2 months from now), and final versions of them after Office 12 ships. It is imperative that we do proper testing on even the beta converters, because a buggy converter that destroys your files would probably be even worse than not shipping a converter at all. I’m sorry that the wait is so frustrating to you. Many people in the MacBU are working very hard to make the converters available as soon as possible. I’m even helping out by putting on my old Excel developer hat (the one I put on the shelf back in 2001!) and doing some of the Excel port myself. The converters are coming, just not immediately.

Busy busy busy

Hello everyone… My apologies for being away for so long — there’s a lot going on at work (some of which I’ll talk about in my next post) and a lot going on at home, so I haven’t had the time or the inclination to sit down in front of a computer in the evenings. In any case, I’m still here, still employed with the MacBU, and still working on Mac Office 12.

Messenger 6 is now available on MacTopia. I’m sure many of you will be unhappy to find out that it still does not have A/V support. However, Mary Starman has put up a blog post on Mac Mojo that outlines the scheduling and integration issues we’re working with.

The good news is that I can now publicly say that we are adding A/V support to a future release of Messenger for the Mac. I’ve personally seen the code and heard some of the status reports. I can’t speak about any sort of version or date of availability, but it is coming!

Things have been busy at work! I’m hip-deep in the converter work for Excel 2004 so that it can read and write the new Open XML file formats from Win Office 2007 and Mac Office 12. During several build cycles yesterday and today I finished and posted my first real entry on Mac Mojo.

The converters are coming along but we’ve got a long way yet to go. Stay tuned here or to MacTopia for announcements on their availability.

Vegas Mojo

Well, I’m a little late to the announcement party. Can I claim I’m just being fashionable? On Tuesday, the MacBU started up its new team blog called Mac Mojo! I’ll be one of the contributers there, along with a bunch of other current MacBU bloggers and several new folks. I see that Brad, Sheridan, and Joe have already dipped their toes into the blog ocean. So, come read us over there!

As for myself, I’ve been pretty quiet here. I’ve received a lot of great feedback on VB and made sure it got into the proper inboxes at work. Thank you all for your comments and feedback. Alas, there’s no way I can ever reply to every comment, but I have read them all. I plan to post some snippets of VB-to-AppleScript conversions so that people can get a rough idea of what you can do with AS.

That will have to wait a few days, however, because I’ve got a ton of stuff to do at work. I just got back this evening from a week’s vacation with my family in Las Vegas. Nope, no gambling, but we did spend a lot of time at the pool (my son now loves waterslides, provided I hold him as we slide down) and wandering through several of the mega-hotels on the Strip. My son had a very hard time believing that this was *all* Las Vegas. I think he thought the hotel itself was named LV, and that everywhere outside it was some other magical new place (Bellagio fountains, MGM lions, Mandalay Bay shark reef, Mirage volcano and dolphins, Caesars Palace Forum, it just went on and on…!)

So, after having been gone for a week, I came back to 772 new messages in my work inbox (110 per day!) that I need to cull through. Wheee!

Sorry for the down time

My hosting service had a partition get corrupted during a normal server reboot early Monday morning, and it took over 26 hours for the fsck to verify the drive. Grrrrr.

It’s all back up now, with no lost content. Any mail sent to me in the last day or so will be trickling in today and I’ll try to get to it tonight.

« Older entries § Newer entries »