Google Suggest Dissected
sammykrupa writes "Google suggest Javascript code dissected and rewritten for all of you web developers out there. Cool piece of web reverse-engineering!" Joel Spolsky astutely notes that this will raise the bar in terms of how people expect the "internets" to work.
Let's think if the way people search for stuff.
1. Try something specific
2. Try something less specific
Number 1. brings up no results on Goggle Suggest, number 2. brings up 523,334 results. Impressive, but how has this helped us search for 1. ?
Let's try an example, lets look for "C# structs"
1. Enter "C# structs" - no suggestions.
2. Enter "structs" - 425,000 results.
Grrreat.
"It's not your information. It's information about you" - John Ford, Vice President, Equifax
Raising the bar as in people will expect computers to start intelligently assissting them when the are trying to figure something out. Not Clippy style, I mean assisst you as in being useful. In addition to that, it won't only be expected for native applications but also for web services. The nice thing is, this should ease people into the mentality that its okay for computers to help you.Some people still are freaked out by that.
Regards,
Steve
Unfortunately Google Suggest has really no use. If you know what you want to search for, you search for it. Suggesting search terms isn't really going to do anything apart from distract you. Hopefully this technology will be used for other things where it actually IS useful.
While I'm very impressed with the javascipting behind this and indeed the speed of return from Google's network, I really don't see why it is being treated as revolutionary.
It could potentually save a user some time, but could equally slow down their search by confusing with a multitude of options.
Yes, I'm aware of it. The problem with it is, if you start using massive arrays in javascript then the client's box slows to a crawl. There are a few tricks you can use to speed up this process, but it's impossible to tell what kind of hardware they have, and how much load you can get away with.
If I were to hazard a guess, I'd say it's probably only good for small (less than 1000 items) search lists.
BeauHD. Worst editor since kdawson.
What you say might be true for us geeks, but have you ever seen how standard users do web searches? They begin with one-word searches, and if and only if the results don't satisfy them do they refine their search.
Engage!
That differs from the well known "nothing happens till you hit the send button paradigm". So beware of type in your passwords by accident. They read everything (and turn it to statistics).
Wouldn't Amazon or eBay make more use of this technology? Google will give you results for almost anything, and as such I don't think this technology is as useful as it would be for a more limited (but still massive) database like Amazon or eBay.
Not to say that this isn't useful or cool but I really don't see how this sort of thing is that much of a benefit. It, like most client-side scripting, creates a non-standardized way to do a common task. In this case it might be useful for this ability to be intergrated into the basic protocols but the Javascript version is really nothing more than a bandaid for the ongoing problem that the basic protocols of the web HTML and HTTP really aren't meant to be used to write applications. Rather than creating more and more non-standardized web sites that are a usability nightmare it'd be much better to create some new standards.
:)
So, as a prototype this rocks. I hope it, and other Javascript, doesn't spread to every site on the planet though. Client-side scripting sucks.
At what price learning? At what cost wisdom? The price is a man's peace of mind, and the cost is his life.
Yeah, I think you're really belittling this engineering.. The point is Google is doing all this with a straight-jacket (also known as a web browser) on. It's kinda like minimalist composition. I can imagine that next year some time when The Matrix Online comes out everyone will be saying "yeah, so, it's just kungfu fighting in a game.. the only really it's impressive is because it's a MMORPG, we've had kungfu in video games since Street Fighter." or something equally silly. The point is that twitch games a really really had to do over the wild wild internet (which is why FPS games are SOOO much better on a LAN) and close combat twitch games that involve kungfu style fighting are even harder. If TMO pulls it off I'd expect the same geek response as we've had over Google Suggest, cause it's just a bitch to do with the technology available.
How we know is more important than what we know.
I view Google Search as a great interface enhancement for the tired browser paradigm.
Everybody is writing apps to work in the ubiquitous browser. Unfortunately, developers have to jump through many hoops to get browsers to sport friendly interface elements that are already available in the X / Windows / Mac interfaces. The browser was never meant to be an application front-end, but it's being forced upon us developers, costing more time to get a workable product banged out. A compiler and class libs can do so much more.
Thanks, Google, for adding another element to make people want the pathetic browser as an interface.
Mod me a troll, but browsers suck as interfaces. And I haven't even touched on printing...
I agree. One that really sticks out is all of the javascript dynamic menus. I always thought that by now there would be a tag for this purpose. Seems like a logical tag to add to the specs. I have a use for it, for sure (i'm one of those who also refuses to use javascript for core functionality)
XMLHttpRequest is a godsend that has been used for RPC in most major clientside toolkits for a while now, but you mainly see it in web apps that you have to pay to use (written a few myself). The fact that Google is using it only validates it's importance.
And I don't wish to be pedantic but using the term "non-standardized web sites" is rather misleading since you can use XMLHttpRequest and still validate your site against HTML 4.x, XHTML etc...
Finally, what it boils down to, and like it or not this is the trend of all important web app style sites, is that page refreshes are costly in time, in bandwith, and in difficulty of maintaining state, and using XMLHttpRequest as a method of RPC is the most suitable and appropriate way of resolving these issues, and a hell of a lot cleaner than hidden iframes to boot!
P.S. Client-side rocks. Further reading here.
I'm a writer, a poet, a genius, I know it. I don't buy software, I grow it.
Just about all of the highly modded comments seem to be complaining about how Google Suggest is not very useful.
But that is not what the story is about. The story is really about all the little things that are going on that make a very usable and responsive web interface.
Others have noted the XMLHTTPRequest object at work. But there are a number of other cool things in there:
Replacing XMLHTTPRequest with a cookie/frame reloading technique.
Using javascripts Timeout() handler to initiate server communication, so that fast typers are not penalized with a lot of excess network requests.
Interesting JavaScript text manipulation (like highlighting).
Basically, just a lot of little things that show how to make some interesting techniques useful for the widest audience possible. Google Suggest may on the face of it not look like the most useful thing ever, but you have to respect the sheer number of browsers it is designed to work on and the responsiveness of the interface.
"There is more worth loving than we have strength to love." - Brian Jay Stanley
So beware of type in your passwords by accident. They read everything (and turn it to statistics).
Somehow, I doubt someone at Google sees the search term "vZ820aa3q" and thinks "oh, that's mrmorgana's Slashdot password"...