Slashdot Mirror


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.

321 comments

  1. A great idea by deepcameo · · Score: 3, Informative

    I think it is such a great idea. With google suggest people can find things with less strife. The way it works is that you start typing and it suggests things for you to search for. These entrys pop up directly under the search bar. I can help when that brain just isn't working to full potential!

    1. Re:A great idea by Anonymous Coward · · Score: 0

      what

    2. Re:A great idea by Anonymous Coward · · Score: 0

      hey kid - I'm a computer
      stop all the downloadin
      help computer!

      I dunno much about computers 'cept the one we got at home my mom put a couple games on there and I play.

    3. Re:A great idea by MikeFM · · Score: 2, Insightful

      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.
    4. Re:A great idea by SCHecklerX · · Score: 2, Insightful

      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)

    5. Re:A great idea by los+furtive · · Score: 2, Insightful
      I don't know how this person can be modded as insightful. XMLHttpRequest object may be non-standard W3C DOM, but it is still supported by all the important browsers.

      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.

    6. Re:A great idea by los+furtive · · Score: 4, Informative

      I agree with you in that JS menus aren't a very good idea. 10% of surfers have it turned off, and the menu is such a critical part of the site that you want it avaialable for everyone. That's why I also shake my head when I see Flash based menus.

      However, there's no need for your solution of a <menu> tag since the <ul> tag and a little CSS already does that just fine.

      Read the following articles to see what I mean:

      Hope this is of use to you.

      --

      I'm a writer, a poet, a genius, I know it. I don't buy software, I grow it.

    7. Re:A great idea by Anonymous Coward · · Score: 0

      Why don't they add an animated paperclip? That would rock!

    8. Re:A great idea by bhtooefr · · Score: 1

      FWIW, XMLHttpRequest is NOT supported by Opera 7.5x. 7.6 supports it, but it's still in Preview (read: alpha).

    9. Re:A great idea by lack1uster · · Score: 0

      Yeah, supported by all the important browsers.

    10. Re:A great idea by kurzweilfreak · · Score: 1

      The first link is a very elegant solution, but I tried it in IE6 and as expected it doesn't work. What a POS.

      --

      kurzweil_freak

      5th Kyu Genbukan Ninpo/KJJR student

      Be the darkness that allows the light to shine.

    11. Re:A great idea by Anonymous Coward · · Score: 0

      Yeah, what a great idea. I honestly hope Google has patented this technology so that they can nail people like you who take it apart and steal their products. Re-writing avoids copyright, but it certainly doesn't mean you aren't infringing a patent, and in this case, I they _seem_ to deserve one.

    12. Re:A great idea by Anonymous Coward · · Score: 0

      10%? I run a very large site and according to our stats, less than 2% have javascript disabled.

    13. Re:A great idea by macslut · · Score: 1

      "Hope this is of use to you." Actually it's of no use for me. All three of those examples don't work. I'll extend the concept that all three of those sites share of not naming what browsers it doesn't work with.

    14. Re:A great idea by FyRE666 · · Score: 1

      It's hardly a new idea! I did this on an intranet project 2 years ago! Ok, it wasn't a generic web search, but a search on product codes from a mysql database; but it was essentially the same...

    15. Re:A great idea by SpaceCadetTrav · · Score: 1

      Project Seven has some great menus that work well without javascript, but work even better with it turned on.

      http://www.projectseven.com/

    16. Re:A great idea by Anonymous Coward · · Score: 0

      Pork Chop Sandwiches!

      fe f f feh feh feh fe f f feh feh feh

    17. Re:A great idea by MikeFM · · Score: 1

      I'm not telling you to get rid of it. I'm telling you to make it a standard.

      --
      At what price learning? At what cost wisdom? The price is a man's peace of mind, and the cost is his life.
    18. Re:A great idea by JamesOfTheDesert · · Score: 1
      I'm not telling you to get rid of it. I'm telling you to make it a standard.

      HTML/XHTML needs to become a standard first; they're currently reccomendations.

      But that's a quibble. What's significant is that the Mozillla folks saw fit to catch up and add a feature that has been available in IE for some years now.

      Now, why might they want to do that? Might be that a) it's a neat idea, even if it came from MSFT; b) users want it or expect it.

      In the long run, those are the things that determine what people consider "standard," not the dictates of a vendor consortium.

      --

      Java is the blue pill
      Choose the red pill
    19. Re:A great idea by Breakfast+Pants · · Score: 1

      First off, barely 10% of surfers know how or at least have the balls to turn anything on or off. To suggest that of those that do almost all of them have javascript turned off is kind of crazy. Second off...there is no second off.

      --

      --

      WHO ATE MY BREAKFAST PANTS?
    20. Re:A great idea by Anonymous Coward · · Score: 0

      I'm not telling you to get rid of it. I'm telling you to make it a standard.

      Already done. Well, it's not a standard, but I'm assuming you're abusing the word "standard" in the same way virtually everybody else does when it comes to web development.

    21. Re:A great idea by Anonymous Coward · · Score: 0

      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...

      You are the one being misleading. If a website uses non-standard Javascript, then attempting to call it standard because you ran an HTML validator over it is pretty damn disingenuous. The HTML validator doesn't check the Javascript, you could write random garbage into it that doesn't work in any browser, and the HTML validator wouldn't pick up on it.

      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!

      XMLHttpRequest doesn't address maintaining state at all. I disagree that XMLHttpRequest is the most suitable way of accomplishing the rest - what does it do better than DOM 3 Load and Save?

    22. Re:A great idea by Anonymous Coward · · Score: 0

      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.

      The latest XHTML 2 draft has an <nl> element type.

      Seems like a logical tag to add to the specs.

      Not particularly, practically every use of popup menus I have seen on the web are completely unsuitable for the situation. Sure, there are one or two cases where they are actually the best tool for the job, but mostly it's just a case of people using them for their own sake.

      PS: Don't use the word "tag" when you mean "element type". 99% of the time people say the word "tag", they mean "element", "element type" or "attribute".

    23. Re:A great idea by Anonymous Coward · · Score: 0

      according to our stats, less than 2% have javascript disabled

      Maybe the reason your stats are so low is that people with JavaScript disabled don't return to your site.

    24. Re:A great idea by ShieldW0lf · · Score: 1

      The first link is a very elegant solution, but I tried it in IE6 and as expected it doesn't work. What a POS.

      The reason it doesn't work is because, as was mentioned on the site, IE6 doesn't support the css hover property on anything but a link. If you are a bit clever with your code (does this stuff qualify as code?) you can work around that. The smart way to do it is to make the items in the first list links, and use them as the hover triggers. If you click the "top" link, it takes you to a page that gives you access to the submenu items, so that the site isn't broken if your browser isn't getting the css.

      For an example of this in action, check here. Also gives you some tips on dealing with some of the other weird shit you'll have to deal with to get it working with various browsers.

      --
      -1 Uncomfortable Truth
    25. Re:A great idea by Anonymous Coward · · Score: 0

      only validates it's importance

      "its".

    26. Re:A great idea by lateral · · Score: 1
      I always thought that by now there would be a tag for this purpose

      There is, but it's on the way out...

      L.

    27. Re:A great idea by Anonymous Coward · · Score: 0

      That would make sense if our site required javascript at all, which it doesn't.

  2. Re:DCMA by Anonymous Coward · · Score: 0

    they can't.

  3. Re:DCMA by AnimeFreak · · Score: 1

    DMCA even. ;-)

  4. Re:DCMA by modifried · · Score: 5, Funny
    "Oh boy. Will Google throw out the DCMA on this one?"

    Dyslexic users of slashdot, rejoice!

  5. Raising What Bar? by Sloth503 · · Score: 0, Troll

    This really rose the bar? I don't see how.

    1. Re:Raising What Bar? by LewsTherinKinslayer · · Score: 3, Funny

      This really rose the bar? I don't see how.

      Duh, its google-related. It must be better than everything else, thus raising the bar.

      Clearly. /sarcasm

    2. Re:Raising What Bar? by LnxAddct · · Score: 2, Insightful

      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

    3. Re:Raising What Bar? by gawi · · Score: 1
      I agree with other posters who think the suggest feature is not so useful (a live spell checker would had been more handy, could save lots of clicks on the "did you mean" link).

      The big deal with Google Suggest has nothing to do with suggestion. The point is that it does live queries on the server without changing currently loaded HTML page. This trick is not very common on web right now. It raises the bar because from now on, as a developper, if I argue with my boss that this sort of gadget is not possible to do on the web, he could answer "Why? Google does it".

      Every new HTML user interface goodie is implemented by combining various hacks of ECMAScript/JavaScript, DOM manipulation and specific browser capabilities. There is no clean and standard model underneath this trick. We are patching HTML over HTTP instead of re-designing the web to allow a more suited bi-directional communication of user interface events.

      It's not acceptable that in 2004 this appears as a great programming achievement.

      --
      All humans are mortal. Socrates is a human. Socrates is dead.
  6. Google Suggest just isn't very useful by BillsPetMonkey · · Score: 5, Insightful

    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
    1. Re:Google Suggest just isn't very useful by imthesponge · · Score: 1

      It looks like it ignores some characters; typing "seti@home" for example will ignore the '@'.

    2. Re:Google Suggest just isn't very useful by modifried · · Score: 1
      "Let's try an example, lets look for "C# structs"
      1. Enter "C# structs" - no suggestions.
      2. Enter "structs" - 425,000 results."

      Try "c sharp struct" - 101,000 results, very first one is relevant.

    3. Re:Google Suggest just isn't very useful by mountain · · Score: 2, Insightful

      PEBKAC

      --
      --- "If a man speaks in a forest, and no woman hears him, is he still wrong?"
    4. Re:Google Suggest just isn't very useful by hobo2k · · Score: 2, Informative
      Part of your problem there is the # character itself. It seems to ignore some characters in the input.

      Typing "cstruct" gives one suggestion. Now type "c$%#$%#$%#^struct". It gives the same single suggestion.

      I'm not sure exactly which characters it ignores, because it does recognize ".net"

    5. Re:Google Suggest just isn't very useful by BillsPetMonkey · · Score: 2, Insightful

      So we should be altering the vocabulary we use so that Google Suggest can understand it?

      Hmmm.

      --
      "It's not your information. It's information about you" - John Ford, Vice President, Equifax
    6. Re:Google Suggest just isn't very useful by the+angry+liberal · · Score: 2, Funny

      Even better, we supply one of those old Apple Newtons as the only input device. This way you get to learn your grammar and handwriting over again in a Google compliant manner.

    7. Re:Google Suggest just isn't very useful by Phexro · · Score: 3, Insightful

      Yup, this is one of the terribly irritating thing about google... there is simply no way to search for an exact string which contains non-alphanumeric characters. It strips out most punctuation.

      e.g. search for 'tmp/foo/bar' or 'tmp/foo/bar#baz'. You'll see results for '/tmp/foo.bar', '/tmp/foo/bar', and so forth. What if I'm looking for that exact string? This can be very frustrating when searching for posts about a specific error message, since a page with 'condition foo: bar' will be just as likely to show up as 'foo: bar condition', but they aren't necessarily the same.

    8. Re:Google Suggest just isn't very useful by Anonymous Coward · · Score: 0

      It's an ID-ten-T error.

    9. Re:Google Suggest just isn't very useful by Omicron32 · · Score: 1

      Err, I fail to understand how this causes problems?

      I mean, if you're searching for something specific, how is Google suggest going to help you?

    10. Re:Google Suggest just isn't very useful by DNS-and-BIND · · Score: 5, Interesting

      Christ, Google Suggest has been around for all of 8 days now. It was released December 10, and is a Google Labs project, which according to the website "showcases a few of our favorite ideas that aren't quite ready for prime time."

      --
      Shutting down free speech with violence isn't fighting fascism. It IS fascism!
    11. Re:Google Suggest just isn't very useful by shufler · · Score: 0

      Uhh... exact string? Try putting it in double quotes (" ").

    12. Re:Google Suggest just isn't very useful by spectre_240sx · · Score: 1, Informative

      Doesn't work. It will still strip out most non alpha-numeric characters. A + sign directly in front of the character might work... but I doubt it

    13. Re:Google Suggest just isn't very useful by samael · · Score: 1

      Strangely, a standard goodle search brings up loads of very good results:
      http://www.google.com/search?q=c%23+stru cts

    14. Re:Google Suggest just isn't very useful by Phleg · · Score: 1

      Quote your text. It won't work with Google Suggest yet, but it will impact the actual search.

      --
      No comment.
    15. Re:Google Suggest just isn't very useful by Anonymous Coward · · Score: 0

      Or, get this. Don't fucking use it!

    16. Re:Google Suggest just isn't very useful by adeydas · · Score: 1

      well i tried your search too and aparently its providing the proper results. may be you should try again...

    17. Re:Google Suggest just isn't very useful by corsec67 · · Score: 2, Informative

      Even that will not work, because even in a quoted string, all punctuation is interchangeable with a space.
      so "/tmp/foo/bar" is the same as "tmp foo bar", which are very different.

      --
      If I have nothing to hide, don't search me
    18. Re:Google Suggest just isn't very useful by ZB+Mowrey · · Score: 1, Offtopic
      I mean, if you're searching for something specific, how is Google suggest going to help you?

      IDNRTFA (I Did Not Read The F**king Article), but a few examples:

      Joe User needs a device driver for his sound card. He isn't an 18th-level Googlesearcher*, so he types "sound card driver".

      A typical search engine would give him 2^Onebignumber results, all of which look pretty foreign to him.

      Google Suggest, on the other hand, intelligently points out the Windows Update** website, where he sees that he can update his device drivers from a recognized source. He does so, and all of his world's problems disappear for about 2^1 nanoseconds.

      At least, that's the way I think Google wants to make Suggest work...

      The thing that will sink this is when Google starts offering advertisers the ability to be suggested.

      *Acquired by spending long years under the apprenticeship of a slave-driving task master. **Joe User is not a free software user. Yet.

      --

      Self-referential sigs are rarely entertaining.

    19. Re:Google Suggest just isn't very useful by ShieldW0lf · · Score: 1

      It's autocomplete for the search engine, you twit. Read the article before you post.

      --
      -1 Uncomfortable Truth
    20. Re:Google Suggest just isn't very useful by Hawkxor · · Score: 1

      Actually, I start less specific and then search more specificly to narrow down the results. The 'number of hits', that Google Suggest tells me, is very useful here.
      Anyway, the idea is that they're suggestions on what to search for - if you already know to search for 'C# structs' it doesn't suggest anything to you, since thats the right thing to search for anyway (at any rate its as narrow as you really want to get)...common sense.
      But if you can only come up with part of it...of course there's more results...there should be some suggestions too.

    21. Re:Google Suggest just isn't very useful by InvalidError · · Score: 1

      > all of his world's problems disappear for about 2^1 nanoseconds

      That's extreme optimism... "Windows Update is scanning for updates" usually takes something like a dekasecond, add user interaction and other page-load/download delays and you get closer to an hectosecond.

    22. Re:Google Suggest just isn't very useful by K-Man · · Score: 1

      People call this "full text search", but it's really "lexical unit search", i.e. only on the terms which are recognized by the parser before indexing.

      --
      ---- "If we have to go on with these damned quantum jumps, then I'm sorry that I ever got involved" - Erwin Schrodinger
    23. Re:Google Suggest just isn't very useful by byolinux · · Score: 1, Troll

      EAT UP MARTHA

    24. Re:Google Suggest just isn't very useful by Reziac · · Score: 1

      It doesn't. I've whined about this to Google several times, without result. There is no way to distinguish search terms which are critically different *because* of punctuation. The same applies to "common words" like a, an, and, the.

      It's very frustrating when you have an exact phrase that *needs* these elements to be found, and the lack of said elements makes every sort of shit that you specifically DIDN'T want to see come up instead. And no amount of quote signs or plus signs changes that. :(

      --
      ~REZ~ #43301. Who'd fake being me anyway?
    25. Re:Google Suggest just isn't very useful by kjamez · · Score: 1

      but they successfully do search with some fuzziness. i am forever copy/pasting a line of dmesg output into the search box, and 9 times out of 10 come up with some mailserv thread talking about a problem identical to mine. i find it very useful.

      --
      you can't have everything, where would you put it?
    26. Re:Google Suggest just isn't very useful by tunah · · Score: 1
      e.g. search for 'tmp/foo/bar' or 'tmp/foo/bar#baz'. You'll see results for '/tmp/foo.bar', '/tmp/foo/bar', and so forth.

      Thanks to the wonders of pagerank, give it a couple of hours and you'll see your post, hopefully even my reply ;-)

      --
      Free Java games for your phone: Tontie, Sokoban
    27. Re:Google Suggest just isn't very useful by Spy+Hunter · · Score: 1

      They do make exceptions in some cases. For example, it is possible to search for "c++" or "c#". But if you search for "++c" or "c#c", it treats the non-letters as spaces. Actually, now that I try it, "c c" returns different results than "c#c". In the first case Google removes the space and searches for "cc"; in the second case Google treats the # as a space.

      --
      main(c,r){for(r=32;r;) printf(++c>31?c=!r--,"\n":c<r?" ":~c&r?" `":" #");}
    28. Re:Google Suggest just isn't very useful by Selanit · · Score: 1
      1. Enter "C# structs" - no suggestions.

      What page were you using? I typed in "C# structs" (both with and without quotes) here, and got three suggestions, each with thousands of results. Mind you, the suggestions were "c structs", "c structs tutorial", and "c structs array", so it looks like maybe it doesn't understand the "#" character. But it did have results.

      And, of course, these are suggestions. It's not like you must obey the word of Google as you would your Lord and God or anything. Lighten up.

    29. Re:Google Suggest just isn't very useful by recursiv · · Score: 1

      Well, you're certainly not part of the solution.

      BTW, what are those examples of? Stupendous dumbassitude I suppose...

      --
      I used to bulls-eye womp-rats in my pants
    30. Re:Google Suggest just isn't very useful by hobo2k · · Score: 1

      And for that reason I think the name "Google suggest" is misleading. "Google autocomplete" is more accurate.

    31. Re:Google Suggest just isn't very useful by byolinux · · Score: 1

      Troll? WTF?

    32. Re:Google Suggest just isn't very useful by Axem · · Score: 1

      Dude, you didn't add a way to get people to get the reference. How are the countless moderators supposed to now that the reference was from Simpson Episode [2F05] - "Lisa on Ice" in which the following happened:

      In the auditorium, Skinner speaks to the children.

      Skinner: Children, the times they are a-becoming quite different. Test scores are at an all-time low, so I've come up with these academic alerts. [hold stack of cards] You will receive one as soon as your grades start to slip in any subject. This way your parents won't have to wait until report card time to punish you.
      Martin: How innovative. I like it!
      Kearney: Hey Dolph, take a memo on your Newton: beat up Martin.
      [Dolph writes "Beat up Martin" which the Newton translates as "Eat up Martha"] Bah! [throws Newton]
      Martin: [being bonked on the head] Ow!

      Source

      --
      We all live in a #FFFF00 submarine...
    33. Re:Google Suggest just isn't very useful by byolinux · · Score: 1

      I guess my definition of nerd differs from the masses ;)

    34. Re:Google Suggest just isn't very useful by Axem · · Score: 1

      Well to be honest, it took me a second to get it too. I love a good obscure reference, it makes me laugh when other people don't get it. ;-)

      --
      We all live in a #FFFF00 submarine...
  7. And for those who would like to see it... by Vladan · · Score: 5, Informative

    Here's what he was talking about:

    Google with Auto Complete on Just start typing in the search field.

    It's a beta feature.

    1. Re:And for those who would like to see it... by Anonymous Coward · · Score: 0

      I'm unimpressed.

    2. Re:And for those who would like to see it... by nahdude812 · · Score: 2, Interesting

      The thing that's interesting to me is that this is not really much different than the GMail compose address area, but suddenly it's brilliant in this respect.

      Annoyingly, I'd written almost identical functionality for my own personal use maybe a year before I ever saw it in GMail (though it was already in place when I got GMail so I have no idea when they put it in there) because I really wanted standard combo boxes with pre-populated choices that also let you key in another choice. You could even use the arrow keys or the mouse just like Google's interfaces, with result caching (just like Google!) on the client side. Suddenly no one can stop talking about it.

      The only difference in this from the GMail address bar is that in GMail the complete address book is pre-populated, while here they use the browser's DOM object to pass a request for the data (that's how mine did it, since I was working on thousands of distinct combinations and didn't want to have to have page load times get unmanagable). Populating the data is as simple as (if it were php):

      echo "<data-result>";
      $sql = "SELECT search_text, result_count FROM common_user_searches WHERE search_text LIKE '$user_input%' ORDER BY search_frequency DESC LIMIT 10";
      $result = (mysql|odbc|etc)_query($sql);
      while ($row = *_fetch_assoc($result)){
      echo "<result text=\"".htmlentities($row['search_text'])."\" count=\"{$row['result_count']}\"/>";
      }
      echo "</data-result>";

      I'll definately agree, it's incredibly clever, but it's not so bleeding clever that it demands as much attention as they're getting for it.

    3. Re:And for those who would like to see it... by Anonymous Coward · · Score: 0

      Do you really think they are going to do an SQL query everytime there's someone typing a character on google?

      Think about how many people are using google, and how many characters are being typed every second. Then again, if you'd take the time to read the article, you'll find out it's not with SQL.

    4. Re:And for those who would like to see it... by bhtooefr · · Score: 1

      I thought it was kinda sucky (it only grabbed one list, and didn't change it, and if I backspaced over what I had typed, I had to refresh), but then I opened it in IE (shudder) instead of Opera (I really need to put Firefox on here - it's 7.6P4c, but still, there's a lot of stuff that doesn't work that well, like XMLHttpRequest).

    5. Re:And for those who would like to see it... by samhalliday · · Score: 1
      anyone else wonder who the hell "Lindsay Lohan" is after typing "lin" and expecting good 'ol "linux" to be completed?

      well, shes a hellova lot easier on the eyes than Linus... thats for sure.

    6. Re:And for those who would like to see it... by Synonymous+Yellowbel · · Score: 1
      The thing that's interesting to me is that this is not really much different than the GMail compose address area, but suddenly it's brilliant in this respect.

      I think you've missed the point. This isn't just some simple autocomplete/combobox thing like what we get in the address bar of Firefox - the key here is the use of Google's vast knowledge of what terms people tend to search for together. Using this, Google can suggest words you've never heard of to add to your search.

      steve

    7. Re:And for those who would like to see it... by nahdude812 · · Score: 1
      The specific article in question here is about the technology involved. Although your point is well taken in the grander scheme, I don't think that's what most people are so excited by. From the article linked to by this story:

      # How fast this is... I type pretty fast, and it updates with every single keypress...
      # The cool web interface... I used to be pro-server side web updates, and avoiding javascript, but I'm really turning around on this with the impressive interfaces I've seen with gmail, and now google suggest (among others...)

      and

      # That the suggestion list lines up perfectly with the query input field...
      # The high-lighting of the additionally suggested text (I type "fa", it suggests "fast bugtrack" and highlights the "st bugtrack" so that the next character I type wipes out it's suggestion... beautiful...)
      # The great handling of keypresses (cursors up and down...)
      And After going through googles code:
      # How the javascript cache's the dynamic results so that if you backspace, it doesn't have to go back to google...
      # How the code dynamically adjusts it's main (time/alarm) driven loop based on how quickly you're getting results back from google...


      None of these are discussing intelligent forethough on the part of this tool, but rather technical aspects behind it.
  8. Mod parent troll by Anonymous Coward · · Score: 0

    Did you click the link "raise the bar" and search for "raising the bar" on the page, before making your comment?

  9. I'm looking at the comments, and... by cyberzephyr · · Score: 0

    I'm wondering if there isn't a little aggrandisement here?

    --
    I'm here for the experience, not the Hyperbole.
  10. Firefox users can try the plugin by hobo2k · · Score: 5, Informative

    I don't know how happy google is about this, but there is already a FF extension to put suggest in the toolbar. Great plugin and also amazing how fast somebody implemented it!

    1. Re:Firefox users can try the plugin by loconet · · Score: 1

      No, It's amazing how much you can get done when the girlfriend is not in town :D.

      --
      [alk]
    2. Re:Firefox users can try the plugin by beowulf_fag · · Score: 0

      Or, in this case, most likely imaginary.

  11. Is the time coming? by wcitechnologies · · Score: 1

    Is the time for Sir. Joe Code-a-lot coming to an end? Will it only be the high-priced web developers who can make anything decent on the web, or will 13 year olds still be able to learn this new level of scripting-excellence?

    --
    Electrons are free; it is moving them that becomes expensive.
    1. Re:Is the time coming? by kaedemichi255 · · Score: 1

      Well seeing as how I am a soon to be college grad with a Computer Science degree, I am hoping it will be the former case. Like all of my professors have repeatedly said over and over again in my four years in college, code is cheap, but good code is not. If you can't code, please go do something else ;)

    2. Re:Is the time coming? by dustinbarbour · · Score: 1

      Computer science, though it is good to have a background in code, is not about code per se. Its about algorithms mostly. I'm a recent CS graduate and I don't classify tricky web development, domain administration or anything like that as science. FOr me, science is about the algorithms.. algorithms to search faster, compute faster, comperss faster, et al.

    3. Re:Is the time coming? by Anonymous Coward · · Score: 5, Interesting

      I fear that might be the case. I learned to code HTML and to put a decent webpage, designed the way I wanted it, online with relative ease, at the age of 14. It took time to learn it, but it was fairly straightforward - I wanted a large header in Verdana, I put in "FONT FACE" and "H1" tags, I wanted a table with a specific background color, I put in a "BGCOLOR" etc.

      Today, we have two languages (XHTML and CSS) instead of one (HTML), and while it certainly does a lot to improve interoperability and platform independence, it is two languages to learn, not one. Throw in stuff like JavaScript, and you have even more.

      Of course one can choose not to use XHTML and CSS, but that's not the way we want it, right? We want people to use the standards, to write code which won't crash Firefox, or not use proprietary solutions. Doing this is taking more and more effort. We have the skills and time to do and learn this, but not everyone have.

      If we want a wide adoption of standards, and an Internet for everyone, where everyone has equal opportunities, the only way is to make the standards easy to use, so people will use them of their own free will.

      Otherwise, in 10 years we'll be designing our fancy webpages, while the Joe Users who don't have the time or skills to learn the 13 languages required have no choice but to hire a professional, or use a crappy proprietary solution which won't allow them to take their ideas to their full potential, and this is a great loss for everyone.

      Saying "You must do *complicated thing* because it's the specified standard!" will only work with people like us.

    4. Re:Is the time coming? by Tony+Hoyle · · Score: 1

      Not really... algorithms are done - I used to believe as you did but have realised I just don't have to think about it.... the language does it - all languages nowadays have sort, vector/array, list, map/hash, etc. so all the basic stuff is built in. eg. I've got a reasonable idea what a balanced tree is but no idea how you'd write one... never needed to.

      If you can take a 10 year old piece of junk and fix a complex bug in under an hour... people will pay for that. If you can manage a project to completion and to a deadline determined by commercial pressures (programmers rarely set deadlines in the real world) then people will pay for that. The rest is fluff.

    5. Re:Is the time coming? by Anonymous Coward · · Score: 0

      XHTML+CSS is not harder to learn.
      At work, (X)HTML must be taught to people used to legacy techs and it's far easier to learn them a handful of html tags, three attributes (class, name, id) and then to let them experiment w/ CSS. (btw the Web Developer (feat. EditCSS) plugin for Firefox comes as a great help).

      Pure (X)HTML is a subset of legacy HTML and hence is easier to learn. CSS is quite easy.

    6. Re:Is the time coming? by dizee · · Score: 1

      Today, we have two languages (XHTML and CSS) instead of one (HTML), and while it certainly does a lot to improve interoperability and platform independence, it is two languages to learn, not one. Throw in stuff like JavaScript, and you have even more.

      CSS is hardly a language, any more than C++ class definitions are a language separate from C++ functional syntax.

      javascript, on the other hand, is much more of a language than either CSS or HTML. HTML is markup, and CSS is a syntax for style definition. IMHO, XHTML+CSS doesn't count as two languages. it hardly counts as one.

      -mike

    7. Re:Is the time coming? by Vengie · · Score: 2, Interesting
      > I've got a reasonable idea what a balanced tree is but no idea how you'd write one... never needed to.

      *cringe*

      This works just fine until something doesn't work *perfectly*, and then all hell breaks loose. I will give you a real world example. I'm currently working at a law firm (I'm starting law school in either fall 05 or 06) that uses a common "indstry standard" database tool -- it is a flat-file DB that uses B+ trees. [B trees are like binary trees, but they have many children instead of two, and B+ trees store information only in the leaves.] The idea between B+ trees is that because of the high degree of branching of the tree, you should never have to take more than 2-3 "slow memory" accesses to find your page. (i.e. the entire first node lives in memory. assuming a branching factor of 256, 16777216 records can be accessed within 3 accesses.) Building these trees is also a time-intensive process since there are a lot of writes that happen to parent nodes, and it is very likely that pages get flushed from virtual memory. The problem is that no one has a CS background and so no one understands the memory heirarchy, virtual memory, caching, write-on-update, LRU/MRU page replacement, et cetera, so when Concordance is *slow as all hell* -- no one knows why. [The answer is: When indexing a large database, the programmers seem to have been sloppy and the main node spills over onto a second memory page. Once other nodes begin to spill over, you get a case of "thrashing" in which every time your computer pulls a node back into the "working set" of what lives in physical memory, it kicks what you need out of virtual memory. Google for "thrashing" and the "row-major" and "column-major" order problem.]

      *My* firm took a huge risk and hired someone with a CS degree (masters) rather than a paralegal, and they did some experimenting. I've gotten under-the-hood of many of their apps, and the things I've discovered have been shocking. (And these are industry "standard" solutions.) They've reaped the benefits of having someone that actually understands the underlying technology. Here is the archetypical example:

      class foo has many pieces of data stored -- lets assume it stores names. class foo doesn't expose any of its methods, and the vendor doesn't give you anything other than the interface, which is:
      foo.getXelement(x,sort) -- returns the xth element of the array in the sorted order you select, and
      foo.getAllelements() -- returns the entire array in no specific order.
      [foo provides other functions not listed here]
      Now, lets assume you want to get the array, sort it, and print it out. You can
      a) call foo.getAllelements() and sort/print results
      b) for (int i =0; i < foo.getmaxElements(); i++)
      { print foo.getXelement(i, "ASC");}
      [call getXelement for every element in ascending order...]

      BUT: I am giving you a secret peek at the innards of foo!
      foo stores data as a linked list (so it can add easily)
      when you call foo.maxElements, it scrolls through the WHOLE LIST to find the size.
      furthermore, when you call "getXelement(x,sort)" -- it must go through the WHOLE list, then sort it, and return it to you. [approx n^2logn time]
      Lets say instead of getXelement(x,sort) it was just getXelement(x) -- which gave you the UNSORTED xth element of the array -- because it is a linked list, it would still need to go through x-1 nodes, resulting in a case of making an nlogn algorithm [comparison based sorting should be nlogn] an n^2 algorithm.


      Very long story short: at some level, there must be someone technical so when things "go wrong" (like why many people accessing a shared harddrive over ethernet for disk intensive operations is a bad idea due to the nature of a bus architecture...) all hell doesn't break loose.
      --
      When in doubt, parenthesize. At the very least it will let some poor schmuck bounce on the % key in vi. (Larry Wall)
    8. Re:Is the time coming? by Malc · · Score: 1

      What is all this talk of early-teens not being able to code if web pages get more compilcated? First of all, HTML (or XHTML+CSS) is not coding, it's markup. Secondly, HTML is a new thing. When I was an early teen it didn't exist - we were coding with programming languages. Mostly forms of BASIC and later Pascal and C. At 10 I was playing around with a friend writing basic (pun not intended) games on the Commodore 64. So if HTML is getting harder, it's just a step in the direction of what we used to do as children.

      I say make it harder and set the standards higher - children will just adapt and achieve more.

    9. Re:Is the time coming? by Anonymous Coward · · Score: 0

      I actually learned HTML at age 11. Later I visited a site(looks like they went down since then) that gave me all kinds of tips for making a good website. It introduced me to CSS, taught me about usability, and basically gave me all the essential knowledge I needed that simply learning HTML won't give you. Eventually I learned XHTML; after seeing tags with /> at the end, I got curious. So, of course, I looked it up and realized it was XHTML and produced "cleaner" code; being a neat freak I switched at once. At age 14 I learned PHP and how to use it with MySQL databases. I wrote a whole "membership system" after learning it. Of course, being new to the language it took a long time, but I can surely say it's what really allowed me to learn all the basics and some intermediate skills. Most of the initial work was done with help from PHPFreaks, then after understanding it all I added multiple things to it.

      So, now that I've gone on for a long enough time, I'll get to the point. As of now I can use XHTML, CSS, PHP with MySQL, some Javascript (I don't use it very frequently, mostly just the basics, so I can't say I know it extremely well), Visual Basic, and even a little C and C++ (I still haven't gotten around to learning more). So, when talking about multiple languages or complex code, I really don't think you can ask if it'll be too advanced for those 13-year-olds. Because, no matter what it is, if someone will take the time to dedicate themselves to learning it, it can be done. Finally, if anyone is wondering, I'm currently 16 years old. I know plenty of other people my age or even younger that know as much if not more than myself. I firmly believe you can't define knowledge or the complexity of one's mind by age alone. Some people just comprehend better than others, and there are surely some 13-year-olds like that out there. And yes, I do think that many of these young coders (including myself) can produce a website that does look professional. In fact, I've actually been paid before to create such a website. Just my 2 cents, though... Flame me if you wish. ;-)

    10. Re:Is the time coming? by Anonymous Coward · · Score: 0

      They may not be [b]Programming[/b] languages, but that doesn't mean they are not languages and do not need to be learned.

    11. Re:Is the time coming? by Anonymous Coward · · Score: 0

      All the more reason to pay people "like us" to do those *complicated things*. :-)

      I much rather have lots of good webpages out there by people who are capable of making them, and everyone else use blogging sites or whatever to post their content in an organized manner.

      As opposed to having millions of duplicate "LOL WELCOME TO MY PAGE! I like *insert game name here*, shout outs to *insert list of friend's names*, here is my forum:..." and said forum contains two posts. One saying "welcome to my forum" and one more post from user's friend saying "LOL THIS IS SO COOL!" Both posts are over 4 months old.

      True story. :D

    12. Re:Is the time coming? by waveclaw · · Score: 1

      Today, we have two languages (XHTML and CSS) instead of one (HTML), and while it certainly does a lot to improve interoperability and platform independence, it is two languages to learn, not one. Throw in stuff like JavaScript, and you have even more.

      It's too bad that CSS and XHTML are taught as two seperate languages. These two languages could be introduced as one 'language' with two different views of your conent and inline CSS were in use. The distinction for XHTML as logial markup and CSS for lyaout markup, much like in other document standards, could be emphasized much later in the learning process. Some of the learning overhead could be avoided.

      However, to do something like the Firefox extension that matches this new search feature from Google, you'd still have to learn another language. Such a procedural language in which the text directly specifies something is very different from a markup that decorates embedded or external content. The typical slashdotter, I expect, would have little trouble bridging this conceptual gap. However, as with the difference between Geek searching and 'normal' people's searching, the average person is neither willing nor able to do so.

      Fortunately, while I may have just defined the average person as someone unable to implement Google's search feature, they are still willing to pay someone to do it for them and their company.

      --

      "You cannot have a General Will unless you have shared experiences. You cannot be fair to people you don't know."
    13. Re:Is the time coming? by Doctor+Crumb · · Score: 1

      I am also hoping it is the former case. Those of us trying to make money designing webpages (I have a CE degree, not that it's applicable) are hurt by the mentality that anybody's nephew can do it. Good web design is worth the asking price, but so many people are unwilling to pay that because they think it's easy. Good, cross-browser, easy to maintain and change websites are *not* easy to make, and anyone who thinks they are has never tried.

    14. Re:Is the time coming? by kjamez · · Score: 1


      Today, we have two languages (XHTML and CSS) instead of one (HTML), and while it certainly does a lot to improve interoperability and platform independence, it is two languages to learn, not one. Throw in stuff like JavaScript, and you have even more.


      but XHTML is a substantially stripped down version of HTML. not allowing you easy fixes like bgcolor etc, etc. i'll admit the CSS is overly compilicated, but that's what makes it + XHTML so robust.

      i've recently been fascinated with the css zen garden http://csszengarden.com with their single page of XHTML and an infinite ammount of layout possibilities.

      my higginsforpresident.net site has four or five simple styles available like 'themes' but only change a css file call in the head tag. the page remains the same regardless. and i can use lynx if i need to, and a lot of the time prefer to.

      --
      you can't have everything, where would you put it?
    15. Re:Is the time coming? by Infinityis · · Score: 1

      Not necessarily. Back when I was using the first version of PC Paint, I found the features terribly limiting. Nowdays we have Photoshop and the GIMP, and I can do pretty much anything I want to an image of a number of formats. Not many people voluntarily put in the effort to make changes to their images using a hex editor.

      Multiple formats and increased complexity of the underlying structure do not necessarily imply that the surface must be difficult to work with. Good proprietary (or open source) soultions can exist, especially for web development.

      When coding HTML, did you care about individual 1's or 0's, or the assembly language of the browser? No, you simply abstracted your work and delegated those tasks to others. Same goes with using software to do webpages: soon, we won't give too much thought to the underlying tags and all, but how those options should be presented to the developer, regardless of if he/she is a professional or a 14 year old kid.

    16. Re:Is the time coming? by kaedemichi255 · · Score: 1

      That's a pretty inspiring story! Glad to see that people with CS degrees can successfully apply their knowledge to multidisciplinary fields that aren't necessarily technical in nature.

      About the problem you outlined above, it seems like the creation of the B+ tree indexes was lacking in performance? My guess is if you wanted to fix it, you would create the tree using a bulk load rather than repeated inserts into the tree. What's this "industry standard" DBMS they are using?

    17. Re:Is the time coming? by Vengie · · Score: 1

      The problem is that random access memory has gone full circle. We once started with tape -- so all of your sorting algorithms had to be sensitive to the fact that you only had sequential reads. The problem with random access memory is that when it is over the network, the latency becomes HUGE in comparison to the rest of the memory heirarchy. The algorithm works just fine on a local SCSI or IDE hard drive, but begins sucking hard over ethernet. (ESPECIALLY w/collisions) To fix it, they'd need to stop using stock B tree algorithms and go back to "old" technology -- that is, algorithms that take into account that random disk accesses cost you time. That way, they can queue a whole bunch of data from over the network, and then treat it (in local cache) like a segment of a tape. This problem is quite common in large datasets.

      [The program is called "Concordance"]

      --
      When in doubt, parenthesize. At the very least it will let some poor schmuck bounce on the % key in vi. (Larry Wall)
    18. Re:Is the time coming? by schon · · Score: 1

      Today, we have two languages (XHTML and CSS) instead of one (HTML), and while it certainly does a lot to improve interoperability and platform independence, it is two languages to learn, not one.

      Wrong. As others have pointed out, they are *not* two languages, but two parts to the same language.

      Doing this is taking more and more effort.

      Again, wrong - (X)HTML and CSS make designing web pages *easier*, not harder, because it allows you to separate presentation from content. If you believe that CSS is harder to use than <FONT> tags, then you're using it wrong.

      Once you know how it works, learning (X)HTML/CSS is *much* easier than using HTML 3.x - because it's *SO* much cleaner. You use the HTML to tell the browser the context of the content, and you use CSS to tell the browser how to render that context. For example, <p> </p> tells it that it's a paragraph. You then use CSS to tell the browser what the font for all your paragrahs should be. The important thing to note is that you only have to do this *ONCE*, instead of once for each change you want to make.

      It's only more complicated if you're still trying to use it like old HTML.

  12. Google suggest isn't useful though by Segosa · · Score: 5, Insightful

    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.

    1. Re:Google suggest isn't useful though by jonathantan · · Score: 1

      Agreed. And many people search using their built-in browser functions anyway so Google Suggest won't really kick in at all (e.g. I search from Konqueror's address bar). As an aside, Google Suggest crashes my browser (Konqueror 3.3.1).

    2. Re:Google suggest isn't useful though by Christopher_Hansen · · Score: 1

      I guess it could be useful if you couldn't spell your search term. For example you could be doing a research assignment on pneumonoultramicroscopicsilicovolcanoconiosis and could just type pneumono and it would fill you in on the rest or something. I don't know, what I do know is this kind of reverse engineering leads developers down the MS Script Encoder path.

    3. Re:Google suggest isn't useful though by roxtar · · Score: 1

      I would like to disagree with you. Google suggest is something like auto complete which is basically a convenience for anyone who doesn't want to type in long sentences. The search results also do supplement the user. What I mean is that even before seeing the results you know how many pages you have , so you have the ability to either be more specific or more general in your query.

    4. Re:Google suggest isn't useful though by OverlordQ · · Score: 1

      What do you mean? What if you knew what you wanted to search for but didn't know the spelling?

      --
      Your hair look like poop, Bob! - Wanker.
    5. Re:Google suggest isn't useful though by dustinbarbour · · Score: 1

      As a previous poster commented, I see this little web snazzery mre akin to autocomplete than suggestion. So yuo've got a form on your site and there is a field or two (or three, four, five..) that usually gets populated by the same set of values. Perfect place for an autocomplete function. There are numerous uses for this stuff. Insurance companies could probably lower the annoyance factor on their websites quite a bit.

    6. Re:Google suggest isn't useful though by m50d · · Score: 1

      It's a minor timesaver, like the autocompletion in OOo.

      --
      I am trolling
    7. Re:Google suggest isn't useful though by D-Cypell · · Score: 1

      Then I type in how I think it is spelled and click the 'did you mean' link. Infact... it is not uncommon for me to use google as a spellchecker when I am unsure of the spelling of a word.

    8. Re:Google suggest isn't useful though by danila · · Score: 1

      A decent search engine should support wildcards like pneumono*.

      --
      Future Wiki -- If you don't think about the future, you cannot have one.
    9. Re:Google suggest isn't useful though by spectre_240sx · · Score: 2, Insightful

      Yes, but that means you would have to search on that before recieving feeback on the correct spelling, possibly not getting the right results. Goodgle Suggest speeds up the process and gives you feedback on the spelling immediately, thus lessening the amount of time it takes to do your research.

      Honestly, I don't think Google Suggest is where this is going to stop. This is a nice demonstration that we can have real-time feedback on web pages and applications, but I'm thinking more about the future and how this small idea may change things on a fairly large scale.

    10. Re:Google suggest isn't useful though by Oori · · Score: 2, Insightful

      I respectfully disagree. You write: "if you know what you want to search for, you search for it". This description is obviously adequate for only *one* sort of web searching, which is rather unexploratory.
      But, in many cases search engines are useful in that they allow us to explore knowledge domains we were not aware of. Suggesting potentially related terms enables exactly this sort of searching.
      Don't think of it as search for information you already know you want. Think of it as being exposed to information you are not aware of yet (I, e.g., don't underestimate my own ignorance).

      Here's an example, an undergrad student is searching for "belief revision". He finished clicking belief, and "belief net" pops up from google. Sounds related. Great, he makes a mental note to check it out, and is introduced to belief revision models based on Bayesian Reasoning.

      TO sum, I find the suggestion box helpful, and would think it would be even more helpful if suggestions were based on terms exctracted from a semantically-related thesauri (e.g., Wordnet) rather than being just lexically related.

    11. Re:Google suggest isn't useful though by Anonymous Coward · · Score: 0

      And he wouldn't have found "belief net" referred to on any of the pages which "belief revision" hit?

    12. Re:Google suggest isn't useful though by Oori · · Score: 1

      Well, that's an interesting question, which you can check by crossreferencing the two searches. Of the 49,000 hits for "belief revision", 1,600 contain "belief networks", so your chances of falling on the latter (conditional on the former) by chance are slightly higher than 3%.

      You might say, well, maybe the domains aren't related -- but if your threshold is low (curiosity high), you certainly wouldn't have mind to learn of belief nets from the get-go rather than capitalize on the 3% chance of co-occurence.

    13. Re:Google suggest isn't useful though by Segosa · · Score: 1

      Don't think of it as search for information you already know you want. Think of it as being exposed to information you are not aware of yet

      You're right, I didn't think of it like that. I guess it does have its uses.

      Here's an example, an undergrad student is searching for "belief revision". He finished clicking belief, and "belief net" pops up from google. Sounds related. Great, he makes a mental note to check it out, and is introduced to belief revision models based on Bayesian Reasoning.

      That reminds me of when I'm trying to look through a dictionary. I'm looking for word x and see word y while paging through and I can't help but see what it means (providing I don't know) causing me to forget the original word I was looking for, or end up with my fingers in 5-6 pages of words whose definition I want to read.

      I hope that doesn't happen if I ever try use Google Suggest for that purpose!

    14. Re:Google suggest isn't useful though by danila · · Score: 1

      If you believe that you got the spelling correct, you type the whole word - Google would offer a correction if you made a mistake. If you realise you don't remember the correct spelling, you use a wildcard. My point is that Google Suggest has few practical uses if any (for me). Of course, the grey mass of casual web surfers would disagree. If you are searching for what 50% of the web users search and if you are a slow typist, Google Suggest may be useful.

      But I agree 100% that this project demonstrates technologies that can be quite useful in the future. Let's wait and see what comes out of it.

      --
      Future Wiki -- If you don't think about the future, you cannot have one.
    15. Re:Google suggest isn't useful though by spdt · · Score: 1

      It's fun to see what other people searched for.

    16. Re:Google suggest isn't useful though by diegocgteleline.es · · Score: 1

      I disagree. It shows you the number of hits a give word has. I use it often to check if I've spelled correctly a english word (it's not my mother tongue)

      I agree however that it "distracts" you from the real search, because it shows a annoying menu. I wish the results would appear anywhere on the page, though.

    17. Re:Google suggest isn't useful though by initialE · · Score: 1

      If you can't SPELL it, you can't SEARCH it. At least not too well. Here's a tool to help the less literate.

      --
      Starbucks, Harbuckle of Breath.
  13. XmlHttpRequest is cool by Gopal.V · · Score: 5, Interesting

    Eventhough it's an M$ spawned horror - It has brought a new revolution to javascript. Now it can load data from the server without having to refresh the screen. Flash has an XmlSocket , but I never see anyone use it till now (pointers please).

    Eventhough Google suggest looks great, I'd vote on CGI::IRC as the biggest killer HTML/Javascript browser app.

    Clientside Javascript is powerful, we never realized how much :)

    1. Re:XmlHttpRequest is cool by jasoncart · · Score: 4, Informative

      There are quite a few Flash RSS readers.

      Also, (seeing the link in your sig) parts of the BBC site use it - News for timelines (example) and CBBC used XML to pass data around flash games/apps

      The best one I've seen yet it the US Election tracker

    2. Re:XmlHttpRequest is cool by Soko · · Score: 1, Troll

      OK, this is cool. From Microsoft, you say?

      As someone whose been burned^Wjaded^Wexposed to Microsoft innovations before, I have to ask the following:

      1. How secure is this? IOW, does it rely on anything at all other than JavaScript on the client side, or does it hook into the OS on some level? If it does, how well is it isolated from the more dangerous bits in the OS?

      2. If it does require anything other than JS - even if it does only require JS - is it Windows only, or have our good friends at Microsoft realised why a goodly portion of the tech community is, ummm, hesitant to accept thier 'vision' of what computing should be?

      If XmlHttpRequest (Capitalised as it is, one could tell right away that it was spawned in Redmond) is all that and a bag of chips, how do us non=MS type enjoy it?

      Soko

      --
      "Depression is merely anger without enthusiasm." - Anonymous
    3. Re:XmlHttpRequest is cool by kuzb · · Score: 2, Interesting

      I've also tried my hand at XMLHttp, long before google started using it in gmaill and google suggest.

      The result was a php reference and an interesting chat application. Don't know how well the chat client is going to scale though, never had a significant enough number of people use it at once.

      (note, these projects were created before safari and opera decided to jump on the xmlhttp bandwagon, so for the moment they'll probably only work in Firefox, Mozilla, Netscape and Internet Explorer)

      --
      BeauHD. Worst editor since kdawson.
    4. Re:XmlHttpRequest is cool by noamt · · Score: 2, Informative

      Mozilla has its own implementation of XmlHttpRequest.

    5. Re:XmlHttpRequest is cool by piquadratCH · · Score: 1
      1. How secure is this? IOW, does it rely on anything at all other than JavaScript on the client side, or does it hook into the OS on some level?

      Considering the fact that it works on Linux with Firefox and Konqueror (only in KDE 3.3.2), I don't think that it has to be integrated in the OS (which, OTOH, is no evidence that Microsoft actually didn't integrate it in the kernel :) ).

      2. If it does require anything other than JS - even if it does only require JS - is it Windows only, or have our good friends at Microsoft realised why a goodly portion of the tech community is, ummm, hesitant to accept thier 'vision' of what computing should be?

      As already mentioned above, Google Suggest works in Firefox and Konqueror (probabely also in Safari and Opera), no matter on what platform / OS

    6. Re:XmlHttpRequest is cool by Richard+W.M.+Jones · · Score: 1
      I've used XmlHttpRequest before in various places, including on the edit page of this wiki which I wrote.

      The MS and non-MS implementations are subtly different, but nothing major.

      Have a look at the Javascript source. I do some clever stuff to measure the round trip time to the server and slow down updates if they are taking too long. Anyone know how to make updates run in another thread so they don't stop the browser if they're really slow?

      Rich.

    7. Re:XmlHttpRequest is cool by Gopal.V · · Score: 5, Informative
      Read History of XMLHttpRequest.

      Microsoft implemented it as an Active-X object you could invoke from Javascript - Mozilla implemented it as a native Javascript object. Microsoft calls it "Msxml2.XMLHTTP" or "Microsoft.XMLHTTP" depending on which version of IE you are running - Mozillah has a cleaner "XMLHttpRequest" naming (soon to be in the standards I guess).

      So on IE it needs ActiveX enabled to use it . Mozilla version is therfore much safer to use and easier to program with in connection :)

      Visit simple example for a quick and dirty example :)

    8. Re:XmlHttpRequest is cool by glh · · Score: 1

      I've been using the XmlHTTP stuff in IE for a while now, in the form of "Web Service Behaviors". MS makes it pretty easy to use, and gives you support for both synchronous and asynchronous web services calls from the browser. Pretty cool stuff.

      Of course, being a good MS developer, one should always look into the issues you posted...

      1. How secure is this? IOW, does it rely on anything at all other than JavaScript on the client side, or does it hook into the OS on some level? If it does, how well is it isolated from the more dangerous bits in the OS?

      It relies on JAvascript and the Browser. The browser uses an activeX XmlHTTP object. This is used in the same process as the browser runs in.

      The security hole that I know of is not going to be on the client. If anything there is a whole from client to server in the communication. If you are using HTTPS or a custom encryption to communicate it's probably not a big deal. The only other big deal is if you are using public web services and don't secure your WSDL. That in my mind is the biggest issue. The behavior needs to have a WSDL in order for it to set up a proxy. WSDL by nature means you can get a listing of all the methods and parameters that a web service uses. So.. don't put anything super secure on your web service that a browser is going to be talking directly to.

      2. If it does require anything other than JS - even if it does only require JS - is it Windows only, or have our good friends at Microsoft realised why a goodly portion of the tech community is, ummm, hesitant to accept thier 'vision' of what computing should be?

      If you do a little digging you'll see that remote web service calls from the browser are still a relatively "new" thing. There is no W3C standard as of yet. There are other browsers (Mozilla, etc.) that have a similar implementation. For now, it's just like everything else.. wait until a standard emerges and the next version of the browser (or service pack) will probably implement it along with some "extensions".

      For non MS types, check out Mozillas verison.

    9. Re:XmlHttpRequest is cool by frankvl · · Score: 1

      There is nothing new about this; it is already possible for years to dynamically load javascript without refreshing by simply setting the src attribute of the script tag to a php/asp/etc.-generated javascript.

    10. Re:XmlHttpRequest is cool by Darren+Winsper · · Score: 2, Interesting

      Javascript, as implemented in current browsers, is single-threaded. If you're concerned that a particular function will take too long to execute, I'd recommend splitting it up and using setTimeout() to call the next stage of the function. Using setTimeout() will allow the browser to regain control for a moment, hopefully giving enough of an approximation to multi-threading to be usable.

    11. Re:XmlHttpRequest is cool by TheMCP · · Score: 1
      Eventhough it's an M$ spawned horror - It has brought a new revolution to javascript. Now it can load data from the server without having to refresh the screen.
      Darling, I did that in 1999 for a web application I developed for a major financial services corporation. It had a tiny frame which was controlled by javascript in another frame. The loader frame would load in pages which had the same background color as the primary page, so people didn't tend to notice it, and the pages it loaded would just contain a TEXTAREA containing the data, which was in XML. The Javascript I wrote would pull out the XML, parse it, operate on the data, stick new data in the TEXTAREA, and submit it back to the server.

      You can now also do it using IFRAMEs, which may be hidden using CSS.
    12. Re:XmlHttpRequest is cool by SCHecklerX · · Score: 1

      Thanks for the CGI::IRC info! I've been using a java app on my own web page (very slow to download the first time). This thing looks like a winner! Of course, we have a Q&A scheduled on my site tomorrow, so I have to decide whether to rush to implement this or stay with the java client for now...*sigh*

    13. Re:XmlHttpRequest is cool by LetterJ · · Score: 1

      "Darling, I did that in 1999 for a web application I developed for a major financial services corporation. "

      Exactly. Those of us building internal web applications have been doing this kind of stuff for years. There's a whole level of "web" complexity that you don't see on most sites for web apps that are replacing VB, etc. apps and need richer client interfaces to satisfy the business needs.

      If you do web development and this really impresses you, you may not have been paying as much attention the last few years as you thought.

    14. Re:XmlHttpRequest is cool by jallen02 · · Score: 1

      We used it about a year or two ago to implement a Jabber compliant chat client :)

      The actual code dealing with the jabber protocl was event driven and quite modular :)

      Jeremy

    15. Re:XmlHttpRequest is cool by Reziac · · Score: 1

      Try Google Suggest with javascript disabled. It still works, in that it gives you a text list of the proposed initial results, albeit in static form. Even so, it's good enough for "suggestions of similar terms to search for".

      (Actually, I vehemently dislike autocomplete in every form I've ever seen it, including this one, and don't use it if I can avoid it. But Google Suggest was still interesting to look at, as a technical gadget.)

      --
      ~REZ~ #43301. Who'd fake being me anyway?
    16. Re:XmlHttpRequest is cool by Anonymous Coward · · Score: 0

      Eventhough it's an M$ spawned horror - It has brought a new revolution to javascript. Now it can load data from the server without having to refresh the screen.

      That's not something new, people have been doing that for a while with hidden iframes. The standard way of doing what XMLHttpRequest does is DOM 3 Load & Save, which is supported by Firefox and, I believe, the latest versions of Opera and Konqueror. Of course, it's best to include XMLHttpRequest as a fallback for when DOM 3 Load & Save isn't available (and, of course, fallbacks when XMLHttpRequest and Javascript itself isn't available), but in general you should write standard stuff first and use the non-standard stuff only as a last resort.

    17. Re:XmlHttpRequest is cool by JimDabell · · Score: 1

      Anyone know how to make updates run in another thread so they don't stop the browser if they're really slow?

      Here's your problem, right here:

      http.open ('POST', '/_bin/preview.cmo', false);

      The third parameter to the open method is false, which means you're explicitly asking for synchronous behaviour. If you had left it to its default value, true, you would have asynchronous behaviour, and you can hook into the onreadystatechange event to catch the load. Check an XMLHttpRequest tutorial for the details.

    18. Re:XmlHttpRequest is cool by JimDabell · · Score: 2, Informative

      If you do a little digging you'll see that remote web service calls from the browser are still a relatively "new" thing. There is no W3C standard as of yet.

      This is incorrect, DOM 3 Load and Save was finalised back in April, and it has been implemented by multiple browsers already. You still have to mollycoddle Internet Explorer of course, so you may not think that it's worth your while to implement the W3C approach, but that's your call.

    19. Re:XmlHttpRequest is cool by glh · · Score: 1

      This is incorrect, DOM 3 Load and Save was finalised back in April, and it has been implemented by multiple browsers already. You still have to mollycoddle Internet Explorer of course, so you may not think that it's worth your while to implement the W3C approach, but that's your call.

      Unfortunately, Internet Explorer is still the ruling king in corporations and the Internet. So yeah, I am going to implement it how IE does. Also, this spec is pretty far behind the times. IE has had this functionality for over 3 years.

      I love how everyone in the Linux community expects MS to drop everything they are doing and adopt this new W3C standard because it's a STANDARD. Therefore it "must" be better than what MS has been doing. I love it! So what about all of us who have written code already because there was no W3C standard?? Should we all be good programmers and go back and change our code just because? Heh, not in the world I work in...

      Anyway, IE hopefully will end up implementing the W3C spec eventually, but April 2004 in the world of corporations (at least those that make money over the Internet) it is still relatively new. In your environment maybe.. (I take it you are either at a University) but not mine.

    20. Re:XmlHttpRequest is cool by JimDabell · · Score: 1

      Also, this spec is pretty far behind the times. IE has had this functionality for over 3 years.

      Big deal. Microsoft haven't even finished implementing PNG and CSS, and they are both over eight years old. Microsoft implemented a useful object, other browsers followed suit, and then the W3C developed a specification to do the same thing in a slightly better way. I don't see why anybody should fault the W3C for that.

      I love how everyone in the Linux community expects MS to drop everything they are doing and adopt this new W3C standard because it's a STANDARD.

      It's not a standard. It's a recommendation, but lots of people confuse the terms. And I don't expect Microsoft to drop everything they are doing to implement new specifications, but I do expect the world's largest software corporation to be able to implement specifications within a decade or so. When they haven't made any improvements in three years, and other browser developers with a fraction of Microsoft's resources can do it, it's hard to give Microsoft any credit whatsoever.

      So what about all of us who have written code already because there was no W3C standard?? Should we all be good programmers and go back and change our code just because?

      You are arguing against a point I didn't make. Go back and read what I wrote again. I said "you may not think that it's worth your while to implement the W3C approach, but that's your call.".

      Anyway, IE hopefully will end up implementing the W3C spec eventually, but April 2004 in the world of corporations (at least those that make money over the Internet) it is still relatively new.

      I agree, it is still relatively new. Which is why I wouldn't recommend implementing it without an XMLHttpRequest fallback. Hence the whole "you still have to mollycoddle, so it might not be worth your while" bit.

      In your environment maybe.. (I take it you are either at a University) but not mine.

      I find that following W3C specifications first and foremost, and using other things as fallbacks gets me the most reliable cross-user-agent behaviour. That's in a business setting, but it's true for any setting where interoperability is a concern, in my opinion.

    21. Re:XmlHttpRequest is cool by Subjective · · Score: 1

      Back in 2001, there was a marketing ploy of a local company - buy their products, get codes to play games (by javascript) on their site, for prizes.

      I hacked the game script - it downloaded the "correct results" from the server (this was before .NET, before XmlHttpRequest)

      tcpdump and a second partner won me a back pack

      --
      My other .sig is also this bad
  14. throwing out DCMA by ChipMonk · · Score: 3, Funny

    Google will stop my cell phone from working? Noooooo!

  15. Interesting & nifty, but little else by BristolCream · · Score: 3, Insightful

    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.

    1. Re:Interesting & nifty, but little else by spectre_240sx · · Score: 1

      Check out the article on Why this will raise the bar. You're right that this, in and of itself, is not going to make an enormous difference in how we search. The idea of instant feedback without a browser refresh, on the other hand, is a very big deal.

  16. Too Busy! by cyberzephyr · · Score: 1

    Google suggest is too busy. It will make a nice crutch for some but won't help. How many times do real typists forget what word they are typing? Did WORD's predictive code help? Kinda; but all that good, NO!

    --
    I'm here for the experience, not the Hyperbole.
    1. Re:Too Busy! by Slack3r78 · · Score: 1
      Did WORD's predictive code help?


      When it was adopted by the Visual Studio team and dubbed Intellisense, massively.

      Google Suggest may end up being the same way - not too useful in its current incarnation, but a huge usability boost when a solid usage for it is found.
  17. Censored!!! by britneys+9th+husband · · Score: 4, Funny

    Try typing "porn" or "sex" or "cock" into Google Suggest. It doesn't come up with anything. I started to get suspicious when I typed the letter x to see what would come up, and got 4 or 5 variations of "xbox" but not a single "xxx" or "xxx porn" or anything.

    Interestingly enough, they DIDN'T censor the racial slurs. "gay nigger" happily suggests "gay niggers from outer space" among other things. Also, type "tub" and one of the suggestions is "tubgirl".

    --
    Hear recorded Slashdot headlines on your phone! New service beta testing. Just call (248) 434-5508
    1. Re:Censored!!! by Bloater · · Score: 3, Interesting

      IMHO google shouldn't be the international standard moral censor of the web.

      As a concerned parent (I'm not, but pretend) I wanted to help protect my teenage daughter so I looked for information by typing "sexual diseases". Granted the search would have worked, but as an unknowledgable home user I thought there were no results.

      IMHO, as well as prompting with common queries not involving any sequences of glyphs that the pope might blush at, google suggest should treat people with more respect and also return suggested spelling corrections and search result count for all exact search queries.

      At worst, if the user types "cunt", google suggest should include all suggestions with "cunt" in them. And in that case where it is an extremely offensive word to white heterosexual christians (as that appears to be the only metric by which google can be bothered to censor), if the user types it, google should produce suggestions including less offensive words too.

    2. Re:Censored!!! by m50d · · Score: 1

      Did you turn off SafeSearch in your preferences?

      --
      I am trolling
    3. Re:Censored!!! by Anonymous Coward · · Score: 0

      There are no results for "porn" because nobody searches for it. Try "pr0n" instead.

    4. Re:Censored!!! by Motherfucking+Shit · · Score: 0, Flamebait
      Try typing "porn" or "sex" or "cock" into Google Suggest. It doesn't come up with anything.
      You must have encountered a glitch. I tried those searches and I wound up at michaeljackson.com ...
      --
      "BSD: Free as in speech. Linux: Free as in beer. Windows 10: Free as in herpes." --Man On Pink Corner in #52607549.
    5. Re:Censored!!! by Anonymous Coward · · Score: 0

      Playing with safe-search settings doesn't change this, either. :/

    6. Re:Censored!!! by Anonymous Coward · · Score: 0

      Google isn't the international standard of anything. They are a company trying to generate profit for shareholders. There are many other search engines you may use. In fact, many people do seeing as how Google only has 41% of the market according to Nielsen.

    7. Re:Censored!!! by dapyx · · Score: 1

      Try "shit". It isn't censored.

      --
      I'm sorry, the number you have dialed is an imaginary number. Please rotate your phone 90 degrees and dial again.
    8. Re:Censored!!! by Anonymous Coward · · Score: 0

      At worst, if the user types "cunt", google suggest should include all suggestions with "cunt" in them.

      I understand what you are saying, but it's easy for this type of tool to suggest very inappropriate things frequently. For example, typing in "fac", which could be the beginning of a search for anything, lists "faces of death" as the sixth result down. This isn't a case of somebody typing in a "naughty" word and complaining that they get "naughty" results.

  18. nothing new by Anonymous Coward · · Score: 0

    i did something similiar for a customer about 3 years ago. the only difference was, that the list of possible inputs was much smaller and therefore i loaded the whole thing together with the webpage instead of making a lookup for every character (which had the advantage that this method was much faster for my site, especially because after the first time the browser cached the wordlist.)

    maybe i should apply for a patent before google does :)

    1. Re:nothing new by drooling-dog · · Score: 1
      maybe i should apply for a patent before google does :)

      I think that would require revealing your identity...

  19. Intextincase by Anonymous Coward · · Score: 0

    Google Suggest Dissected...

    People have been contributing their two cents to how this works, but I have un-compressed (ie. re-written) Google's compressed javascript, so that the average web developer should be able to get a detailed understanding of how this works.... My final rewrite is available from my website here.

    I saw the coolest thing I've seen since realizing that Mozilla was embedding a wsdl-enabled SOAP client into this browser... Google Suggest returns suggested results as you type... This is technically amazing on about at least two different levels:

    1. How fast this is... I type pretty fast, and it updates with every single keypress...
    2. The cool web interface... I used to be pro-server side web updates, and avoiding javascript, but I'm really turning around on this with the impressive interfaces I've seen with gmail, and now google suggest (among others...)

    So everyone is impressed by this... My shock and awe goes further in terms of how nice this interface works:

    1. That the suggestion list lines up perfectly with the query input field...
    2. The high-lighting of the additionally suggested text (I type "fa", it suggests "fast bugtrack" and highlights the "st bugtrack" so that the next character I type wipes out it's suggestion... beautiful...)
    3. The great handling of keypresses (cursors up and down...)
    And After going through googles code:
    4. How the javascript cache's the dynamic results so that if you backspace, it doesn't have to go back to google...
    5. How the code dynamically adjusts it's main (time/alarm) driven loop based on how quickly you're getting results back from google...

    So I wanted to understand the web interface and it's dynamic interface... Just a note that the good and brilliant folks at google wrote all of the code we'll be looking at here this evening... I didn't write any of it, but I will be stepping through it with you, and hopefully helping to improve everyone's understanding of this great dynamic web interface...

    A couple of tips for how I went about reversing the logic here:

    1. I saved the html and javascript locally... I managed to get a local copy running, and placed some alerts into the code to observe behaviour as well as using the javascript console to catch places I made mistakes renaming variables and functions...
    2. The google code uses an XMLHttp object to make calls back to google, and executing the results... to fully understand the code, I need to see what google is sending back... BUT when I tried the url directly, I didn't get anything but a 404 back from google (it turns out I had mis-typed the generated url...)... I tried to have my browser go through a local proxy server, but it appears that the XMLHttp object doesn't use the browsers proxy when communicating (which means that this might not work if you're behind a proxy server... Can people confirm this??) ... I would have fallen back on a packet sniffer to capture the data, but caught my mistake in the URL before reaching this point...

    Looking at the main page source, just go to google and view source... At the bottom of this file, we can see a reference to javascript which drives the dynamic interaface (available directly from google here...)

    The good folks at google compress their code as they should, so in order to understand it, I first re-indented it as can be seen here... Then I began the fun process of figuring out what the global variables are for, and what the various functions do, and renaming them to meaningful names... I made it pretty far as can be seen in my final re-write of Google's suggest javascript codehere

    Things I didn't know before this exercise that I learned going through this...
    1) You can turn the browsers autocomplete off by adding autocomplete="off" attribute to an input field... How did I not know this before...
    2) The XMLHTTP / XMLHttpRequest object to communicate back with a server and get new info / ins

  20. Beware by kuzb · · Score: 5, Interesting

    Google suggest is a neat idea, but a potentially destructive one.

    Small sites should *not* try to do this kind of thing on a live site. The amount of pressure this could put on a bad database structure (or even a well formed one) is considerable. Think about how many database hits a user could perform in a very short space of time: (user enters something, (database hit) backspace (database hit) types another letter (database hit)), then multiply it by a hundred or more people if your site gets a moderate amount of traffic.

    Google can get away with this because they have considerable bandwidth, and large server farms. We've been seeing people trying to copy google suggest for the last couple of weeks in #javascript/freenode and in #php/freenode. The people trying to copy it generally do not understand how potentially bad this can be for a single server.

    Anyhow, my advice is, don't do it unless you have the resources to scale your site. The cost of such an insignificant feature (lets face it, all it does is save the user one or two clicks) seems like it outweighs the gain. If you do decide to do it, and your site gets popular, and you're on some kind of shared host, your sysadmin is going to hate you, and the other site admins will probably meet you at your house, torches in hand.

    --
    BeauHD. Worst editor since kdawson.
    1. Re:Beware by broothal · · Score: 4, Informative

      Actually, it's not a new lookup in the google main databse for each keypress. It's a lookup in a pre-generated table of results.

      It's pretty easy to spot, as the number of results shown in the preview doesn't match the number of results when you hit enter.

      This makes perfect sense, since a "real" lookup would generate way too much heat. But, it's also dangerous, because people are led to believe that what they're typing would'nt yield a result. This is wrong. A simple proof of concept. Type sex. It says 0 results. But if you hit enter, you get a godzillion.

    2. Re:Beware by asavage · · Score: 1

      What you have said is true except for using the backspace. As he says in the article google caches the results using javascript to reduce server and database load.

    3. Re:Beware by Phexro · · Score: 2, Informative

      There are ways of providing this kind of functionality without the serverside hit.

    4. Re:Beware by kuzb · · Score: 2, Insightful

      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.
    5. Re:Beware by XaXXon · · Score: 4, Informative

      I think you missed the point. The "massive array" lives on the server, and when the client requests suggestions for a particular string, it is looked up in this array. Only the portion of the array that has been grabbed from prior strings is cached on the client.

      In a naive, client-side caching system, if you DID manage to request all the suggestion strings in the client, eventually you would have the entire array client side, but you'd probably start throwing away the old data at some point.

    6. Re:Beware by moonbender · · Score: 1

      A simple proof of concept. Type sex. It says 0 results. But if you hit enter, you get a godzillion.

      That's not a good proof of concept. Google seems to filter certain keywords deemed inappropriate, and sex is one of them. So this is deliberate and not a side-effect of caching the results in a lookup table on Google's side.

      I don't actually know how Google does it - I agree that the naive approach probably stresses their servers too much to be widely used. OTOH this is only a beta test, and it's possible it never will be widely used.
      Creating a look-up table, as you say, does seem like a reasonable way to make the problem manageable, with the downsides you mention. But then, such a lookup table would be really, really large... After all you can't just store the number of occurances for a number of words, because you can't computer the number of results for slashdot effect (500k) from slashdot (~9m) and effect (153m). BTW, effect allegedly has 153m results, searching for it yields 145m. Searching for Slashdot actually only yields ~6m.
      So anyway, if there aren't any smart ways to reduce the tables size, you'd have to store an entry for every possible combination of characters a user might enter. To cache strings up to n characters long you'd have a table of n^27 entries. Not exactly viable.
      However, Google does have smart ways to reduce the size, non-sensical query strings don't give you a list of suggestions. So looking for "hxa su" doesn't give me any suggestions but 13,500 results.

      --
      Switch back to Slashdot's D1 system.
    7. Re:Beware by DigitalCrackPipe · · Score: 1

      Type sex. It says 0 results. But if you hit enter, you get a godzillion.

      Oh thank god. I thought someone deleted all the porn off of the internet!

    8. Re:Beware by Reziac · · Score: 1

      As I mention above, try it with javascript disabled. IT STILL WORKS -- still coughs up the exact same suggestion list, even tho it displays them as static text. So if you don't mind a little back-and-forth with the server as you refine your initial search in light of the suggested results, you can use it even with the most braindead browser.

      (Actually, I prefer it that way...)

      --
      ~REZ~ #43301. Who'd fake being me anyway?
    9. Re:Beware by khallow · · Score: 1

      I wondered about that. Seemed pretty dumb to generate a query each time the user hit a key, no matter who you are.

    10. Re:Beware by babbage · · Score: 1

      On the other hand, there's also a bandwidth limiting effect from this feature.

      To make up an example, suppose someone were searching for, say, the director of the new Willy Wonka movie. The first thing they'd search for might be "Willy Wonka". This will return all kinds of hits, most of which will probably deal with the original movie with Gene Wilder, or even the older Roald Dahl book. With search string suggestions turned on, the user might realize that amending the search string to something more specific will bring them more quickly to the information they're looking for.

      From Google's point of view, the cost is a bunch of tiny lookups to a precached table of search strings which probably lives in RAM on their servers. The benefit is a reduced number -- ideally, a drastically reduced number -- of expensive hits on their database to return search results.

      The question then is that, if there is a reduction in full-page hits -- and I think this is inevitable -- then will that reduction be greater than the overhead that this functionality requires?

      I don't know the answer, and neither does anyone else (yet), but my hunch is that Google is betting in the long run that this is going to be a net reduction in traffic for them, not a net increase. It wouldn't surprise me at all if things work out that way.

    11. Re:Beware by mattwarden · · Score: 1
      Think about how many database hits a user could perform in a very short space of time: (user enters something, (database hit) backspace (database hit) types another letter (database hit))

      If you had RTFA, you would know that this isn't at all how the code works. The state of the textbox is polled every n milliseconds using setTimeout() and, if a request to google needs to be made, it is made. The implication here is that even if I type 30 characters really fast, there could be as few as one request made to google. A very smart solution, if you ask me.

  21. I kinda disagree with Joel's thesis by smittyoneeach · · Score: 1

    It's based on a hidden one-size-fits-all assertion, where size=="SUV".
    People know when they're sitting behind copious bandwidth. And you could well grow accustomed to an all-text page weighing the better part of a megabyte, due to a heinous amount of information parked in hidden JavaScript data structures, giving you that near-whiplash inducing responsiveness.
    (Ah, the ghosts of projects past...)
    Then again, you also know when you're on a cell phone, and the information you really need is already at the top of the page, and standing by for ludicrous chrome and tailfin to download could lead you to curse.
    Nothing marks an American more than an insatiable lust for overengineer, but go ahead and light off Keb' Mo' "Am I Wrong?" for a compelling counter-argument.

    --
    Get thee glass eyes, and, like a scurvy politician, seem to see things thou dost not.--King Lear
    1. Re:I kinda disagree with Joel's thesis by TomV · · Score: 5, Interesting

      People know when they're sitting behind copious bandwidth. And you could well grow accustomed to an all-text page weighing the better part of a megabyte, due to a heinous amount of information parked in hidden JavaScript data structures, giving you that near-whiplash inducing responsiveness.

      In fairness, Google Suggest, like Gmail, works very nicely for me on a 56k dialup. Gmail takes a few seconds for its inital load, true, but then it's like lightning. Suggest doesn't even have the slow initial load, since webhp.htm comes in at only 3.6kB. I'm very impressed.

      Now I've no doubt that the bandwagon will bring us massive slow bloat as everyone gets his dog to code up vaguely similar functionality, but Google haven't done that.

    2. Re:I kinda disagree with Joel's thesis by Anonymous Coward · · Score: 0

      Good thing your post makes sense.

      Wait... no... it doesn't. What does this have to do with Google Suggest again? Or what Joel was saying?

      Nothing? Cool.

      Anonymous forever.

  22. This technique exists since a long time ... by chregu · · Score: 5, Interesting

    LiveSearch does something very similar, is Open Source and exists since April ;)

    If you look for more XMLHTTPRequest examples, which tightly integrate JS and PHP (other server side languages would be possible), see JPSpan.

    I don't quite understand all the hype about Google Suggests. The technique for doing it exists since at least 2 years on Mozilla (and even longer on IE). Therefore, doing something like that was possible since a long time, but maybe everyone was just scared of using JS for "serious" stuff..

    1. Re:This technique exists since a long time ... by pdamoc · · Score: 2, Insightful
      I don't quite understand all the hype about Google Suggests. The technique for doing it exists since at least 2 years on Mozilla (and even longer on IE).
      well.. it is the power behind it that's coursing all the hype. Google IS power because it has a very wide audience. Think about it like this: What would happen if Google would start producing a custom Open Source OS? A LOT of companies have their own Linux or BSD versions and some did succeeded in receiving some public exposure BUT if Google would post a short link on their home saying "Help us finish Google Linux" you can bet that it would make world news and it won't be because some company started yet another linux distribution but because Google did it.
    2. Re:This technique exists since a long time ... by JunkDNA · · Score: 1

      I don't quite understand all the hype about Google Suggests. The technique for doing it exists since at least 2 years on Mozilla (and even longer on IE). Therefore, doing something like that was possible since a long time, but maybe everyone was just scared of using JS for "serious" stuff.

      Lots of technologies come along and people play with them. It's not to belittle any of the work others have done on similar projects. I am sure many of them are excellent proof of concept projects. The issue here is that Google is indicating through both GMail and this example, that they are serious about using the browser as a platform in a real high-volume enterprise setting. Furthermore, they are showing that they don't view the browser as a "dumb terminal" or a "viewer", but instead as an actual platform on which software runs. I think this is a real challenge to the current thinking about browsers. I'm not trying to be a Google fanboy here or anything, but they are major player in the industry and what they decide has an effect on trends.

  23. Gmail Javascript Dissected? by timmerk15 · · Score: 1

    Anyone have the gmail javascript code dissected in a similar fashion that they could send me or post a link? My email is timmerk at yahoo dot com I am just looking for JS that can dynamically draw and change the page so well, such as gmail and yahoo does with their personals page.

    --
    Free stuff without getting the referrals? http://referralaccelerated.com
  24. Mod interesting? by Anonymous Coward · · Score: 0

    I would've moderated it "no shit".

  25. Is it that big a deal? by eraserewind · · Score: 3, Interesting

    Not to dismiss the neat reverse engineering he did, but is the actual discovery that big a deal? It's just a keypress handler, and some server communication. No big deal on any graphical user interface other than a web page.

    Google have good UIs because they hire smart people. Other people don't because they don't hire smart people, or hire the wrong type of smarts (graphic designer instead of sw engineer for the coding part of a website, and vice versa).

    1. Re:Is it that big a deal? by dustinbarbour · · Score: 1

      Technically, it doesn't use a keypress. The JS quietly loops in the background on a timeout.

    2. Re:Is it that big a deal? by QuantumG · · Score: 2, Insightful

      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.
  26. XMLHTTP by marcjps · · Score: 4, Interesting

    I've looked at using the XMLHTTP object a couple of times in the past, and noted that this is partly how Google Suggest works.

    XMLHTTP is a COM object included with recent versions of Internet Explorer. You can call it from client side JavaScript in a web page. The object will make a request to the URL you specify, and return the result into either a string variable, or an MSXML DOM object. You can then have the javascript output the results to an object (eg, a div tag) on the page without doing a full page reload.

    I wrote a small tech demo that implemented a virtual tree - so when you expand a branch in the tree the client only retrieved the data it needed. This was borrowed from the approach the MSDN web site uses. The advantages to it are that it doesn't download the same data over and over like when you expand a branch in a server side tree. You also don't have to do any work at all to remember the state of the tree since there's no full page refreshes involved.

    Google Suggest is similar in that it is a virtual list rather than a virtual tree. A virtual list allows you to list lots of items and jump around in the list without needing to download the entire data set when the page was loaded.

    Another use for this would be dynamic forms - forms that alter the state of controls based on selections the user made in previous controls.

    The biggest suprise to me was that Google have implemented this on a site live to the public. In using XMLHTTP I found it a little bit prone to locking up the browser when waiting for responses to requests. Additionally it's Windows only, so could never have been implemented on an external web site.

    I'll be looking with interest at the Mozilla side of Google's implementation, since I didn't think an equivalent existed until now. Two different implementations of the same functionality is still going put a damper on the technology though.. different code for different browsers is usually more trouble than its worth.

    1. Re:XMLHTTP by ziggamon2.0 · · Score: 2, Informative

      Actually, Mozilla has had support for XMLHTTPRequest for a long time, the API is almost the same, the difference is in maybe two lines of code when you initialize it...

    2. Re:XMLHTTP by City+Jim+3000 · · Score: 3, Informative

      Just steal the Google code for finding out what XmlHttpRequest object the client has... it's not hard, just a bunch of try-catch clauses.

      What I think is cool about the Google implementation of XmlHttp is that it's run asynchronously so it won't lock up the page.

    3. Re:XMLHTTP by Anonymous Coward · · Score: 0

      In using XMLHTTP I found it a little bit prone to locking up the browser when waiting for responses to requests.

      Then you were passing true as the third argument to the open member function - you were explicitly asking for synchronous behaviour. If you had used asynchronous requests, there wouldn't have been a problem.

      Additionally it's Windows only, so could never have been implemented on an external web site.

      Nonsense, the latest versions of Mozilla, Firefox, Opera and Konqueror all support XMLHttpRequest on multiple platforms. I believe the same applies to the DOM 3 Load & Save specification that does the same thing.

      Two different implementations of the same functionality is still going put a damper on the technology though.. different code for different browsers is usually more trouble than its worth.

      Not in my experience. In any case, the only difference between Internet Explorer and every other browser is in how you instantiate the object, so it's a matter of a couple of lines of code to detect which is available and instantiate appropriately. The rest of the interface is identical.

  27. I don't agree by mansoft · · Score: 5, Insightful

    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!

    1. Re:I don't agree by Anonymous Coward · · Score: 0

      It's true. There's a reason that this shirt exists. People like us know how to search the internet, and most of our acquaintances do not, which is why you get questions about computers that you don't know the answer to, but you Google them and tell people the answer as if you knew it.

    2. Re:I don't agree by tepples · · Score: 1

      When I use Google to answer another fellow's question, I tend to tell him what query I used, hoping that some of my thought process will rub off on him.

    3. Re:I don't agree by bobbozzo · · Score: 2, Funny

      You should also refer him to this site.

      --
      Nothing to see here; Move along.
  28. Doin' it with .NET by Anonymous Coward · · Score: 0

    I read a cool article on how it was done and how to do it with ASP.NET here:
    http://dotnetjunkies.com/WebLog/anoras/arch ive/200 4/12/12/36161.aspx

  29. scary computational power.... by rich42 · · Score: 5, Interesting
    interesting part is that either:

    1. Google performs several possible searches for each key you press

    2. Google already knows the estimated number of results for millions of queries

    Both of these suggest a heck of a lot of computing power. This type of thing might not scale up for general use in the near future - but still...

    we're talking massive computational power and one of the largest databases ever created.

    I'm a bit worried the Googleplex is going to wake up one day and declare to all us 'organics':

    "yo bitches - you work for me now"

    1. Re:scary computational power.... by JustinXB · · Score: 2, Informative

      Number two is correct and I don't think it suggets a lot of computing power. It's a simple table lookup. It's like a cache.

    2. Re:scary computational power.... by TummyX · · Score: 2, Informative


      1. Google performs several possible searches for each key you press


      Very unlikely.


      2. Google already knows the estimated number of results for millions of queries


      More likely....and they already "know" those numbers because they use it in their normal search. It doesn't require computatioinal power to get those numbers, just time. And the lookup for those numbers should be reasonable fast (hash lookup or whatever).

    3. Re:scary computational power.... by Ninjy · · Score: 1

      That reminds me of this Vice City cutscene...

      [Ricardo] You did reaaal good, you work for me now.
      [Tommy] I work for money.
      [Ricardo] As I said amigo, you work for ME now!
      [Tommy] I WORK for MO--
      [Ricardo] Shut up!

    4. Re:scary computational power.... by borud · · Score: 1
      Both of these suggest a heck of a lot of computing power.

      Man, what I wouldn't give to be a kid again.

    5. Re:scary computational power.... by Reziac · · Score: 1

      Too late!! -- Dr. Charles Forbin

      --
      ~REZ~ #43301. Who'd fake being me anyway?
    6. Re:scary computational power.... by Anonymous Coward · · Score: 0

      Yah hash tables are *extremely* computationally intensive! There must be like a million entries in this one too! They better have Deep Blue for all the power they need!!!@##

  30. Michael's Just Sucking-Up Again. by Anonymous Coward · · Score: 0

    Don't worry about it.

  31. Re:DCMA by tarunthegreat2 · · Score: 1

    How about Run DMC? Code This Way...Compile This Way...

  32. Welcome to the world of Michael Sims. by Anonymous Coward · · Score: 0

    Where it's all about personal aggrandizement and self-promotion.

  33. Answers first, then questions by foobsr · · Score: 1

    Was not there a saying "Answers first, then questions" ???

    Owen D. Answers first, then questions.
    in D.A. Norman & S.W. Draper (Eds.) User centred system design.
    LEA Associates. pp. 361-375. 1986

    CC.

    --
    TaijiQuan (Huang, 5 loosenings)
  34. Evals by HadenT · · Score: 1

    Isn't just evaluating returned data security problem?
    {It sets up a callback _xmlHttp.onchange event function, that will simply evaluate the (what ends up being a javascript funciton) that gets returned from google...}

    1. Re:Evals by hobo2k · · Score: 1

      If somebody can intercept the request to google.com and return their own data, they could have injected whatever javascript they want right from the beginning.

  35. Google are wasting their time by Milton+Waddams · · Score: 1

    This is a pretty useless technology. Google would be much better off if they focused on a better way of searching.

    I mean, instead of searching for the occurrence of certain words, they should work on some kind of semantic search by which the semantic content of something is searched instead of its syntactic content.

  36. Patented? by simpleguy · · Score: 1

    Hi, does anyone know if google has patented this?

    1. Re:Patented? by Broofa · · Score: 1

      Even if they did it wouldn't matter. The ability to do this has been around for years, and there are plenty of examples of prior art. One of the more obvious examples of would be the DHTML version of AOL's webmail product. I don't know if they still use it (haven't looked lately) but it dud auto-complete on email addresses from your (server-side) address book. I.e. start typing a name or email address, it suggests options from your address book, etc... Exactly the same process, exactly the same interface. Just slightly different subject matter. And that was in production 2 years ago.

    2. Re:Patented? by Anonymous Coward · · Score: 0

      No, but you're infringing on my patent to post questions about wheter a company has posted a patent regarding an wellknown technic.

  37. Stop mentioning Spolsky as if he were smart! by Anonymous Coward · · Score: 0

    Joel Spolsky astutely notes that . . .
    Joel Spolsky is an idiot. Please do not pretend otherwise.
  38. DDA Compliance? by danfairs · · Score: 4, Informative

    We have something called the disability discrimination act here in the UK, which pretty much rules out many interesting uses of Javascript if things like screen readers can't process them, and if there's no other way of providing that enhanced functionality to disabled users.

    As others have commented here, I'm not convinced that the Google feature is in fact much more than eye-candy; and thus, since it doesn't really add any functionality, isn't really covered by the DDA. However, as soon as it actually becomes useful for something, then it will be covered; and I don't fancy the job of getting JAWS or something like that to interpret the JS in a meaningful way!

    1. Re:DDA Compliance? by Anonymous Coward · · Score: 0

      that's true, but then that's why graceful degradation kicks in. it's a pity google html is so nasty.

    2. Re:DDA Compliance? by Broofa · · Score: 1

      Yup, large companies in the US have exactly the same issue(s). These for DHTML applications you typically get around this by providing a hidden image link at the top of the page (so it's the first link a screenreader processes) that has an alttag="Click here to use the screenreader-enabled version of this site". Screenreader users are then directed to a static HTML version of the site. I imagine Google Suggest could easily do this to simply turn off the "complete=1" parameter in the URL to disable the suggest feature.

  39. I am impressed by alanbs · · Score: 1

    A week or two ago I saw Google Suggest for the first time and was equally impressed. I too attempted to look at what was going on at the client side, but gave up when I came to the nasty block of confusing code. I was not aware that javascript could do things like this such as opening up a socket and whatnot. The only things I ever used it for were basically error checking text fields and other strictly client side things. Maybe it is time that I started playing around with it again.

  40. everything you type in is directly send to google by mrmorgana · · Score: 4, Insightful

    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).

  41. Re:DCMA by kertong · · Score: 3, Funny

    Dyslexic users of slashdot, untie! :)

  42. neat trick by Anonymous Coward · · Score: 0

    This is a neat trick for searching. If you're looking to refine a search based on a particular word then being able to see the results count is actually pretty cool. It works best when there are a number of variations on the thing you're searching for. Unfortunately all the examples of this I can think of are p0rn related. I mean should I search for big boobs, big breasts. With autosuggest on I can easily see that big breast is best.

  43. Google's version of Clippy? by Anonymous Coward · · Score: 0

    == GOOGLE SUGGEST ==
    I am wearing
    t-shirt.....20,000 results
    coat........10,000 results
    tie............2,000 results
    underwear....1,500 results
    nothing........700 results

    == GOOGLE ADS ======
    Need a tailor?

  44. A better outlet for this technology... by Anonymous Coward · · Score: 2, Insightful

    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.

  45. One word: DUH! by Anonymous Coward · · Score: 0

    Google is built upon a successful patent. This would be just one more.

  46. Not Windows only by Kristoffer+Lunden · · Score: 2, Informative

    Mozilla has had this (IE compatible) object since Mozilla 1.0 (Netscape 7), and Safari has it too. In the native implementations, you use new XMLHttpRequest() instead, and you can test for window.XMLHttpRequest to see if it is there. It is just a few lines of code extra.

    Furthermore, you can use asyncronous requests to avoid lockups. Having the Google server farm and bandwidth wouldn't hurt either, of course. ;)

  47. It's also possible using a hidden iframe by jesterzog · · Score: 1

    I didn't use the XMLHTTP object to do this, but I implemented something similar a while ago. I think I originally tried to use XMLHTTP (or possibly something similar), but ran into Mozilla security issues that were blocking it from being used without requiring the user to have a heap of trust-related things set up in a friendly way. (On the other hand, I didn't go to great lengths to figure out if I was using it properly.)

    The trick I used, which I borrowed from kuro5hin and it's dynamic comment fetching, was to use a hidden iframe element in the page.

    Essentially you just put an iframe on the page with style=display:none (or perhaps just create one), set the location property, let it fetch the page. Then you can grab the DOM or text from it and do what you like with it. It's hacky and so obviously you have to be careful not to break things, but it's an alternative approach in some cases you might run into where XMLHTTP isn't properly supported.

    1. Re:It's also possible using a hidden iframe by Anonymous Coward · · Score: 0

      I recall reading that display:none for the iframe is not recommended, because some browsers (not sure which) may not load the iframe if it's set to not be displayed. Setting a size of 0,0 is more reliable.

    2. Re:It's also possible using a hidden iframe by Anonymous Coward · · Score: 0

      You cant access the contents of an iframe if they come from a different domain. So that limits some of your capabilities.

  48. Re:everything you type in is directly send to goog by Anonymous Coward · · Score: 0

    how do you accidently type your password into a freaking google search box?

  49. Flickr uses XmlHttpRequest too by goynang · · Score: 1

    When logged in at Flickr (http://flickr.com/) you can quickly edit photo titles and other bits of info by simply clicking on then and typing in a new value. When you submit the value it uses XmlHttpRequest to send your change to the server without refreshing the page and works really well. Makes it really simple to make small quick changes to stuff.

    With XmlHttpRequest being supported cross browser (I think Safari is getting it soon) and starting to get more mindshare I think we are going to see a lot more of this.

    1. Re:Flickr uses XmlHttpRequest too by Swedentom · · Score: 1

      Safari has support for XMLHTTPRequest since version 1.2.

      --
      Sig Nature
    2. Re:Flickr uses XmlHttpRequest too by goynang · · Score: 1

      Oh yeah - silly me, I've even written some code using it! D'oh.

      I was thinking of support for contentEditable and in page WYSIWYG editors. That's coming soon I think.

  50. I figured that out last week by Teknikill · · Score: 2, Interesting

    After seeing google suggest, I built the same thing last weekend for CPAN modules. It's at http://teknikill.net/cpan/

    The next thing I need to do is include the value of the dropdown box and limit the results on that.

    1. Re:I figured that out last week by Anonymous Coward · · Score: 0

      It doesn't work in Opera 7.54 at all. Since this version doesn't have XMLRequest, the iframe method is used. I see data beeing loaded, but that is it.

      If I turn of CSS, I see

      sendRPCDone(frameElement,"", new Array("AAC::Pvoice","AAC::Pvoice::Bitmap","AAC::Pv oice::Dialog","AAC::Pvoice::EditableRow","AAC::Pvo ice::Input","AAC::Pvoice::Panel","AAC::Pvoice::Row ","abbreviation","ABI","about","accessors","access ors::chained","accessors::classic","Ace","Ace::Bro wser::AceSubs"), new Array("JOUKE","JOUKE","JOUKE","JOUKE","JOUKE","JOU KE","JOUKE","MIYAGAWA","MALAY","SHERWOOD","SPURKIS ","SPURKIS","SPURKIS","LDS","LDS"), new Array(""));

      in the iframe, and this never changes.

    2. Re:I figured that out last week by rzebram · · Score: 1

      Excellent work! Very useful! Is this going to stay up, or do you plan on taking it down after you've had your fun with it?

  51. Google Desktop Suggest? by noamt · · Score: 1

    What I'd like to see Google do, is incorporate Google Suggest into Google Desktop Search, adding the search-as-you-type functionality one of its competitors already has.

    The hard part will be to make sure it does not kill the user's computer - as someone already pointed out, this can place a pretty heavy load on the server, in Desktop's case, the desktop computer itself.

    - Noam.

  52. Obligatory Bush bash by Cereal+Box · · Score: 1

    Joel Spolsky astutely notes that this will raise the bar in terms of how people expect the "internets" to work.

    Couldn't just post the story without bashing Bush, could you?

    1. Re:Obligatory Bush bash by Anonymous Coward · · Score: 0

      He makes it so easy though.

    2. Re:Obligatory Bush bash by Anonymous Coward · · Score: 0

      Contrary to the Al Gore "I invented the internet" fallacy, the Bush gaff is actually accurate and true.

      He IS an idio. Get over it. He lost when it came to the brain dept.

    3. Re:Obligatory Bush bash by Anonymous Coward · · Score: 0

      HA HA. You thought you would get Karma Points and modded up as funny but you didn't. I bet you actually kept clicking... clicking... to see your score. fucking fewl.

    4. Re:Obligatory Bush bash by Anonymous Coward · · Score: 0

      There is more than one internet. Internet 2 has been going strong for years now.

      http://www.internet2.edu/

  53. oh god, the language! by potaz · · Score: 1

    Why can't some programmers also learn some basic English skills... Like, how you only need one period to end a sentence... And if you always use three, it makes it really annoying to read... Also: I don't think the author get's the idea of correctly realizing verb tenses...

    1. Re:oh god, the language! by mr_sas · · Score: 1

      Yeah, I agree, using apostrophes in inappropriate places are my bug bear - like people who write "get's" (get is), it makes it really annoying to read.

    2. Re:oh god, the language! by LetterJ · · Score: 1

      You didn't get the new memo. The apo'strophe ha's been rea's'signed to a new job. It's new purpo'se i's to 'signal an upcoming "'s". Without it, we may be 'surpri'sed by the appearance of 'such a 'startling letter. However, with the apo'strophe 'standing guard, we'll never be 'surpri'sed by that crooked little letter again.

    3. Re:oh god, the language! by Anonymous Coward · · Score: 0

      Which is.. why.. you use.. two periods in your sig? Is two somehow better than three? You english is sub-par my friend, two unnecissary uses of the word 'some' in one sentence. Also: learn how to use colons.

  54. The Goole Suggest Alphabet Game... by mrn121 · · Score: 5, Interesting
    If you just type in one letter, you get the result beginning with that letter that is most searched for.
    This makes for an interesting way to sum up the internet into 26 words/phrases.

    Check it out:

    A - Amazon
    B - Best Buy
    C - CNN
    D - Dictionary
    E - eBay
    F - FireFox
    G - Games
    H - Hotmail
    I - Ikea
    J - Jokes
    K - Kazaa
    L - Lyrics
    M - Mapquest
    N - News
    O - Online Dictionary
    P - Paris Hilton
    Q - Quotes
    R - Recipes
    S - Spybot
    T - Tara Reid
    U - UPS
    V - Verizon
    W - Weather
    X - XBox
    Y - Yahoo
    Z - Zip Codes

    If I had to sum up the internet in 26 words/phrases, I don't think I could have done it better than Google. Of course, that is keeping in mind that Google Suggest has some pretty serious filters in place, so instead of P being "Porn" it is "Paris Hilton." Not too far off, if you think about it.

    1. Re:The Goole Suggest Alphabet Game... by mrn121 · · Score: 1
      err, make that Google Suggest Alphabet Game.

      I even previewed my comments... TWICE! (It's early.)
      If only the good people at Google implemented some code here at slashdot that suggested subjects of posts!

    2. Re:The Goole Suggest Alphabet Game... by Anonymous Coward · · Score: 0

      Some other imformal "surveys" that can be conducted include searching for "how to" and then seeing what people have been looking for the most. Same applies to "where is" and "who" etc.

      This idea isn't my own, I heard it on Engadget's podcast #21 ;-)

      Example: Key in "how to" and you see:
      how to tie a tie
      how to knit
      how to cook a turkey
      how to dissmantle an atomic bomb
      how to kiss
      how to write a bibliography
      how to write a resume
      how to draw
      how to play poker
      how to draw manga

      When this was described in Engadget's podcast, Phil Terrone (the host) actually read out "how to rip a DVD" which for some reason isn't on this list :-S

      Key in "where is" and you see:
      where is it
      where is the love lyrics
      where is the love
      where is my polling place
      where is my mind lyrics
      where is dubai
      where is the g spot
      where is my mind
      where is waldo
      where is singapore

      and lastly "who"...
      who wants to be a millionaire
      who won the election
      who am i
      who moved my cheese
      who was i before
      who wants to be a millionaire game
      who where
      who is winning the election

      The possibilities are endless ;-)

      AJ @[www.rantdepot.tk]

    3. Re:The Goole Suggest Alphabet Game... by Anonymous Coward · · Score: 0

      Yeah, except the anorexic tendencies of paris hilton are far from pornographic, by any sense of teh word

    4. Re:The Goole Suggest Alphabet Game... by naoursla · · Score: 1

      You can also search for the letters on google to get a different set of results. I tried this several months ago.

    5. Re:The Goole Suggest Alphabet Game... by britneys+9th+husband · · Score: 2, Interesting

      i hate bush
      i hate you
      i hate my life
      i hate george bush
      i hate my job
      i hate everything about you lyrics
      i hate everything about you
      i hate myself
      i hate spam
      i hate everything lyrics

      i love you
      i love lucy
      i love bees
      i love huckabees
      i love movies
      i love messenger
      i love u
      i love you poems
      i love you lyrics
      i love the 80s

      bush hates gays
      bush hates america
      bush hates blacks
      bush hates fags
      bush hates
      bush hates jews
      bush hates black people
      bush hates canada
      bush hates me
      bush hates women

      why is the sky blue
      why is marijuana illegal
      why is mars red
      why is smoking bad
      why is the ocean salty
      why is it important to vote
      why is a raven like a writing desk
      why is the ocean blue
      why is new york called the big apple
      why is smoking bad for you

      bush is an idiot
      bush is evil
      bush is stupid
      bush is the antichrist
      bush is a moron
      bush is gay
      bush is a monkey
      bush is bad
      bush is antichrist
      bush is not my president

      kerry is a loser
      kerry is gay
      kerry is an idiot
      kerry is scary
      kerry is a douchebag
      kerry is winning
      kerry is going to win
      kerry is a douche
      kerry is a douche bag
      kerry is stupid

      the slashdot lameness filter is stupid Your comment has too few characters per line (currently 13.1).0f kUm fr33) sT|_|p|-|. B3 N0+ 94g3 wh1(h h@cxz, +HE P4935 //3b 3x4|/|3||3d 0R, iTz 5O 94g3s fr33). D0 b4(| f1|3z qu3ry 8@d. Why pR0g 5It35 k0pYr1t3d 45. 0R f4q tH4T Wh1Ch zp33k3rz, j00r Wh0$3 15 u/, F1ND z3aRc|-| h1gh-qu4|17y != 4rE.F4m1|14r 7|24n5|4710n fOr 4z, MOr3 b33n 1n 7he. 47 g00g13 f|20n7 +h3, 1F 4|| p4g3 5(0u7s. 4rE L1nk l@r9e f1||d 70. F4q Up 4||d rE50Urc3S, fr33) 33(]-[ f0r d4, fOr 1T v13w h34d3r. F1||d 8utt0|| da 7h3, 1PH m1t3 73x7 d0. R33dz0r r3l3v4||7 d@ M@Y, d0 t3xt z3aRc|-| 4r3.34513r Re$3@rcH1Ng f4q !=, p@g3 0vvn3r r3m1||d3r y@ h@x. 17 w1|| De@l. r3l3v4||7 1PH. N0n 5O 73x7 mIGH+, d1z d0 w1ll c0mm4ndz, 4r3 f0|2 r3zUltz y0. 4s |4unch caChED f337u|23, 93t, w17h 534|2ch 45 @R3. Y0 m0r3 w4nN@ 0p710n CaN, y0 u/ y0ur @8ou+ f1|3z,.P1x c0n+3N+ k0pYr1t3d u5. Iz fr33) 534r(h j00'|| g3t. 4|| @$ j00'|| r33zUltz p@r+1cUL4r, 91ve f337u|23, @R3 d@, f0r 4z c@ch3d f4m1|14r. F4q be NUMbER |235u|7z |/|4c|-|1n3, j00 y@ f1|3z p1cz!, w1|| c0n741n f4q 83. W3b iz PH4M1li4r tR@nz|_4t3d. N0w 0f w4nN@ 717|3z 3ng|335h,.835T 7h47 73x7 d3n 5O, 4|50 n0n-3N9l1sh 73h iz. H45 r35u|7 717|3z @R, +o 91ve |247h3r 7|24n5|4735 c4n, w17h f1|3z 4|| 0f. 94g3 k4cH3d 1nDeX3D, d4 h4D, 1F h@cxz 534r(h h1ghl1gh73d 4nd, aLL p@g3 p4g3, vv1|_|_ u5. 5O HELp vv0rx 1nF0, n0n, k4Nt +IMe |23p|4c3d M@Y 70. 8@d 1F L1nk INfOrM@+I0N, pr3f3|23nc35, 5O 1n70 +IMe 1PH.Up c@N HAV3 250m 534r(h, k4Nt wh3|23 h4D 1T. B4(| 5umm4|213z d0 h@x. 0f h4D 4|50 h1ghl1gh73d, u/ y@ f1|3 u$3$., r3zUl-|-z r3l3v4||7 0n fOr. F1ND r35u|7z y0 CaN, t3H b|00 Ph13LD, z3rv1c3, 15, 1n70 caChED d0wn|04d 0f t3H. |7 93t U5Ed v3ry p@RticUlAR, 1F d0nT kl1k r1tez joo. 83 1n70 r35u|7 n0n-3N9l1sh t3H, M@Y u5 835T wh3|23, r3zUltz pr3f3|23nc35 y4 f4q.17 d@t, 534|2ch 93t, g3t 54y, LINk 3ng|335h be. P@93 f00l! 717|3z y0 f4q, p@g3z d0wn|04d 3x4|/|3||3d Up m4y. 51T3$. z3aRcH, p@r+1cUL4r 1PH 4s, 937 pHor m1-|-3 tR@nz|_4t3d 17, 51m1l4r t3xN0l0933, 4pp33|2z0rz d@ aLL. 4r3 (pdf) f1|35, 1+, m4y De@l. r1tez u5. 5O d3n n33d l@r9e 534|2ch.Iph 70 vv3b 5(0u7s, f1|3z |247h3r tHUm841|_ w1t 4z. 4rE f0|2 //3b k0pYr1t3d 70, 1F 70p (0py 3|53wh3r3 |/|4c|-|1n3. M4NY r33zUltz 1n w1t. U5Ed LINk 534r(h pdf @$, |7 t3xt wh3|23 |-|@v3 1PH. P1>
      Propz to http://www.lorem-ipsum.info/_l33tspeak#formTop

      --
      Hear recorded Slashdot headlines on your phone! New service beta testing. Just call (248) 434-5508
    6. Re:The Goole Suggest Alphabet Game... by pcgabe · · Score: 1

      Clearly, it's time to update the old phonetic alphabet with something relevant to our modern wired world.

      Alpha becomes Amazon, Bravo becomes Best Buy, etc. Foxtrot becomes FireFox; why, that's hardly a change at all! Hotel to Hotmail, X-ray to XBox...it's so simple to switch over.

      I mean, who can remember that P is Papa? I'm much more likely to remember Paris Hilton.

      --
      Don't put advice in your sig.
  55. Re:DCMA by the+real+darkskye · · Score: 1

    Damn kids, that was Aerosmith not Run DMC

    --
    Music is everybody's possession.
    It's only publishers who think that people own it.
    Fuck Beta
    ~John Lenno
  56. google.com? by aslate · · Score: 1

    I tried to go to google.com just now, and it automatically loads google.co.uk instead. When did they start doing this? It also seems to lack the fancy new auto-complete search function.

    1. Re:google.com? by I+confirm+I'm+not+a · · Score: 1

      Damn, you're right. Worse, my possible solution redirects to www.google.co.uk/firefox.

      --
      This is where the serious fun begins.
    2. Re:google.com? by Anonymous Coward · · Score: 0

      You can get Google suggest on google.co.uk here: http://www.google.co.uk/webhp?complete=1&hl=en

  57. Goooooogle by Anonymous Coward · · Score: 0

    If you type in Goooooo it just keeps going on and on with more google sites until it runs out of space. Funny, the more o's you put in the more sites you get.

  58. Great crutch for the pathetic browser by Anonymous Coward · · Score: 2, Insightful

    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...

  59. Useful for oops addresses by wtarreau · · Score: 1

    I don't agree, I found it useful to search for linux kernel Oops addresses. Start typing your address as 0xc0... and the results start to narrow down to something matching yours or very near yours.

    willy

  60. Explotable? by SCHecklerX · · Score: 1

    So how long before somebody finds a way to do something maliciuos through this to your server? SQL injection / etc?

    1. Re:Explotable? by Anonymous Coward · · Score: 0

      This stuff is nowhere different than processing regular form submit, securitywise. And you handle it the same way.

  61. Why this matters by Anonymous+Brave+Guy · · Score: 1
    how do you accidently type your password into a freaking google search box?

    Some browsers/web sites switch contexts when they shouldn't. Firefox on Windows, for example, takes over the UI context (contrary to Windows UI standards) at times. Google has sites that take a second or so to load even on a high-speed link; start typing into a field in the Google Groups advanced search box, and then see the active field change so you're now typing into a different box when the page finishes loading, for example. These things are annoying at the moment, but potentially a huge liability in future if Google is picking up on every keystroke you type, and given the amount of other information they could potentially mine about you from the various services they offer.

    --
    If you disagree, post your argument. (-1, Overrated) isn't your personal censorship tool for views you don't like.
  62. Overestimating the engineering by brunes69 · · Score: 2, Interesting
    The GP is correct, this is nothing new. It may be new to *you* and many /. readers, but to anyone who is into web development this is old hack. NOt ot put down Google's web team, but I mean, I could write this myself in a week or two.

    XmlHttpRequest to fetch data on demand has been around for a long time. For example, MSDN has been using this technique for years now. I have been using it for 9+ months on an application that recently went into production.

    The reason you have not seen it in use much is

    1. it is not readily visible, therefore you don't hear about it until Google (who everyone knows) does it an it makes news
    2. Because not many public websites have the kind of horsepower needed at the backend to do this kind of thing, so it is rarely used.. Google does.

    Google's best engineering continues to be in the back end - that is what makes this thing possible, and why no one else would likely be able to replicate this. The ability to search billions of records that fast is simply staggaring.

  63. A truly amazing web interface by Ececheira · · Score: 1

    If you want to see a really amazing web interface, then check out Microsoft's Outlook Web Access 2003 (the web interface to Exchange 2003).

    While they do use HTC's and behaviors, the result is astounding -- a fully responsive, dymamically updating UI that never needs to go back to the server for a full-screen refresh. It also looks and feels exactly like using Outlook 2003 on the desktop, drag-n-drop, sorting, right-clicking and all.

    What we really need is a cross-browser way of coming up with a rich interface like that.

    1. Re:A truly amazing web interface by LetterJ · · Score: 1

      I've been using HTC's pretty heavily in my current project and beginning to love those things. (For the cross-browser zealots among you, check out the wrapper for HTC's in Mozilla from the guy who did the IE7 hack).

      What you end up with are complete components that are cached on the client, implement complex behavior and are easy to drop into a page.

      It makes building things that aren't really HTML widgets (like tabs, etc.) into something that actually behaves like one.

  64. Coming next week: by Sophrosyne · · Score: 1

    MSN Search Suggest Beta

  65. Wolf 5K Dissected by KalvinB · · Score: 2, Interesting

    Wolf5K is a Javascript clone of Wolf3D in 5Kbytes. I deobfuscated it and posted a series of tutorials on how it works here. There is also a C++ translation and enhancment series of tutorials here. Full ready to compile source is included for all tutorials.

    The task of deobfuscating code is quite tedius but not too daunting. The main thing is getting the whitespace back in so you can see where all the functions begin and end. You then have to understand the language well enough that you can read the code and figure out what's going on without hints from comments or descriptive variables.

    For Wolf5K I just started by working on the simple functions first and then by process of elimination worked my way through the code and finished with the raycasting function.

    Translating it all to C++ was then quite easy because by then you have a very good grasp of how the code is suppost to work.

    1. Re:Wolf 5K Dissected by Blakey+Rat · · Score: 1

      Uh, that's great, but weren't we talking about Google Suggest?

    2. Re:Wolf 5K Dissected by Blakey+Rat · · Score: 1

      Oh, and BTW, Wolf5K doesn't work in Safari. Of course this is all off-topic, despite some moderator marking the original post as 'interesting.'

  66. One major problem by jerometremblay · · Score: 1

    There is one major problem with Google's client-side javascript magic: It breaks the back button.

    This breaks the second most used user interface feature on the internet. Quote from the link: The Back button is the lifeline of the Web user and the second-most used navigation feature (after following hypertext links). Users happily know that they can try anything on the Web and always be saved by a click or two on Back to return them to familiar territory.

    The auto-complete isn't really affected by this, but try it in your Gmail account. I hope they will figure out a way to fix it.

  67. Luddite Dinosaurs. by Anonymous Coward · · Score: 0

    Dude. The world is changing. Change with it, or get out of the way, and let your Indian/Chinese replacement handle it.*

    *I find the OP's complaint especially ironic in light of all the "I'm out of a job" complaints. Maybe the reason so many are out of a job, is because you're dinosaurs.

    1. Re:Luddite Dinosaurs. by Anonymous Coward · · Score: 0

      The world *is* changing. But using a browser for applications went out with carving words into stone tablets: not meant for the application, costs a lot to accomplish, and sucks all the way around. Give me a real program over web applications ANY day.

      Browsers suck as application hosts, and equally suck at printing.

  68. iframes ... by Heisenbug · · Score: 1

    Someone else pointed out that this was done via frames before XmlHttpRequest existed -- I myself have written javascript apps that called the server that way, feeling very clever for coming up with the idea, and didn't find out about XHR until Google Suggest popped up, at which point I slapped my forehead.

    Apple has a great article on how to make javascript RPCs using iframes:
    http://developer.apple.com/internet/webcontent/ifr ame.html

    It closes with a single cross-browser javascript function that first writes the iframe into the document if it doesn't already exist, then calls an arbitrary URL. They have a demo -- very impressive.

  69. javascript still sucks by Anonymous Coward · · Score: 0

    - every browser has different implementation, so portable code isn't
    - some browsers (eg, links) only implement a subset of javascript, for various reasons
    - some very common browsers DONT have javascript, notably lynx (still probably the most portable and safest browser in existence)
    - most javascript code is redundant anyway. for example, doing input sanity checking on the client doesn't remove the need to do so on the server as well (or else you got yourself a big fat security hole)

    Anyway, this guy has got to be kidding about this "raising the bar" business. Google's code is interesting concept, but it's not revolutionary. Not until a good A.I. engine is shipped, not until it stops being a dumb code that randomly guesses what you're thinking. THAT will be "raising the bar".

  70. Argh - type the letter g by harmonica · · Score: 1

    ...and it suggests Google. How many people are searching for Google on Google?

    Thinking about it, I probably don't want to know the answer.

    I know that are a lot of mentions of Google on web pages, but shouldn't this service take into consideration what people are actually looking for? So, frequency of search terms instead of frequency of results.

    1. Re:Argh - type the letter g by Jadrano · · Score: 1

      I suppose Google search does use the frequency of searches rather than frequency of occurrence on web pages. Indications for this are that current topics frequently appear in Gootgle Suggest and that the groups of words that are suggested together are more typical for words used together in searches than for words occurring tohether in texts.
      So why are there so many searches for 'Google'? I remember searching for Google on Google relatively from time to time. Why not? It's always intering what people write about new features etc.. What is very important is probably that Firefox uses Google-"I'm feeling lucky"-search for everything in the address field that is not an URL. Probably, many people just enter "google" in the address field. So, you have to type fewer characters than with "www.google.com" (of course, autocomplete would help, but when you entered "Google" instead of "www.google.com" the first time, auto-suggest will also suggest Google later). The time needed for the Google "I'm feeling lucky" search is in my view reasonable, it's quite reasonable to use it instead of the full address for well-known websites and institutions.

  71. try typing in by utexaspunk · · Score: 1

    "how to give"

  72. Raising the bar by gawi · · Score: 1

    Yes, people will expect more responsive Web interfaces but the 1000+ lines of codes necessary to make this work clearly shows that the underneath HTTP+HTML model is inappropriate to handle this kind of functionality. We need something more suited for fine-grain event handling.

    --
    All humans are mortal. Socrates is a human. Socrates is dead.
  73. Check out this cool javascript stuff by Anonymous Coward · · Score: 0
  74. Re:Censored!!! But only in English! by Jadrano · · Score: 4, Interesting
    Indeed, there are no suggestions for English search terms that could lead to pornographic sites. It seems that this is only based on a word list and much less sophisticated than "safe search".
    Therefore, at present, this works only for English; with other languages it can happen that it suggests porn-prone search terms for the refinement of terms that have, as such, nothing to do with pornography. Some examples:
    • the first suggestion for 'fille' (French for 'girl') is 'nue' (naked)
    • the 5th suggestion for 'dzieci' (Polish for 'children') is 'nago' (naked)
    • suggestions for 'mund' (German for 'mouth') countain 'mund auf sperma rein' (open mouth, introduce sperms), 'mund ficken' (fuck in the mouth), "mund arsch" (mouth ass)
    • devochki (with Cyrillic letters: Russian for "little girls") gives the suggestions "devochki porno"
    • the first suggestion for 'smot...' with Cyrillic letters (smotret': Russian for 'watch'/'look at') is "smotret' porno"
    I think this is probably quite problematic - someone enters a search term that has nothing to do with pornography, and Google suggests something pornographic for 'refinement'. Of course, this is not due to Google's intent, but due to the distribution of the things people search for and of contents on the Internet. I suppose this is one of the problems Google will want to address before offering Suggest as an option on the main page.
  75. Re:DDA Compliance? I think it's not a problem... by Jadrano · · Score: 1

    I don't have screen readers, but sometimes Lynx can give a rough idea how they will deal with a site. With Lynx, no suggestions are shown on the site of Google Suggest, but otherwise the page works just like standard Google search. Therefore, it might well be that Google Search works well with Screen Readers (it just doesn't provide suggestions). Actually, I think the use Google Suggest makes of JavaScript is not a problem from the point of view of accessibility - it offers something additional, but does not affect the main function (GMail is more problematic, an additional simple HTML interface should be made available for screen readers etc.).

  76. impressive? by jeif1k · · Score: 1

    Would you find this "impressive" if it was implemented in C++ on Windows? In Java? In C#? In ActiveX? In Gnome?

    What's "impressive" about this is that it's done in Javascript and works across some browsers. But that's more of a testament to the low expectations people have of Javascript. And the solution to that is for a few browser developers to improve Javascript and its rendering capabilities, not for hundreds of thousands of developers to keep trying to work around its limitations.

  77. Bestility by meehawl · · Score: 1

    Google Suggest has some pretty serious filters in place, so instead of P being "Porn" it is "Paris Hilton."

    The filters do weird things. You can type as many letters as you want but it will not suggest bestiality (~2m results). However once you get to "besti" the common misspelling bestility (30K results) pops up. However, Google is not yet filtering felching.

    --

    Da Blog
  78. Not really that complicated by Ized · · Score: 1

    Writing XHTML is really not that big of a change from writing good HTML 4.01. You basically have few "important rules" to remember:

    1. Use All Lowercase Tags
    2. Nest Elements Correctly
    3. Always UseEnd Tags
    4. End Empty Elements
    5. Use Quotes for Values
    6. Give Every Attribute a Value
    7. Use Code for Special Characters
    8. Use id Insead of name
    9. Separate Styles and Scripts

    http://www.codeproject.com/html/HTML2XHTML.asp
    http://personalweb.about.com/od/basichtml/a/409xht ml.htm

  79. Re:everything you type in is directly send to goog by NotoriousQ · · Score: 1

    Just as big an issue is that anyone monitoring your network will read your password, as it has been sent cleartext.

    --
    badness 10000
  80. GMail Invite? by ehoff · · Score: 1

    Doh! Google Javascript stories on two Saturdays in a row... anyone out there with a spare GMail invite so I can take a look at more than just Google suggest? ehofff at covad.net

    1. Re:GMail Invite? by heff · · Score: 1

      check your inbox... one should be there

      --

      --

      |-_-| . o O ( bEef!)

    2. Re:GMail Invite? by ehoff · · Score: 1

      Thank you for the invitation, I do appreciate it!

  81. Could bog servers down... by Anonymous Coward · · Score: 0
    with millions of additional short requests and responses.

    Most web sites respond to occasional page requests; here we're asking the site to respond to each keystroke of each user in the worst case. So adding this to a page could create an accidental denial of service(DOS) attack; it could tax a good server and bring a marginal server to its knees.

    One should be judicious in using this capability: the server-side script that responds to the XMLHTTP request should be extremely efficient. While Google has the resources to run such scripts, not all sites do.

    If this technique were commonly used, the additional traffic could also impact the Internet by creating "billions and billions" of additional HTTP requests/responses (thanks, Carl Sagan). It would effectively turn HTTP's stateless protocol into a high-overhead version of Telnet protocol.
    -MDK

  82. People missing point or article - rich web apps by SuperKendall · · Score: 2, Insightful

    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
  83. great post! by earthstar · · Score: 1
    Dude!
    Your post was the best post!It reallly helps to see a link that shows what is being talked about- amidst all the links posted in story.Post stories assume the reader knows what is being discussed.

    I think every story should have a link about the main topic and what it is,instead of assuming the user knows it. [ most do, but some irritatingly dont].

    It helps people who dont know it yet,learn.

  84. how u know.. by Anonymous Coward · · Score: 0

    i know this isa little offtopic,but i want to ask you.How do you know so many international languages?

    1. Re:how u know.. by The+Raven · · Score: 1

      I would guess that he learned these terms in order to bypass safe-search filters when he was younger. :-)

      --
      "I will trust Google to 'do no evil' until the founders no longer run it." Hello Alphabet.
  85. YES by TechnologyX · · Score: 0

    If Joel supports it, it must be awesome! Joel can suck a cock

    --
    Slashdot sucks
  86. suggestion for a better "google suggest" by mettlerd · · Score: 4, Interesting

    unfortunately, "google suggest" is not as good as it could be.

    why? valuable implicit information gained through the human-computer interaction is not fully exploited by "google suggest". for illustration, see the following example:

    let's say i'm searching for "southwest". and for the sake of logic, let's assume that i either don't know the correct spelling or that i'm a lazy dog ;). so i start by typing "sou". after a short delay, google suggests "southwest airlines". ok, this seems to be what most people are searching for when entering "sou". luckily, "southwest" is the second most common suggestion listed in the drop-down list, so i just hit 'cursor-down' and 'enter' to autocomplete and search for "southwest". everything ok so far.

    now comes the problem:

    the top result displayed by google is.. southwest airlines! this of course doesn't make sense because if i wanted to search for southwest airlines, i would have happily accepted google's first suggestion already. actually, "google suggest" knows about my preference for "southwest" over "southwest airlines" and yet doesn't use this "extra-"information gained thanks to human-computer interaction! so my brain feels slightly offended ;)

    to put it simply: if an average user is selecting a search term from a list of suggested search terms, he probably wants to search for that exact search term but not for any of the other also displayed suggested search terms. if not, an average user would have probably selected another search term out of the displayed list of suggestions. so to me, this looks like if the bright google guys forgot about the fact that the act of selection from a list also implicitly includes information about what does not get selected.

    suggestion for a better "google suggest":

    as a probably not perfect but working solution, "google suggest" could simply exploit this implicit user interaction information by excluding all explicitly deselected (and eventually all not explicitly selected) suggested search terms from the search query. in the example:

    excluding all explicitly deselected search terms yields:

    southwest -"southwest airlines" (voilà! southwest airlines is not the top result anymore ;)

    excluding all explicitly deselected and all not explicitly selected search terms:

    southwest -"southwest airlines" -"soulseek" -"south park" (etc.. you get the point)

    that's pretty easy to implement - with an obvious benefit for average users.

    disclaimer: i'm talking about expectations of average users here. iow: about users that are probably just interested in the few topmost results, i.e. the intersection and not the set union of results (but that's probably the point of web searching anyway ;). sure, there are people who are interested in the set union and not the intersection.. all they need is hitting backspace accordingly.

    1. Re:suggestion for a better "google suggest" by Anonymous Coward · · Score: 0

      You're also assuming that the person is fully reading each and every option. How does google suggest know if the user didn't even recognize "southwest airlines" because it was simply too long? Or maybe the person read the list from the bottom to the top, so s/he didn't see "southwest airlines" because it was above "southwest"? And how do you propose handling of options 3,4,5...?

    2. Re:suggestion for a better "google suggest" by Anonymous Coward · · Score: 0

      http://www.barjotteam.fr.st/ GOOGLE is a very good meta-motor !

    3. Re:suggestion for a better "google suggest" by mettlerd · · Score: 1

      actually no (not necessarily). i guess i should elaborate on what i meant in the original posting (i don't speak english natively, please apologize for any unclarity).

      there are different scenarios how an average user might act and what he does or doesn't recognize (btw i prefer to use recognize instead of read due to [1]):

      0) recognizing the top-suggested word (which is also highlighted in the text field).

      1) recognizing those entries in the drop-down list that he explicitly deselects (by hitting cursor-up/-down).

      2) recognizing another, particular entry at a glance as exactly the entry he likes google to search for.

      now let's discuss these scenarios:

      0) only very few people might not recognize the highlighted (suggested) word in the text field. so we can safely assume that an average user recognizes it and hence we can at least assume that a user who rejects the suggested word/term (by hitting 'backspace' accordingly) probably wants this word/term be excluded from his search.

      1) i think it's safe to assume that explicitly deselecting a selected suggested entry in the drop-down list (by hitting cursor-up/-down) requires recognizing the currently selected suggested entry (exception: situation like in case 2, see later.) - else, deselecting it wouldn't make much sense (requires an "effort" after all ;). explicitly deselecting an entry like this can be interpreted as a negative selection (i.e. the user doesn't want to search for this entry/term.

      2) in this case, the user selects the exact term/entry he wants google to search for. this implicitly means that he's probably not interested in any of the other suggested search terms (even if he didn't recognize them), as the one selected matches perfectly.

      the relation to the already proposed improvements:

      0) and 1) are covered by the already proposed solution variant 1 (which i called "excluding all explicitly deselected search terms"):

      southwest -"southwest airlines"

      2) could be covered by solution variant 2 (which i called "excluding all explicitly deselected and all not explicitly selected search terms"):

      southwest -"southwest airlines" -"soulseek" -"south park" (etc.)

      the elementary algorithm: so, depending on whether the user a) navigates the list using cursor-up/-down or whether he b) directly selects a certain entry, solution variant 1 (-> a) or solution variant 2 (-> b) is more appropriate respectively. solution variant 2 is also applied if a user uses both a and b.

      of course we could further refine the search optimizations (i.e. distinctive solutions for cases 0 and 1, addition of intermediary or fallback solutions), ideally based on statistical results from human-computer interaction experiments (remember we're interested in average users' demands).. also note that the aforementioned explanations are only valid if the list contains distinctive/unequal entries (that's the case with "google suggest" and is true for an option list in general).

      this was a general elaboration that implicitly answers your first two questions. now to your other questions:

      q: what to do with "bottom-up readers"? a: doesn't really matter (in general/average) as the same algorithm can be applied (usually solution variant 2 as "google suggest" selects the first entry by default).

      q: what about options 3,4,5 etc.? a: this is covered by solution variant 2 already.

      i hope this clarifies most of it :) i still didn't mention all the thoughts behind it, but i think readers can find out the rest by themselves now..

      [1] i'm neither a linguist nor a neurologist, but iirc, the

  87. Is the time coming-For lower standards? by Anonymous Coward · · Score: 0

    Agreed. I wonder how many of the complaints are coming from the former "HTML for Dummies" who use to get $100+ around the dot.com years?

    That would be just like them to complain that a markup language is too hard. Hopefully bagging groceries will not tax their skill set.

  88. Re:DDA Compliance? I think it's not a problem... by Reziac · · Score: 1

    How does Lynx render it? When I tried Google Suggest with my preferred ancient NS3 and javascript disabled, it still worked -- by producing a static text list of results identical to the dropdown list. To refine the search, one need merely pick one of said results, copy and paste it into a new Google Suggest search, rinse and repeat til you get where you want to be.

    GMail, OTOH, is completely unusable without the lastest and greatest. Supposedly a "pure HTML interface for all browsers" is in the works, but I'll believe it when I see it. (Especially since the redesigned plain Google is broken for some browsers, due to tables that wind up "overlapping", and no amount of bug-documentation has yet changed that.)

    --
    ~REZ~ #43301. Who'd fake being me anyway?
  89. The good old days of HTML sucked by UnConeD · · Score: 1

    The current state of XHTML/CSS is no worse off than 'good old' HTML.

    CSS is simple and straightforward. The block model is unambiguous. You specify where things go, and you know how they will behave. Various browsers may have different defaults, but if I say paragraphs have 2ems of margin between them, then that's what they'll have. In your own example, you used BGCOLOR on the table. What would've happened if you used it on a different tag... like a blockquote or a paragraph? Nothing, because BGCOLOR wasn't implemented for them.

    Today, web designers can rely on the rules in the standards, rather than just using whatever happens to work in the popular browsers. No more fucking around with layout tables, spacer images or cut up designs. And advanced CSS makes 90% of the things that Javascript was used for obsolete (image rollovers, pop up menus, etc). (*)

    However, none of this matters to the real Joe User. He will keep on using whatever crappy WYSIWYG tool he can get his hands on and keep polluting the web with technically valid but semantically horrifying HTML (hello Microsoft Word), wondering why the geeks are upset.

    In my own experience, most of the complaints and stupid questions I get about CSS are from programmers or designers who simply haven't read the relevant standards.

    (*) Relying on CSS does not work if you consider IE5/mac to be a valid target, and want IE5/win to display everything correctly.

  90. Either JavaScript or it won't work in IE 6 by tepples · · Score: 1

    Microsoft Internet Explorer 6.0 SP1, the newest version of IE available for Windows 98 and Windows 2000, didn't display CSS horizontal navigation list. Suckerfish Drop Down Menu uses JavaScript, which you claim 10 percent have turned off.

  91. More and clever use of JavaScript by Anonymous Coward · · Score: 0

    It it good to see js is used for more than popping up annoying ads on my screen. Now also The Linux Documentation Project offers a JavaScript driven HOWTO Generator where you just fill in the blanks, click on a button and out comes LinuxDoc SGML-code, ready for publishing.

  92. Not in IE by tepples · · Score: 1

    And advanced CSS makes 90% of the things that Javascript was used for obsolete (image rollovers, pop up menus, etc). (Relying on CSS does not work if you consider IE5/mac to be a valid target, and want IE5/win to display everything correctly.)

    You mean "if you ... want IE6/win to display everything correctly". The CSS drop-down menu does not show up on Microsoft Internet Explorer 6.0 SP1.

    most of the complaints and stupid questions I get about CSS are from programmers or designers who simply haven't read the relevant standards.

    Or for people who have read the relevant standards but don't think it's worth the effort to get 90 percent of users to switch to a web user agent that conforms to the relevant standards.

  93. Not on IE by tepples · · Score: 1

    10. Use XHTML Transitional (as no popular web UA supports CSS counters yet, which are necessary for starting lists at any number but 1 in XHTML Strict)

    But most importantly:

    11. Exclude All IE Users (as no version of Microsoft Internet Explorer understands XHTML semantics, not even with Appendix C)

  94. Re:everything you type in is directly send to goog by ceejayoz · · Score: 2, Insightful

    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"...

  95. The Zeitgeist Disagrees by kmactane · · Score: 1

    Funny. If you look at the Google Zeitgeist, you can see a whole lot of more-than-one-word searches. Okay, things like "Jessica Biel" might be considered to be one term, but how about "web hosting", "install windows xp", or "magic tricks"?

    Note that there aren't a bunch of searches like "biel", "hosting", "xp" and so on, as we'd expect if people did one-word searches, and then expanded to two- or more-word searches.

  96. Disturbing suggestion by ichigo · · Score: 1

    Type "Bill Gates" and scroll down the list. And if the suggestions are based on related popular searches related to your query, I have no idea why people are interested in or wants to be Bill Gate's wife. Perhaps his small w*ng is cute?

  97. Seen snap.com's refined searching? by lucidvein · · Score: 1

    One nice interface that does something similar to this is snap.com. I like how it allows you to refine the search from multiple selections. Much nicer than multiple pages of data to click thru. You can just close in on your desired item, back out a bit and refine as needed. Great visual tracking as you type as well. Very sweet!

    --

    "I have a cunning plan..."

  98. It doesn't work very well with extremely long term by WhiteDragon · · Score: 1

    It doesn't work very well with extremly long terms. For instance, I started typing lla and "llanfairpwllgwyngyllgogerychwyrndrobwllllantysili ogogogoch "(all one word) popped up, but it started to overwrite the text next to it.

    --
    Did you mount a military-grade, variable-focus MASER on an unlicensed artificial intelligence?
  99. Be ready for more of this... by Skim123 · · Score: 1

    ... being poorly implemented. I think it takes a lot of domain knowledge, hard work, and browser testing in order to get a useable and attractive mesh between server and client code. But, despite the challenges, it will become easier moving forward, as one of the new features of ASP.NET 2.0 will be to include client callback capabilities from server-side controls. It's a cool addition if used correctly and intelligently. My hope is that it doesn't get overused in inappropriate situations or without sufficient cross-browser testing.

    --

    I could not justify my existence if I were a turkey farmer. Would I terminate myself? Undoubtably, yes.

  100. Speaking of Google suggest... found google employe by digilicius · · Score: 1

    Using suggest technology, I found a loop with its script, if you keep typing 0123456789... repetatively it doesn't end, if you do a search with about 7-9 sets of those series you can get a list of google'e employee listing! Check it out: http://froogle.google.com/froogle?q=12345678901234 56789012345678901234567890123456789012345678901234 56789012345678901234567890123456789012345678901234 56789012345678901234567890123456789012345678901234 56789012345678901234567890123456789012345678901234 567890123456789012345678901234567890123456&complet e=1&hl=en&lr=&safe=off&tab=ff&oi=froogler&scoring= p&sa=N Cheers

  101. The biggest problem by Dirtside · · Score: 1

    The biggest problem I have with Google Suggest is not technical or moral; it's usability. If I type my entry at the speed I normally type, then the drop-box changes so fast that I end up sort of spastically trying to keep my fingers from hitting the next key. UI elements that change instantly when you hit a key are good when you're hitting a command key, but not good when they're changing in realtime in response to typing words or phrases.

    To use it effectively, I have to hit one key at a time, see what it suggests, then hit the next key... tedious. And I wouldn't use it that way anyway.

    It's a neat little toy, but it doesn't really seem to have a lot of useful applications at the moment. 'Course, Google's smarter than I am, so I'm sure that either I've missed something or they've got other plans.

    --
    "Destroy science and religion. Science would re-emerge exactly the same; but not religion." - Penn Jillette, paraphrased
  102. Re:Censored!!! But only in English! by mibus · · Score: 1

    and it's also not got a complete English filter, either. "Sex" may be there, but there are still words that can slip through...

    For instance, see what options you get when searching for "jerk"... :-/

  103. Re:Censored!!! But only in English! by Anonymous Coward · · Score: 0

    and it's also not got a complete English filter, either. "Sex" may be there, but there are still words that can slip through...

    For instance, see what options you get when searching for "jerk"... :-/


    Worst still, try "hand".

    The first suggestion for "finger" is possibly acceptable if you have safesearch on, but then I doubt that's how it was searched for so frequently.

  104. Re:DCMA by tarunthegreat2 · · Score: 1

    Yeeouch, and just for that I've become your foe?

  105. Re:everything you type in is directly send to goog by Anonymous Coward · · Score: 0

    Hey, that's my Slashdot password!

  106. Re:What about cell phones? by kawauso-kun · · Score: 1

    This might be handy on cell phones that lack a decent keyboard. Sometimes you want the most obvious hit, but don't want to type it all.