The history of software development is written large with wrong turns, experiments that went wrong, bad guesses, false starts, and so on. All you have to do it look at all the inactive projects at sourceforge to get a good idea of the ratio of how often something is adopted and takes off versus how often they lie fallow or fail utterly.
The adoption of something, or the lack of it is not always a reflection of the quality of the object in question. Several things got me to thinking about this recently.
- Microsoft's announcement of Office 2011 for the Mac, and the inclusion of something called "Outlook" in it, replacing "Entourage".
- My setting up MAPI on my Mint 8 laptop
- DAVMail fixing the SMTP outbound delay issue in the new version 3.6.3-929.
- Looking at an old box of software on my shelve called "ECCO Pro".
- Talking with my wife about another software package called "Lotus Agenda".
Looking at those one at a time....
According to things I have read in the trades, the 100% new, ground up rewrite with Cocoa technology based Outlook included in the new Office 2011 will connect to MS Exchange via the EWS protocol. This is the same protocol Apple leveraged in Snow Leopard so that their mail.app, address book, and iCal could connect to MS Exchange.
I recently updated my Mint 8 laptop. I had not been on Mint for a while, since my primary desktop is Ubuntu 9.10 at the moment. A fair number of updates we needing to be installed, among them the new 0.28.2-0ubuntu1 version of "evolution-mapi". I set up Evolution to use the MAPI connection, to see what was what.
I could see my inbox, and I could even reply to emails. Performance did not seem all that bad either. I had one hang in an outbound send out of four test emails, but opening it, and sending it again from the Outbox got it to go. This means that all sorts of things that were not working before are now fixed, and so even if it was slow I was starting to think that maybe this was workable now.
Then I tried calendaring. It prompted for my password. Over and over. Then I was locked out of MS Exchange, and had to have my userid reset.
Two years have passed since the MAPI project was announced, and it still is not ready.
I reported here that I had switched my entire email stack a while back to using Evolution and DAVMail, and that the main issue I was having was slow SMTP sends. That was fixed in the very next point release of DAVMail, now at release 3.6.3-929 at this writing, and now sends are fast.
That problem being gone, my worst problem now is that once in a while I get a calendar invite, usually an update to an existing meeting, and DAVMail reports is in an invalid format. Also, there is a noticeable pause when a new or updated meeting comes in while the meeting is searched for on the existing calendar. This is in part because I have the number of days to look at on the calendar set to 360 days. The default is 90. It does not even happen all the time, and it may not be DAVMail but Exchange Web Services being slow.
Neither of these issues occur often, and they are not show stoppers enough to keep me from using Evolution / DAVMail.
MAPI is Probably Not the Way To Go (TM)
Even Outlook itself is moving away from MAPI. The new'ish (since 2003 version of Outlook) "Outlook Anywhere" feature is RPC over HTTP transport, and requires the MS Exchange server to have enabled HTTP... I am pretty sure that means EWS.
MS was forced to document MAPI and the related RPC's that Outlook used to use as part of the anti-trust legalities over in the European Union. At the same time, it appears that MS itself was moving away from MAPI. This only makes sense: MAPI is terrible over high latency, slow network pipes. I can remember times when I was on the road, and dialed in at 56k to the network, fired up Outlook, and then waited 30 minutes to get just the most basic inbox synchronization. That was, as they say, the "Bad Old Days".
Apple uses EWS for Snow Leopard. DAVMail appears to do the same thing: It clearly is not expecting the old DAV interface that MS Exchange had for two releases (2000, and 2003) that MS deleted/replaced with EWS on E2007. There is clearly convergence here, and while EWS may or may not be technically lovely (I have no idea if it is or not: I have not studied it closely enough) it is clearly better than MAPI for remote usage, and it is where everyone, including Microsoft is going.
Linux is out there, via Evolution's Exchange-MAPI, hewing away at dead wood. Linux, via DAVMail is right in there with everyone else. Therein of course is one of the beauties of Linux and its family. There is never just one way to do anything.
Maybe MAPI will arrive and be useful some day, and I will keep checking new releases to see. Ubuntu 10.04 is due out in a few months, and they are being a bit coy about what version of Gnome it will have. This is because Gnome itself is about to go 3.0 in the same time frame, and it is probably a bit hard to see from here if it will be stable enough to be fully tested for the Ubuntu 10.04 release.
The version of Gnome of course intersects with what version of Evolution and its related packages such as MAPI will be. It is possible that there will be no significant updates in Ubuntu to MAPI support until 10.10!
Really really late to the party by then. Thank goodness for DAVMail!
Things that Should Not Be Dead (TM)
If MAPI and some of its related RPC's are yesterdays email access "protocol", and it could be argued not only lived far longer than it should have, but never should have lived at all, there is always the reverse case where things of worth die that never should have.
Back in my MS-DOS using days, I was a Lotus Agenda user. Loved it. It worked in ways that no other software at the time and hardly every since then has. When Lotus killed it (last version was made free and is available for download still) because it did not have enough market, it killed any hope we Agenda users had that there would be an MS Windows version (never mind any other platform).
Eventually a small company named Arabesque created something similar for MS Windows called ECCO. Multiple ownerships later, it was also mostly killed because it did not have enough market share either.
Nothing has ever come along to fill that void for me. I tried Chandler for example, since Mitch Kapor, one of the people that were there in the creation of Lotus Agenda was involved with the creation of Chandler, but funding for that ended in 2008, and the last Linux version was built against 6.06 of Ubuntu... might still work, but not a promising sign.
I watch the way that things are moving around in Web 2.0 and social networking, and keep thinking that every now and then I see a glimmer of the thinking at went into Agenda and ECCO: I had hoped Google Wave for example was going to be that. But so far, it isn't.
Survival of the Fittest
The thing I keep having to remember about Linux and its ecosystem is that the forces that push what lives and thrives, and what withers and maybe dies are indicators of those things that either a business someplace was willing to pay to have developed (75% of the Linux kernel is developed by commercial entities these days) or what was interesting and fun. Linux has *tons* of different ways to blog or interact with social networks for example. It has tons of available email packages and web browsers.
That no one other than DAVMail (at least so far) has created a way to access EWS probably means that Linux's usefulness in the Enterprise as a desktop is a sign more of the way tha the Enterprise has moved towards open standards than the way Linux has molded itself to meet the old business environement I am thinking here of things like OpenOffice 3.2 (announced the other day) with enhanced file format compatibility to ODF!
I keep reading articles about how Linux squanders opportunities like the detour MS went on with Vista, as if Linux had ambition. Too late now! MS righted the ship with Win7.
Except Vista was never as bad as its press, Win7 is not as good as its hype, and Linux could not care less either way because it morphs and moves based on the interests of the people that create it. Linux survives in places that Agenda and ECCO could not. It is not about survival of the fittest (which many people think means "strongest". It is about survival of the most interesting and most useful to the people that create it.
DAVMail came about because someone needed it to fill in the gaps being left by other tools like Evolution and Thunderbird and all the other email / calendarding packages out there. Someday I predict the Evolution-MAPI code will morph into something else: the RPC code mined for useful bits and connected to EWS or whatever comes after that. Be a shame to toss it. just because they made a wrong turn.