hn-classics/_stories/2010/9768279.md

601 lines
26 KiB
Markdown

---
created_at: '2015-06-23T22:36:20.000Z'
title: A tale of two cultures (2010)
url: http://blog.jgc.org/2010/09/tale-of-two-cultures.html
author: jgrahamc
points: 73
story_text: ''
comment_text:
num_comments: 4
story_id:
story_title:
story_url:
parent_id:
created_at_i: 1435098980
_tags:
- story
- author_jgrahamc
- story_9768279
objectID: '9768279'
year: 2010
---
[Source](http://blog.jgc.org/2010/09/tale-of-two-cultures.html "Permalink to John Graham-Cumming: A tale of two cultures")
# John Graham-Cumming: A tale of two cultures
![][1]
# [ John Graham-Cumming ][2]
## Friday, September 17, 2010
### A tale of two cultures
In recent days there's been much discussion of [Digg][3] and [reddit][4] that has concentrated on the technical and community aspects of the two sites. This commentary has overlooked a vital component to the difference between these two social news sites: company culture.
I had first hand experience of how company culture affects users when I 'hacked' both Digg and reddit in 2006/2007. The reactions of the people at the two sites was instructive.
1\. Digg
On July 26, 2006 I realized that I could create a loop between a Digg story and a reddit story because the URL that would be assigned to a Digg story was predictable and reddit didn't check links for 404 status when submitting. So I was able to submit a story to reddit (that didn't yet exist, but with a predicted Digg URL) and then submit the reddit generated URL to Digg.
I used this to create a silly 'recursion' prank. The Digg story is [Recursion defined (see reddit)][5] and the reddit story is [Recursion defined (see Digg)][6]. They point to each other.
It was just a bit of silliness. It got me banned from Digg and I ended up having to appeal to Kevin Rose (via an acquaintance) to get my account restored.
I was banned because I was apparently a spammer. When I submitted the story to Digg I made a mistake in the title and created the wrong URL. So I immediately used the Bury functionality of Digg to kill it and I resubmitted with the perfect title to make the hack work. Unfortunately, the folks at Digg took this to mean I was a spammer.
They killed my account and then a Digg employee went [public][7] with libelous claims about me: "The problem was, then he submitted the story multiple times and then created multiple fake accounts and dugg his own stories." The multiple fake accounts claim was simply untrue. The only time I created a new account was after 'jgrahamc' was killed.
Through Leo Laporte I [reached][8] Kevin Rose who restored my old account. At the same time reddit honored me with a Golden Reddit and [my very own reddit logo][9].
2\. reddit
Looking at reddit's markdown one day I realized that it would be possible to implement an entire tic tac toe game inside reddit comments by drawing ASCII boards in comments, linking between them, and enumerating every possible board position. The vestiges of this game can be found [here][10] in the test comment I used. The idea was that one would start at an empty board with x ready to place a tile. The user would click on a board position, a different comment would be displayed showing the x in place and then the mouse would be handed to the person playing o and the game would continue.
There are less than 20,000 (I don't have the actual figure in front of me, but it's less than 3^9 since not all possible combinations of x, o or blank are reachable) different valid, reachable board positions in tic tac toe, so all I needed to do was create all of them as separate comments on reddit. I wrote a small program that used WWW::Mechanize to perform the comment posting. It worked its way back from all the possible winning board positions back up to the starting blank board.
This killed reddit.
Or rather, it killed the process that was doing indexing of reddit comments. Here's where things got interesting in the Digg vs. reddit battle. reddit didn't ban me. They killed all the comments I'd created because it was slowing them down, they temporarily limited my IP address and they sent me an email.
I received a friendly email from Steve Huffman telling me what they'd done and asking me what I was up to. When I explained he replied that 'reddit likes hacks', and that my little game had exposed a problem they'd been aware of with comment performance that they'd been meaning to fix.
I never did go back and create the full game, but I was left with a very different impression of Digg and reddit.
Ultimately, I think the cultural difference comes down to a difference between hackers and pseudo-hackers. Reddit's beginnings were very much about being a hacker, and the open, liberal culture that goes with that continues to infect the site. Digg's beginnings are bound up in the frat-boy, dark-tipper "Kevin Rose" persona. If you want to change Digg you probably have to get rid of "Rose".
PS I put "Kevin Rose" in quotes there because I don't know him personally and I'm referring specifically to a persona that is visible in things like Diggnation, not to the man himself.
PPS For those who love the details. Here's the actual email exchange between myself and Steve Huffman:
Date: Sun, 14 Jan 2007 11:56:13 -0800
From: "Steve Huffman"
To: "John Graham-Cumming"
Subject: tic-tac-toe and such
I removed the tic-tac-toe thing this morning. I wouldn't normally, but
the 5000 comment thread was killing the server.
I would have just asked you to stop, but I couldn't reach you quick enough.
I didn't mean to break your account, I'll fix that right now.
Steve
Date: Sun, 14 Jan 2007 20:59:31 +0100
From: "John Graham-Cumming"
To: "Steve Huffman"
Subject: Re: tic-tac-toe and such
On 1/14/07, Steve Huffman wrote:
> I removed the tic-tac-toe thing this morning. I wouldn't normally, but
> the 5000 comment thread was killing the server.
Omigod. I had no idea that a 5,000 comment thread would mess up your
server. For that, I am truly sorry. I rate limited the code so that
it would take a long time to make all 5,000 (and it was done in a
single thread) with one new comment about every 7 seconds.
I feel very bad about messing with the server.
John.
Date: Sun, 14 Jan 2007 12:02:16 -0800
From: "Steve Huffman"
To: "John Graham-Cumming"
Subject: Re: tic-tac-toe and such
No problem, I just saw automated comments coming in and the only thing
I could do at the moment was kill that thread. My intention was just
to kill that thread, not mess up your user.
Once I get your user fixed, I'll bug you about what you were actually
trying to do :)
Steve
Date: Sun, 14 Jan 2007 12:20:12 -0800
From: "Steve Huffman"
To: "John Graham-Cumming"
Subject: Re: tic-tac-toe and such
On 1/14/07, John Graham-Cumming wrote:
> Steve Huffman wrote:
> > Are things better now?
>
> Yes, that looks great.
>
> Thanks!
>
> And sorry I caused you all that trouble.
No prob. We don't mind pranks. Just be aware that sometimes your user
might get whacked in the process.
The way we do comment threading is we keep the entire thread in
memory, and precompute all the sorts whenever someone comments. That
huge thread was making the (usually fairly quick) sorting take
forever.
We're going to be rewriting things in the near future, and I think
this is one of the problems that'll go away.
Steve
Date: Sun, 14 Jan 2007 12:24:52 -0800
From: "Steve Huffman"
To: "John Graham-Cumming"
Subject: Re: tic-tac-toe and such
On 1/14/07, John Graham-Cumming wrote:
> Steve Huffman wrote:
> > The way we do comment threading is we keep the entire thread in
> > memory, and precompute all the sorts whenever someone comments. That
> > huge thread was making the (usually fairly quick) sorting take
> > forever.
>
> Interesting. Was the situation made worse by the fact that my comments
> were replies to other comments in the same thread, or was it just the
> sheer number?
Both, I presume. But a portion of the algorithm is recursive, so the
deep nests were probably extra deadly. I'll dig into it at some point
and let you know if it becomes prank-safe.
Date: Sun, 14 Jan 2007 21:27:57 +0100
From: "John Graham-Cumming"
To: "Steve Huffman"
Subject: Re: tic-tac-toe and such
On 1/14/07, Steve Huffman wrote:
> Both, I presume. But a portion of the algorithm is recursive, so the
> deep nests were probably extra deadly. I'll dig into it at some point
> and let you know if it becomes prank-safe.
Don't go to extra work on my account... after all I could just email
you the appropriate INSERT INTO statements and the thread could get
built in a couple of minutes :-)
John.
After the Kevin Rose intervention I got the following from Digg:
Date: Fri, 28 Jul 2006 21:27:03 +0200
From: Digg Abuse
To: John Graham-Cumming
Subject: Re: banning of jgrahamc for misuse
Your account has been unbanned. Your account was banned for violating
digg Terms Of Use, submitting the exact same story in less then 3
minutes time, that's what spammers usually do on digg. As a consequence,
we banned your account. Your account was NOT banned for linking to
reddit.com or for submitting a joke.
-The Digg Watch Team.
Posted by John Graham-Cumming at [08:21][11] [ ![][12] ][13]
[Email This][14][BlogThis!][15][Share to Twitter][16][Share to Facebook][17][Share to Pinterest][18]
Labels: [pseudo-randomness][19]
#### No comments:
[Post a Comment][20]
#### [][21][
[Newer Post][22] [Older Post][23] [Home][2]
Subscribe to: [Post Comments (Atom)][24]
## Pages
* [Home][2]
[ ![][25] ][26]
## Blog Archive
* [ ►  ][27] [ 2017 ][28] (4)
* [ ►  ][27] [ May ][29] (1)
* [ ►  ][27] [ April ][30] (3)
* [ ►  ][27] [ 2016 ][31] (11)
* [ ►  ][27] [ November ][32] (1)
* [ ►  ][27] [ September ][33] (1)
* [ ►  ][27] [ July ][34] (2)
* [ ►  ][27] [ June ][35] (1)
* [ ►  ][27] [ May ][36] (3)
* [ ►  ][27] [ April ][37] (1)
* [ ►  ][27] [ March ][38] (2)
* [ ►  ][27] [ 2015 ][39] (11)
* [ ►  ][27] [ November ][40] (1)
* [ ►  ][27] [ July ][41] (2)
* [ ►  ][27] [ May ][42] (1)
* [ ►  ][27] [ April ][43] (5)
* [ ►  ][27] [ March ][44] (1)
* [ ►  ][27] [ January ][45] (1)
* [ ►  ][27] [ 2014 ][46] (4)
* [ ►  ][27] [ November ][47] (2)
* [ ►  ][27] [ July ][48] (1)
* [ ►  ][27] [ June ][49] (1)
* [ ►  ][27] [ 2013 ][50] (42)
* [ ►  ][27] [ September ][51] (4)
* [ ►  ][27] [ August ][52] (1)
* [ ►  ][27] [ July ][53] (4)
* [ ►  ][27] [ June ][54] (2)
* [ ►  ][27] [ May ][55] (6)
* [ ►  ][27] [ April ][56] (12)
* [ ►  ][27] [ March ][57] (5)
* [ ►  ][27] [ February ][58] (2)
* [ ►  ][27] [ January ][59] (6)
* [ ►  ][27] [ 2012 ][60] (100)
* [ ►  ][27] [ December ][61] (3)
* [ ►  ][27] [ November ][62] (6)
* [ ►  ][27] [ October ][63] (8)
* [ ►  ][27] [ September ][64] (7)
* [ ►  ][27] [ August ][65] (6)
* [ ►  ][27] [ July ][66] (10)
* [ ►  ][27] [ June ][67] (10)
* [ ►  ][27] [ May ][68] (7)
* [ ►  ][27] [ April ][69] (12)
* [ ►  ][27] [ March ][70] (12)
* [ ►  ][27] [ February ][71] (12)
* [ ►  ][27] [ January ][72] (7)
* [ ►  ][27] [ 2011 ][73] (149)
* [ ►  ][27] [ December ][74] (7)
* [ ►  ][27] [ November ][75] (17)
* [ ►  ][27] [ October ][76] (5)
* [ ►  ][27] [ September ][77] (17)
* [ ►  ][27] [ August ][78] (6)
* [ ►  ][27] [ July ][79] (16)
* [ ►  ][27] [ June ][80] (15)
* [ ►  ][27] [ May ][81] (7)
* [ ►  ][27] [ April ][82] (9)
* [ ►  ][27] [ March ][83] (12)
* [ ►  ][27] [ February ][84] (21)
* [ ►  ][27] [ January ][85] (17)
* [ ▼  ][27] [ 2010 ][86] (234)
* [ ►  ][27] [ December ][87] (19)
* [ ►  ][27] [ November ][88] (14)
* [ ►  ][27] [ October ][89] (31)
* [ ▼  ][27] [ September ][90] (37)
* [Beautiful Simplicity][91]
* [More technical opinions on the Analytical Engine p...][92]
* [How my blog looks to readers in Iran][93]
* [What to use instead of a pie chart][94]
* [How I handle my mail][95]
* [A quick chat with Doron Swade][96]
* [If only Skype worked][97]
* [Paddington Bear doesn't wear a yellow hat][98]
* [Plan 28][99]
* [On being a nerd][100]
* [Another technical opinion on building the Analytic...][101]
* [If you want to get press mention Iran][102]
* [Autotools][103]
* [Babbage machines in Meccano][104]
* [First opinion on whether the Analytical Engine cou...][105]
* [It's time to build the Analytical Engine][106]
* [GAGA-1 Source Code Repository][107]
* [Top blog content for August 2010][108]
* "[We've read your code"][109]
* [GAGA-1: Capsule paint job][110]
* [A tale of two cultures][111]
* [What happened to the Open Graph Protocol?][112]
* [Babbage's Debugger][113]
* [The Myth of the Boy Wizard][114]
* [Fooled by pseudorandomness][115]
* [Haystack project responds to 'security concerns', ...][116]
* [GAGA-1: Weight Budget][117]
* [GAGA-1: The Capsule][118]
* [Kindle Kovers][119]
* [GAGA-1: 2,766 tedious photographs and a log file][120]
* [GAGA-1: "Honey, there's a camera in the freezer"][121]
* [Sir Muir Russell writes][122]
* [Spam from Forrester Research][123]
* [On the 5 sigma 'problem' in CRUTEM][124]
* [GAGA-1: Redundancy and Independence][125]
* [GAGA-1: Camera Hacking][126]
* [The Geek Atlas now available for Kindle][127]
* [ ►  ][27] [ August ][128] (19)
* [ ►  ][27] [ July ][129] (23)
* [ ►  ][27] [ June ][130] (26)
* [ ►  ][27] [ May ][131] (8)
* [ ►  ][27] [ April ][132] (11)
* [ ►  ][27] [ March ][133] (11)
* [ ►  ][27] [ February ][134] (15)
* [ ►  ][27] [ January ][135] (20)
* [ ►  ][27] [ 2009 ][136] (146)
* [ ►  ][27] [ December ][137] (24)
* [ ►  ][27] [ November ][138] (12)
* [ ►  ][27] [ October ][139] (14)
* [ ►  ][27] [ September ][140] (19)
* [ ►  ][27] [ August ][141] (21)
* [ ►  ][27] [ July ][142] (6)
* [ ►  ][27] [ June ][143] (18)
* [ ►  ][27] [ May ][144] (14)
* [ ►  ][27] [ April ][145] (4)
* [ ►  ][27] [ March ][146] (7)
* [ ►  ][27] [ February ][147] (5)
* [ ►  ][27] [ January ][148] (2)
* [ ►  ][27] [ 2008 ][149] (61)
* [ ►  ][27] [ December ][150] (7)
* [ ►  ][27] [ November ][151] (3)
* [ ►  ][27] [ October ][152] (2)
* [ ►  ][27] [ September ][153] (3)
* [ ►  ][27] [ July ][154] (3)
* [ ►  ][27] [ June ][155] (4)
* [ ►  ][27] [ May ][156] (5)
* [ ►  ][27] [ April ][157] (5)
* [ ►  ][27] [ March ][158] (10)
* [ ►  ][27] [ February ][159] (13)
* [ ►  ][27] [ January ][160] (6)
* [ ►  ][27] [ 2007 ][161] (64)
* [ ►  ][27] [ December ][162] (4)
* [ ►  ][27] [ November ][163] (6)
* [ ►  ][27] [ October ][164] (6)
* [ ►  ][27] [ September ][165] (2)
* [ ►  ][27] [ August ][166] (3)
* [ ►  ][27] [ July ][167] (6)
* [ ►  ][27] [ June ][168] (8)
* [ ►  ][27] [ May ][169] (3)
* [ ►  ][27] [ April ][170] (4)
* [ ►  ][27] [ March ][171] (10)
* [ ►  ][27] [ February ][172] (6)
* [ ►  ][27] [ January ][173] (6)
* [ ►  ][27] [ 2006 ][174] (61)
* [ ►  ][27] [ December ][175] (3)
* [ ►  ][27] [ November ][176] (2)
* [ ►  ][27] [ October ][177] (6)
* [ ►  ][27] [ September ][178] (12)
* [ ►  ][27] [ July ][179] (5)
* [ ►  ][27] [ June ][180] (8)
* [ ►  ][27] [ May ][181] (4)
* [ ►  ][27] [ April ][182] (11)
* [ ►  ][27] [ March ][183] (1)
* [ ►  ][27] [ February ][184] (2)
* [ ►  ][27] [ January ][185] (7)
* [ ►  ][27] [ 2005 ][186] (5)
* [ ►  ][27] [ December ][187] (3)
* [ ►  ][27] [ November ][188] (2)
[ ![][25] ][189]
| -----|
|
|
|
Simple theme. Powered by [Blogger][190].
[ ![][25] ][191]
[1]: http://3f1b85f463bb9991.cloudflareresolve.com/cdn-cgi/ping
[2]: http://blog.jgc.org/
[3]: http://digg.com
[4]: https://reddit.com
[5]: https://digg.com/news/technology/Recursion_defined_see_reddit
[6]: https://www.reddit.com/comments/b5ii/recursion_defined_see_digg
[7]: http://faemalia.org/wiki/view/Faemalia/DiggAndAllTheControversy
[8]: http://blog.jgc.org/2006/07/unbanned-from-digg.html
[9]: http://blog.jgc.org/2006/07/badges-of-honor.html
[10]: https://www.reddit.com/r/reddit.com/comments/jc0l/calculating_the_area_of_an_annulus_from_a_tangent/cr3xv
[11]: http://blog.jgc.org/2010/09/tale-of-two-cultures.html "permanent link"
[12]: https://resources.blogblog.com/img/icon18_edit_allbkg.gif
[13]: https://www.blogger.com/post-edit.g?blogID=19303585&postID=220288054823376131&from=pencil "Edit Post"
[14]: https://www.blogger.com/share-post.g?blogID=19303585&postID=220288054823376131&target=email "Email This"
[15]: https://www.blogger.com/share-post.g?blogID=19303585&postID=220288054823376131&target=blog "BlogThis!"
[16]: https://www.blogger.com/share-post.g?blogID=19303585&postID=220288054823376131&target=twitter "Share to Twitter"
[17]: https://www.blogger.com/share-post.g?blogID=19303585&postID=220288054823376131&target=facebook "Share to Facebook"
[18]: https://www.blogger.com/share-post.g?blogID=19303585&postID=220288054823376131&target=pinterest "Share to Pinterest"
[19]: http://blog.jgc.org/search/label/pseudo-randomness
[20]: https://www.blogger.com/comment.g?blogID=19303585&postID=220288054823376131
[21]:
[22]: http://blog.jgc.org/2010/09/gaga-1-capsule-paint-job.html "Newer Post"
[23]: http://blog.jgc.org/2010/09/what-happened-to-open-graph-protocol.html "Older Post"
[24]: http://blog.jgc.org/feeds/220288054823376131/comments/default
[25]: https://resources.blogblog.com/img/icon18_wrench_allbkg.png
[26]: //www.blogger.com/rearrange?blogID=19303585&widgetType=PageList&widgetId=PageList1&action=editWidget&sectionId=sidebar-right-1 "Edit"
[27]: javascript:void(0)
[28]: http://blog.jgc.org/2017/
[29]: http://blog.jgc.org/2017/05/
[30]: http://blog.jgc.org/2017/04/
[31]: http://blog.jgc.org/2016/
[32]: http://blog.jgc.org/2016/11/
[33]: http://blog.jgc.org/2016/09/
[34]: http://blog.jgc.org/2016/07/
[35]: http://blog.jgc.org/2016/06/
[36]: http://blog.jgc.org/2016/05/
[37]: http://blog.jgc.org/2016/04/
[38]: http://blog.jgc.org/2016/03/
[39]: http://blog.jgc.org/2015/
[40]: http://blog.jgc.org/2015/11/
[41]: http://blog.jgc.org/2015/07/
[42]: http://blog.jgc.org/2015/05/
[43]: http://blog.jgc.org/2015/04/
[44]: http://blog.jgc.org/2015/03/
[45]: http://blog.jgc.org/2015/01/
[46]: http://blog.jgc.org/2014/
[47]: http://blog.jgc.org/2014/11/
[48]: http://blog.jgc.org/2014/07/
[49]: http://blog.jgc.org/2014/06/
[50]: http://blog.jgc.org/2013/
[51]: http://blog.jgc.org/2013/09/
[52]: http://blog.jgc.org/2013/08/
[53]: http://blog.jgc.org/2013/07/
[54]: http://blog.jgc.org/2013/06/
[55]: http://blog.jgc.org/2013/05/
[56]: http://blog.jgc.org/2013/04/
[57]: http://blog.jgc.org/2013/03/
[58]: http://blog.jgc.org/2013/02/
[59]: http://blog.jgc.org/2013/01/
[60]: http://blog.jgc.org/2012/
[61]: http://blog.jgc.org/2012/12/
[62]: http://blog.jgc.org/2012/11/
[63]: http://blog.jgc.org/2012/10/
[64]: http://blog.jgc.org/2012/09/
[65]: http://blog.jgc.org/2012/08/
[66]: http://blog.jgc.org/2012/07/
[67]: http://blog.jgc.org/2012/06/
[68]: http://blog.jgc.org/2012/05/
[69]: http://blog.jgc.org/2012/04/
[70]: http://blog.jgc.org/2012/03/
[71]: http://blog.jgc.org/2012/02/
[72]: http://blog.jgc.org/2012/01/
[73]: http://blog.jgc.org/2011/
[74]: http://blog.jgc.org/2011/12/
[75]: http://blog.jgc.org/2011/11/
[76]: http://blog.jgc.org/2011/10/
[77]: http://blog.jgc.org/2011/09/
[78]: http://blog.jgc.org/2011/08/
[79]: http://blog.jgc.org/2011/07/
[80]: http://blog.jgc.org/2011/06/
[81]: http://blog.jgc.org/2011/05/
[82]: http://blog.jgc.org/2011/04/
[83]: http://blog.jgc.org/2011/03/
[84]: http://blog.jgc.org/2011/02/
[85]: http://blog.jgc.org/2011/01/
[86]: http://blog.jgc.org/2010/
[87]: http://blog.jgc.org/2010/12/
[88]: http://blog.jgc.org/2010/11/
[89]: http://blog.jgc.org/2010/10/
[90]: http://blog.jgc.org/2010/09/
[91]: http://blog.jgc.org/2010/09/beautiful-simplicity.html
[92]: http://blog.jgc.org/2010/09/more-technical-opinions-on-analytical.html
[93]: http://blog.jgc.org/2010/09/how-my-blog-looks-to-readers-in-iran.html
[94]: http://blog.jgc.org/2010/09/what-to-use-instead-of-pie-chart.html
[95]: http://blog.jgc.org/2010/09/how-i-handle-my-mail.html
[96]: http://blog.jgc.org/2010/09/quick-chat-with-doron-swade.html
[97]: http://blog.jgc.org/2010/09/if-only-skype-worked.html
[98]: http://blog.jgc.org/2010/09/paddington-bear-doesnt-wear-yellow-hat.html
[99]: http://blog.jgc.org/2010/09/plan-28.html
[100]: http://blog.jgc.org/2010/09/on-being-nerd.html
[101]: http://blog.jgc.org/2010/09/another-technical-opinion-on-building.html
[102]: http://blog.jgc.org/2010/09/if-you-want-to-get-press-mention-iran.html
[103]: http://blog.jgc.org/2010/09/autotools.html
[104]: http://blog.jgc.org/2010/09/babbage-machines-in-meccano.html
[105]: http://blog.jgc.org/2010/09/first-opinion-on-whether-analytical.html
[106]: http://blog.jgc.org/2010/09/its-time-to-build-analytical-engine.html
[107]: http://blog.jgc.org/2010/09/gaga-1-source-code-repository.html
[108]: http://blog.jgc.org/2010/09/top-blog-content-for-august-2010.html
[109]: http://blog.jgc.org/2010/09/weve-read-your-code.html
[110]: http://blog.jgc.org/2010/09/gaga-1-capsule-paint-job.html
[111]: http://blog.jgc.org/2010/09/tale-of-two-cultures.html
[112]: http://blog.jgc.org/2010/09/what-happened-to-open-graph-protocol.html
[113]: http://blog.jgc.org/2010/09/babbages-debugger.html
[114]: http://blog.jgc.org/2010/09/myth-of-boy-wizard.html
[115]: http://blog.jgc.org/2010/09/fooled-by-pseudorandomness.html
[116]: http://blog.jgc.org/2010/09/haystack-project-responds-to-security.html
[117]: http://blog.jgc.org/2010/09/gaga-1-weight-budget.html
[118]: http://blog.jgc.org/2010/09/gaga-1-capsule.html
[119]: http://blog.jgc.org/2010/09/kindle-kovers.html
[120]: http://blog.jgc.org/2010/09/gaga-1-2766-tedious-photographs-and-log.html
[121]: http://blog.jgc.org/2010/09/gaga-1-honey-theres-camera-in-freezer.html
[122]: http://blog.jgc.org/2010/09/sir-muir-russell-writes.html
[123]: http://blog.jgc.org/2010/09/spam-from-forrester-research.html
[124]: http://blog.jgc.org/2010/09/on-5-sigma-problem-in-crutem.html
[125]: http://blog.jgc.org/2010/09/gaga-1-redundancy.html
[126]: http://blog.jgc.org/2010/09/gaga-1-camera-hacking.html
[127]: http://blog.jgc.org/2010/09/geek-atlas-now-available-for-kindle.html
[128]: http://blog.jgc.org/2010/08/
[129]: http://blog.jgc.org/2010/07/
[130]: http://blog.jgc.org/2010/06/
[131]: http://blog.jgc.org/2010/05/
[132]: http://blog.jgc.org/2010/04/
[133]: http://blog.jgc.org/2010/03/
[134]: http://blog.jgc.org/2010/02/
[135]: http://blog.jgc.org/2010/01/
[136]: http://blog.jgc.org/2009/
[137]: http://blog.jgc.org/2009/12/
[138]: http://blog.jgc.org/2009/11/
[139]: http://blog.jgc.org/2009/10/
[140]: http://blog.jgc.org/2009/09/
[141]: http://blog.jgc.org/2009/08/
[142]: http://blog.jgc.org/2009/07/
[143]: http://blog.jgc.org/2009/06/
[144]: http://blog.jgc.org/2009/05/
[145]: http://blog.jgc.org/2009/04/
[146]: http://blog.jgc.org/2009/03/
[147]: http://blog.jgc.org/2009/02/
[148]: http://blog.jgc.org/2009/01/
[149]: http://blog.jgc.org/2008/
[150]: http://blog.jgc.org/2008/12/
[151]: http://blog.jgc.org/2008/11/
[152]: http://blog.jgc.org/2008/10/
[153]: http://blog.jgc.org/2008/09/
[154]: http://blog.jgc.org/2008/07/
[155]: http://blog.jgc.org/2008/06/
[156]: http://blog.jgc.org/2008/05/
[157]: http://blog.jgc.org/2008/04/
[158]: http://blog.jgc.org/2008/03/
[159]: http://blog.jgc.org/2008/02/
[160]: http://blog.jgc.org/2008/01/
[161]: http://blog.jgc.org/2007/
[162]: http://blog.jgc.org/2007/12/
[163]: http://blog.jgc.org/2007/11/
[164]: http://blog.jgc.org/2007/10/
[165]: http://blog.jgc.org/2007/09/
[166]: http://blog.jgc.org/2007/08/
[167]: http://blog.jgc.org/2007/07/
[168]: http://blog.jgc.org/2007/06/
[169]: http://blog.jgc.org/2007/05/
[170]: http://blog.jgc.org/2007/04/
[171]: http://blog.jgc.org/2007/03/
[172]: http://blog.jgc.org/2007/02/
[173]: http://blog.jgc.org/2007/01/
[174]: http://blog.jgc.org/2006/
[175]: http://blog.jgc.org/2006/12/
[176]: http://blog.jgc.org/2006/11/
[177]: http://blog.jgc.org/2006/10/
[178]: http://blog.jgc.org/2006/09/
[179]: http://blog.jgc.org/2006/07/
[180]: http://blog.jgc.org/2006/06/
[181]: http://blog.jgc.org/2006/05/
[182]: http://blog.jgc.org/2006/04/
[183]: http://blog.jgc.org/2006/03/
[184]: http://blog.jgc.org/2006/02/
[185]: http://blog.jgc.org/2006/01/
[186]: http://blog.jgc.org/2005/
[187]: http://blog.jgc.org/2005/12/
[188]: http://blog.jgc.org/2005/11/
[189]: //www.blogger.com/rearrange?blogID=19303585&widgetType=BlogArchive&widgetId=BlogArchive1&action=editWidget&sectionId=sidebar-right-1 "Edit"
[190]: https://www.blogger.com
[191]: //www.blogger.com/rearrange?blogID=19303585&widgetType=Attribution&widgetId=Attribution1&action=editWidget&sectionId=footer-3 "Edit"
[*[08:21]: 2010-09-17T08:21:00Z