Wednesday, March 15, 2006

AIM SDK License Clarifications

I have seen many posts ragging us for the language we have in the AIM SDK regarding what you can and cannot do. I agree that the language is confusing and overbearing in some parts, and often the legal text sends a message that is different than what we intended.

The next version of the EULA will have many of these things remedied, but until then, let me try to clear up some of the sticky issues. (Many of these questions were submitted in an email exchange that you can see here.)

If you have more questions about the license - or are still unhappy with terms in the license - please let me know so that I can try to clarify the issue, not just for you, but for everyone who reads this blog. This is the first effort of this type at AOL and we are still learning how to do this.

Keys, Name, URL
Q:
Why is AOL using keys to control access to the API? I don't want to have to come beg AOL for a key!
A: Anyone can get a key. You don't have to "apply", you just go to our webpage
and click a link. We don't vet the keys in any way, you just click and boom you have a development and deployment key. You can deploy your software, sell your software, have up to 250,000 users of your plugin/client per day - all completely for free. All we ask is that once you exceed that limit (as you start to approach 1% of our userbase, and potentially start consuming nontrivial network resources) you come discuss a business arrangement with us.

For those still unconvinced, Google is doing the exact same thing for access to the Google family of web services. It allows the network operator to know who is using the network, and prevent people from abusing the network (spam, malware, etc).

Lastly, many have asked "I don't know what to put in when for the name/URL fields when applying for a key". The name and URL are intended to allow us to help us monitor the network, by allowing us to get more information about your plugin or client. If you are still in the development phase, and don't know what to put for these fields - you can just make something up for now - you can go back and change it later.

Open Source

Q: Section 4 (viii) (about "Publicly Available Software") seems to be the subject of debate. Some think that it forbids the use of *any* open source code with theSDK, including well-understood licenses that are not "viral". The GPL is notoriously problematic, but I think others (like the MIT license) should be okay.

A: We encourage the use of open-source code with the SDK. The only prohibition is that you cannot write code with a license that would require AOL to open source the SDK. I think the GPL is the only license that has this issue (since you cannot link to closed-source libraries); LGPL, BSD, and MIT should be fine.

We will try to make this absolutely clear in the next EULA. We are very supportive of open source - we use several best-of-breed open source technologies in the AIM SDK (libexpat, zlib, NSS, and sipXtapi).

Wireless
Q: The definitions for wireless use seem very broad. I think the most
worrisome part is:
offer or enable a service or functionality not authorized in writing by AOL that utilizes a wireless telecommunication carrier's network and/or wireless services.
This seems to extend to computers using a wireless internet connection. Three cases come to mind:
  • 802.11 networks operated by wireless telecommunication carriers (e.g. T-Mobile Hot Spot)
  • 802.11 networks using internet access provided by a wireless telecommunication carrier (e.g. a wireless router and a DSL line)
  • TDMA, CDMA, GSM, etc. networks, using a computer, not a mobile device (e.g. Verizon data service using a PCMCIA card)

A: I agree this is very poorly worded. This is only intended to apply to software running on mobile phones using TDMA/CDMA/GSM.

PCs/PDAs using 802.11 are not affected by this.

Deployment
You may not deploy or distribute your Custom Client to any third party.
Q: This appears to extend to distributions that do not include a key or (distributable parts of) the SDK itself (e.g. source code).

A: This is from the section where it discusses "Development keys". The intent is that plugins built with "development" keys (as opposed to "deployment" keys) should not be distributed to end-users in binary form (mainly since the 500-user limit will prevent your plugin from working properly for most users). If you are distributing source, you may include a "development" key in the source - we do this in the sample applications provided in the SDK.

Distribution Limitations
from a fixed HTML website located at a publicly available fixed URL
Q: Theterms "fixed HTML website" and "fixed URL" seem to potentially problematic. Many pages are dynamically generated and mirroring requires redirection.

A: This just means, you can give us a URL, that if we follow it, we can get to a site that has more information about your plugin. The "fixed" language is just a way of saying that if we go to your URL, we should not get a 404.

Monday, March 13, 2006

VON Conference

Greg and I are in San Jose for the VON conference this week, and Game Developers Conference next week. If you're interested in meeting up with us during that time to talk about Open AIM (or anything else), drop me an email [juberti at AOL].

Monday, March 6, 2006

Open AIM

At last! Today is a big day for our team and AOL as we proudly announce the "Open AIM" platform at http://developer.aim.com. In addition to our AIM Presence web service, we are now offering the AIM SDK to all developers. With the AIM SDK, developers can write plugins for the AIM Triton and AIM Pro clients, or write their very own custom AIM clients. 

The full functionality of the AIM network is exposed in the AIM SDK – it’s the same robust and performant libraries that AIM Triton and AIM Pro are built on top of. Both plugins and custom clients have easy access to presence, text messaging, SMS, voice, video, security services, and much more. And it’s being made available through a very flexible license – it’s free to use for non-commercial and limited commercial use (up to 250,000 users per day). 

The JAMS source code, and other sample code, is included in the SDK. And there is extensive documentation, so it’s easy to get started.

Why are we doing this? We think that we can offer developers the best IM platform, by combining the AIM network’s extensive reach (63 million active users) with the power of our AIM SDK and web services – and that puts us at a real competitive advantage. 

We’re really excited to be launching this first version of the AIM SDK, but also have a lot more in store that just couldn’t make it into the 1.0 release. We’ll be offering a number of new features, plus support for more languages and platforms in future versions of the SDK. Show us what you can do!

Wednesday, February 15, 2006

Triton Beta 1.2.10

We just released a new beta of AIM Triton, this was mainly a bugfix release as we get ready to land our next set of features. Notable improvements in this release include support for most proxy configurations, and (at long last) a fix for the plugin settings bug.

For proxies, we will now support SOCKS5 and HTTPS proxies if they are configured/autodetected with IE. However, we don't currently support proxies that require authentication as we have not yet done the work to deal with retrieval/storage of the proxy credentials. A future release will support SOCKS4 (is anybody still using this?), proxies that require authentication, and smart selection of the ports used to contact the AIM service. If you are using Triton and are having problems connecting, please let me know (along with any details of your network that you know) so that I can find out where we can still improve.

For the settings bug, a small oversight on my part led to this being broken for several weeks. When "null" is passed in from Javascript, the VARTYPE of that argument is VT_NULL, not VT_EMPTY. I missed this when we were trying to get all the plugin stuff finished and we didn't get a chance to get a new acccore.dll into Triton for quite a while.

Anyway, settings will now work for plugins that support settings (IAccCommandTarget::Exec with a command id of -1). The only JAMS plugin that currently supports settings is Colorizer, where you can change the saturation and value of your colors, as well as the time it takes to cycle through all the hues. Now that the settings button works, look for more plugins to have tweakable settings (one common ask is for timestamps in EZLogger) in a future version of JAMS.

Tuesday, February 14, 2006

AOL Employee Blogroll

So this blogging thing is starting to catch on at AOL. Seems like every day, I'm getting email from another employee blogger. So I figured I would make a master list of employee bloggers... and sort them by their AIM Fight scores.

Here's the top 5:And here is the full version of the list.

Monday, February 13, 2006

New Week, New Stuff

Last week brought some reshuffling of the technology groups at AOL, with one result being a greater focus on open services, and a second result being that I now report to the SVP in charge of open services (Sree Kotay). Sree's done some neat stuff in his career (Kai's Power Tools); it's always cool to have a VP who can still throw down some CODE.

Open services are going to be a big deal at AOL (really!)- we already have AIM Presence, with AIM Plugins, AOL ModuleT, and a bunch of stuff I can't talk about yet coming really soon. Some other AOL employee blogs to check out... Greg and Justin C. (my team, AIM infrastructure), Corey (UI toolkit), Gus (AIM Triton UI), John (OCP infrastructure), and Jason (MusicNow).

And in the "it's about time" category... hometown.aol.com/members.aol.com now support SFTP... point your SFTP client (I like PSFTP) at hometown.aol.com and log in using your AIM username/password. I will no longer have to fight the Hometown file manager to upload my photos...

Thursday, February 9, 2006

Google and AOL

Whoah! Been a bit heads-down finishing up our APIs and cranking on new stuff for Triton. Can't wait to get this stuff out in your hands. Anyway, a number of recent happenings to blog about...

Google's CEO, Eric Schmidt, dropped by the AOL campus as a surprise guest to one of our company meetings. Sitting in the audience, it was very interesting to hear him speak. The Q & A session with him was very funny:

Q (read by Jon Miller, AOL CEO): Why did you pursue a deal with AOL? Was it simply to block Microsoft with us as a pawn in a geopolitical chess game?

A (Eric): Yes. (Massive laughter). I can't think of any other reason. Did you have another question?

Eric is on the left in the picture, wearing his very bright blue suit. On the right is Ted Leonsis, AOL executive and majority owner of the Washington Capitals hockey team. Ted's an interesting character and has a blog you should check out at http://ted.aol.com.