What I've been doing with my Year
Dec. 12th, 2003 04:34 pmAhhh -- the words I've been longing to hear: "Public Beta". For over a year now, I've been working on this project, and it's finally up to the point where I can talk about it. The following is blatant advertising for my company, but I need to burble a bit, and what's the use of a blog if I can't burble?
So I've spent essentially the past year building the server engine for a system called ASAP. On the surface, it's an Instant-Messenger package, sort of like MSN/Windows Messenger, AIM, Yahoo! Messenger and that ilk. But it's aimed at a much more serious business audience: this is IM grown up, with the sorts of features you need if you're going to use it to really get things done. Here's an overview of some of the cool stuff in the system.
Stand-Ins: It has a couple of new ways of finding people. On the one hand, there are "Stand-Ins". Say that I'm a developer, and a salesperson needs to ask a question about my area of the code when I'm not around. I can desigate another developer as my Stand-In for sales -- someone who might be able to help if I'm not available. So when the salesperson tries to get a hold of me, it will suggest this other person as a possible alternative. I can specify different Stand-Ins for managers, other developers, friends -- basically, any group of people can be assigned a customized list of Stand-Ins who might be useful for that group.
Lifelines: On the other hand, it has "Lifelines". A Lifeline is basically a group of people, any of whom can be accessed through a single contact. So for example, you could create a Customer Support Lifeline for your company, and make that available as a contact to your customers. When a customer needs help, they double-click on that Lifeline, just like you would normally double-click on an individual to start chatting with them. The system automatically picks the least-busy member of that Lifeline, asks them if they're willing to help out now, and sets up a chat between the customer and that person.
Meet ASAP: As with ordinary IM systems, we provide simple chatting -- you select some people and say "Meet Now", and you get a meeting with them. But we also provide a really useful variant of this: "Meet ASAP". This is my personal favorite feature. Say that you need to meet with four people, but only two of them are around right now. You could plan a meeting by sending emails around and finding out everyone's schedule, but that's a hassle. Instead, we let you just select all four of them and say, "Meet ASAP". Whenever everyone in the meeting happens to be online and available, the system pops up a little message telling you that your meeting is ready. Click on it, and you get your meeting. This frees you from having to try and manually figure out when all of the people you need are around: you just tell it who you need to meet with, and it does the legwork of telling you when you can meet.
VIPs: It provides a bit of intrusion filtering. In most ordinary IM systems, you can say, "I'm busy", or in some just declare "I'm pretending to not be online". We support that, but we also allow you to designate specific other people as "VIPs", who get to see what's really going on. So I could, for example, declare that the other engineers are VIPs, so that they can contact me even if I'm pretending to management that I'm not present. (Okay, the theory is that you do it the other way around. But get real...)
Integration: It provides a good deal of automatic integration with other IM systems. I'm running MSN and AIM on my desktop right now. ASAP will automatically read my contact list in from both of those systems, and show me the combined presence of all three, so I can see my AIM, MSN and ASAP contacts all in a single interface. Moreover, it will use whatever mechanism someone is available on to send chat invitations. So if I pick one of my MSN buddies and start a chat with them, they'll get an MSN chat with a link in it -- and all they have to do is click on that link, and *poof*, they're in an ASAP meeting with me.
No-download meetings: Which brings us up to the idea of instant meetings. To use the system completely, with a buddy list and everything, you have to download a client, same as for everything else. But the people you chat with don't have to download anything! If I invite my MSN buddy above to a meeting, and he clicks on the link, he simply pops into an ASAP meeting -- no download required.
The magic here is Flash, which is installed on damned near every browser on Earth. Our UI is written in Flash, so if you have a decently recent version of that (and you probably do), you can just join right into meetings. This means that, while the buddy-list stuff is Windows-only for the moment, you can invite most people from the Mac and *nix worlds into meetings with you.
We even have a concept of "email contacts". If I know someone's online, and they don't have any IM system, I can add them as an email contact, and start a meeting with them that way. The email contains a link -- they just click on the link, and enter right into the meeting with me.
Flash also gets us some other really interesting goodies. For example, it supports most audio and video systems right out of the box. So if you've got a webcam, it will automatically detect that; you can just press a button, and start having a video meeting. (And Flash just looks so good. Our UI is really slick.)
Presentations: For the serious business types, we've also got a "presentations" tool built-in. You can take a Powerpoint slideshow, and import it right into a meeting. Once you do that, you can draw circles and arrows and stuff all over it while you're talking, to show folks what you're talking about. And we've also got a screen-sharing component, so someone can show everyone else exactly what they're looking at on their screen -- if you're talking about a program of some sort, this can save a huge amount of confusion.
There's lots more, and we've barely scratched the surface -- we've got all sorts of ideas about how to make the IM concept more useful. But that's most of the interesting high points so far.
Mind, it's still beta software, and there are definitely still plenty of bugs to fix before the real release. But it's good enough to play with now, and pretty neat. If you want to come see what it's like, go to the Convoq Homepage, and click on the ASAP Beta picture there. We're looking to get more people playing with it while we're in beta, so come have fun.
Feel free to ask questions -- it's remarkably pleasant to finally be able to blather about this, after fifteen months in stealth mode. And spread the word...
So I've spent essentially the past year building the server engine for a system called ASAP. On the surface, it's an Instant-Messenger package, sort of like MSN/Windows Messenger, AIM, Yahoo! Messenger and that ilk. But it's aimed at a much more serious business audience: this is IM grown up, with the sorts of features you need if you're going to use it to really get things done. Here's an overview of some of the cool stuff in the system.
Stand-Ins: It has a couple of new ways of finding people. On the one hand, there are "Stand-Ins". Say that I'm a developer, and a salesperson needs to ask a question about my area of the code when I'm not around. I can desigate another developer as my Stand-In for sales -- someone who might be able to help if I'm not available. So when the salesperson tries to get a hold of me, it will suggest this other person as a possible alternative. I can specify different Stand-Ins for managers, other developers, friends -- basically, any group of people can be assigned a customized list of Stand-Ins who might be useful for that group.
Lifelines: On the other hand, it has "Lifelines". A Lifeline is basically a group of people, any of whom can be accessed through a single contact. So for example, you could create a Customer Support Lifeline for your company, and make that available as a contact to your customers. When a customer needs help, they double-click on that Lifeline, just like you would normally double-click on an individual to start chatting with them. The system automatically picks the least-busy member of that Lifeline, asks them if they're willing to help out now, and sets up a chat between the customer and that person.
Meet ASAP: As with ordinary IM systems, we provide simple chatting -- you select some people and say "Meet Now", and you get a meeting with them. But we also provide a really useful variant of this: "Meet ASAP". This is my personal favorite feature. Say that you need to meet with four people, but only two of them are around right now. You could plan a meeting by sending emails around and finding out everyone's schedule, but that's a hassle. Instead, we let you just select all four of them and say, "Meet ASAP". Whenever everyone in the meeting happens to be online and available, the system pops up a little message telling you that your meeting is ready. Click on it, and you get your meeting. This frees you from having to try and manually figure out when all of the people you need are around: you just tell it who you need to meet with, and it does the legwork of telling you when you can meet.
VIPs: It provides a bit of intrusion filtering. In most ordinary IM systems, you can say, "I'm busy", or in some just declare "I'm pretending to not be online". We support that, but we also allow you to designate specific other people as "VIPs", who get to see what's really going on. So I could, for example, declare that the other engineers are VIPs, so that they can contact me even if I'm pretending to management that I'm not present. (Okay, the theory is that you do it the other way around. But get real...)
Integration: It provides a good deal of automatic integration with other IM systems. I'm running MSN and AIM on my desktop right now. ASAP will automatically read my contact list in from both of those systems, and show me the combined presence of all three, so I can see my AIM, MSN and ASAP contacts all in a single interface. Moreover, it will use whatever mechanism someone is available on to send chat invitations. So if I pick one of my MSN buddies and start a chat with them, they'll get an MSN chat with a link in it -- and all they have to do is click on that link, and *poof*, they're in an ASAP meeting with me.
No-download meetings: Which brings us up to the idea of instant meetings. To use the system completely, with a buddy list and everything, you have to download a client, same as for everything else. But the people you chat with don't have to download anything! If I invite my MSN buddy above to a meeting, and he clicks on the link, he simply pops into an ASAP meeting -- no download required.
The magic here is Flash, which is installed on damned near every browser on Earth. Our UI is written in Flash, so if you have a decently recent version of that (and you probably do), you can just join right into meetings. This means that, while the buddy-list stuff is Windows-only for the moment, you can invite most people from the Mac and *nix worlds into meetings with you.
We even have a concept of "email contacts". If I know someone's online, and they don't have any IM system, I can add them as an email contact, and start a meeting with them that way. The email contains a link -- they just click on the link, and enter right into the meeting with me.
Flash also gets us some other really interesting goodies. For example, it supports most audio and video systems right out of the box. So if you've got a webcam, it will automatically detect that; you can just press a button, and start having a video meeting. (And Flash just looks so good. Our UI is really slick.)
Presentations: For the serious business types, we've also got a "presentations" tool built-in. You can take a Powerpoint slideshow, and import it right into a meeting. Once you do that, you can draw circles and arrows and stuff all over it while you're talking, to show folks what you're talking about. And we've also got a screen-sharing component, so someone can show everyone else exactly what they're looking at on their screen -- if you're talking about a program of some sort, this can save a huge amount of confusion.
There's lots more, and we've barely scratched the surface -- we've got all sorts of ideas about how to make the IM concept more useful. But that's most of the interesting high points so far.
Mind, it's still beta software, and there are definitely still plenty of bugs to fix before the real release. But it's good enough to play with now, and pretty neat. If you want to come see what it's like, go to the Convoq Homepage, and click on the ASAP Beta picture there. We're looking to get more people playing with it while we're in beta, so come have fun.
Feel free to ask questions -- it's remarkably pleasant to finally be able to blather about this, after fifteen months in stealth mode. And spread the word...
(no subject)
Date: 2003-12-12 02:04 pm (UTC)I think that's a very useful paradigm, and it seems like Convoq is working along similar lines. The Stand-In, Lifeline, and Meet ASAP features all seem to fit this idea quite well.
I'm intrigued. I want to see this in operation.
(no subject)
Date: 2003-12-12 08:07 pm (UTC)Yes, just so. One thing we're trying to do is take those "state" messages much more seriously than folks have tended to do before. All the IMs allow you to say "I'm busy" and stuff like that, but it's usually mostly commentary. We have some fairly subtle rules that take those states into account, and try to automatically set them under certain circumstances.
Intrusion management is really the name of the game in the next generation of IM tools: everyone knows it, but we seem to be first off the mark to really do something about it. That's going to be an exciting area, which I expect will evolve a lot in the next few years...
(no subject)
Date: 2003-12-12 02:08 pm (UTC)Well, who knows, maybe it would be.
(no subject)
Date: 2003-12-12 08:12 pm (UTC)-- Windhaven: an educational web-based multimedia MUD system, developed for the DoD school system under DARPA contract.
-- Multiplayer systems (basically all of them) for Looking Glass' first-person games.
-- Trenza: building a 3D social interface for the Web.
-- Buzzpad: tools for working together in online environments, starting with Totally Kickass Co-browsing.
And now this. And that's not counting the Braid project, which really evolves from what I *wanted* the VRML project to do, back in the earliest days of that.
Social tools are my meat and drink, and I'm always happy to blather on the subject...
(no subject)
Date: 2003-12-12 02:40 pm (UTC)What we're looking for:
1) A secured IM. Encrypted communications.
2) Strict access controls. We're considering running either through a secured, publicly available portal (like Yahoo) or running our own server.
3) Content filtering: remove proprietary/privileged info from messages.
Does Convoq address these issues?
(no subject)
Date: 2003-12-12 08:28 pm (UTC)2. We're not selling on-site servers yet -- we're focusing on an ASP model initially. But we're very interested in hearing about what folks are looking for in this regard.
3. You're looking for fully automated filtering? We don't have that yet. Depending on what you're looking for, our architecture might be fairly amenable to it: we have a highly flexible backend scripting engine (which is what I've been working on).
In all seriousness: you should probably call Steve Brand, our VP of Sales, and have a chat with him. He's very sensitive to this kind of thing, and this is a very useful time to provide us with input...
(no subject)
Date: 2003-12-12 06:10 pm (UTC)and a way to group people by online/offline and origin (i.e. form aol, from msn, etc...
(no subject)
Date: 2003-12-12 08:30 pm (UTC)The grouping suggestions are good ones -- we know that there's more to be done there. I don't think anyone's suggested grouping by origin point before, though -- that's an interesting idea...
(no subject)
Date: 2003-12-12 09:46 pm (UTC)(no subject)
Date: 2003-12-13 06:14 am (UTC)(no subject)
Date: 2003-12-13 10:00 pm (UTC)Does the grouping for "who can see what's going on" also extend to groupings for "who I care most about"? That is, if you have 200 contacts but there are 10 you use a lot and/or care about knowing status on, you probably want to have them at the top of your list, or have a way to name and access that group in your client, or something like that, so you can tell at a glance whether the most important people are around.
(no subject)
Date: 2003-12-14 09:18 am (UTC)At the moment, groups are ordered alphabetically -- having more precisely defined ordering is an interesting idea, although not in place yet...