Friday, December 30, 2005

2005 Retrospective

So it's time to look back and see how we did in 2005.

Things we did right:

AIM Triton 1.0.  Back in 2004, we had gotten to a point with the AIM 5.x codebase where we knew we could not innovate significantly any longer. The UI was hard to update, our Unicode (non-English characters) support was awful, the HTML renderer was a conglomeration of patches... we needed to rewrite almost everything... and so we did, resulting in AIM Triton. Yes, AIM Triton does not yet have all the features of AIM 5.9, including several important ones, and I will be the first to admit that we need to continue to fix bugs and improve performance. Nevertheless, the new platform that we have established is much better in terms of overall correctness and flexibility than what we had before, and getting there has been a substantial achievement.. The new UI is great and the plugin support will open the door to lots of neat stuff - plus we're working hard on getting your most-requested features back in for the next Triton releases.

AIM Developer APIs. From the humble beginnings in AIM URLs and, we have been working to open up AIM to the outside. And now with the AIM Presence API and the upcoming release of the AIM Triton Plugin API we are have an opportunity for people to build real applications on our platform. This new opennness may be suprising to some, but we've wanted to do this for a long time - we know we don't have all the ideas!

AIMFight. Two guys did this as a quick fun feature that they thought people would enjoy. So it was pretty awesome to see it make the front page of the Washington Post. The profligation of widgets that display the AIM fight scores are also great - another example of people using our AIM APIs.

And things we didn't:

The AIM Terms of Service. A couple of unclear sentences in the TOS and we find ourselves looking like we're trying to claim ownership of everyone's AIM conversations. Of course this was untrue, but getting that cleared up resulted in a very unfun week.

The AIM Profile hyperlink: I thought everyone would love the new all-in-one AIM Profile/Away page. And, we thought, what better way to let people know about it than putting a link in users' profiles? Well, as it turns out, people don't like having a profile they carefully created altered in any way. This was a case where we thought we were doing a good thing, but the way we did it made it a mess.

Megabots. I think the Moviefone bot is pretty neat, but I knew forcing it into the buddylist, especially at the top, was going to cause an outcry. Having just been through the AIM Profile hyperlink issue, we tried our best to argue against this same sort of unwanted change to personal data...

So, there it is. There are many other wins that I don't have the space to talk about now (500 buddies, JAMS, VoIP), and there are many other bad ideas that we prevented as a result of our constant fight to "do no evil". We (AIM teams) worked really hard to do cool stuff in 2005, and you can expect the same of us in 2006. Happy New Year!

Thursday, December 29, 2005

Mailbag 12/29/2005

With all the great questions I've received, I've decided to copy an idea of Greg's and start a weekly mailbag post. You can post your questions in blog comments or send them to me directly. Here's the first set of questions...

Q: When will the next version of JAMS be released?
A: The new tenative release date for the next JAMS is 1/6/06.

Q: What will be in the next JAMS?
A: Greg and I are working on two great new plugins that add much-requested functionality to Triton. The bug with Colorizer not working if you have customized your font will be fixed. We will also be looking into the reported iTunes issues.

Q: When can I develop my own plugin?
A: I cannot comment on dates, other than to say that we will be releasing the SDK "really soon".

Q: What if I don't want to wait?
A: You can get a head start by looking at the type library for acccore.dll, which is installed in the AIM Triton folder under "services/im". You can use the "oleview.exe" tool to view the type library.

Q: Anything more you can say about the plugin SDK?
A: As previously mentioned, the JAMS source code will be released with the SDK. There will also be a number of other goodies and surprises.
Q: Can you make JAMS work with my favorite music player?
A: If you send us a code snippet or URL showing how to get the track info for said player, we will try to add it.

Q: Can you make a plugin that adds the alert icon to the buddy list?
A: AIM plugins cannot currently change the buddy list UI. However, a future version of Triton should have this feature.

Q: Can you make the settings button work for JAMS?
A: Unfortunately this is a bug in AIM Triton 1.0 and 1.1. It can't be fixed in JAMS, but it will be fixed in Triton 1.2.

Q: Can you make a version of JAMS for the Triton betas and one for Triton 1.0?
A: JAMS 2.2 and all future releases will work with Triton 1.0 and all subsequent Triton releases, so there is no need for separate versions of JAMS.

Q: Can we have timestamps for every message in the logs?

A: Personally I think this clutters things up, but there has been enough interest that I will try to add it as an option in a future JAMS.

Q: Can EzLogger use the default browser instead of IE to display logs?

A: I tried to make that work, but I could not figure out how to make ShellExecute navigate to a URL with an anchor, so that the log is scrolled to the end (e.g. file:///juberti.html#end). If you know of a way, please let me know.

Q: Can you get working on a new Mac AIM?

A: We have been.

Sunday, December 11, 2005


Just got back from 8 days at Disney World and SeaWorld with the family. Some of my favorite pictures from the trip...