Google Suggest
Cristiano writes "As you type into the search box, Google Suggest guesses what you're typing and offers suggestions in real time. This is similar to Google's 'Did you mean?' feature that offers alternative spellings for your query after you search, except that it works in real time." It crashes Konqueror, but works nicely on Mozilla. Update: 12/11 by J : The engineer who thought of it, then built it in his "20% time," blogs about the process.
Type in g. Then type o. Then type o again. And again. Keep typing o's... Look what happens :-)
I wonder how long before spammers use this maliciously to create word lists to direct traffic.
I am very impressed. Very impressed indeed. But what can be done in case one's idea of a term is essentially mis-spelled?
That is amazingly fast. What language do you think that menu was programmed in?
* It works on KHTML-based Safari, so it the crash must be a Konq-specific problem.
* It ignores, um, non-work-safe input.
* It works fine on moderately esoteric topics -- I started typing n-s-a-r and it found NSArray, NSArrayController, NSArchiver, etc.
It is blazingly fast. I expected it to be slowwwww.
Can somebody outline how it works?
Well it definitely makes it easier to look for google whacks
I make my face look like this and concerned words come out.
Except, if you actually watch the drop-down list as you're typing, once you've typed "nia", it's already suggesting "niagara falls" with the correct spelling and 3,090,000 results. True, "niagra falls" (incorrectly spelled) is also in the list, but since it only has 129,000 results, it's probably clear which one you're actually looking for if you're not trying to make a joke about Viagra.
This is pretty amazing, really.
A is for Amazon
B is for Best Buy
C is for CNN
D is for Dictionary
E is for Ebay
F is for Firefox (yay!)
G is for Games
H is for Hotmail
I is for Ikea
J is for Jokes
K is for Kazaa
L is for Lyrics
M is for Mapquest
N is for News
O is for Online dictionary
P is for Paris Hilton (wtf?!)
Q is for Quotes
R is for Recipes
S is for Spybot
T is for Tara Reid
U is for Ups
V is for Verizon
W is for Weather
X is for Xbox
Y is for Yahoo
Z is for Zip Codes
Give me Classic Slashdot or give me death!
... how they prioritize the suggestions in the list. It's definitely not by the number of results per suggestion. Are there any revenue opportunities here for GOOG?
"My mother never saw the irony in calling me a son-of-a-bitch." - Jack Nicholson
I figured I would look up mountain biking. However, in my quick typing I entered mountian instead and it continued and accepted that. It gave me many valid searches, which I probably wouldn't have found if I entered the search string properly. Of course, it did indicate that mountain was spelled incorrectly as normal.
I figured this could be a useful feature as you probably don't make an effort to misspell your entries, yet many items on the web could have useful information with the misspelled word. So, I entered mount to see the completion, and no mountian, just correctly spelled words.
I guess we'll just have to continue to misspell everything.
This is why Google is such an awesome concept.
;)
Instant access to any piece of human knowledge, and it now can guess what you are looking for right as you can type. The only next improvement I can think of is if it did related searches to the term you searched for, but I'm not sure how you would represent all of that data at once. Leave it to the Google geniuses
"Victory means exit strategy, and it's important for the President to explain to us what the exit strategy is." G.W.Bush
I remember long back, one thread on slashdot where it was discussed how microsoft patented the idea of showing the options as the user types in. I am not sure though.
Konq 3.3.2.
/usr/kde/3.3/lib/libkdecore.so.4 /usr/kde/3.3/lib/libkhtml.so.4 /usr/kde/3.3/lib/libkhtml.so.4 /usr/kde/3.3/lib/libkhtml.so.4 /usr/kde/3.3/lib/libkjs.so.1 /usr/kde/3.3/lib/libkjs.so.1 /usr/kde/3.3/lib/libkjs.so.1 /usr/kde/3.3/lib/libkjs.so.1 /usr/kde/3.3/lib/libkjs.so.1 /usr/kde/3.3/lib/libkjs.so.1 /usr/kde/3.3/lib/libkjs.so.1 /usr/kde/3.3/lib/libkjs.so.1 /usr/kde/3.3/lib/libkjs.so.1 /usr/kde/3.3/lib/libkjs.so.1 /usr/kde/3.3/lib/libkjs.so.1 /usr/kde/3.3/lib/libkjs.so.1 /usr/kde/3.3/lib/libkjs.so.1 /usr/kde/3.3/lib/libkjs.so.1 /usr/kde/3.3/lib/libkjs.so.1 /usr/kde/3.3/lib/libkjs.so.1 /usr/kde/3.3/lib/libkjs.so.1 /usr/kde/3.3/lib/libkjs.so.1 /usr/kde/3.3/lib/libkjs.so.1 /usr/kde/3.3/lib/libkjs.so.1 /usr/kde/3.3/lib/libkjs.so.1 /usr/kde/3.3/lib/libkjs.so.1 /usr/kde/3.3/lib/libkjs.so.1 /usr/kde/3.3/lib/libkjs.so.1 /usr/kde/3.3/lib/libkjs.so.1 /usr/kde/3.3/lib/libkjs.so.1 /usr/kde/3.3/lib/libkjs.so.1 /usr/kde/3.3/lib/libkjs.so.1 /usr/kde/3.3/lib/libkjs.so.1 /usr/kde/3.3/lib/libkjs.so.1 /usr/kde/3.3/lib/libkjs.so.1 /usr/kde/3.3/lib/libkjs.so.1 /usr/kde/3.3/lib/libkjs.so.1
Try using it for a while and you'll get.
Using host libthread_db library "/lib/libthread_db.so.1".
[KCrash handler]
#7 0x409cfe74 in av_ () from
#8 0x41b6df56 in KJS::XMLHttpRequest::abort ()
from
#9 0x41b6f333 in KJS::XMLHttpRequestProtoFunc::tryCall ()
from
#10 0x41aeef77 in KJS::DOMFunction::call () from
#11 0x41c7332b in KJS::Object::call () from
#12 0x41c3b09d in KJS::FunctionCallNode::evaluate ()
from
#13 0x41c3f54a in KJS::ExprStatementNode::execute ()
from
#14 0x41c45c16 in KJS::SourceElementsNode::execute ()
from
#15 0x41c3f36d in KJS::BlockNode::execute () from
#16 0x41c3f8ce in KJS::IfNode::execute () from
#17 0x41c45c16 in KJS::SourceElementsNode::execute ()
from
#18 0x41c3f36d in KJS::BlockNode::execute () from
#19 0x41c45143 in KJS::FunctionBodyNode::execute ()
from
#20 0x41c6de0c in KJS::DeclaredFunctionImp::execute ()
from
#21 0x41c6d1bc in KJS::FunctionImp::call () from
#22 0x41c7332b in KJS::Object::call () from
#23 0x41c3b09d in KJS::FunctionCallNode::evaluate ()
from
#24 0x41c3f54a in KJS::ExprStatementNode::execute ()
from
#25 0x41c45c16 in KJS::SourceElementsNode::execute ()
from
#26 0x41c3f36d in KJS::BlockNode::execute () from
#27 0x41c3f8ce in KJS::IfNode::execute () from
#28 0x41c45c8c in KJS::SourceElementsNode::execute ()
from
#29 0x41c3f36d in KJS::BlockNode::execute () from
#30 0x41c3f8aa in KJS::IfNode::execute () from
#31 0x41c45c8c in KJS::SourceElementsNode::execute ()
from
#32 0x41c3f36d in KJS::BlockNode::execute () from
#33 0x41c3f8ce in KJS::IfNode::execute () from
#34 0x41c45c16 in KJS::SourceElementsNode::execute ()
from
#35 0x41c3f36d in KJS::BlockNode::execute () from
#36 0x41c3f8ce in KJS::IfNode::execute () from
#37 0x41c45c16 in KJS::SourceElementsNode::execute ()
from
#38 0x41c3f36d in KJS::BlockNode::execute () from
#39 0x41c45143 in KJS::FunctionBodyNode::execute ()
from
#40 0x41c6de0c in KJS::DeclaredFunctionImp::execute ()
from
#41 0x41c6d1bc in KJS::FunctionImp::call () from
#42 0x41c7332b in KJS::Object::call () from
#43 0x41c3b09d in KJS::FunctionCallNode::evaluate ()
from
#44 0x41c3f54a in
thank God the internet isn't a human right.
Haha. What's also cool is 'f' gives 'Firefox' as the first suggestion, it must be making a big impact.
amazon best buy cnn dictionary ebay firefox games hotmail ikea jokes kazaa lyrics mapquest news online dictionary paris hilton quotes recipes spybot tara reid (who is that?) ups verizon weather xbox yahoo zipcodes
Nice, but not answering his question. He didn't ask what O(n) was, he asked what n is, and that's a legitimate question. What *is* n? What is the determining factor of problem size for this algorithm? The number of characters the user has typed? The size of the database of terms Google will search? What?
Chris Mattern
Looks nice, but what happens when you type "the"?
"the incredibles"
Is anyone else seeing the advertising possibilities?
There are some other interesting first-suggestions in the alphabet: h suggests "hotmail", and x suggests "x-box" (not, as I was expecting, a porn term). d suggests "dictionary", and o suggests "online dictionary". Most surprising: f suggests "firefox", where the top hit is mozilla.org.
http://www.google.com/ac.js
The Javascript is ripped to shreds as far as readability goes, but buried in there somewhere is the key to making your own app based on this. If you were so inclined to piggy-back on top of this technology. Not that I'd advocate such things.
So they screwed up Groups. What does that have to do with Suggest, which looks like a classic "awesome! why didn't anyone else do it that way?" Google feature?
I don't know what kind of crack I was on, but I suspect it was decaf.
What? Are you trying to rewrite history in some way? I would say that the acceptance of Microsoft products have never really been higher than it is today. All OS's they had before 2k were disgraces. XP is popular and far from the resource hog slashdotters like to pretend that it is (have a look at any other desktop environment), in fact the system requirement leap between 2k and XP was far smaller than many jumps before when factoring in the progress of hardware. I don't see anything wrong with the current development tools that Microsoft has either (in fact, they too sure seem to be better today than they have ever before been).
Really, the last five years of Microsoft products have done a lot to convince me that MS knows what they are doing, Linux seems further from being able to conquer the desktop market today than it did in 1999.
Try searching with sex, porn etc. no results. It is in some safety mode or what?
I was going for "Pretty" but after I got "pret" in there it started suggesting preteen girls and such.
I'd hate to see it if it wasn't striking down entries. For example "sex" comes up with total blanks. No "sex addition" or anything, so its obviously removing stuff but apparently not flawlessly.
Reminds me a great google game. Turn strict search filtering on on google images and try and find porn using single word. My record is 2nd image with "cameltoe".
It is no longer uncommon to be uncommon.
You seem to be abusing big O notation a bit my friend.
You cant say O(n) best case , since it O(n) is a bounding above by a function. What your looking to say is that the algorithm is O(n^2) and Omega(n)
http://www.google.com/complete/search?hl=en&js=tru e&qu=chicken.
You can substitute any string for "chicken", and hl is the language.
---- "If we have to go on with these damned quantum jumps, then I'm sorry that I ever got involved" - Erwin Schrodinger
i find it amusing that this is faster than Mozilla's autocomplete on my system.
Or better, "can be found on the Internet in text form". The image search is nowhere near as comprehensive or accurate, and not even Google is attempting sound or video search yet.