[Source](http://guyro.typepad.com/blog/2008/12/google-i.html "Permalink to Spinning Guyro: Google & I") # Spinning Guyro: Google & I # [Spinning Guyro][1] ## Spinning the Web 2.0 ## Guy Rosen's blog * ![][2] ## About * My name is Guy Rosen and I'm a technology veteran and future serial entrepreneur :-). Currently working on a venture in the cloud computing space, I blog about interests of topics for technology, entrepreneurship, productivity, social networking, cloud computing and more. [See more at my about page][3] ## * ![View Guy Rosen's profile on LinkedIn][4] ## * Follow me on Twitter [@guyro:][5] ![][6] ## Favorites * [Technotheory][7] * [Lifehacker][8] * [Instigator Blog][9] * [Paul Graham][10] * [Collective Thoughts][11] * [Web2.0 Wonders][12] * [Publishing 2.0][13] * [On Startups][14] * [De Gardener][15] * [Online Circus][16] ## * «[ Are You Being Social Media Smart?][17] | [Main][1] | [Yahoo Mail The Next Platform? »][18] ## December 08, 2008 ### Google & I I was brushing off my Java skills the other day. It's been a little while and I ran into a task I could not, from memory, recall how to write. So I turned to Google and quickly came up with [this post][19] from 1996(!) on the subject: ` From: Lawrence Page I have a web robot which is a Java app. I need to be able to set the User-Agent field in the HTTP header in order to be a good net citizen (so people know who is accessing their server). Anyone have any ideas? Right now, Java sends a request that includes something like: User-Agent: Java/1.0beta2 I'd rather not rewrite all the HTTP stuff myself. I tried just searching in the JDK for the Java/1.0beta2 figuring I could just change the string, but I couldn't find it. Perhaps it is stored as a unicode string? An easy method of setting the User-Agent field should probably be added to Java, so people can properly identify their programs. Thanks, Larry Page ` Hmm, I wonder what kind of "web robot" this [Larry Page][20] was working on and hope [his project][21] was successful! Does it bode well for me that I ran into the same question? Posted at 12:17 AM | [Permalink][22] ### Comments ![Feed][23] You can follow this conversation by subscribing to the [comment feed][24] for this post. ![John Rockefeller][25] That's awesome. I always love these things, where it's like "before they were stars". Good stuff! Posted by: [John Rockefeller][26] | [December 08, 2008 at 04:32 AM][27] ![rajaash][28] good Posted by: [rajaash][29] | [December 08, 2008 at 07:19 AM][30] ![Ibod Catooga][31] Haha Larry Page lit your ass up with some napalm! Feel the burn my niggas. Posted by: [Ibod Catooga][32] | [December 08, 2008 at 09:57 AM][33] ![Cristian][34] Only that Google used Python for its robots. Posted by: Cristian | [December 08, 2008 at 05:32 PM][35] ![Sean][36] This shows how the leaps of men are sometimes made off others shoulders. Posted by: [Sean][37] | [December 09, 2008 at 06:51 AM][38] ![Michael Martin][39] Haha - That's brilliant! Great find! :D Posted by: [Michael Martin][40] | [December 12, 2008 at 04:00 AM][41] ![Scott][34] All Google crawlers are python based. Especially the crawlers. Posted by: [Scott][42] | [December 20, 2008 at 07:36 AM][43] ![EW][44] I questioning the legitimacy of the post since both the question and response are dated exactly 3am. Posted by: EW | [January 01, 2009 at 10:57 PM][45] ![Guy Rosen][46] @BW - interesting find. Poking around a bit I can see that most if not all all old Usenet posts from that period have a date header and not a time (as can be seen in the raw message). Apparently the standards of 1996 did not demand a time field. So, Google Groups simply set 0:00 (PST) as the time when importing the old Usenet archives. You see 3am because you're on EST. Posted by: [Guy Rosen][47] | [January 02, 2009 at 12:48 AM][48] ![Nico][49] I guess Larry Page switched to Python after getting frustrated with Java. Posted by: Nico | [October 06, 2009 at 07:15 AM][50] ![Woody Smith][25] An easy method of setting the User-Agent field should probably be added to Java, so people can properly identify their programs. I am also interested on the web robot that Larry Bode had set-up. Hope he was able to complete it and make it available for critic. Nice work. Posted by: [Woody Smith][51] | [September 10, 2011 at 05:02 AM][52] ![Keyword Tool][53] I think the thing has been resolved already. Its been quite a year now. I wonder if Larry Page has still confusion on the Java thing now. Posted by: [Keyword Tool][54] | [September 22, 2011 at 10:45 AM][55] The comments to this entry are closed. ## Subscribe by RSS * ![][56] ## Subscribe by Email * Enter your email address: ## Recent Posts * [Email Greetings In Multiple Languages][57] * [The Multivariable Startup Equation][58] * [How Many Sites Really Use Amazon EC2?][59] * [Email In The Cloud - Not Just For Startups][60] * [What Is Cloud Computing?][61] * [Doing the Impossible][62] * [HostMonk - our new hosting comparison service][63] * [Multiple Profiles for TweetDeck - Introducing MultiTweetDeck][64] * [Keep Your Arms And Legs Inside The Ride At All Times][65] * [How Not To Search For Blogs][66] ## [Archives][67] * [September 2009][68] * [July 2009][69] * [May 2009][70] * [April 2009][71] * [March 2009][72] * [February 2009][73] * [January 2009][74] * [December 2008][75] * [November 2008][76] * [October 2008][77] [More...][67] ![Quantcast][78] n n n ![Working...][79]n n n n'; var entryPermalink = "http://guyro.typepad.com/blog/2008/12/google-i.html"; var inlineReply = document.createElement("div"); var commentFooterLinks; var commentHeader; var commentReplyXID; var commentReplyAuthor; var commentReplyComplete; var inlineReplyLoaded = 0; var commentFormNum = undefined; /* Deprecated but still exists in advanced template sets, so must be defined */ function xidToCommentPermalink (entryUrl, xid) { return entryUrl + "?cid=" + xid + "#comment-" + xid; } /* Deprecated advanced template functions */ function handleSubmit() { return true; }; function handleChange() { return true; }; document.write(unescape("%3Cscript src='" + (document.location.protocol == "https:" ? "https://sb" : "http://b") + ".scorecardresearch.com/beacon.js'%3E%3C/script%3E")); COMSCORE.beacon({ c1: 2, c2: "6035669", c3: "", c4: "http://guyro.typepad.com/blog/2008/12/google-i.html", c5: "", c6: "", c15: "" }); [1]: http://guyro.typepad.com/blog/ [2]: http://guyro.typepad.com/photos/images/gyroscope_precession.gif [3]: http://guyro.typepad.com/about.html [4]: http://www.linkedin.com/img/webpromo/btn_viewmy_160x33.gif [5]: http://twitter.com/guyro [6]: http://guyro.typepad.com/.a/6a00e553792bcf8833010535fc05b4970c-pi [7]: http://www.technotheory.com/ "" [8]: http://lifehacker.com/ "" [9]: http://www.instigatorblog.com/ "" [10]: http://www.paulgraham.com/ "" [11]: http://www.collective-thoughts.com/ "" [12]: http://chatster.typepad.com/ "" [13]: http://publishing2.com/ "" [14]: http://www.onstartups.com/ "" [15]: http://www.degardener.com/ "" [16]: http://itail.blogspot.com/ "" [17]: http://guyro.typepad.com/blog/2008/11/are-you-being-social-media-smart.html [18]: http://guyro.typepad.com/blog/2008/12/yahoo-mail-the-next-platform.html [19]: http://groups.google.com/group/comp.lang.java/msg/88fa10845061c8ba [20]: http://en.wikipedia.org/wiki/Larry_Page [21]: http://web.archive.org/web/19981111183552/google.stanford.edu/ [22]: http://guyro.typepad.com/blog/2008/12/google-i.html [23]: http://static.typepad.com/.shared:v6bc83ba:typepad:en_us/images/feed.png [24]: http://guyro.typepad.com/blog/2008/12/google-i/comments/atom.xml [25]: http://static.typepad.com/.shared:v6bc83ba:typepad:en_us/default-userpics/11-50si.gif [26]: http://www.johnrockefeller.net/ "http://www.johnrockefeller.net/" [27]: http://guyro.typepad.com/blog/2008/12/google-i.html?cid=141751008#comment-6a00e553792bcf88330105364c57fb970c [28]: http://static.typepad.com/.shared:v6bc83ba:typepad:en_us/default-userpics/02-50si.gif [29]: http://www.besten.in/ourvalues.html "http://www.besten.in/ourvalues.html" [30]: http://guyro.typepad.com/blog/2008/12/google-i.html?cid=141760796#comment-6a00e553792bcf883301053644a41c970b [31]: http://static.typepad.com/.shared:v6bc83ba:typepad:en_us/default-userpics/14-50si.gif [32]: http://www.anus.com "http://www.anus.com" [33]: http://guyro.typepad.com/blog/2008/12/google-i.html?cid=141766902#comment-6a00e553792bcf883301053644d74e970b [34]: http://static.typepad.com/.shared:v6bc83ba:typepad:en_us/default-userpics/16-50si.gif [35]: http://guyro.typepad.com/blog/2008/12/google-i.html?cid=141795324#comment-6a00e553792bcf88330105364d85c1970c [36]: http://static.typepad.com/.shared:v6bc83ba:typepad:en_us/default-userpics/18-50si.gif [37]: http://m320.com "http://m320.com" [38]: http://guyro.typepad.com/blog/2008/12/google-i.html?cid=142004854#comment-6a00e553792bcf8833010536520c0d970c [39]: http://static.typepad.com/.shared:v6bc83ba:typepad:en_us/default-userpics/19-50si.gif [40]: http://www.problogdesign.com/ "http://www.problogdesign.com/" [41]: http://guyro.typepad.com/blog/2008/12/google-i.html?cid=6a00e553792bcf88330105365d38c5970c#comment-6a00e553792bcf88330105365d38c5970c [42]: http://alltherides.com "http://alltherides.com" [43]: http://guyro.typepad.com/blog/2008/12/google-i.html?cid=6a00e553792bcf883301053686d284970b#comment-6a00e553792bcf883301053686d284970b [44]: http://static.typepad.com/.shared:v6bc83ba:typepad:en_us/default-userpics/06-50si.gif [45]: http://guyro.typepad.com/blog/2008/12/google-i.html?cid=6a00e553792bcf8833010536aa2bd9970c#comment-6a00e553792bcf8833010536aa2bd9970c [46]: http://up7.typepad.com/6a00e553792bcf8833010534aadbe6970c-50si [47]: http://profile.typepad.com/1214731494s21583 "http://profile.typepad.com/1214731494s21583" [48]: http://guyro.typepad.com/blog/2008/12/google-i.html?cid=6a00e553792bcf8833010536aa5d72970c#comment-6a00e553792bcf8833010536aa5d72970c [49]: http://static.typepad.com/.shared:v6bc83ba:typepad:en_us/default-userpics/10-50si.gif [50]: http://guyro.typepad.com/blog/2008/12/google-i.html?cid=6a00e553792bcf88330120a6191f9f970c#comment-6a00e553792bcf88330120a6191f9f970c [51]: http://woodworkingplansdiy.org/ "http://woodworkingplansdiy.org/" [52]: http://guyro.typepad.com/blog/2008/12/google-i.html?cid=6a00e553792bcf88330154354b6899970c#comment-6a00e553792bcf88330154354b6899970c [53]: http://static.typepad.com/.shared:v6bc83ba:typepad:en_us/default-userpics/05-50si.gif [54]: http://marketbold.com/KeywordSniperPro/ "http://marketbold.com/KeywordSniperPro/" [55]: http://guyro.typepad.com/blog/2008/12/google-i.html?cid=6a00e553792bcf8833015391c9f607970b#comment-6a00e553792bcf8833015391c9f607970b [56]: http://www.feedburner.com/fb/images/pub/feed-icon32x32.png [57]: http://guyro.typepad.com/blog/2009/09/email-greetings-in-multiple-languages.html [58]: http://guyro.typepad.com/blog/2009/07/the-multivariable-startup-equation.html [59]: http://guyro.typepad.com/blog/2009/07/how-many-sites-really-use-amazon-ec2.html [60]: http://guyro.typepad.com/blog/2009/05/email-in-the-cloud---not-just-for-startups.html [61]: http://guyro.typepad.com/blog/2009/05/what-is-cloud-computing.html [62]: http://guyro.typepad.com/blog/2009/04/doing-the-impossible.html [63]: http://guyro.typepad.com/blog/2009/03/hostmonk---our-new-hosting-comparison-service.html [64]: http://guyro.typepad.com/blog/2009/03/multiple-profiles-on-tweetdeck-introducing-multitweetdeck.html [65]: http://guyro.typepad.com/blog/2009/02/keep-your-arms-and-legs-inside-the-ride-at-all-times.html [66]: http://guyro.typepad.com/blog/2009/02/how-not-to-search-for-blogs.html [67]: http://guyro.typepad.com/blog/archives.html [68]: http://guyro.typepad.com/blog/2009/09/index.html [69]: http://guyro.typepad.com/blog/2009/07/index.html [70]: http://guyro.typepad.com/blog/2009/05/index.html [71]: http://guyro.typepad.com/blog/2009/04/index.html [72]: http://guyro.typepad.com/blog/2009/03/index.html [73]: http://guyro.typepad.com/blog/2009/02/index.html [74]: http://guyro.typepad.com/blog/2009/01/index.html [75]: http://guyro.typepad.com/blog/2008/12/index.html [76]: http://guyro.typepad.com/blog/2008/11/index.html [77]: http://guyro.typepad.com/blog/2008/10/index.html [78]: http://pixel.quantserve.com/pixel/p-fcYWUmj5YbYKM.gif?tags=typepad.core [79]: /.shared/images/spinner.gif