It's like a horse I can't get off. Writing for Lotus Advisor, that is. I've just turned in my last set of proofs
for the first article in a new series I'm writing for them on the fundamentals of AJAX. That makes, if you're counting, my 41st Advisor article and the sixty-first article published by one of our people here at Teamwork.
In any case, AJAX, if you've been stuck in meetings for the last year or so, is an acronym for Asynchronous JavaScript and XML and it's very hot right now. More importantly, it is a really interesting use of technologies that, it turns out, is actually pretty easy to implement.
I am certainly not the first person to write about AJAX. I'm not even the first to write about it in Advisor. Richard Schwartz has that honor. He wrote a great article on the topic back in October 2005. So, why another article or, in my case, a whole slew of them?
Because, as I've talked to clients and peers around the Notes/Domino world, it is clear that while everybody is pretty interested in AJAX, most people have little idea how to figure out when it's appropriate in their applications. Even fewer have a clue about how to actually build it should they be fortunate enough to come up with a place to use it.
Well, that's a shame.
This is good technology that has lots of useful applications. Back in November I posted here an AJAX-based Domino NAB-picker for the web which I helped tweak (but Matt White actually wrote most of) that is, by a long margin, the fastest NAB picker I've ever seen. That's "long margin" as in "by an order of magnitude." We have tested it on Address books with more than 200,000 names and the response is almost the same as with our meager little 300ish-name NAB here at Teamwork.
That's not just good, that's amazing. Carrying the idea a bit further, though, I'm working on an AJAX-based type-ahead drop-down thingy
that will let you skip the NAB-picker altogether and go straight to the names, right from your field. That'll be even better and faster because you can skip the whole open-another-window-and-wait-for-it-to-get-going part of the process. You just start looking for names.
And, it's just the start of the kinds of things you can do with AJAX.
The technology is so good in the right applications that it's almost criminal not to use it so, well, I decided to start digging down into the bowels of it to try to make it understandable and usable to everybody.
Time will tell how successful it is but I can tell you I think the first installment (May 2006, Lotus Advisor) is a good one. Also, for what it's worth, if you're coming to the AdvisorLIVE event in Las Vegas this April, I'm giving a Fundamentals of AJAX session there, too.
1. Julian Robichaux02/11/2006 12:39:14 PM
Homepage: http://www.nsftools.com
If it helps, I wrote "an AJAX-based type-ahead drop-down thingy" for looking up Notes names about a year ago:
http://www.nsftools.com/tips/NotesTips.htm#notessuggest
It's one possible technique, anyway. One of the agents in the database actually discusses a way you could try to cache the results for faster lookups, too.
2. Scott Good02/12/2006 11:30:32 AM
Homepage: http://www.scottgood.com
Thanks Julian! I'll take a look.
3. Scott Good02/12/2006 12:02:15 PM
Homepage: http://www.scottgood.com
Julian,
I've looked at your type-ahead drop-down thingy. Very nice.
FWIW, I've added some alternate ways of picking the names in the one I built. For instance, we both allow an arrow down to the list of possible names, but mine also watches for both Enter and comma when you're typing in the field. Given either of those it automatically selects the first name on the list and puts it in the field (with a trailing comma, if you pressed comma in the first place).
It's a simple code change but makes it easier to use, particularly when entering multiple values.
I need to spend some time with your code to see how you're getting it all to work, particularly the caching. That's a really interesting idea I hadn't considered. Also, you're doing it with divs where I'm doing it with a select object. Your way may make more sense as I'm having some issues with positioning.
Thanks for pointing me to this.
Scott
4. Julian Robichaux02/12/2006 02:07:51 PM
Homepage: http://www.nsftools.com
Cool. I'll be interested to see your final result.
Also, I forgot to mention that another developer has picked up the JavaScript I wrote for the NotesSuggest example, added some additional code of his own, and posted it as a SourceForge project:
http://sourceforge.net/projects/ajax4suggest
One of the good things that he added was a way to have multiple "suggest" fields on a single page, which was always a limitation of the old example. Not sure what else got changed...
I'll keep my eyes open for your articles too!
- Julian
5. Erskine Harris02/15/2006 10:37:23 AM
Homepage: http://www.clearframe.com/
Scott,
Like all of your other series's at Lotus Advisor, I am sure this one will be great.
Looking forward to May 2006 issue
E
6. Danyele Blanchet02/24/2006 04:47:53 PM
Hi Scott,
Since, you did not write anything in Lotus Advisor for a while, I was beginning to be afraid that you left. But thank God, we will be able to read you again.
I can't wait for the Spring to come and finally read something great from you. As always, you are an inspiration.
- Danyele
7. Scott Good02/27/2006 08:37:52 AM
Homepage: http://www.scottgood.com
Oh my...I'm blushing.
Thanks!
8. Guillaume05/12/2006 12:57:24 PM
Homepage: http://sourceforge.net/projects/ajax4suggest/
Hello,
to answer to Julian and Scott, the latest build 1.0 SP10 is available now on http://sourceforge.net/projects/ajax4suggest/
The main features are:
- Backend independant meaning you could use XML, Javascript or even SOAP as response from your GET call
- Multiple input fields allowed on a single page
- Design is not hard-coded so you can use stylesheets
That's it.
Guillaume

























