




if (typeof(disqus_iframe_css) == 'undefined') {
	disqus_iframe_css = '';
}
if (typeof(disqus_def_name) == 'undefined') {
	disqus_def_name = '';
}
if (typeof(disqus_def_email) == 'undefined') {
	disqus_def_email = '';
}
if (typeof(disqus_skip_auth) == 'undefined') {
	disqus_skip_auth = false;
}
if (typeof(disqus_default_text) == 'undefined') {
	disqus_default_text = 'Type your comment here.';
}

(function(){
	
	var ie = document.uniqueID
		&& document.compatMode
		&& !window.XMLHttpRequest
		&& document.execCommand ;

	try {
		if(!!ie) {
			document.execCommand("BackgroundImageCache", false, true);
		}
	} catch(e) {};
})();

var Dsq = new function() {
	this.container = document.getElementById('dsq-content');
	this.jsonData = {"reactions": [{"body": "Governments - like big corporations - rarely seem to understand tech", "author_name": "winckel", "source_url": "http://www.ubervu.com/conversations/scobleizer.com/2008/08/21/who-should-be-usas-cto/", "id": 1066916, "get_service_url": "http://friendfeed.com/", "title": "", "url": "http://friendfeed.com/e/6dd79461-f11e-47a0-84ff-27450c07034f#5dc26864-11fa-415c-82a3-58de28a7c963", "source": "ubervu", "get_service_name": "friendfeed", "avatar_url": "http://friendfeed.com/winckel/picture?size=large", "author_url": "", "date_created": "1 year ago", "retweets": []}, {"body": "View #1 is a person who could help shape our nation\u2019s tech policies. This person would need to be a great speaker, because he or she would need to go to places like the World Economic Forum and communicate what our tech policy should be. She or he would also need to be up to date on law, since they would be talking with congress about what could or couldn\u2019t be done and would help shape policies and laws. She or he would also need to be both trusted and accessible to the tech industry, too. That ...", "author_name": "Russ Johnson", "source_url": "http://www.ubervu.com/conversations/scobleizer.com/2008/08/21/who-should-be-usas-cto/", "id": 1066917, "get_service_url": "http://friendfeed.com/", "title": "", "url": "http://friendfeed.com/e/6c772b64-5f55-9ef9-0929-d087bbb10375#8f7969ee-f2de-458d-b513-29258f7391a5", "source": "ubervu", "get_service_name": "friendfeed", "avatar_url": "http://friendfeed.com/russjohnson/picture?size=large", "author_url": "", "date_created": "1 year ago", "retweets": []}, {"body": "\"On the way over to the interview I kept thinking back to our Washington DC visit. Both Republicans and Democrats told me they wish there were someone in the White House that they could talk to about tech and science issues. That seemed to support Barack Obama\u2019s tech policy, which calls for a national CTO position.\"", "author_name": "~C4Chaos", "source_url": "http://www.ubervu.com/conversations/scobleizer.com/2008/08/21/who-should-be-usas-cto/", "id": 1066918, "get_service_url": "http://friendfeed.com/", "title": "", "url": "http://friendfeed.com/e/6f8235be-69b7-4f5f-a4af-443b77b921c0#b2ed0b96-b2b4-4cea-bf56-bdbe0f663eb7", "source": "ubervu", "get_service_name": "friendfeed", "avatar_url": "http://friendfeed.com/c4chaos/picture?size=large", "author_url": "", "date_created": "1 year ago", "retweets": []}, {"body": "We should think about this, but the names Scoble throws out are crazy, with no exposure managing a giant bureaucracy... CTO should be managing the technology needs of the government. Maybe Lessig as CIO managing the IT for the country? I can't help but feel that putting Lessig in the job would him further out to pasture. He needs a cause that he can fight on the front lines.", "author_name": "JHill", "source_url": "http://www.ubervu.com/conversations/scobleizer.com/2008/08/21/who-should-be-usas-cto/", "id": 1066919, "get_service_url": "http://friendfeed.com/", "title": "", "url": "http://friendfeed.com/e/85487417-f3fe-80c8-8d82-7da15d80d37d#677fcf75-1f89-4879-a80e-0907dc1d3cce", "source": "ubervu", "get_service_name": "friendfeed", "avatar_url": "http://friendfeed.com/jhill/picture?size=large", "author_url": "", "date_created": "1 year ago", "retweets": []}, {"body": "Know what I like about Lessig? His thought process is different. And you can't buy that.", "author_name": "Art", "source_url": "http://www.ubervu.com/conversations/scobleizer.com/2008/08/21/who-should-be-usas-cto/", "id": 1066920, "get_service_url": "http://friendfeed.com/", "title": "", "url": "http://friendfeed.com/e/93e981c6-8dd2-665c-41a5-3151a94a54f3#aeac1fa2-1d05-4840-b22d-e127cb02acfc", "source": "ubervu", "get_service_name": "friendfeed", "avatar_url": "http://friendfeed.com/artlaflamme/picture?size=large", "author_url": "", "date_created": "1 year ago", "retweets": []}], "has_more_reactions": false, "users": {"bff124908922d2a2e49152f66611fe6b": {"username": "Yert", "tumblr": "", "display_name": "Yert", "url": "http://disqus.com/guest/bff124908922d2a2e49152f66611fe6b/", "registered": false, "linkedin": "", "blog": "http://yertblog.blogspot.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "8e25ce83275debdbe2e4e1e40eb41bcb": {"username": "Kathy Sierra", "tumblr": "", "display_name": "Kathy Sierra", "url": "http://disqus.com/guest/8e25ce83275debdbe2e4e1e40eb41bcb/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "e513d6507faed4fc4625e71bd2961758": {"username": "Matt", "tumblr": "", "display_name": "Matt", "url": "http://disqus.com/guest/e513d6507faed4fc4625e71bd2961758/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "a6eed8ee63cd1c66c966d768d8836e44": {"username": "Dave", "tumblr": "", "display_name": "Dave", "url": "http://disqus.com/guest/a6eed8ee63cd1c66c966d768d8836e44/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "5da797c7ea99285032d89a320f2b7485": {"username": "Mark", "tumblr": "", "display_name": "Mark", "url": "http://disqus.com/guest/5da797c7ea99285032d89a320f2b7485/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "d883c432e15403ace29e93d51973f9a0": {"username": "michael", "tumblr": "", "display_name": "michael", "url": "http://disqus.com/guest/d883c432e15403ace29e93d51973f9a0/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "5b36d06e96a061b02eda1882cfb44b21": {"username": "Liz", "tumblr": "", "display_name": "Liz", "url": "http://disqus.com/guest/5b36d06e96a061b02eda1882cfb44b21/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "ebdbd78fee328e1a250566676785775a": {"username": "Dan", "tumblr": "", "display_name": "Dan", "url": "http://disqus.com/guest/ebdbd78fee328e1a250566676785775a/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "ab3795c4b730c5963930e2dbd4a1b854": {"username": "Ross Rader", "tumblr": "", "display_name": "Ross Rader", "url": "http://disqus.com/guest/ab3795c4b730c5963930e2dbd4a1b854/", "registered": false, "linkedin": "", "blog": "http://www.hover.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "dariosalvelli": {"username": "dariosalvelli", "tumblr": "", "display_name": "Dario Salvelli", "url": "http://disqus.com/dariosalvelli/", "registered": true, "linkedin": "", "blog": "http://www.dariosalvelli.com", "remote_domain": null, "points": 1, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": true, "flickr": "", "twitter": "", "remote_domain_name": ""}, "e48326ef3ff568bb0720e0f4b7076245": {"username": "Kyle Brady", "tumblr": "", "display_name": "Kyle Brady", "url": "http://disqus.com/guest/e48326ef3ff568bb0720e0f4b7076245/", "registered": false, "linkedin": "", "blog": "http://www.kyle-brady.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "b1088dbd877c2d7d33e6b3b63ee38081": {"username": "Prokofy Neva", "tumblr": "", "display_name": "Prokofy Neva", "url": "http://disqus.com/guest/b1088dbd877c2d7d33e6b3b63ee38081/", "registered": false, "linkedin": "", "blog": "http://secondthoughts.typepad.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "3553f5e0db0fd1ec4e40a932a2d8f5b3": {"username": "Robert Scoble", "tumblr": "", "display_name": "Robert Scoble", "url": "http://disqus.com/guest/3553f5e0db0fd1ec4e40a932a2d8f5b3/", "registered": false, "linkedin": "", "blog": "http://scobleizer.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/uploads/anonusers/4069/avatar92.jpg", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "708fc39a658f05f8c11ddbcf6d218446": {"username": "Tony Leach", "tumblr": "", "display_name": "Tony Leach", "url": "http://disqus.com/guest/708fc39a658f05f8c11ddbcf6d218446/", "registered": false, "linkedin": "", "blog": "http://www.tonyleachsf.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "f9302b855f6969f6b10433651b6c8e1f": {"username": "Harold", "tumblr": "", "display_name": "Harold", "url": "http://disqus.com/guest/f9302b855f6969f6b10433651b6c8e1f/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "3acfd8b331db19bcab0eda7af5846011": {"username": "Samson", "tumblr": "", "display_name": "Samson", "url": "http://disqus.com/guest/3acfd8b331db19bcab0eda7af5846011/", "registered": false, "linkedin": "", "blog": "http://www.mortgagesamson.blogspot.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "2378b474e8eadf5da80e86c2bbc75a74": {"username": "Dave Winer", "tumblr": "", "display_name": "Dave Winer", "url": "http://disqus.com/guest/2378b474e8eadf5da80e86c2bbc75a74/", "registered": false, "linkedin": "", "blog": "http://scripting.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/uploads/anonusers/636/avatar92.jpg", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "42611e087a19fead85faf6458cb60e33": {"username": "websaz", "tumblr": "", "display_name": "websaz", "url": "http://disqus.com/guest/42611e087a19fead85faf6458cb60e33/", "registered": false, "linkedin": "", "blog": "http://websaz.wordpress.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "d11b267b0b762bc03ac51ee6403f292a": {"username": "Anthony Papillion", "tumblr": "", "display_name": "Anthony Papillion", "url": "http://disqus.com/guest/d11b267b0b762bc03ac51ee6403f292a/", "registered": false, "linkedin": "", "blog": "http://www.cajuntechie.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "e73fc4b5778f16df9ed5e286c8ea09be": {"username": "Steve", "tumblr": "", "display_name": "Steve", "url": "http://disqus.com/guest/e73fc4b5778f16df9ed5e286c8ea09be/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "1865032048cd0d5b606701fd08ffb6ca": {"username": "Jerry", "tumblr": "", "display_name": "Jerry", "url": "http://disqus.com/guest/1865032048cd0d5b606701fd08ffb6ca/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "93ae2425a5cdc23a7cb65c34f5af48ef": {"username": "Bill Schrier", "tumblr": "", "display_name": "Bill Schrier", "url": "http://disqus.com/guest/93ae2425a5cdc23a7cb65c34f5af48ef/", "registered": false, "linkedin": "", "blog": "http://blog.chiefseattlegeek.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "81b56cf86942c447a17db7c66be9f767": {"username": "Ruben", "tumblr": "", "display_name": "Ruben", "url": "http://disqus.com/guest/81b56cf86942c447a17db7c66be9f767/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "b467deb4ea6a75878c75094ad2b1ef3c": {"username": "Molly E. Holzschlag", "tumblr": "", "display_name": "Molly E. Holzschlag", "url": "http://disqus.com/guest/b467deb4ea6a75878c75094ad2b1ef3c/", "registered": false, "linkedin": "", "blog": "http://molly.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/uploads/anonusers/77/498/avatar92.jpg", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "dc37fc66a7150187e8f7efcaaacf41cb": {"username": "monk.e.boy", "tumblr": "", "display_name": "monk.e.boy", "url": "http://disqus.com/guest/dc37fc66a7150187e8f7efcaaacf41cb/", "registered": false, "linkedin": "", "blog": "http://teethgrinder.co.uk/open-flash-chart/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "b88b1c85a798a2aee3a35f5cd805d0e2": {"username": "steve", "tumblr": "", "display_name": "steve", "url": "http://disqus.com/guest/b88b1c85a798a2aee3a35f5cd805d0e2/", "registered": false, "linkedin": "", "blog": "http://siliconvalleymusings.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "a134ff4c7a21a2854b0595b9acbdcc9e": {"username": "Michael K Pate", "tumblr": "", "display_name": "Michael K Pate", "url": "http://disqus.com/guest/a134ff4c7a21a2854b0595b9acbdcc9e/", "registered": false, "linkedin": "", "blog": "http://michaelkpate.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/uploads/anonusers/53/9998/avatar92.jpg", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "576430d71e1fe786683f7cab2897768c": {"username": "Jason Goldberg", "tumblr": "", "display_name": "Jason Goldberg", "url": "http://disqus.com/guest/576430d71e1fe786683f7cab2897768c/", "registered": false, "linkedin": "", "blog": "http://retailgeek.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "3777c4a8881aba11fc27376cd9d3d84d": {"username": "waste", "tumblr": "", "display_name": "waste", "url": "http://disqus.com/guest/3777c4a8881aba11fc27376cd9d3d84d/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "6404470b16de97a3705e55bda0386fcb": {"username": "Marvin", "tumblr": "", "display_name": "Marvin", "url": "http://disqus.com/guest/6404470b16de97a3705e55bda0386fcb/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "9b4341bcdc7683ce4befa9105be4cb46": {"username": "Kabala", "tumblr": "", "display_name": "Kabala", "url": "http://disqus.com/guest/9b4341bcdc7683ce4befa9105be4cb46/", "registered": false, "linkedin": "", "blog": "http://www.siyonizm.net/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "7e6081e8721213e99346fa071b2f61ca": {"username": "DV", "tumblr": "", "display_name": "DV", "url": "http://disqus.com/guest/7e6081e8721213e99346fa071b2f61ca/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "0089ee81bca93f7763a2852766286551": {"username": "Greg Hughes", "tumblr": "", "display_name": "Greg Hughes", "url": "http://disqus.com/guest/0089ee81bca93f7763a2852766286551/", "registered": false, "linkedin": "", "blog": "http://www.greghughes.net/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "d881753042a8bbff52ed4b78f1e7bec5": {"username": "Jesse Stay", "tumblr": "", "display_name": "Jesse Stay", "url": "http://disqus.com/guest/d881753042a8bbff52ed4b78f1e7bec5/", "registered": false, "linkedin": "", "blog": "http://staynalive.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/uploads/anonusers/19/4201/avatar92.jpg", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "8b8858c8a6022411fc9d48c1f4963928": {"username": "Chris Cavanagh", "tumblr": "", "display_name": "Chris Cavanagh", "url": "http://disqus.com/guest/8b8858c8a6022411fc9d48c1f4963928/", "registered": false, "linkedin": "", "blog": "http://chriscavanagh.wordpress.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "40f9264081bcf710798f87630c965866": {"username": "JKemp", "tumblr": "", "display_name": "JKemp", "url": "http://disqus.com/guest/40f9264081bcf710798f87630c965866/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "d3c4cdb15c832cfc746367a033b0d356": {"username": "orcmid", "tumblr": "", "display_name": "orcmid", "url": "http://disqus.com/guest/d3c4cdb15c832cfc746367a033b0d356/", "registered": false, "linkedin": "", "blog": "http://orcmid.com/blog", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/uploads/anonusers/27/3222/avatar92.jpg", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "b09944a931ab9616d6dfab7325568e40": {"username": "Mark Drapeau", "tumblr": "", "display_name": "Mark Drapeau", "url": "http://disqus.com/guest/b09944a931ab9616d6dfab7325568e40/", "registered": false, "linkedin": "", "blog": "http://twitter.com/cheeky_geeky", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/uploads/anonusers/31/1186/avatar92.jpg", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "12bd9c2980864d6123b6818732f74255": {"username": "James D Robinson 4.0", "tumblr": "", "display_name": "James D Robinson 4.0", "url": "http://disqus.com/guest/12bd9c2980864d6123b6818732f74255/", "registered": false, "linkedin": "", "blog": "http://www.rre.com/ourteam.cfm#Robinson%20IV", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "6bd21bc30fabdb5b2cdd6d494531cc27": {"username": "Simon", "tumblr": "", "display_name": "Simon", "url": "http://disqus.com/guest/6bd21bc30fabdb5b2cdd6d494531cc27/", "registered": false, "linkedin": "", "blog": "http://www.800px.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "284ef8707741488c899af19d7a2ddd60": {"username": "Public Relations", "tumblr": "", "display_name": "Public Relations", "url": "http://disqus.com/guest/284ef8707741488c899af19d7a2ddd60/", "registered": false, "linkedin": "", "blog": "http://galaxyspectrum.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "88b87698be0bc461f3cacf1f080929d5": {"username": "User", "tumblr": "", "display_name": "User", "url": "http://disqus.com/guest/88b87698be0bc461f3cacf1f080929d5/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "72caa11f89bbbcde631b12caebd4bb91": {"username": "Chris Howard", "tumblr": "", "display_name": "Chris Howard", "url": "http://disqus.com/guest/72caa11f89bbbcde631b12caebd4bb91/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "4e53f55ef8bfc986b36750a5ba6b3a0b": {"username": "Dan Neely", "tumblr": "", "display_name": "Dan Neely", "url": "http://disqus.com/guest/4e53f55ef8bfc986b36750a5ba6b3a0b/", "registered": false, "linkedin": "", "blog": "http://www.networkedinsights.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "6118e984137919ef45371c24c73d33ce": {"username": "Jim Goldstein", "tumblr": "", "display_name": "Jim Goldstein", "url": "http://disqus.com/guest/6118e984137919ef45371c24c73d33ce/", "registered": false, "linkedin": "", "blog": "http://www.jmg-galleries.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/uploads/anonusers/20/1493/avatar92.jpg", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "a042baf390d020f6101e546176321c19": {"username": "Tim", "tumblr": "", "display_name": "Tim", "url": "http://disqus.com/guest/a042baf390d020f6101e546176321c19/", "registered": false, "linkedin": "", "blog": "http://mtscarborough.wordpress.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "0b4dc0c6f6ce7e46115170ea78d42d0f": {"username": "Yodeler", "tumblr": "", "display_name": "Yodeler", "url": "http://disqus.com/guest/0b4dc0c6f6ce7e46115170ea78d42d0f/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "1c09763fa1bee9def31872d464b5803c": {"username": "Spencer Scott", "tumblr": "", "display_name": "Spencer Scott", "url": "http://disqus.com/guest/1c09763fa1bee9def31872d464b5803c/", "registered": false, "linkedin": "", "blog": "http://www.theislanddog.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "d079a23d1d88798d20a6a314fc747c12": {"username": "Lincoln", "tumblr": "", "display_name": "Lincoln", "url": "http://disqus.com/guest/d079a23d1d88798d20a6a314fc747c12/", "registered": false, "linkedin": "", "blog": "http://rozelles.wordpress.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "ea253bf661e03852f85c239440a7dede": {"username": "Doc Searls", "tumblr": "", "display_name": "Doc Searls", "url": "http://disqus.com/guest/ea253bf661e03852f85c239440a7dede/", "registered": false, "linkedin": "", "blog": "http://doc.searls.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "01cc6b4cb02313e2f7f4cdda3dd497dd": {"username": "John Hamilton", "tumblr": "", "display_name": "John Hamilton", "url": "http://disqus.com/guest/01cc6b4cb02313e2f7f4cdda3dd497dd/", "registered": false, "linkedin": "", "blog": "http://www.minerpro.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "b84b16014961e6a64ea6ed761f502c45": {"username": "celery", "tumblr": "", "display_name": "celery", "url": "http://disqus.com/guest/b84b16014961e6a64ea6ed761f502c45/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "bb85c1976d55afdc05e312ed40a549b5": {"username": "Phil Whitehouse", "tumblr": "", "display_name": "Phil Whitehouse", "url": "http://disqus.com/guest/bb85c1976d55afdc05e312ed40a549b5/", "registered": false, "linkedin": "", "blog": "http://philwhitehouse.blogspot.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "8f8ff21a67437febebc70afd19364e95": {"username": "Some Guy", "tumblr": "", "display_name": "Some Guy", "url": "http://disqus.com/guest/8f8ff21a67437febebc70afd19364e95/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "baaee5207919955665aaae80f9e5f4ac": {"username": "infobisnis-qwonk", "tumblr": "", "display_name": "infobisnis-qwonk", "url": "http://disqus.com/guest/baaee5207919955665aaae80f9e5f4ac/", "registered": false, "linkedin": "", "blog": "http://infobisnis-qwonk.blogspot.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "e31bbec06771506ddb1e69955e9fe1a3": {"username": "Dr. Known", "tumblr": "", "display_name": "Dr. Known", "url": "http://disqus.com/guest/e31bbec06771506ddb1e69955e9fe1a3/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "1178ce2f664a6cee9a05a3e11af5d8d2": {"username": "Aaron Brethorst", "tumblr": "", "display_name": "Aaron Brethorst", "url": "http://disqus.com/guest/1178ce2f664a6cee9a05a3e11af5d8d2/", "registered": false, "linkedin": "", "blog": "http://www.brethorsting.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/uploads/anonusers/130/3184/avatar92.jpg", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "bf8c167cf3350901beb99737d0ad7173": {"username": "Paul Kapustka", "tumblr": "", "display_name": "Paul Kapustka", "url": "http://disqus.com/guest/bf8c167cf3350901beb99737d0ad7173/", "registered": false, "linkedin": "", "blog": "http://sidecutreports.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "dda2e598301f6bd3f909111045715f3f": {"username": "Andrew Meyer", "tumblr": "", "display_name": "Andrew Meyer", "url": "http://disqus.com/guest/dda2e598301f6bd3f909111045715f3f/", "registered": false, "linkedin": "", "blog": "http://alignmentinquiries.blogspot.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/uploads/anonusers/169/9940/avatar92.jpg", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "feb6106eb5edc89f49d14a4227d58fea": {"username": "geekmommy", "tumblr": "", "display_name": "geekmommy", "url": "http://disqus.com/guest/feb6106eb5edc89f49d14a4227d58fea/", "registered": false, "linkedin": "", "blog": "http://geekmommy.wordpress.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/uploads/anonusers/16/671/avatar92.jpg", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "7f6291e8344b594235e57b843fc05d9b": {"username": "Christopher Coulter", "tumblr": "", "display_name": "Christopher Coulter", "url": "http://disqus.com/guest/7f6291e8344b594235e57b843fc05d9b/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "4e61d9f4d1487130ea4d427e861c0488": {"username": "Pauly", "tumblr": "", "display_name": "Pauly", "url": "http://disqus.com/guest/4e61d9f4d1487130ea4d427e861c0488/", "registered": false, "linkedin": "", "blog": "http://paulytron.blogspot.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "8616f9fc7c781715dad69074ba8a1f16": {"username": "Jon", "tumblr": "", "display_name": "Jon", "url": "http://disqus.com/guest/8616f9fc7c781715dad69074ba8a1f16/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "2c71fce61f688317c29f91486a5c4f23": {"username": "cosmictap", "tumblr": "", "display_name": "cosmictap", "url": "http://disqus.com/guest/2c71fce61f688317c29f91486a5c4f23/", "registered": false, "linkedin": "", "blog": "http://www.cosmictap.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "a2296e07f15c8870e843977469d54e24": {"username": "Borlock", "tumblr": "", "display_name": "Borlock", "url": "http://disqus.com/guest/a2296e07f15c8870e843977469d54e24/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "2a616dbaef27bb201f2cb026d464e406": {"username": "Guest", "tumblr": "", "display_name": "Guest", "url": "http://disqus.com/guest/2a616dbaef27bb201f2cb026d464e406/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "a0d8f4ad5313eeadc19b3151172f497c": {"username": "Andrea Baker", "tumblr": "", "display_name": "Andrea Baker", "url": "http://disqus.com/guest/a0d8f4ad5313eeadc19b3151172f497c/", "registered": false, "linkedin": "", "blog": "http://www.twitter.com/immunity", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar92.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}}, "forum": {"use_media": true, "name": "Scobleizer", "streaming_realtime": true, "url": "scobleizer", "allow_anon_post": true, "reactions_enabled": true, "reply_position": 1, "show_avatar": true, "allow_anon_votes": false, "disqus_auth_disabled": false}, "realtime_enabled": true, "request": {"username": "", "is_global_moderator": false, "sharing": {}, "sort": 4, "forum": "scobleizer", "is_initial_load": true, "is_authenticated": false, "timestamp": "2009-12-17_06:09:25", "remote_domain": "", "page": 1, "is_moderator": false, "display_username": "", "points": null, "subscribe_on_post": 2, "moderator_can_edit": false, "is_remote": false, "is_verified": false, "missing_perm": "locked"}, "realtime_paused": false, "posts": {"9708963": {"up_voted": false, "ip": "", "has_replies": false, "message": "I think people are looking at this all wrong.  You don't want great IT CEO's in the position.  You want great CIO/CTO's of large companies.<br>Gary Reiner - CIO GE<br>Jean-Michel R. Ar\u00e8s - CIO Coca Cola<br>Rollin Ford - CIO Walmart<br><br>These are the type of people that could make some real progress in the role.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-08-26_10:36:16", "killed": false, "user_key": "ebdbd78fee328e1a250566676785775a", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9708964": {"up_voted": false, "ip": "", "has_replies": false, "message": "In the second role that Lessig mentioned -- pioneering the use of technology -- you should all be watching people already involved with the Obama campaign. Adam D'Angelo may be too young, but watch out for Leonard Lin. He's got a rare combination of geek knowledge and a Jedi-like ability to make bureaucracies work for him. After selling his startup to Yahoo he became involved in the movement to rejuvenate the company and had some notable successes. Taking on antiquated procedures in federal government would be an even bigger challenge, but he might be the guy for the job.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-08-25_03:00:27", "killed": false, "user_key": "0b4dc0c6f6ce7e46115170ea78d42d0f", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9708965": {"up_voted": false, "ip": "", "has_replies": false, "message": "\"Why not Steve Jobs?\"<br><br>Because he has a real job to do.<br><br>There is no need for yet another federal official to interfere with the computer industry.  We got where we are today because we were largely left alone.<br><br>\"Carly is a fantastically intelligent, technically literate, strategically effective, driven person who has the unique ability to work in both the tech and consumer worlds at the same time. \"<br><br>I see you've been reading her PR.  Try talking to any HP employee for a different opinion.  For that matter, try talking to any of the people from Lucent who were thrilled to see her go.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-08-29_01:47:45", "killed": false, "user_key": "8f8ff21a67437febebc70afd19364e95", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9708966": {"up_voted": false, "ip": "", "has_replies": false, "message": "Sorry but we need Prof Lessing to reform US intellectual property law, not as CTO.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-08-24_00:15:06", "killed": false, "user_key": "576430d71e1fe786683f7cab2897768c", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9708967": {"up_voted": false, "ip": "", "has_replies": false, "message": "I nominate Lew Rockwell.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-08-23_21:13:19", "killed": false, "user_key": "7e6081e8721213e99346fa071b2f61ca", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9708968": {"up_voted": false, "ip": "", "has_replies": false, "message": "[OT] - Sorry for the OT, what do u think Robert? <a href=\"http://www.intel.com/pressroom/archive/releases/20080821comp.htm\" rel=\"nofollow\">http://www.intel.com/pressroom/archive/releases...</a>", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-08-23_09:39:22", "killed": false, "user_key": "dariosalvelli", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": false, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9708969": {"up_voted": false, "ip": "", "has_replies": false, "message": "I'd recommend Linus Torvalds!", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-08-23_08:39:36", "killed": false, "user_key": "e31bbec06771506ddb1e69955e9fe1a3", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9708970": {"up_voted": false, "ip": "", "has_replies": false, "message": "@Dave Winer:<br><br>In case you aren't from this country and live in a socialist state, we have something in this country called capitalism.  It allows companies to succeed or fail based on the free market. In addition, if I'm not mistaken we already have a bureaucracy the regulates the hell out of companies like Comcast, thank you. Any role this mythical CTO would play in this space would be somewhat redundant. . The LAST thing we need is MORE govt. intervention. But I understand that's anathema to Democrats.<br><br>The country does not need a CTO.  What critical, pressing problem does the US have that this \"national\"  CTO would solve that that justifies me paying more Federal taxes to support such a position?<br><br>Mark's insightful comments only serve to reinforce how naive, inexperienced and clueless Barry H. Obama-ssiah is. A \"national\" CTO!  Gimme a break!  How ignorant about the Federal Govt can this man be?  Did he even pay attention on the rare occasions he showed up on the Senate floor?", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-08-23_02:49:59", "killed": false, "user_key": "1865032048cd0d5b606701fd08ffb6ca", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9708971": {"up_voted": false, "ip": "", "has_replies": false, "message": "Phil Windley of Technometria.  He used to be CTO of Utah, a democrat, and he could be well-received by the nation.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-08-22_20:17:41", "killed": false, "user_key": "d881753042a8bbff52ed4b78f1e7bec5", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9708972": {"up_voted": false, "ip": "", "has_replies": false, "message": "This is one of the most ignorant posts I've ever read. The last thing this country needs is another buraucracy. But leave it to Democrats (Barry) to think more govt. is better. Each and every Dept of (fill in the blank) has a technology officer, as does TOTP.  I'm not sure what problems the US is having in this space  that are serious enough to warrant me paying more in Federal taxes to expand govt.<br><br>Actually Al Gore would be a good choice. Not because he's smart; he's actually a moron. But he's perfect fit because he is the biggest policy wonk ever, and a moron, so thankfully nothing would get done.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-08-22_21:32:45", "killed": false, "user_key": "a6eed8ee63cd1c66c966d768d8836e44", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9708973": {"up_voted": false, "ip": "", "has_replies": false, "message": "Chris Messina<br>Tim O'Reilly<br>Esther Dyson", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-08-22_23:16:58", "killed": false, "user_key": "8e25ce83275debdbe2e4e1e40eb41bcb", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9708974": {"up_voted": false, "ip": "", "has_replies": false, "message": "The only choice: John C. Dvorak", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-08-22_23:17:28", "killed": false, "user_key": "a134ff4c7a21a2854b0595b9acbdcc9e", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9708975": {"up_voted": false, "ip": "", "has_replies": false, "message": "I'm going to be unpopular... if we're going with an actual tech CTO, I want someone under the age of 30.<br>Yes, at 42 I'm on the other side of the fence.<br><br>But the kind of person I'd want for CTO is someone who lives and breathes the future of tech - not someone who has spent the past two plus decades getting jaded by it.<br><br>Then again, I don't have any names to posit.  Probably because the kind of person I'm talking about is out there living and breathing tech right now, not \"established\".", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-08-22_20:09:53", "killed": false, "user_key": "feb6106eb5edc89f49d14a4227d58fea", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9708976": {"up_voted": false, "ip": "", "has_replies": false, "message": "I hate to be a buzz kill, but we don't need a national CTO to help shape the nation's tech policies. The government already has organizations that the government's tech direction. If they're not doing an adequate job, fix them. Don't add to an already bloated government.<br><br>From the private sector standpoint, they don't need direction from DC.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-08-22_20:12:22", "killed": false, "user_key": "a042baf390d020f6101e546176321c19", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9708978": {"up_voted": false, "ip": "", "has_replies": false, "message": "@Mark Drapeau maybe we need to have blogger's roundtable. Like we did with the media a couple years back when we announced Intellipedia to the world.<br><br>Letting the critics come and ask us questions and engage in a discussion on how we are changing government from a grassroots level to improve collaboration, process, and technology.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-08-22_19:09:21", "killed": false, "user_key": "a0d8f4ad5313eeadc19b3151172f497c", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9708979": {"up_voted": false, "ip": "", "has_replies": false, "message": "You might also be interested in the EOP's National Science and Technology Council (NSTC), which advises the President on whole-of-government matters on the topic, and serves as a coordinating body.<br><br>Finally, PCAST, the President's Council of Advisors on Science and Technology, \"serves as a source of scientific and technological analysis and judgment for the President with respect to major policies, plans and programs of the Federal Government.  The office works with the private sector to ensure Federal investments in science and technology contribute to economic prosperity, environmental quality, and national security.\"<br><br>So - If a fictional CTO position was created, how would it be justified to Congress, who would pass hearings, how would they interact with the OSTP Director, would they serve on the NSTC and in what capacity, how would they deal with the PCAST, what would their authority be over relevant officials in all of the various Cabinet-level agencies, how would they work with existing Government-owned venture capital funds like In-Q-Tel?<br><br>Just to get started with a realistic one-page white paper for a transition team in November.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-08-22_19:17:32", "killed": false, "user_key": "b09944a931ab9616d6dfab7325568e40", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9708980": {"up_voted": false, "ip": "", "has_replies": false, "message": "Oh boy, can of worms. I couldn't support selection of any of the names on the list. In fact, I strongly and urgently hope for someone who knows what being a CTO in a government role of incredible magnitude would really mean, and someone who could actually navigate the extremely difficult waters. Gates is the only one on there that I think might make it past the first month. I'm confident it should be someone who's name we don't already know.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-08-22_19:43:21", "killed": false, "user_key": "0089ee81bca93f7763a2852766286551", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9708981": {"up_voted": false, "ip": "", "has_replies": false, "message": "I'll do it. I live in the DC area. DC born.<br><br>I have spent my career in Government and push for emerging technology, not only using it, but teaching and mentoring.<br><br>I am also a woman (a bonus - for the first time the position is created to have a woman in the position).<br><br>I know I am not a big name, yet.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-08-22_19:02:50", "killed": false, "user_key": "a0d8f4ad5313eeadc19b3151172f497c", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9708982": {"up_voted": false, "ip": "", "has_replies": false, "message": "Is Robert Scoble, Larry Lessig, and everyone commenting completely unaware that the President has, and has long had, an Office of Science and Technology Policy, the leader of which serves as the President's chief S&amp;T advisor?  Are you also unaware that there is a Deputy OSTP Director for Technology?<br><br>Furthermore, the idea that a good technologist (alone) would survive two days in that position is completely idiotic.  Success and influence at that level in Washington is a lot more about (duh) politics and turf battles than raw skills.  Just compare Rumsfeld vs. Powell early on in the Bush Administration.<br><br>Finally it is completely unclear what the role of a fictional CTO would be, or where they would actually sit in the Washington hierarchy.  Presumably they would work for the President, in which case they would help guide national policymaking and the budget process for S&amp;T.  Various agencies and entities around Washington already have their own CIO's, CTO's, etc as appropriate.<br><br>It could be that you mean there should be outside informal advisors on these issues, but it turns out that there are many of these already as well.  For example, the JASONS are a group of independent scientists, technologists, etc who tackle problems in national security.<br><br>If you actually want to know how Washington works, and why it does, and what you can do to help, I suggest you move here and learn.  Discussions like this is why people like you have no influence over \"how things work\" here.  And meeting a couple of Congressmen for a Qik broadcast doesn't count.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-08-22_19:03:03", "killed": false, "user_key": "b09944a931ab9616d6dfab7325568e40", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9708983": {"up_voted": false, "ip": "", "has_replies": false, "message": "I forgot Bruce Sterling. Have you heard his ideas about the Spimes?", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-08-22_18:53:41", "killed": false, "user_key": "88b87698be0bc461f3cacf1f080929d5", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9708984": {"up_voted": false, "ip": "", "has_replies": false, "message": "A CTO need to have vision, so the best candidate would be Neil Stephenson or William Gibson.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-08-22_18:52:46", "killed": false, "user_key": "88b87698be0bc461f3cacf1f080929d5", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9708985": {"up_voted": false, "ip": "", "has_replies": false, "message": "Robert:<br>Well, you've compiled an interesting list, but anyone who has headed their own startup or moved technology forward in thought (Lessig) or deed (Gates) has done more to advance technology than any position, real or imagined, in the Fedgov.<br>The real question:   is \"national CTO\" a policy position, an \"advisor\" position, or an \"internal leadership\" to the Fedgov position?<br>As the City of Seattle's CTO (also known as \"Chief Geek\"), I've given this some thought and blogged about it here:   <a href=\"http://blog.chiefseattlegeek.com\" rel=\"nofollow\">blog.chiefseattlegeek.com</a> .<br>In the end, I agree with Vint Cerf:  the last thing we need is another Fedgov \"czar\" (i.e. \"drug\" or \"intelligence\" or \"war on poverty\").   But I think we sure could use a skilled bureaucrat to harness the great technologies developed by the private sector for use in running the Fedgov and making it more efficient, effective and transparent in service to citizens.<br>-bill", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-08-30_00:57:06", "killed": false, "user_key": "93ae2425a5cdc23a7cb65c34f5af48ef", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9708986": {"up_voted": false, "ip": "", "has_replies": false, "message": "For all of you people who are enamored of the idea of a CTO of the federal government, let me remind you of the words of Thomas Jefferson, from our Declaration of Independance:<br><br>\"He hath erected a multitude of officers, and sent them forth to harass our people and eat out their substance.\"<br><br>Let me also remind you that we've had a couple of similar jobs in the federal government, and they've been basically useless.  Anyone remember that it was Tricky Dick Nixon (one of the worst presidents we've ever had) who invented the post of \"Energy Czar\"?<br><br>Get a grip, people.  This is a bonehead idea.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-08-29_01:52:54", "killed": false, "user_key": "8f8ff21a67437febebc70afd19364e95", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9708987": {"up_voted": false, "ip": "", "has_replies": false, "message": "Robert,<br><br>I like all the candidates you suggested but I think there's still someone I believe is very often overlooked: Carly Fiorina, the former CEO of HP.<br><br>Carly is a fantastically intelligent, technically literate, strategically effective, driven person who has the unique ability to work in both the tech and consumer worlds at the same time. She understands how technology can and does effect our lives and has shown a gift for crafting corporate strategy to be both effective and efficient.<br><br>Personally, I think Carly would be a fantastic choice. Too bad her time at HP has tainted her a bit. But I think if we look at her accomplishments beyond HP, we can see how she would be a strong candidate.<br><br>That'd be my choice.<br>That'd be pretty damn cool.<br><br>Anthony", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-08-25_02:48:21", "killed": false, "user_key": "d11b267b0b762bc03ac51ee6403f292a", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9708988": {"up_voted": false, "ip": "", "has_replies": false, "message": "Yert: nope, I am not passionate about doing this. I don't want to live in DC, either, which would be a huge factor in anyone's decision to do this. I would, however, love to have a dinner with whoever is CTO every once in a while.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-08-22_02:36:36", "killed": false, "user_key": "3553f5e0db0fd1ec4e40a932a2d8f5b3", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9708989": {"up_voted": false, "ip": "", "has_replies": false, "message": "Sounds like an interesting conversation. Hurry up and get it posted already!", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-08-22_02:35:58", "killed": false, "user_key": "6118e984137919ef45371c24c73d33ce", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9708990": {"up_voted": false, "ip": "", "has_replies": false, "message": "Why not volunteer Scoble? You can do it, right?", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-08-22_02:27:22", "killed": false, "user_key": "bff124908922d2a2e49152f66611fe6b", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9708991": {"up_voted": false, "ip": "", "has_replies": false, "message": "He/She wouldn't have to be that much of a geek - just someone who knows how to get the best from them.<br><br>Why not Steve Jobs?<br><br>He already likes white.<br>He's a great public speaker.<br>He gets the best from geeks/techs.<br>He could make using the government a lot easier.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-08-22_02:44:10", "killed": false, "user_key": "d079a23d1d88798d20a6a314fc747c12", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9708992": {"up_voted": false, "ip": "", "has_replies": false, "message": "Jim: unfortunately we're a bit backed up. Rocky can only do so much and we're headed to Berlin on Monday. We have a string of interesting interviews to get up, though. Doing two-camera HD shoots that have editing slows us way down.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-08-22_02:37:41", "killed": false, "user_key": "3553f5e0db0fd1ec4e40a932a2d8f5b3", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9708993": {"up_voted": false, "ip": "", "has_replies": false, "message": "Three points:<br><br>1) Robert fascinating conversation starter. I know my wheels are spinning<br><br><br>2) I know someone who could help you edit those interviews to get them up there faster!<br><br>3) There is no way Steve Jobs would be right for the job. The consumer tech market would fall off the shelf!<br><br>Look forward to the video.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-08-22_02:55:15", "killed": false, "user_key": "01cc6b4cb02313e2f7f4cdda3dd497dd", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9708994": {"up_voted": false, "ip": "", "has_replies": false, "message": "So Larry Lessig doing the talking, Steven Levitt providing the numbers, Mark Andreessen writing the plans and Joel Spolsky managing the projects. That will work. It will be the CTO that is visible but I think their team is as important.<br><br>The numbers and economics are probably the most important part, otherwise its peoples opinions guiding things.<br><br>Turning the numbers into projects probably isn't that hard. Especially when you compare it to something like to going to Mars.<br><br>As for corruption, just make all the numbers public in a format that we can parse and run correlation algorithms over.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-08-22_03:08:38", "killed": false, "user_key": "6bd21bc30fabdb5b2cdd6d494531cc27", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9708995": {"up_voted": false, "ip": "", "has_replies": false, "message": "Having served in that role for a Governor, I can tell you the cross-agency politics are maddening and incredibly difficult to navigate - even at that level and even with the full support of the Executive.  At the federal level, across the entire Executive Branch, I can't even begin to imagine how compounded that would be compared to my own experience...  Having said that, I do think it's a worthwhile goal to try to integrate the thinking, the policies, and the action with a *strong* CTO - if the person is really given the authority he or she needs to be effective.  I also believe this person could not be a token mid-level appointment.  They need the ear of the President and his backing to go out and kick some butt.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-08-22_03:20:52", "killed": false, "user_key": "2c71fce61f688317c29f91486a5c4f23", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9708996": {"up_voted": false, "ip": "", "has_replies": false, "message": "One more thing - I agree with Lessig (at least what he seemed to be saying) - you need someone who is both geek and evangelist.  But also, that person needs a huge amount of political / diplomatic deft, the ability to negotiate, and (while bold) they do need a sprinkling of personal humility.  Find me *that* among geek evangelists... ;)", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-08-22_03:24:48", "killed": false, "user_key": "2c71fce61f688317c29f91486a5c4f23", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9708997": {"up_voted": false, "ip": "", "has_replies": false, "message": "Meg Whitman? Jesus, why don't you just suggest Carly Fiorina? I don't think you could select anyone worse.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-08-22_03:43:38", "killed": false, "user_key": "1178ce2f664a6cee9a05a3e11af5d8d2", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9708998": {"up_voted": false, "ip": "", "has_replies": false, "message": "Btw, it's \"Holzschlag,\" not \"Holtzschalg.\"", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-08-22_03:44:28", "killed": false, "user_key": "1178ce2f664a6cee9a05a3e11af5d8d2", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9708999": {"up_voted": false, "ip": "", "has_replies": false, "message": "Here are a few others:<br><br>Vint Cerf<br>Al Gore<br>Tim Berners-Lee<br>Dennis C. Hayes or  Dale Heatherington", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-08-22_03:59:44", "killed": false, "user_key": "284ef8707741488c899af19d7a2ddd60", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9709000": {"up_voted": false, "ip": "", "has_replies": false, "message": "Why not have both? The CTO as a geek and a Chief Technology Advocate to be the \"Prime Minister\" type? That might be cool.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-08-22_07:52:12", "killed": false, "user_key": "f9302b855f6969f6b10433651b6c8e1f", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9709001": {"up_voted": false, "ip": "", "has_replies": false, "message": "Mike Arrington?<br><br>Anyway, I understand that the role of that CTO position would not be limited to the typical Silicon Valley stuff: Internet, assorted gadgetry, intellectual property stuff, etc. Consider other areas: medical, industrial, transportation, city management, intelligent homes... would R+D in these areas be encompassed too? I think this CTO needs a red cape and an embroidered \"S\" in his chest, then ;)", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-08-22_04:44:04", "killed": false, "user_key": "81b56cf86942c447a17db7c66be9f767", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9709002": {"up_voted": false, "ip": "", "has_replies": false, "message": "Putting any bright, articulate technologist in the halls of Washington, DC would be an enormous waste of his and her time. Especially the guys that you are listing.  Entrepreneurial, free spirits.<br><br>BTW.  I hope I misread the lack of sarcasm in your response that you believe you could take on a CTO role in DC (and are just passing).  If not your hubris is amazing, you have ZERO background/skills that would make you an appropriate match for that position...which might fit well with our leading candidate.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-08-22_04:45:24", "killed": false, "user_key": "3777c4a8881aba11fc27376cd9d3d84d", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9709003": {"up_voted": false, "ip": "", "has_replies": false, "message": "Surprised no-one's mentioned Doc Searls yet. He's got a solid track record setting the tone of the important issues (net neutrality, open source, open standards, the principles of web commerce). He's also engaging, persuasive, well respected and extremely well connected. This last point is critical; we need someone who'll be able to spot emerging trends and guage current opinion, and who is trusted by the whole industry to use this knowledge responsibly. And his stewardship of the VRM initiative has demonstrated political acumen.<br><br>Larry Lessig and Vint Cerf also meet the above criteria. Gates would fall way short, IMHO. We wouldn't want anyone too commercially minded in this role; the internet is for *everyone*, not just for companies (although of course an awareness of web commerce is essential). And as for Arrington...tell me this is a joke!<br><br>In terms of the traditional CTO role, I don't think it's all that important to have the technical knowledge oneself, so long as the other criteria are met. The successful candidate will have a staff. In fact Doc himself has proved that one can have a clear perspective on the best way forward without being able to write code.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-08-22_08:01:49", "killed": false, "user_key": "bb85c1976d55afdc05e312ed40a549b5", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9709004": {"up_voted": false, "ip": "", "has_replies": false, "message": "Al Gore??? OMG, lets get a bigger idiot on technology in there... Oh, wait there is none!<br><br>All he does is spout whats already out there with no clue as to what it is.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-08-22_08:40:47", "killed": false, "user_key": "8616f9fc7c781715dad69074ba8a1f16", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9709005": {"up_voted": false, "ip": "", "has_replies": false, "message": "And a few others:<br><br>Howard Schmidt - former cyber czar also eBay and Microsoft<br>Dawn Meyerriecks - AOL then DoD CTO<br>Bob Gourley - former DoD CTO<br>Dale Meyerrose - DNI CIO<br>Steve Cooper- Corning the DHS CIO<br>Marv Langston - DoD CIO", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-08-22_05:50:10", "killed": false, "user_key": "40f9264081bcf710798f87630c965866", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9709006": {"up_voted": false, "ip": "", "has_replies": false, "message": "having a campaigning process and then an election process might work-- oh wait that has its issues as well.  How about we have the public select-- maybe use a social network like IT Toolbox to have the voting and interviewing done.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-08-22_14:04:21", "killed": false, "user_key": "4e53f55ef8bfc986b36750a5ba6b3a0b", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9709007": {"up_voted": false, "ip": "", "has_replies": false, "message": "I think Bill Gates would be a good fit... but everyone hates Microsoft. Maybe someone from Sun?", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-08-22_14:46:53", "killed": false, "user_key": "e73fc4b5778f16df9ed5e286c8ea09be", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9709008": {"up_voted": false, "ip": "", "has_replies": false, "message": "If security is a big part of it, then I could see Richard Clarke get the nod, which is incredibly frightening. Bruce Schneider? Naw. Al Gore? LOL!", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-08-22_14:49:13", "killed": false, "user_key": "e73fc4b5778f16df9ed5e286c8ea09be", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9709009": {"up_voted": false, "ip": "", "has_replies": false, "message": "The idea of a national CTO is a good one, but @orcmid is right in noting that the problem that needs solving isn't finding smart technical people, it's herding the cats of politics and turf battles to get the gubmint moving in a sane direction. We might be better served by finding an organizer/arm-twister (like Peter Uberroth?) who could then enlist a task force from various parts of the industry for the technical answers.<br><br>It's great to think smart technical people could solve the problem, but when it comes to national policy (especially involving communications) it all boils down to politics, since the politicians control the budgets and the laws. That's not changing anytime soon.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-08-22_15:19:51", "killed": false, "user_key": "bf8c167cf3350901beb99737d0ad7173", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9709010": {"up_voted": false, "ip": "", "has_replies": false, "message": "Mike Ashworth, CIO, JP Morgan Chase", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-08-22_15:19:50", "killed": false, "user_key": "12bd9c2980864d6123b6818732f74255", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9709011": {"up_voted": false, "ip": "", "has_replies": false, "message": "How about another role -- making sure that the big companies play fair with technology, like the current debacle with Comcast. Keep the President advised on ways he can use the the bully pulpit to get people organized to make sure we don't all get rolled over by the companies. Kind of the antidote to Bush.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-08-22_15:27:41", "killed": false, "user_key": "2378b474e8eadf5da80e86c2bbc75a74", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9709012": {"up_voted": false, "ip": "", "has_replies": false, "message": "Al Gore has done more for the internet in the US than any other politician that I'm aware of. He get's technology and he (clearly) gets politics. I don't think there is a better candidate.<br><br>/r", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-08-22_16:31:07", "killed": false, "user_key": "ab3795c4b730c5963930e2dbd4a1b854", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9709013": {"up_voted": false, "ip": "", "has_replies": false, "message": "Mark Andreessen? No.<br>Dave Winer? Hell no.<br>Joel Spolsky? OH HELL NO.<br>Tantek Celik? No.<br>Molly Holzschalg? No.<br>Meg Whitman? Hell no.<br>Bill Gates? ...maybe.<br>Steve Wozniak? No.<br>Caterina Fake? No.<br><br>I submit, for your consideration: America's CTO, Ed Felten.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-08-22_16:51:47", "killed": false, "user_key": "5da797c7ea99285032d89a320f2b7485", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9709014": {"up_voted": false, "ip": "", "has_replies": false, "message": "Bill Gates? The epitome of tech oligarchists? As the CTO.gov in an Obama administration? I think not.<br><br>I like Winer's instincts about the role of OPEN TRANSPARENT tech in business and the economy and he's clearly an Obama guy, but he doesn't strike me as \"CTO material\" (I hope you take this as the compliment I intended it Dave).<br><br>The only other one on this list that I like is Andreessen, who I think is in fact \"CTO material\". But I'm not sure I trust his instincts on openness and transparency.<br><br>How about adding Doc Searls or Steve Gillmor to the list? They have the right stuff.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-08-22_18:01:38", "killed": false, "user_key": "4e61d9f4d1487130ea4d427e861c0488", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9709015": {"up_voted": false, "ip": "", "has_replies": false, "message": "Can I get a \"Lessig for US CTO\" bumper sticker?  Maybe I can make some...", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-08-25_12:41:13", "killed": false, "user_key": "708fc39a658f05f8c11ddbcf6d218446", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9709016": {"up_voted": false, "ip": "", "has_replies": false, "message": "Good question, Robert. Thanks for asking it.<br><br>I second Ed Felten.<br><br>And, while I appreciate Phil Whitehouse's nomination of yours truly, I'm busy and far less qualified than Ed (and many others).<br><br>FWIW, the extant Office of Science and Technology Policy is here: <a href=\"http://www.ostp.gov\" rel=\"nofollow\">http://www.ostp.gov</a>. It's headed by John H. Marburger, III. Here's a quick look at its bureaucracy: <a href=\"http://www.ostp.gov/cs/about_ostp/leadership_staff\" rel=\"nofollow\">http://www.ostp.gov/cs/about_ostp/leadership_staff</a>.<br><br>I'll say more in Linux Journal this morning. Have a look over there if you're interested. <a href=\"http://linuxjournal.com\" rel=\"nofollow\">http://linuxjournal.com</a>.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-08-25_08:14:40", "killed": false, "user_key": "ea253bf661e03852f85c239440a7dede", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9709017": {"up_voted": false, "ip": "", "has_replies": false, "message": "Shai Agassi and Eric Brewer spring to mind...", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-08-25_02:11:41", "killed": false, "user_key": "b88b1c85a798a2aee3a35f5cd805d0e2", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9709018": {"up_voted": false, "ip": "", "has_replies": false, "message": "Bill Gates would actually be the ideal candicate for this. (As long as he doesn't have directly influence over policy, but serve only as an advisory role to the leadership).<br><br>* He has a fantasic ability to grasp a hugely disparate set of very complex technology, and a great ability to articulate it to those who don't.<br>* He is already retired and don't control Microsoft tactical operations anymore.<br>* He already has done large filantropic work to make technology available to the masses, inline with the democratic platform.<br>* He is socially liberal, and used to be a democrat until Microsoft was attacked under the Clinton presidency (at which point he switched). Either way I don't think he'll mind serving under a Democratic president.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-08-24_19:54:47", "killed": false, "user_key": "a2296e07f15c8870e843977469d54e24", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9709019": {"up_voted": false, "ip": "", "has_replies": false, "message": "Any name will just create \"Oh Hell NO\" type responses.  I think this is just a way to drum up page hits... Like I just did", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-08-24_06:22:22", "killed": false, "user_key": "b84b16014961e6a64ea6ed761f502c45", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9709020": {"up_voted": false, "ip": "", "has_replies": false, "message": "It can't possibly be anyone that might be seen as biased. That rules out the likes of Bill Gates and Steve Jobs or any person with ties to an IT vendor, including board members.<br><br>Could you imagine if Bill recommended Vista? Or Steve said Macs?<br><br>Nope. It's gotta be someone with those qualities you asked for but who can be seen as independent and objective.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-08-22_08:43:25", "killed": false, "user_key": "72caa11f89bbbcde631b12caebd4bb91", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9709021": {"up_voted": false, "ip": "", "has_replies": false, "message": "I have to wonder how much a CTO could really accomplish in 4 years (maybe 8 if we are lucky). The gov't is full of legacy IT systems and a conservative culture. It would be an uphill battle without agency CTOs/CIOs on board with the policy changes. I am sure Lessig realizes this and I am curious how he thinks someone could cause change within such an environment.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-08-22_08:50:31", "killed": false, "user_key": "5b36d06e96a061b02eda1882cfb44b21", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9709022": {"up_voted": false, "ip": "", "has_replies": false, "message": "This is a terrible, terrible idea. Not only a terrible idea even to have a \"CTO position,\" but to put Lessig or Arrington or any other Silicon Valley technolibertarian or socialist. Bad, bad idea.<br><br>Lessig has been struggling for greater power and influence ever since he left Creative Commons, where he worked intensively to destroy the connection between intellectual property and commerce, and now he thinks \"transparency\" and \"corruption\" in government are a lucrative field -- except, of course, if Obama comes in, he's not going to be wanting to look too closely at Obama and his supporters (he's an Obama advisor) so what will he have to do? So he'll look to get appointed to some position in government next, and is only being coy about claiming he 'doesn't want the job\".<br><br>The larger issue, however, is the notion that you should even have such a technology czar untethered to the rest of our nation's policy machine. No, you don't get to install twittered and facebooked web 2.0 entities with flash mobs in power circumventing elected officials and the will of the American people.<br><br>Re: \"View #1 is a person who could help shape our nation\u2019s tech policies. This person would need to be a great speaker, because he or she would need to go to places like the World Economic Forum and communicate what our tech policy should be.\"<br><br>No, we don't need them to communicate what our tech policy is at some global body which will be politicized and reflect the tech policies of other great powers, some direct enemies. The UN or the WEF is the last place you go to shape policy; you have to start at home. And that means starting in the political process, and not installing extremists with agendas.<br><br>Just as the above poster said about \"Energy Czar\" (and we still have them for some regions like Eurasia), it's a way of creating less responsibility in government, not more, and giving a windfall to one lobby, in this case, Silicon Valley. No thanks.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-08-31_15:44:59", "killed": false, "user_key": "b1088dbd877c2d7d33e6b3b63ee38081", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9709023": {"up_voted": false, "ip": "", "has_replies": false, "message": "Scott Guthrie for CTO, Morgan Freeman or James Earl Jones for President! :D", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-08-22_12:36:47", "killed": false, "user_key": "8b8858c8a6022411fc9d48c1f4963928", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9709024": {"up_voted": false, "ip": "", "has_replies": false, "message": "i'm agree with orcmid . my idea is like him.thanks", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-08-22_13:34:09", "killed": false, "user_key": "42611e087a19fead85faf6458cb60e33", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9709025": {"up_voted": false, "ip": "", "has_replies": false, "message": "There's an assumption in what Lessig is saying about the use of technology and transparency that I'm not sure is true.  Wall St. is one of the heaviest users of technology, possibly they use it more than any other industry segment, but would you call them transparent?<br><br>Transparency comes from an organizational strategy that values transparency.  Technology effectively supports that approach if it exists or obfuscates if one is not careful.<br><br>Is there any reason to believe there's a correlation between technology use and transparency?  Theoretically, there should/could be.  Practically, technology may create mirages more effectively than a desert.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-08-22_11:57:55", "killed": false, "user_key": "dda2e598301f6bd3f909111045715f3f", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9709026": {"up_voted": false, "ip": "", "has_replies": false, "message": "Lessig would be perfect. I wouldn't mind seeing someone like Cory Doctorow. I'm betting Obama will find one of his nutty cronies like Reverend Wright to put there. McCain has the imagination of an avocado so he'd probably want Bill Gates, as this is probably the extent of his technology knowledge.<br><br>No one with a Platform to grind like Stallman. To be as intelligent as he is, he is terribly myopic.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-08-22_11:32:44", "killed": false, "user_key": "6404470b16de97a3705e55bda0386fcb", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9709027": {"up_voted": false, "ip": "", "has_replies": false, "message": "I'm honored, but I personally would rather work with others on some kind of technology task force (perhaps run by our CTO) to bring technology as well as excellent education to all people. Now that would be a political task I could get behind.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-08-22_11:25:27", "killed": false, "user_key": "b467deb4ea6a75878c75094ad2b1ef3c", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9709028": {"up_voted": false, "ip": "", "has_replies": false, "message": "I think there are two different positions (at least) of interest here.  First there is technology policy, and that could be a policy advisor position (though those don't always amount to much, depending on the President and other considerations).  Like, heard of any Science Policy Advisor incumbents lately?<br><br>The Federal agencies (all executive branch with a few exceptions) have CIOs and there is a CIO counsel.  They also work on the equivalent of enterprise architecture across the Federal Establishment.  There could be a CTO here, along with a national CIO for that matter.   What goes on here also impacts and relates to counterparts at the State level and there are occassions for coordinated efforts.  This is essentially about government operations in their rich variety.  For this end of it, it would help to understand what the Federal investment in ICT infrastructure, operations, and applications is.  You will blink.  Candidates for this level of responsibility and experience are not going to be geek household names.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-08-22_11:27:07", "killed": false, "user_key": "d3c4cdb15c832cfc746367a033b0d356", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9709029": {"up_voted": false, "ip": "", "has_replies": false, "message": "This is an interesting intellectual exercise, but one that doesn't seem to be grounded in any kind of reality. You need someone with clear answers to very difficult questions. And someone with a solid resume in today's political as well as technical issues. (\"Lost\" email, anyone?) Lessig is interesting, but like TBL, tends to hubris over pragmatism. Andreessen is an interesting choice, but not enough of a security wonk.<br><br>It's a tough call ... but Bruce Schneier would be a solid choice, especially on the security front. ('Beyond Fear' is a fantastic read, btw.)", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-08-22_10:25:16", "killed": false, "user_key": "d883c432e15403ace29e93d51973f9a0", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9709030": {"up_voted": false, "ip": "", "has_replies": false, "message": "Richard Stallman? ;-)<br><br>Man, you'd have to be brave to hire him ;-)", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-08-22_09:34:54", "killed": false, "user_key": "dc37fc66a7150187e8f7efcaaacf41cb", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9709031": {"up_voted": false, "ip": "", "has_replies": false, "message": "Actually, what about Guido Van Rossum, smart, gets things done. Has a 'simpler is better' view point. He also has the respect of nearly every geek I've ever met.<br><br>Interesting question. Pity it'll never happen, it'll be another oil puppet :-(", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-08-22_09:37:57", "killed": false, "user_key": "dc37fc66a7150187e8f7efcaaacf41cb", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9709032": {"up_voted": false, "ip": "", "has_replies": false, "message": "It really doesn't matter who you put in there.  What will their powers be?  What will their influence be?  I would think in reality this is just another useless position that really won't accomplish anything but more politics.<br><br>DC doesn't accomplish things, they just make them worse.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-08-22_09:09:29", "killed": false, "user_key": "1c09763fa1bee9def31872d464b5803c", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9709033": {"up_voted": false, "ip": "", "has_replies": false, "message": "\"he'd get retard corruption in the capitol\"... Perhaps you mean \"he'd retard corruption\"?", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-08-22_09:02:08", "killed": false, "user_key": "e513d6507faed4fc4625e71bd2961758", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9709034": {"up_voted": false, "ip": "", "has_replies": false, "message": "Right.  Like any of those are actually really options.<br><br>Here's a real list of candidates, ignoring all the retarded and Web 2.0 options:  <a href=\"http://www.kyle-brady.com/2008/08/23/americas-cto/\" rel=\"nofollow\">http://www.kyle-brady.com/2008/08/23/americas-cto/</a><br><br>--Kyle", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-08-23_19:48:41", "killed": false, "user_key": "e48326ef3ff568bb0720e0f4b7076245", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9709035": {"up_voted": false, "ip": "", "has_replies": false, "message": "If you could get Tantek Celik of Technorati to move from San Francisco then he might take the CTO position in DC...not!", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-08-23_18:36:12", "killed": false, "user_key": "3acfd8b331db19bcab0eda7af5846011", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9709036": {"up_voted": false, "ip": "", "has_replies": false, "message": "My votes for Lessig! Why? Just watch him talking about John McCain's<br>tech- politics; <a href=\"http://lessig.org/blog/2008/08/me_on_mccain_on_technology.html\" rel=\"nofollow\">http://lessig.org/blog/2008/08/me_on_mccain_on_...</a>", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-08-23_16:45:55", "killed": false, "user_key": "2a616dbaef27bb201f2cb026d464e406", "has_been_anonymized": true, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9709037": {"up_voted": false, "ip": "", "has_replies": false, "message": "Long Tail Stephen Manesish Corollary - Less of Lessig, is actually More.<br><br>We don't need a CTO, just as most good companies don't need self-important 'IT as an entity' CTO or CIOs, as every technology decision is in reality just a business decision.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-08-23_11:55:23", "killed": false, "user_key": "7f6291e8344b594235e57b843fc05d9b", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9709038": {"up_voted": false, "ip": "", "has_replies": false, "message": "Why not Steve Jobs?\u201d<br><br>Because he has a real job to do.<br><br>There is no need for yet another federal official to interfere with the computer industry. We got where we are today because we were largely left alone.<br><br>\u201cCarly is a fantastically intelligent, technically literate, strategically effective, driven person who has the unique ability to work in both the tech and consumer worlds at the same time. \u201d<br><br>I see you\u2019ve been reading her PR. Try talking to any HP employee for a different opinion. For that matter, try talking to any of the people from Lucent who were thrilled to see her go.", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-11-14_14:18:39", "killed": false, "user_key": "baaee5207919955665aaae80f9e5f4ac", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "1 year ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "9709039": {"up_voted": false, "ip": "", "has_replies": false, "message": "thanks", "is_last_child": false, "can_reply": false, "down_voted": false, "real_date": "2008-12-28_12:22:58", "killed": false, "user_key": "9b4341bcdc7683ce4befa9105be4cb46", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "11 months ago", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}}, "integration": {"receiver_url": "", "theme": 4, "reply_position": true, "disqus_logo": false}, "timer": {"timer_url": "http://localhost:8005", "thread_id": "18350330", "user_id": "anonymous", "forum_id": "125200", "hash": 9185009316809197736}, "thread": {"total_posts": 0, "paginate": false, "per_page": 0, "slug": "who_should_be_usa8217s_cto", "num_pages": 1, "days_alive": 0, "realtime_paused": true, "id": 18350330, "num_posts": 76, "closed": true, "queued": false, "killed": false}, "reactions_limit": 10, "context": {"show_reply": false, "use_fb_connect": true, "forum_facebook_key": "faaf467d0f47abde553c3b8e0e1b3570", "use_yahoo": false, "subscribed": false, "use_twitter_signin": true, "use_openid": false, "realtime_speed": 5000}, "reactions_start": 0, "settings": {"debug": false, "disqus_url": "http://disqus.com", "media_url": "http://media.disqus.com"}, "media_url": "http://media.disqus.com"};
	/* */ this.jsonData.cookie_messages = {"user_created": null, "post_has_profile": null, "post_twitter": null, "post_not_approved": null}; this.jsonData.session = {"url": null, "name": null, "email": null}; /* */

	
	this.curPageId = 'dsq-comments';

	this.frames = {};
};

var disqus_popup_reference = null;

if(typeof DsqLocal == 'undefined') {
	DsqLocal = {};
}



/**
 * Dsq.Strings: UI strings
 */
Dsq.Strings = new function() {
	this.ADD_NEW_COMMENT = "Add New Comment";
	this.LOG_INTO_DISQUS = "Log into DISQUS";
	this.USE_MEDIA = "Use Media";
	this.LOGOUT = "Logout";
	this.SHARING_OPTIONS = "Sharing options";
	this.SHARE_ON = "Share on";
	this.TWEET_THIS_COMMENT = "Tweet this comment";
	this.SHARE_ON_NEWSFEED = "Share on news feed";
	this.SEND_UPDATE_TO_YAHOO = "Send update to Yahoo!";
	this.REBLOG_ON = "Reblog on";
	this.CONFIGURE_OPTIONS = "Configure options";
	this.POST_AS = "Post as";
	this.SORT_BY = "Sort by";
	this.SUBSCRIBE_BY_EMAIL = "Subscribe by email";
	this.SUBSCRIBE_BY_RSS = "Subscribe by RSS";
	this.POPULAR_NOW = "Popular now";
	this.BEST_RATING = "Best Rating";
	this.NEWEST_FIRST = "Newest first";
	this.OLDEST_FIRST = "Oldest first";
	this.HIGHLIGHTED = "Highlighted";
	this.UNSUBSCRIBE = "Unsubscribe";
	this.REQUIRED = "Required";
	this.OPTIONAL = "Optional";
	this.YOU_ARE_COMMENTING_AS_A = "You are commenting as a";
	this.LOGIN_BELOW = "Login below";
	this.PLEASE_LOGIN_BELOW_TO_COMMENT = "Please login below to comment.";
	this.SUBSCRIBE_TO_ALL_COMMENTS_BY_EMAIL = "Subscribe to all comments by email";
	this.DO_NOT_SUBSCRIBE_TO_COMMENTS = "Do not subscribe to comments";
	this.REALTIME_UPDATING_IS = "Real-time updating is";
	this.ENABLED = "enabled";
	this.PAUSED = "paused";
	this.PAUSE = "Pause";
	this.RESUME = "Resume";
	this.SHOW = "Show";
	this.JUST_NOW = "Just now";
	this.REPLY = "Reply";
	this.EDIT = "Edit";
	this.FLAG = "Flag";
	this.MODERATE = "Moderate";
	this.CANCEL = "Cancel";
	this.REPLYING_TO = "Replying to";
	this.REPORT_MISSING_REACTIONS = "Report missing reactions";
	this.POST_A_COMMENT = "Post a comment";
	this.FLAG_INAPPROPRIATE_COMMENT = "Flag inappropriate comment";
	this.FLAGGED = "Flagged";
	this.NO = "No";
	this.YES = "Yes";
	this.NEVER_MIND = "Never mind";
	this.ARE_YOU_SURE_YOU_WOULD_LIKE_TO_REPORT_THIS_COMMENT_TO_A_MODERATOR = "Are you sure you would like to report this comment to a moderator";
	this.THIS_WILL_FLAG_COMMENTS_FOR_MODERATORS_TO_TAKE_ACTION = "This will flag comments for moderators to take action";
	this.TO_RATE_PLEASE_LOG_IN = "To rate, please log in";
	this.JUST_A_MOMENT = "Just a moment...";
	this.GUEST = "Guest";
	this.NAME = "Name";
	this.EMAIL = "Email";
  this.WEBSITE = "Website";
  this.SETTINGS = "Settings";
  this.MODERATOR_OPTIONS = "Moderator options: ";
  this.MODERATE_OPTIONS = "Moderate Options";

  // Thread moderator actions
  this.CLOSE_THREAD = "Close thread";
  this.OPEN_THREAD = "Open thread";
  this.REMOVE_THREAD = "Remove thread";
  this.RESTORE_THREAD = "Restore thread";
  this.ACTIONS = "Actions";
};
// Dsq.Strings

/**
 * Dsq.FmtStrings: functions that return interpolated UI strings
 */
Dsq.FmtStrings = new function() {
	// Seems we have to use named interpolation for Django to translate. Investigate more.
	this.LOGGED_IN_AS = function(username) {
		return Dsq.Utils.interpolate('Logged in as %(username)s', {username:username});
	};

	this.LOGOUT_FROM = function(disqus) {
		return Dsq.Utils.interpolate('Logout from %(disqus)s', {disqus:disqus});
	};

	this.SHOWING_COMMENTS_FULL = function(total, num) {
		if (num === 1) {
			return Dsq.Utils.interpolate("Showing <span id='dsq-num-posts'>%(num)s</span> of <span id='dsq-total-posts'>%(total)s</span> comment", {num:num, total:total});
		} else {
			return Dsq.Utils.interpolate("Showing <span id='dsq-num-posts'>%(num)s</span> of <span id='dsq-total-posts'>%(total)s</span> comments", {num:num, total:total});
		}
	};

	this.SHOWING_COMMENTS_WITHOUT_PAGINATION = function(num) {
		if (num === 1) {
			return Dsq.Utils.interpolate("Showing <span id='dsq-num-posts'>%(num)s</span> comment", {num:num});
		} else {
			return Dsq.Utils.interpolate("Showing <span id='dsq-num-posts'>%(num)s</span> comments", {num:num});
		}
	};

	this.NUMBER_OF_COMMENTS = function(num) {
		return Dsq.Utils.interpolate(
			(num == 1
				? '%(num)s comment'
				: '%(num)s comments'
			), {num:num});
	};

	this.NUMBER_OF_LIKES = function(num) {
		return Dsq.Utils.interpolate(
			(num == 1
				? '%(num)s like'
				: '%(num)s likes'
			), {num:num});
	};

	this.NUMBER_OF_POINTS = function(num) {
		return Dsq.Utils.interpolate(
			(num == 1
				? '%(num)s point'
				: '%(num)s points'
			), {num:num});
	};
};
// Dsq.FmtStrings





Dsq.CSRF_TOKEN = 'a2d140c59df8cd4ce27a20e0829cacd8';
Dsq.COMMENTS_RE = /(<li.*?id="?dsq-comment-(\d+)"?.*?>)((?:.|\s)*?)(<\/li>)/gim;
Dsq.POST_RE = /(<div.*?id="?dsq-comment-header-(\d+)"?.*?>)((?:.|\s)*?)(<\/div>)\s*(<div.*?class="?dsq-comment-body"?.*?>)((?:.|\s)*)(<\/div>)/gim;
Dsq.POST_BODY_RE = /\s*(<div.*?id="?dsq-comment-message-(\d+)"?.*?>)((?:.|\s)*)(<\/div>)/gim;
// HACK: Safari ends with "-->" while other browsers end with "--&gt;" as expected.
Dsq.MEDIA_POST_RE = /&lt;!--\[(.*?)\]--(?:>|&gt;)/gim;



var FragmentPacket = function(reader, writer, writer_url, is_child, receiveCallback) {
	var that = this;
	this.reader = reader;
	this.writer = writer;
	this.writer_url = writer_url;

	this.is_child = is_child || false;
	this.receiveCallback = receiveCallback;

	this._lastHash = null;

	this._accumMsg = '';

	this._lastSeqno = 0;

	this.MAX_DATA_LEN	= 1024;

	this.WAIT_TIME		= 10;

	this.READY		= 0x1;
	this.WRITING	= 0x2;
	this.FIN		= 0x4;
	this.ACK		= 0x8;

};

FragmentPacket.prototype.createListener = function() {
	var that = this;
	var listener = function() {
		that.recv();
	};
	return window.setInterval(listener, 10);
};

FragmentPacket.prototype.log = function(msg) {



};

FragmentPacket.prototype.recv = function() {
	var hash;
	if (/MSIE/.test(navigator.userAgent)) {

		hash = this.reader.name;
	} else {

		var hashIndex = this.reader.location.href.indexOf('#');
		if (hashIndex == -1) {
			return;
		}
		hash = this.reader.location.href.substring(hashIndex+1);
	}
	var flags = parseInt(hash.substring(0, 4), 10);
	var seqno = parseInt(hash.substring(4, 24), 10);
	var data  = hash.substring(24);

	if (this._lastHash !== hash) {
		this._lastHash = hash;
		this.log('recv: ' + hash);

		this.log(' flags: ' + flags);
		this.log(' seqno: ' + seqno + ' len: ' + hash.substring(4, 24).length + ' (' + hash.substring(4, 24) + ')');
		this.log(' data: ' + data + ' len: ' + data.length);

		this._lastSeqno = seqno;

		if (flags & this.WRITING) {
			this._accumMsg += data;
			this.sendFlag(this.ACK, seqno);
			if (flags & this.FIN) {
				this.log('recv finished: ' + decodeURIComponent(this._accumMsg));
				this.receiveCallback(decodeURIComponent(this._accumMsg));

				this._accumMsg = '';

				this.sendFlag(this.READY | this.ACK, this._lastSeqno);
			}
		}
	}

	return {
		flags: flags,
		seqno: seqno,
		data: data
	};
};

FragmentPacket.prototype.sendRawPacket = function(packet) {
	if (/MSIE/.test(navigator.userAgent)) {
		this.writer.name = packet;
	} else {

		this.writer.location.href = this.writer_url + '#' + packet;
	}

};

FragmentPacket.prototype.sendFlag = function(flag, seqno) {
	this.sendRawPacket(this._zerofill(flag, 4) + this._zerofill(seqno, 20));
};

FragmentPacket.prototype.send = function(msg) {
	this._send(0, encodeURIComponent(msg));
};

FragmentPacket.prototype._send = function(packetNum, msg) {
	var that = this;
	var recvBuf = this.recv();

	if (packetNum === 0) {

		if (!(recvBuf.flags & this.READY)) {
			this.log('client is not ready, waiting...');
			window.setTimeout(function() { that._send(packetNum, msg); }, this.WAIT_TIME);
			return;
		}
	} else {

		if (!( (recvBuf.flags & this.ACK) && (recvBuf.seqno === this._lastSeqno) )) {
			this.log('waiting for ack from client...');
			window.setTimeout(function() { that._send(packetNum, msg); }, this.WAIT_TIME);
			return;
		} else {
			this.log('received ack: ' + this._lastSeqno + ' ' + recvBuf.seqno);
		}
	}

	var flags = this.WRITING;
	var num_packets = Math.ceil(msg.length / this.MAX_DATA_LEN);
	this.log('num_packets: ' + num_packets);

	if (num_packets === packetNum) {

		this.log('message successfully sent!');
		this.sendFlag(this.READY | this.ACK, this._lastSeqno);
		return true;
	}

	this._lastSeqno++;

	if (packetNum == num_packets-1) {
		flags |= this.FIN;
	}

	var data = msg.substring(packetNum * this.MAX_DATA_LEN, (packetNum+1) * this.MAX_DATA_LEN);
	var packet = this._zerofill(flags, 4) + this._zerofill(this._lastSeqno, 20) + data;

	this.log('sending raw packet: ' + packet);
	this.sendRawPacket(packet);

	return this._send(packetNum + 1, msg);
};

FragmentPacket.prototype._zerofill = function(num, width) {
	var retval = num.toString();
	var retval_len = retval.length;
	for (var i = 0; i < width - retval_len; i++) {
		retval = '0' + retval;
	}
	return retval;
};

var PostMessagePacket = function(receiver, receiveCallback, id, receiverId) {
	var that = this;
	this.receiver = receiver;
	this.receiveCallback = receiveCallback;
	this.id = id;


	this.receiverId = receiverId;
};

PostMessagePacket.prototype.createListener = function() {
	var that = this;

	var listener = function(e) {

		if (!that.id) {
			that.id = e.data;
			return;
		}


		var id = e.data.split(';')[0];
		if (id !== that.id) {
			return;
		}
		var data = e.data.substring(e.data.indexOf(';') + 1);

		that.receiveCallback(data);
	};

	if (typeof window.attachEvent == 'function') {
		window.attachEvent('onmessage', listener);
	} else if (typeof window.addEventListener == 'function') {
		window.addEventListener('message', listener, false);
	} else {
		throw new Error('No method found to create event listener for PostMessagePacket.');
	}
};

PostMessagePacket.prototype.send = function(msg) {



	var needs_reget = false;
	try {
		if (typeof this.receiver.id == 'undefined' || typeof this.receiver.postMessage == 'undefined') {
			needs_reget = true;
		}
	} catch(e) {


	}
	if (needs_reget && typeof this.receiverId != 'undefined') {
		this.receiver = document.getElementById(this.receiverId).contentWindow;
	}

	var packet;
	if (!msg) {

		packet = this.id;
	} else {
		packet = this.id + ';' + msg;
	}
	this.receiver.postMessage(packet, '*');
};

PostMessagePacket._last_unique_id = null;
PostMessagePacket._get_unique_id = function() {
	var id = (new Date()).getTime();
	if (id == PostMessagePacket._last_unique_id) {
		id++;
	}
	PostMessagePacket._last_unique_id = id;
	return id.toString();
};

var JsonRpc = function() {

	this.ids = {};

	this.objectToJSON = function(obj) {
		var json = '';
		var results = [];

		if (obj === undefined || obj === null) {
			return 'null';
		}

		switch (obj.constructor) {
			case Object:
				for (var property in obj) {
					if (obj.hasOwnProperty(property)) {
						results.push(this.objectToJSON(property) + ': ' + this.objectToJSON(obj[property]));
					}
				}
				json = '{' + results.join(', ') + '}';
				break;
			case Array:
				for (var i = 0; i < obj.length; i++) {
					results.push(this.objectToJSON(obj[i]));
				}
				json = '[' + results.join(', ') + ']';
				break;
			case Number:
			case Boolean:
				json = obj.toString();
				break;
			case String:

				var specialChars = {'\b': '\\b', '\t': '\\t', '\n': '\\n', '\f': '\\f', '\r': '\\r', '\\': '\\\\'};

				json = obj.replace(/[\x00-\x1f\\]/g, function(match) {
					var ch = specialChars[match];
					return ch ? ch : '\\u00' + match.charCodeAt().toPaddedString(2, 16);
				});

				json = '"' + json.replace(/"/g, '\\"') + '"';
				break;
			default:

				json = 'null';
				break;
		}

		return json;
	};

	this.createHandler = function(send_func, registered_funcs) {
		var that = this;
		var handler = function(message) {

			try {
				var rpc = eval('(' + message + ')');
			} catch(e) {
				alert('bad JSON: ' + message);
				return;
			}
			if (rpc.method) {

				if (!registered_funcs[rpc.method]) {
					return;
				}

				var retval = registered_funcs[rpc.method].apply(null, rpc.params);
				if (rpc.id) {
					var response = {
						result: retval,
						error: null,	// TODO
						id: rpc.id
					};
					send_func(that.objectToJSON(response));
				}
			} else if(rpc.result) {

				if (!that.ids[rpc.id]) {
					return;
				}

				that.ids[rpc.id](rpc.result);
				delete that.ids[rpc.id];
			}
		};
		return handler;
	};

	this.execute = function(send_func, method, params, response_callback) {
		response_callback = response_callback || null;
		var id = (response_callback) ? (new Date()).getTime() : null;

		var request = {
			method: method,
			params: params,
			id: id
		};

		send_func(this.objectToJSON(request));

		if (id) {
			this.ids[id] = response_callback;
		}
	};
};
JsonRpc = new JsonRpc();

var ParentMessenger = function(childUrl, receiverUrl, container, receiveCallback) {


	if (navigator.userAgent.indexOf('Safari') >= 0 && parseInt(navigator.userAgent.substring(navigator.userAgent.indexOf('Version/') + 8), 10) == 3) {
		throw new Error("unsupported.");
	} else if (window.opera) {
		throw new Error("unsupported.");
	}



	if (!receiverUrl &&
		navigator.userAgent.indexOf('Gecko') >= 0 &&
		parseFloat(navigator.userAgent.slice(navigator.userAgent.indexOf('rv:') + 3, navigator.userAgent.indexOf('rv:') + 6)) < 1.9) {
		throw new Error("unsupported.");
	}


	if (/msie/i.test(navigator.userAgent) && !/opera/i.test(navigator.userAgent)) {


		if (document.domain == window.location.hostname) {
			receiverUrl = '';
		}
	}

	var that = this;
	this.childUrl = childUrl;
	this.receiverUrl = receiverUrl;
	this.container = container || document.body;

	this.packetHandler = null;


	this._ready = false;
	this._error = false;


	var _createReceiverForFragmentPacket = function() {

		that.receiver = document.createElement('iframe');
		that.receiver.src = receiverUrl;
		that.receiver.id = 'receiver_' + (new Date()).getTime();
		that.receiver.name = that.receiver.id;

		that.receiver.frameBorder = '0';
		that.receiver.frameSpacing = '0';
		that.receiver.style.borderStyle = 'none';

		var receiver_onload = function() {
			var receiver = document.getElementById(that.receiver.id).contentWindow;

			try {
				receiver.document.body.innerHTML = '';
			} catch(e) {

				that._error = true;
			}
			receiver.document.body.style.padding = '0px';
			receiver.document.body.style.margin = '0px';

			var child = receiver.document.createElement('iframe');
			child.id = 'child';
			child.name = 'child';
			child.src = that.childUrl;

			child.frameBorder = '0';
			child.frameSpacing = '0';
			child.style.borderStyle = 'none';
			child.style.width = '100%';
			child.style.height = '100%';
			receiver.document.body.appendChild(child);

			that.child = receiver.document.getElementById('child').contentWindow;
			that.receiver = receiver;

			that.packetHandler = new FragmentPacket(that.receiver, that.child, that.childUrl, false, receiveCallback);

			that._listener = that.packetHandler.createListener();

			that.packetHandler.sendFlag(that.packetHandler.READY, 0);

			that._ready = true;
		};

		that.receiver.onreadystatechange = function() {
			if (this.readyState == 'complete') {
				receiver_onload();
			}
		};

		that.receiver.onload = receiver_onload;







		if (Dsq.Utils.ie) {
			if (that.container.clientWidth === 0) {

				var _waitForWidth = function() {
					if (that.container.clientWidth > 0) {
						Dsq.Utils.fixIframesIE(that.container.id);
					} else {
						window.setTimeout(_waitForWidth, 100);
					}
				};
				_waitForWidth();

				that._once = false;
				that.receiver.onresize = function() {
					if (!that._once) {
						Dsq.Utils.fixIframesIE(that.container.id);
					}
					that._once = true;
				};
			}
		}

		that.container.appendChild(that.receiver);
	};


	var _createReceiverForPostMessage = function() {

		var receiver_onload = function() {

			that.packetHandler.send();
			that._ready = true;
		};

		var id = PostMessagePacket._get_unique_id();
		var receiverId = 'child_' + id;


		ParentMessenger['_receiver_onload_' + receiverId] = receiver_onload;

		that.container.innerHTML += '<iframe ' +
			'src="' + childUrl + '" ' +
			'id="' + receiverId + '" ' +
			'name="' + receiverId + '" ' +
			'onload="ParentMessenger._receiver_onload_' + receiverId +'();" ' +
			'></iframe>';

		that.receiver = document.getElementById(receiverId).contentWindow;
		that.packetHandler = new PostMessagePacket(that.receiver, receiveCallback, id, receiverId);
		that._listener = that.packetHandler.createListener();
	};

	if (typeof window.postMessage == 'function') {
		_createReceiverForPostMessage();
	} else {
		_createReceiverForFragmentPacket();
	}

};

ParentMessenger.prototype.sendMessage = function(message) {
	var that = this;
	if (!this._ready) {

		window.setTimeout(function() { that.sendMessage(message); }, 10);
		return;
	}
	this.packetHandler.send(message);
	return true;
};

Dsq.NewFrames = function(url) {
	this.url = url;
};

Dsq.NewFrames.prototype.init = function(onFailure) {
	var that = this;

	try {
		this.messenger = new ParentMessenger(this.url, Dsq.jsonData.integration.receiver_url, this.container, this.receive_callback);
	} catch(e) {
		if (typeof onFailure == 'function') {
			onFailure();
		}
	}

	if (typeof onFailure == 'function') {
		var iId = window.setInterval(function() {
			if (typeof that.messenger == 'undefined') {
				window.clearInterval(iId);
				return;
			}
			if (that.messenger._ready) {
				window.clearInterval(iId);
			} else if (that.messenger._error) {
				window.clearInterval(iId);
				onFailure();
			}
		}, 10);
	}
};

Dsq.NewFrames.prototype._execute = function(method, args, callback) {
	var that = this;
	if (typeof that.messenger == 'undefined') {
		return false;
	}
	JsonRpc.execute(
		function(msg) { that.messenger.sendMessage(msg); },
		method,
		args || [],
		callback);
	return true;
};

Dsq.ReplyFrame = function(container, parent_post_id) {
	var that = this;
	this.container = container;
	this.parent_post_id = parent_post_id;

	var sendFunc = function(msg) {

		Dsq.Debug.log('Dsq.ReplyFrame.sendFunc');
		that.messenger.sendMessage(msg);
	};


	var postComment_onSuccess = function(response) {
		Dsq.jsonData.posts[response.message.id] = response.message.post_meta;
		if (!Dsq.jsonData.users[response.message.post_meta.user_key]) {
			Dsq.jsonData.users[response.message.post_meta.user_key] = response.message.user_meta;
		}


		var reply_position = (typeof(disqus_insert_wrt_sort) == 'undefined' 
			? (Dsq.jsonData.forum.reply_position ? -1 : null) 
			: (Dsq.jsonData.request.sort == 2 ? null : -1));
		
		if (response.message.post_meta.approved) {
			Dsq.Post.insert(response.message.post_meta.parent_post_id || reply_position, response.message.id, response.message.post_meta.message);
		}

		Dsq.Templates.postComment_onSuccess(response, parent_post_id, response.message.id);
	};

	var postComment_onFailure = function(response) {
		Dsq.Popup.popModal(response.message, 'Error');
		Dsq.Templates.postComment_onFailure(response, parent_post_id, response.message.id);
	};

	var editComment_onSuccess = function(response) {
		var post_id = parent_post_id;
		var message = Dsq.$('dsq-comment-message-' + post_id);
		
		message.innerHTML = response.message;
		Dsq.Templates.toggleEdit(post_id);
		Dsq.Templates.setLoadingButton(false);
	};
	
	var editComment_onFailure = function(response) {
		var post_id = parent_post_id;
		
		Dsq.Popup.popModal('Sorry, there was an error editing this comment.', 'Edit Error');
		Dsq.Templates.toggleEdit(post_id);
		Dsq.Templates.setLoadingButton(false);
	};

	var getUserByEmail_onSuccess = function(response) {
		var msg = response.message;
		var fields = Dsq.Templates.getFormFields(parent_post_id);

		if (msg.username) {

			Dsq.Templates.lightboxAuthenticate(parent_post_id, 'login', {
				'username': msg.username,
				'display_name': msg.display_name,
				'avatar_url': msg.avatar_url,
				'verified': msg.verified,
				'email': fields.email.value
			});
		} else {

			Dsq.Templates.lightboxAuthenticate(parent_post_id, 'register');
		}
	};

	var validateAuth_onSuccess = function(response, auth_choice) {
		Dsq.Templates.postComment(parent_post_id, null, true, auth_choice);
	};

	var validateAuth_onFailure = function(response, auth_choice) {
		var pid = parent_post_id ? '-' + parent_post_id : '';
		var msg = response.message;

		if (auth_choice == 'register') {
			var fields = ['email', 'username', 'password'];

			for (var i = 0; i < fields.length; i++) {
				var field = fields[i];
				var errorDiv = Dsq.$('dsq-' + field + '-errors' + pid);

				if (msg[field]) {
					errorDiv.innerHTML = msg[field];
				} else {
					errorDiv.innerHTML = '';
				}
			}
		} else if (auth_choice == 'login') {
			Dsq.$('dsq-lightbox-errors' + pid).innerHTML = '<p>We couldn\'t log you in. Please verify your login.</p>';
		}
		
		Dsq.Templates.setLoadingButton(false);
	};

	this.receive_callback = JsonRpc.createHandler(sendFunc, {
		'postComment.onSuccess': postComment_onSuccess,
		'postComment.onFailure': postComment_onFailure,
		'editComment.onSuccess': editComment_onSuccess,
		'editComment.onFailure': editComment_onFailure,		
		'getUserByEmail.onSuccess': getUserByEmail_onSuccess,
		'validateAuth.onSuccess': validateAuth_onSuccess,
		'validateAuth.onFailure': validateAuth_onFailure,
		'reload': function() { window.location.reload(); }
	});

	this.url = Dsq.Urls.REPLY +
		'?' + (new Date()).getTime() +
		'&f=scobleizer' +
		'&t=who_should_be_usa8217s_cto' +
		'&ff=' + Dsq.Thread.ff +
		'&default_text=' + encodeURIComponent(disqus_default_text) +
		'&ifrs=' + encodeURIComponent(disqus_iframe_css);
	if (this.parent_post_id) {
		this.url += '&parent_post=' + this.parent_post_id;
	}
};

Dsq.ReplyFrame.prototype = new Dsq.NewFrames(Dsq.ReplyFrame.url);

Dsq.ReplyFrame.prototype.post = function(author_name, author_email, author_url, authenticate, sharing_services, subscribe) {
	this._execute('postComment', [author_name, author_email, author_url, authenticate, sharing_services, subscribe]);
};

Dsq.ReplyFrame.prototype.edit = function(post_id, message) {
	this._execute('editComment', [post_id, message]);
};

Dsq.ReplyFrame.prototype.setState = function(parent_post_id, depth) {
	this._execute('setState', [parent_post_id, depth]);
};

Dsq.ReplyFrame.prototype.getUserByEmail = function(email) {
	this._execute('getUserByEmail', [email]);
};

Dsq.ReplyFrame.prototype.validateAuth = function(auth_choice, email, username, password) {
	this._execute('validateAuth', [auth_choice, email, username, password]);
};

Dsq.ReplyFrame.prototype.authenticateFacebook = function(session, forum_url) {
	this._execute('authenticateFacebook', [session, forum_url]);
};

	Dsq.Facebook = function() {
	var that = this;

	var handleSessionData = function(session) {

		var forum_url = Dsq.jsonData.forum.url;




		if (typeof disqus_facebook_forum != 'undefined') {
			forum_url = disqus_facebook_forum;
		}
		Dsq.frames.reply_0.authenticateFacebook(session, forum_url);
	};

	var onLogin = function() {
		FB.Connect.getSignedPublicSessionData(handleSessionData);
	};

	this.login = function() {
		FB.Connect.requireSession(onLogin, true);
	};
};
Dsq.Facebook = new Dsq.Facebook();


	






Dsq.Themes = {};

Dsq.Themes.narcissus = new function() {
	this.addPostContainer = 'dsq-form-area';
	this.textareaContainer = 'dsq-textarea-wrapper';



	
	this.header = function() {
		var comments_count, total_posts, num_posts;
		var html = '';
		var missing_perm_tmpl;

		if (Dsq.jsonData.request.missing_perm) {
			missing_perm_tmpl = Dsq.Templates.missingPermissions();
			if (missing_perm_tmpl) {
				html += '<div class="dsq-missing-permissions">' + missing_perm_tmpl + '</div>';
			}
		}

		total_posts = Dsq.jsonData.thread.total_posts;
		num_posts = Dsq.jsonData.thread.num_posts;

		if (total_posts) {
			comments_count = Dsq.FmtStrings.SHOWING_COMMENTS_FULL(total_posts, num_posts);
		} else {
			comments_count = Dsq.FmtStrings.SHOWING_COMMENTS_WITHOUT_PAGINATION(num_posts);
		}

		html += ' \
		<div id="dsq-comments-title"> \
			<h3>' + comments_count + '</h3> \
		</div> \
		';

		html += ' \
		<div class="dsq-options"> \
			<span class="dsq-item-sort">'
				+ Dsq.Strings.SORT_BY + ' \
				<select id="dsq-sort-select" onchange="Dsq.Thread.sortBy(this.value);"> \
					<option value="hot" ' + (Dsq.jsonData.request.sort == 4 ? 'selected="selected"' : '') + '>' + Dsq.Strings.POPULAR_NOW + '</option> \
					<option value="best" ' + (Dsq.jsonData.request.sort == 3 ? 'selected="selected"' : '') + '>' + Dsq.Strings.BEST_RATING + '</option> \
					<option value="newest" ' + (Dsq.jsonData.request.sort == 2 ? 'selected="selected"' : '') + '>' + Dsq.Strings.NEWEST_FIRST + '</option> \
					<option value="oldest" ' + (Dsq.jsonData.request.sort == 1 ? 'selected="selected"' : '') + '>' + Dsq.Strings.OLDEST_FIRST + '</option> \
				</select> \
				&nbsp; \
			</span> \
			<span class="dsq-subscribe-email"> \
				<img src="http://media.disqus.com/images/embed/email.png" style="width:12px;height:12px;vertical-align:middle"> \
				<span id="dsq-subscribe">'
					+ (Dsq.jsonData.context.subscribed
						? '<a href="#" onclick="Dsq.Thread.subscribe(0); return false">' + Dsq.Strings.UNSUBSCRIBE + '</a>'
						: '<a href="#" onclick="Dsq.Thread.subscribe(1); return false">' + Dsq.Strings.SUBSCRIBE_BY_EMAIL + '</a>')
				+ '</span> \
			</span> \
			<span class="dsq-subscribe-rss" style="width:12px;height:12px;vertical-align:middle"> \
				<img src="http://media.disqus.com/images/embed/bullet-feed.png" alt="" /> \
				<a href="http://scobleizer.disqus.com/who_should_be_usa8217s_cto/latest.rss">' + Dsq.Strings.SUBSCRIBE_BY_RSS + '</a> \
			</span> \
		</div> \
		';

		
		

		return html;

	};
	
	this.footer = function() {
		var html = '';

		html += Dsq.Templates.pagination();

		
		
			html += Dsq.Templates.realtime();
			html += Dsq.Templates.showThreadSettings();
			html += Dsq.Templates.postBox();

		html += Dsq.Templates.reactions();

		
			html += Dsq.Templates.trackbacks();
		


		if (Dsq.jsonData.request.is_global_moderator) {
 			html += ' \
				<div class="dsq-global-moderator-extras">'
					+ '<strong>shortname:</strong> ' + Dsq.jsonData.forum.url
					+ '<strong>thread id:</strong> ' + Dsq.jsonData.thread.id
					+ '<strong>thread slug:</strong> ' + Dsq.jsonData.thread.slug
				+ '</div> \
			';
		}

		return html;
	};
	
	this.realtime = function() {
		var html = '';
		
		if (Dsq.jsonData.realtime_enabled) {
			html += '<div id="dsq-realtime-options" class="dsq-options">'
					 + Dsq.Strings.REALTIME_UPDATING_IS + ' <strong id="dsq-realtime-status" style="text-transform: lowercase">' + Dsq.Strings.ENABLED + '</strong>. \
					 <a href="#" id="dsq-realtime-toggle" style="text-transform: capitalize"></a> \
					</div>';
		}

		if (!Dsq.jsonData.forum.streaming_realtime) {
			html += ' \
				<div style="display: none" id="dsq-realtime-alert" class="dsq-realtime-alert"><span id="dsq-realtime-queued"></span> <a href="#" id="dsq-realtime-show"></a></div> \
			';
		}
		
		return html;
	};

	this.showThreadSettings = function() {
		if (!Dsq.jsonData.request.is_moderator) {
			return '';
		}

		html = '<div id="dsq-thread-settings" class="dsq-thread-settings">' + Dsq.Strings.MODERATOR_OPTIONS;
		html += '<a href="#" onclick="Dsq.Thread.showSettings(); return false;">' + Dsq.Strings.SETTINGS + '</a>';
		html += '<a href="#" onclick="Dsq.Thread.showModeratorActions(); return false;">' + Dsq.Strings.MODERATE + '</a>';
		if (Dsq.jsonData.forum.reactions_enabled && Dsq.jsonData.reactions.length === 0) {
			html += '<a href="#" onclick="Dsq.Reaction.reportMissingReactions(); return false;">'
						+ Dsq.Strings.REPORT_MISSING_REACTIONS
						+ '</a>';
		}
		html +='</div>';

		return html;
	};

	this.postBox = function(post_id, use_fallback_iframe) {


		var html;
		var display_sharing_options = Dsq.jsonData.request.is_authenticated;

		if (!Dsq.jsonData.request.is_authenticated && Dsq.jsonData.forum.disqus_auth_disabled && !Dsq.jsonData.forum.allow_anon_post) {
			return '';
		}
		
		if (Dsq.jsonData.request.is_remote) {


			if (!Dsq.jsonData.request.sharing.hasOwnProperty(Dsq.jsonData.request.remote_domain)) {
				display_sharing_options = false;
			}
		}
		
		if (post_id) {
			var _meta = Dsq.jsonData.posts[post_id];
			var userData = Dsq.jsonData['users'][_meta.user_key];				
		}
		
		var pid = post_id ? '-' + post_id : '';

		var _requestUserInfo = function() {
			var html;



			var user_has_email = false;

			html = '<div class="dsq-request-user-info"> <!-- // If authenticated --> \
				<a href="' + Dsq.jsonData.settings.disqus_url + Dsq.Urls.LOGOUT + '?ctkn=' + Dsq.CSRF_TOKEN + '" class="dsq-request-user-logout">' + Dsq.Strings.LOGOUT + '</a> \
				<table> \
					<tr> \
						<td rowspan="2">'
							+ (!Dsq.jsonData.forum.disqus_auth_disabled ? '<a href="' + Dsq.jsonData.settings.disqus_url + Dsq.Urls.REQUEST_USER_PROFILE + '">' : '')
								+ '<img src="' + Dsq.Urls.REQUEST_USER_AVATAR + '" width="48" height="48" class="dsq-request-user-avatar">'
							+ (!Dsq.jsonData.forum.disqus_auth_disabled ? '</a>' : '')
						+ '</td> \
						<td class="dsq-request-user-name">'
								+ (Dsq.jsonData.request.is_remote
									 ? '<span class="dsq-badge-small dsq-badge-' + Dsq.jsonData.request.remote_domain + '">' + Dsq.jsonData.request.remote_domain + '</span>'
									 : (Dsq.jsonData.request.is_verified
											? '<span class="dsq-badge-small dsq-badge-verified">Verified</span>'
											: '<span class="dsq-badge-small dsq-badge-registered">Registered</span>'))
							+ (!Dsq.jsonData.forum.disqus_auth_disabled ? ' <a href="' + Dsq.jsonData.settings.disqus_url + Dsq.Urls.REQUEST_USER_PROFILE + '">' : '') 
								+ Dsq.jsonData.request.display_username 
							+ (!Dsq.jsonData.forum.disqus_auth_disabled ? '</a>' : '')
							+  (Dsq.jsonData.request.is_remote && user_has_email ? ' <small>(<a href="#" onclick="Dsq.Popup.remoteAccountSettings(); return false;">change settings</a>)</small>' : '')
							+  (!Dsq.jsonData.request.is_remote && !Dsq.jsonData.forum.disqus_auth_disabled ? ' <small>(<a href="' + Dsq.jsonData.settings.disqus_url + '/profile/info/" target="_blank">change name</a> or <a href="' + Dsq.jsonData.settings.disqus_url + '/profile/avatar/" target="_blank">picture</a>)</small>' : '')
						+ '</td> \
					</tr> \
					<tr> \
						<td class="dsq-request-user-stats"> \
							<span><big>' + Dsq.jsonData.request.comments_count + '</big> ' + (Dsq.jsonData.request.comments_count == 1 ? 'comment' : 'comments') + '</span> \
							<span><big>' + Dsq.jsonData.request.likes_count + '</big> ' + (Dsq.jsonData.request.likes_count == 1 ? 'like' : 'likes') + '</span> \
							<span><big>' + Dsq.jsonData.request.points + '</big> ' + (Dsq.jsonData.request.points == 1 ? 'point' : 'points') + '</span> \
						</td> \
					</tr> \
				</table> \
			</div> \
			';
			return html;
		};

		var _loginOptions = function() {
			var html;
			html = ' \
			<div class="dsq-authenticate"> \
				<p class="dsq-autheneticate-copy">'
				+ (Dsq.jsonData.forum.allow_anon_post
					? Dsq.Strings.YOU_ARE_COMMENTING_AS_A + ' <a class="dsq-help" title="Click for more information" href="#" onclick="Dsq.Popup.helpBadges(); return false">Guest</a>. ' + Dsq.Strings.OPTIONAL + ': ' + Dsq.Strings.LOGIN_BELOW + '.'
					: Dsq.Strings.REQUIRED + ': ' + Dsq.Strings.PLEASE_LOGIN_BELOW_TO_COMMENT + '.')
				+ '</p> \
				<ul class="dsq-login-buttons">'
					+ (!Dsq.jsonData.forum.disqus_auth_disabled ? '<li class="dsq-login-button"><a href="#" onclick="Dsq.Popup.login(); return false"><img src="http://media.disqus.com/images/themes/narcissus/login-disqus.gif" /></a></li>' : '')
					+ (Dsq.jsonData.context.use_fb_connect ? '<li class="dsq-login-button"><a href="#" onclick="Dsq.Facebook.login(); return false;"><img src="http://media.disqus.com/images/themes/narcissus/login-facebook.gif" /></a></li>' : '')
					+ (Dsq.jsonData.context.use_twitter_signin ? '<li class="dsq-login-button"><a href="#" onclick="Dsq.Twitter.startTwitterConnect(); return false"><img src="http://media.disqus.com/images/themes/narcissus/login-twitter.gif" /></a></li>' : '')
					+ (Dsq.jsonData.context.use_openid ? '<li class="dsq-login-button"><a href="#" onclick="Dsq.OpenID.requestURL(); return false" ><img src="http://media.disqus.com/images/themes/narcissus/login-openid.gif" /></a></li>' : '')
					+ (Dsq.jsonData.context.use_yahoo ? '<li class="dsq-login-button"><a href="#" onclick="Dsq.Yahoo.startYahooConnect(); return false"><img src="http://media.disqus.com/images/themes/narcissus/login-yahoo.gif" /></a></li>' : '')
				+ '</ul> \
			</div> \
			';
			return html;
		};

		if (!Dsq.jsonData.context.show_reply) {


			if (!Dsq.jsonData.request.is_authenticated) {



				return '<div id="dsq-form-area" style="display:none"><div id="dsq-textarea-wrapper"></div></div>' + _loginOptions();
			} else {
				return '';
			}
		}

		html = ' \
		<div id="' + (post_id 
			? 'dsq-reply-post-' + post_id
			: 'dsq-new-post')
		 	+ '" class="dsq-post-area"> \
			<div class="dsq-dc-logo"> \
				<a href="http://disqus.com/comments" target="_blank"><img src="http://media.disqus.com/images/themes/narcissus/disqus-logo.png"></a> \
			</div>'
			+ (post_id 
				? '<h3>' + Dsq.Strings.REPLYING_TO + ' ' + userData.display_name + '</h3>'
				: '<h3>' + Dsq.Strings.ADD_NEW_COMMENT + '</h3>')
			+ (Dsq.jsonData.request.is_authenticated 
				? _requestUserInfo()
				: _loginOptions() )
			+ '<div id="dsq-form-area' + pid + '">'
			+ '<div class="dsq-textarea"> \
				<div class="dsq-textarea-wrapper" id="dsq-textarea-wrapper' + pid + '"></div> \
			</div>'
			+ (!Dsq.jsonData.request.is_authenticated
			? ' \
			<div class="dsq-post-fields"> \
				<table> \
					<tr> \
						<td class="dsq-post-fields-left"><div class="dsq-input-wrapper"><input id="dsq-field-name' + pid + '" type="text" value="' + (disqus_def_name ? disqus_def_name : (Dsq.jsonData.session.name ? Dsq.jsonData.session.name : Dsq.Strings.NAME + '" class="dsq-placeholder')) + '" onfocus="Dsq.Templates.handlePlaceholder(event, this, \'name\')" onblur="Dsq.Templates.handlePlaceholder(event, this, \'name\')" /></div></td> \
						<td class="dsq-post-fields-right"><div class="dsq-input-wrapper"><input id="dsq-field-website' + pid + '" type="text" value="' + (Dsq.jsonData.session.url ? Dsq.jsonData.session.url : Dsq.Strings.WEBSITE + ' (' + Dsq.Strings.OPTIONAL.toLowerCase() + ')" class="dsq-placeholder') + '" onfocus="Dsq.Templates.handlePlaceholder(event, this, \'website\')" onblur="Dsq.Templates.handlePlaceholder(event, this, \'website\')" /></div></td> \
					</tr> \
					<tr> \
						<td class="dsq-post-fields-left"><div class="dsq-input-wrapper"><input id="dsq-field-email' + pid + '" type="text" value="' + (disqus_def_email ? disqus_def_email : (Dsq.jsonData.session.email ? Dsq.jsonData.session.email : Dsq.Strings.EMAIL + '" class="dsq-placeholder')) + '" onfocus="Dsq.Templates.handlePlaceholder(event, this, \'email\')" onblur="Dsq.Templates.handlePlaceholder(event, this, \'email\')" /></div></td> \
						<td class="dsq-post-fields-right"> \
							<div class="dsq-subscribe"> \
								<a href="#" onclick="Dsq.Templates.chooseSubscribe(' + post_id + '); return false" class="dsq-subscribe-menu"><span id="dsq-subscribe-select' + pid + '">' + (Dsq.jsonData.request.subscribe_on_post ? Dsq.Strings.SUBSCRIBE_TO_ALL_COMMENTS_BY_EMAIL : Dsq.Strings.DO_NOT_SUBSCRIBE_TO_COMMENTS) + '</span> <small>&#9660;</small></a> \
								<ul class="dsq-panel" id="dsq-subscribe-menu' + pid + '"> \
									<li><a href="#" onclick="Dsq.Templates.setSubscribe(2, this, ' + post_id + '); return false">' + Dsq.Strings.SUBSCRIBE_TO_ALL_COMMENTS_BY_EMAIL + '</a></li> \
									<li><a href="#" onclick="Dsq.Templates.setSubscribe(0, this, ' + post_id + '); return false">' + Dsq.Strings.DO_NOT_SUBSCRIBE_TO_COMMENTS + '</a></li> \
								</ul> \
								<input id="dsq-subscribe-on-post' + pid + '" type="hidden" value="' + Dsq.jsonData.request.subscribe_on_post + '" /> \
							</div> \
						</td> \
					</tr> \
				</table> \
			</div>'
			: '')
			+ '<div class="dsq-post-footer"> \
				<div class="dsq-sharing-options" ' + (!display_sharing_options ? 'style="display:none;"' : '') + '> \
					<button type="button" class="dsq-button-small" onfocus="document.getElementById(\'dsq-post-button' + pid + '\').focus();"><span>' + Dsq.Strings.SHARING_OPTIONS + ' <small>&#9660;</small></span></button> \
					<div class="dsq-panel"> '
						+ (Dsq.jsonData.request.sharing.twitter !== undefined
								&& Dsq.jsonData.request.sharing.twitter.enabled === true
							? '<div><input type="checkbox" id="dsq-sharing-twitter' + pid + '"'
								  + (Dsq.jsonData.request.sharing.twitter.auto === true ? 'checked=true' : '') + '/> \
									<label for="dsq-sharing-twitter' + pid + '">' + Dsq.Strings.SHARE_ON + ' Twitter</label> \
								 </div>'
							: '')
						+ (Dsq.jsonData.request.sharing.facebook
								&& (Dsq.jsonData.request.sharing.facebook.enabled === true ||
										(Dsq.jsonData.request.is_remote && Dsq.jsonData.request.remote_domain == 'facebook'))
							? '<div><input type="checkbox" id="dsq-sharing-facebook' + pid + '"'
									+ (Dsq.jsonData.request.sharing.facebook.auto === true ? 'checked=true' : '') + '/> \
									<label for="dsq-sharing-facebook' + pid + '">' + Dsq.Strings.SHARE_ON + ' Facebook</label> \
								 </div>'
							: '')
						+ (Dsq.jsonData.request.sharing.yahoo !== undefined
								&& Dsq.jsonData.request.sharing.yahoo.enabled === true
							? '<div><input type="checkbox" id="dsq-sharing-yahoo' + pid + '"'
									+ (Dsq.jsonData.request.sharing.yahoo.auto === true ? 'checked=true' : '') + '/> \
									<label for="dsq-sharing-yahoo' + pid + '">' + Dsq.Strings.SHARE_ON + ' Yahoo!</label> \
								</div>'
							: '')
						+ (Dsq.jsonData.request.sharing.tumblr !== undefined
								&& Dsq.jsonData.request.sharing.tumblr.enabled === true
							? '<div><input type="checkbox" id="dsq-sharing-tumblr' + pid + '"'
									+ (Dsq.jsonData.request.sharing.tumblr.auto === true ? 'checked=true' : '') + '/> \
									<label for="dsq-sharing-tumblr' + pid + '">' + Dsq.Strings.SHARE_ON + ' Tumblr</label> \
								 </div>'
							: '')
						+ (Dsq.jsonData.request.sharing.wordpress !== undefined
								&& Dsq.jsonData.request.sharing.wordpress.enabled === true
							? '<div><input type="checkbox" id="dsq-sharing-wordpress' + pid + '"'
									+ (Dsq.jsonData.request.sharing.wordpress.auto === true ? 'checked=true' : '') + '/> \
									<label for="dsq-sharing-wordpress' + pid + '">' + Dsq.Strings.SHARE_ON + ' Wordpress</label> \
								 </div>'
							: '')
						+ (Dsq.jsonData.request.sharing.movabletype !== undefined
							  && Dsq.jsonData.request.sharing.movabletype.enabled === true
							? '<div><input type="checkbox" id="dsq-sharing-movabletype' + pid + '"'
									+ (Dsq.jsonData.request.sharing.movabletype.auto === true ? 'checked=true' : '') + '/> \
									<label for="dsq-sharing-movabletype' + pid + '">' + Dsq.Strings.SHARE_ON + ' Movable Type</label> \
							   </div>'
							: '')
						+ (Dsq.jsonData.request.sharing.typepad !== undefined
							  && Dsq.jsonData.request.sharing.typepad.enabled === true
							? '<div><input type="checkbox" id="dsq-sharing-typepad' + pid + '"'
									+ (Dsq.jsonData.request.sharing.typepad.auto === true ? 'checked=true' : '') + '/> \
								  <label for="dsq-sharing-typepad' + pid + '">' + Dsq.Strings.SHARE_ON + ' TypePad</label> \
							   </div>'
							: '')
						+ '<div><a href="' + Dsq.jsonData.settings.disqus_url + '/profile/connections/" target="_blank" class="dsq-configure-options">' + Dsq.Strings.CONFIGURE_OPTIONS + '</a></div>'
					+ '</div> \
				</div>'
				+ '<button type="button" class="dsq-button" id="dsq-post-button' + pid + '" onclick="Dsq.Templates.postComment(' + post_id + ', this, false)"><span>' + Dsq.Strings.POST_AS + ' '
				+ (Dsq.jsonData.request.display_username
					? Dsq.jsonData.request.display_username
					: Dsq.Strings.GUEST)
				+ '</span></button>'
				+ (post_id
					? '<button type="button" class="dsq-button" id="dsq-cancel-button' + pid + '" onclick="Dsq.Post.toggleReply(' + post_id +', this)"><span>' + Dsq.Strings.CANCEL + '</span></button>'
					: '')
			+ '</div>'
			+ '</div>' // end dsq-form-area
		+ '</div> \
		';
		
		return html;
	};




	this.appendPost = function(post_id) {
		var html = '<div id="dsq-append-post-' + post_id + '"></div>';
		return html;
	};

	this.postPrependHeader = function(post_id) {
		var html;
		var _meta = Dsq.jsonData.posts[post_id];
		var userData = Dsq.jsonData['users'][_meta.user_key];
		
		html = ' \
		<table> \
			<tr> \
				<td id="dsq-header-avatar-' + post_id + '" class="dsq-header-avatar" onmouseover="Dsq.Post.dropProfile(' + post_id + ')"> \
					<a id="dsq-avatar-' + post_id + '" class="dsq-avatar" href="' + userData.url + '" onclick="Dsq.Popup.popProfile(' + post_id + '); return false;">'
					+ (Dsq.jsonData.forum.show_avatar
					? '<img src="' + Dsq.jsonData.users[_meta.user_key].avatar + '" alt="" />'
					: '')
				+ '</a> \
				</td> \
				<td class="dsq-comment-header-meta"> \
		';

		
		return html;
	};
	
	this.postAppendHeader = function(post_id) {
		var _meta = Dsq.jsonData.posts[post_id];
		var html;
		var parent_display_name = '';
		
		if(_meta.parent_post_id) {

			var _parent_meta = Dsq.jsonData.posts[_meta.parent_post_id];

			if (_parent_meta) {
				var parentUserData = Dsq.jsonData['users'][_parent_meta.user_key];
				parent_display_name = parentUserData.display_name;
			}
		}

		html = ' \
		<img src="http://media.disqus.com/images/themes/narcissus/moderator.png" class="dsq-moderator-star" title="Moderator" /> \
		<span class="dsq-comment-header-time"><a href="#comment-' + post_id + '" onclick="Dsq.Popup.permalink(' + post_id + ')" title="Permalink">' + (_meta.is_realtime ? Dsq.Strings.JUST_NOW : _meta.date) + '</a></span> '
		+ (_meta.parent_post_id && parent_display_name
			? '<a href="#comment-' + _meta.parent_post_id + '" title="Jump to comment">in reply to ' + parent_display_name + '</a>'
			: '')
		+ '</td> \
		<td id="dsq-like-pts-' + post_id + '" class="dsq-comment-header-likes">'
		+ (_meta.points
			? _meta.points + Dsq.Utils.pluralize(_meta.points, ' person', ' people') + ' liked this.'
			: '')
		+ '</td> \
		</tr> \
		</table> \
		';
		return html;
	};

	this.preBody = function(post_id) {
		var html = '';
		return html;
	};

	this.postFooter = function(post_id) {
		var html;
		var _meta = Dsq.jsonData.posts[post_id];
		if(_meta.killed || !_meta.approved) { return ''; }
		
		html = ' \
		<div class="dsq-comment-footer" id="dsq-comment-footer-' + post_id + '"> \
			<div class="dsq-comment-footer-left">'
				+ (Dsq.jsonData.request.is_moderator || Dsq.jsonData.request.is_global_moderator
					? '<a href="#" onclick="Dsq.Templates.moderateOptions(' + post_id+ '); return false">' + Dsq.Strings.MODERATE + '</a>'
					: '')
				+ '<a href="#" id="dsq-post-report-' + post_id + '" class="dsq-post-report" onclick="Dsq.Post.report(' + post_id + ', false); return false;">' + Dsq.Strings.FLAG + '</a> \
			</div> \
			<div class="dsq-comment-footer-right">'
				+ (_meta.votable 
					? '<span id="dsq-like-' + post_id + '" class="dsq-like">'
					+ (!_meta.up_voted
						? '<button type="button" class="dsq-button-small" onclick="Dsq.Post.rate(this, ' + post_id + ', 1)" >Like</button>'
						: 'You liked this.&nbsp;&nbsp;')
					+ '</span>'
					: '')
				+ (_meta.can_reply && !_meta.has_replies && _meta.from_request_user
					? '<button type="button" class="dsq-button-small dsq-post-edit" onclick="Dsq.Post.edit(this, ' + post_id + ')" >' + Dsq.Strings.EDIT + '</button>'
					: '')
				+ (_meta.can_reply
					? '<span class="dsq-comment-footer-reply" id="dsq-comment-footer-reply-' + post_id + '" onclick="Dsq.Post.toggleReply(' + post_id +', this)"> \
						<button type="button" class="dsq-button-small">' + Dsq.Strings.REPLY + '</button> \
						<button type="button" class="dsq-comment-footer-reply-tab">' + Dsq.Strings.REPLY + '</button><span></span> \
					</span>'
					: '')
			+ '</div> \
		</div> \
		';
		
		return html;
	};



	
	this.showRetweets = function(id, limit, element_id /* Optional */) {
		var source, html = '';

		for (var i = 0, reaction; reaction = Dsq.jsonData.reactions[i]; i++) {
			if (reaction.id === id) {
				source = reaction.retweets;
			}
		}

		if (source) {
			if (limit === 0) {
				limit = source.length;
			}

			for (var j = 0; j < limit; j++) {
				var rt = source[j];
				html += '<a href="' + rt.url + '">' + rt.author_name + '</a>'	+ ((j === (limit - 1)) ? '.' : ', ');
			}
		}

		if (element_id === undefined) {
			return html;
		}

		var element = document.getElementById(element_id);
		element.innerHTML = html;
		return element;
	};

	this.showMoreReactions = function(reactions, has_more, start, limit) {
		var link = document.getElementById('dsq-show-more-reactions');
		var container = link.parentNode;
		container.removeChild(link);

		for (var i = 0, reaction; reaction = reactions[i]; i++) {
			var el = Dsq.Templates.generateReactionHTML(reaction);
			if (el) {
				container.innerHTML += el;
			}
		}

		if (has_more) {
			var d = Dsq.jsonData.settings.disqus_url;
			var f = Dsq.jsonData.forum.url;
			var t = Dsq.jsonData.thread.id;
			var s = start;
			var l = limit;

			var handler = 'Dsq.Utils.execScript(\'' + d + '/forums/' + f + '/more_reactions.js?t=' + t + '&s=' + s + '&l=' + l + '\', true); return false;';
			container.innerHTML += '<li id="dsq-show-more-reactions" class="dsq-show-more-reactions"><button type="button" class="dsq-button-small" onclick="' + handler + '">Show more reactions</button></li>';
		}
	};

	this.generateReactionHTML = function(reaction) {
		if (reaction.body === null || reaction.body == '') {
			return;
		}

		if (reaction.author_name === '') {
			reaction.author_name = '&nbsp;';
		}

		if (reaction.url === '') {
			reaction.url = reaction.get_service_url;
		}

		var item = '<li class="dsq-comment dsq-reaction" id="dsq-reaction-' + reaction.id + '">'
			+ '<div class="dsq-comment-header"> \
			<table> \
			<tr> \
			<td class="dsq-header-avatar"> \
			';

		if (reaction.author_url && reaction.author_url !== '') {
			item += '<a target="_blank" href="' + reaction.author_url +'" class="dsq-avatar">';
		}

		if (reaction.avatar_url && reaction.avatar_url !== '') {
			item += '<img src="' + reaction.avatar_url + '"/>';
		} else {

			item += '<img src="' + Dsq.jsonData.media_url + '/images/noavatar92.png"/>';
		}

		var service_icon = (reaction.get_service_name == 'trackback' || reaction.get_service_name == 'pingback' ? 'rss' : reaction.get_service_name.replace(' ', ''));
		item += (reaction.author_url && reaction.author_url !== ''
				? '</a>'
				: '')
			+ '</td>'
			+ '<td><cite class="dsq-comment-cite">' + reaction.author_name + '</cite> <span class="dsq-comment-header-time">' + reaction.date_created + '</span></td>'
			+ '<td class="dsq-comment-header-likes"></td>'
			+ '</tr></table></div>' // end dsq-comment-header
			+ '<div class="dsq-reaction-header" \
				<table> \
					<tr> \
						<td class="dsq-reaction-header-left">'
							+ '<img class="dsq-service-icon" src="' + Dsq.jsonData.media_url + '/images/reactions/services/' + service_icon + '.png" />'
							+ ' From <a class="dsq-service-name" target="_blank" href="' + reaction.url + '">' + reaction.get_service_name + '</a> '
							+ 'via <a href="' + reaction.source_url + '">' + (reaction.source == 'backtype' ? 'BackType' : 'UberVU') + '</a>'
						+ '</td>'
						+ '<td class="dsq-reaction-header-right">';

			if(reaction.retweets) {
				var num_retweets = reaction.retweets.length;
				if (num_retweets > 0) {
					if (num_retweets == 1) {
						item += 'One more retweet from <a href="' + reaction.retweets[0].url + '">'  + reaction.retweets[0].author_name + '</a>';
					} else {
						item += (num_retweets + ' more retweets from ');
						item += '<span id="dsq-reaction-retweets-' + reaction.id + '">';
						var n_tweets = (num_retweets > 3) ? 3 : num_retweets;
						item += Dsq.Templates.showRetweets(reaction.id, n_tweets);
						if (n_tweets != num_retweets) {
							item += '</span> <a onclick="Dsq.Templates.showRetweets(' + reaction.id + ', 0, \'dsq-reaction-retweets-' + reaction.id + '\');'
								+ 'this.parentNode.removeChild(this); return false;" href="#">Show all</a>';
						}
					}
				}
			}	
			item += '</td></tr> \
			</table> \
			</div>' // end dsq-reaction-header
			+ '<div class="dsq-comment-body"> \
				<div class="dsq-comment-message">' + reaction.body + '</div>'
			+ '</div> \
			<div class="dsq-comment-footer"> \
				<div class="dsq-comment-footer-left"> \
				</div>'
				+ (Dsq.jsonData.request.is_moderator || Dsq.jsonData.request.is_global_moderator 
					? ' \
					<div class="dsq-comment-footer-right"> \
						<button type="button" class="dsq-button-small dsq-hide-reaction" onclick="Dsq.Reaction.hide(' + reaction.id + ')">Hide</button> \
					</div>'
					: '')
			+ '</div>'
		item += '</li>'; /* Reaction HTML ends */
		return item;
	};

	this.reactions = function() {
		var html, reaction;

		if (Dsq.jsonData.reactions === undefined || Dsq.jsonData.reactions.length === 0) {
			return '';
		}

		html = '';
		for (var i = 0; reaction = Dsq.jsonData.reactions[i]; i++) {
			var item = Dsq.Templates.generateReactionHTML(reaction);
			if (item) {
				html += item;
			}
		}

		if (Dsq.jsonData.has_more_reactions) {
			var d = Dsq.jsonData.settings.disqus_url;
			var f = Dsq.jsonData.forum.url;
			var t = Dsq.jsonData.thread.id;
			var s = Dsq.jsonData.reactions_start;
			var l = Dsq.jsonData.reactions_limit;

			var handler = 'Dsq.Utils.execScript(\'' + d + '/forums/' + f + '/more_reactions.js?t=' + t + '&s=' + s + '&l=' + l + '\', true); return false;';
			html += '<li id="dsq-show-more-reactions" class="dsq-show-more-reactions"><button type="button" class="dsq-button-small" onclick="' + handler + '">Show more reactions</button></li>';
		}

		return '<h3 id="dsq-reactions-title" class="dsq-h3-reactions">Reactions</h3><ul id="dsq-reactions" class="dsq-reactions">' + html + '</ul>';
	};
	
	this._popupGeneric = function(content) {
		return ' \
		<div class="dsq-popup-container"> \
			<table> \
				<tbody> \
					<tr> \
						<td class="dsq-popup-tl"></td><td class="dsq-popup-b"></td><td class="dsq-popup-tr"></td> \
					</tr> \
					<tr> \
						<td class="dsq-popup-b"></td> \
						<td class="dsq-popup-body"> \
							<div class="dsq-popup-content"> \
								<div class="dsq-popup-title"> \
									<button type="button" class="dsq-button-small" style="float:right" onclick="Dsq.Popup._closePopup(null, true)">Close</button>'
									+ content['header'] 
								+ '</div>'
								+ content['body']
							+ '</div> \
							<div class="powered-by"><a href="http://disqus.com/comments/">Powered by <img src="http://media.disqus.com/images/embed/disqus-logo.png" alt="Disqus Comments" style="margin-bottom:-5px" /></a></div> \
						</td> \
						<td class="dsq-popup-b"></td> \
					</tr> \
					<tr> \
						<td class="dsq-popup-bl"></td><td class="dsq-popup-b"></td><td class="dsq-popup-br"></td> \
					</tr> \
				</tbody> \
			</table> \
		</div> \
		';
	};



	
	this.chooseSubscribe = function(post_id) {

		var pid = post_id ? '-' + post_id : '';
		var menu = Dsq.$('dsq-subscribe-menu' + pid);
		
		menu.style.display = menu.style.display == 'block' ? 'none' : 'block';
		
	};
	
	this.setSubscribe = function(value, el, post_id) {

		var pid = post_id ? '-' + post_id : '';
		var input = Dsq.$('dsq-subscribe-on-post' + pid);
		var select = Dsq.$('dsq-subscribe-select' + pid);
		var menu = Dsq.$('dsq-subscribe-menu' + pid);
		
		select.innerHTML = el.innerHTML;
		input.value = value;
		this.chooseSubscribe(post_id);
	};
	
	this.getFormFields = function(post_id) {

		var fields = {};
		var pid = post_id ? '-' + post_id : '';
		var name = Dsq.$('dsq-field-name' + pid);
		var email = Dsq.$('dsq-field-email' + pid);
		var website = Dsq.$('dsq-field-website' + pid);
		var username = Dsq.$('dsq-field-username' + pid);
		var password = Dsq.$('dsq-field-password' + pid);

		fields = {
			'name': name,
			'email': email,
			'website': website,
			'username': username,
			'password': password
		}
		
		return fields;
	}
	
	this.validateFields = function(post_id) {
		
		if(Dsq.jsonData.request.is_authenticated) { return true; }
		
		var fields = Dsq.Templates.getFormFields(post_id);
		
		var nameField = fields.name;
		var websiteField = fields.website;
		var emailField = fields.email;
		
		websiteField.value = (websiteField.value == Dsq.Templates.placeholder['website']) ? '' : websiteField.value;
		
		var v = [{

			validator: Dsq.Validators.name,
			value: nameField.value
		}, {

			validator: Dsq.Validators.email,
			value: emailField.value
		}, {

			validator: Dsq.Validators.url,
			value: websiteField.value
		}];
		
		return Dsq.Validators.validate(v, function(e) { Dsq.Popup.popModal(e, 'Oops...') } );
	};
	
	this.checkExistingUser = function(post_id) {
		var fields = Dsq.Templates.getFormFields(post_id);		
		Dsq.Popup.loading(post_id);
		
		if (post_id) {
			Dsq.frames['reply_' + post_id].getUserByEmail(fields.email.value);
		} else {
			Dsq.frames['reply_0'].getUserByEmail(fields.email.value);
		}
	};

	this.validateAuth = function(el_clicked, post_id, auth_choice) {
		var fields = Dsq.Templates.getFormFields(post_id);
		var email = fields.email ? fields.email.value : '';
		var username = fields.username ? fields.username.value : '';
		var password = fields.password ? fields.password.value : '';
		
		Dsq.Templates.setLoadingButton(el_clicked, post_id);
		
		if (post_id) {
			Dsq.frames['reply_' + post_id].validateAuth(auth_choice, email, username, password);
		} else {
			Dsq.frames['reply_0'].validateAuth(auth_choice, email, username, password);
		}
	};

	this.lightboxUpdateEmail = function(post_id, new_email) {
		var fields = Dsq.Templates.getFormFields(post_id);
		fields.email.value = new_email;
	};

	this.lightboxAuthenticate = function(post_id, auth_choice, auth_data) {
		var title, body;
		var pid = post_id ? '-' + post_id : '';

		if(typeof(auth_data) == 'undefined') {
			var auth_data = Dsq.Templates.getFormFields(post_id);
		}

		d = auth_data;

		switch(auth_choice) {
			case 'register':
				var suggestedUsername = d.name.value.replace(/[^a-zA-Z0-9-]/g,'').toLowerCase();
			
				title = Dsq.jsonData.forum.allow_anon_post ? 'Optional:' : 'Required:';
				title += ' Register a <img src="http://media.disqus.com/images/embed/disqus-profile.png" alt=Disqus Profile" />';

				body = ' \
				<ul class="dsq-lightbox-register-reasons"> \
				<li>Verify your comments</li> \
				<li>Edit and delete comments</li> \
				<li>Manage comments and replies</li> \
				</ul> \
				';

				body += ' \
				<div class="dsq-lightbox-auth-fields"> \
					<table> \
						<tr> \
							<td>Email</td> \
							<td><input type="text" value="' + d.email.value + '" onchange="Dsq.Templates.lightboxUpdateEmail(' + post_id + ', this.value)" /><div id="dsq-email-errors' + pid + '"></div></td> \
						</tr> \
						<tr> \
							<td>Username</td> \
							<td><input id="dsq-field-username' + pid + '" type="text" value="' + suggestedUsername + '"/><div id="dsq-username-errors' + pid + '"></div></td> \
						</tr> \
						<tr> \
							<td>Password</td> \
							<td><input id="dsq-field-password' + pid + '" type="password" /><div id="dsq-password-errors' + pid + '"></div></td> \
						</tr> \
					</table> \
					<div class="dsq-lightbox-switch-auth"><a href="#" onclick="Dsq.Templates.lightboxAuthenticate(' + post_id + ',\'login\'); return false">Login instead</a></div> \
				</div> \
				<div id="dsq-lightbox-errors' + pid + '" class="dsq-lightbox-errors"></div> \
				<div class="dsq-lightbox-submit"> \
					<div class="dsq-lightbox-auth-post"><button type="button" class="dsq-button" onclick="Dsq.Templates.validateAuth(this, ' + post_id + ',\'' + auth_choice + '\')">Register and Post comment</button></div>'
					+ (Dsq.jsonData.forum.allow_anon_post
						? '<div class="dsq-lightbox-auth-skip"><button type="button" class="dsq-button-small" onclick="Dsq.Templates.postComment(' + post_id + ', this, true)">Just post as a Guest</button></div>'
						: '')
				+ '</div> \
				';
				break;
			case 'login':
				title = Dsq.jsonData.forum.allow_anon_post ? 'Optional:' : 'Required:';
				title += ' Login to your <img src="http://media.disqus.com/images/embed/disqus-profile.png" alt=Disqus Profile" />';
				body = '';
				
				if(d.avatar_url) {
					body += '<div class="dsq-lightbox-recognized"><table><tr>';
					body += '<td><img src="' + d.avatar_url + '" alt="" /></td>';
					body += '<td><span class="dsq-badge ' + (d.verified ? 'dsq-badge-verified' : 'dsq-badge-registered') + '">' + (d.verified ? 'Verified' : 'Registered') + '</span></td>';
					body += '<td>Hey <strong>' + d.display_name + '</strong>, is that you? Login below to claim this comment.';
					body += '</tr></table></div>';
				}

				body += ' \
				<div class="dsq-lightbox-auth-fields"> \
					<table> \
						<tr> \
							<td>Username or Email</td> \
							<td><input id="dsq-field-username' + pid + '" type="text" value="' + (d.avatar_url ? d.username : '') + '" /></td> \
						</tr> \
						<tr> \
							<td>Password <a href="http://disqus.com/forgot" target="_blank">(cannot log in?)</a></td> \
							<td><input id="dsq-field-password' + pid + '" type="password" /></td> \
						</tr> \
					</table> \
					<div class="dsq-lightbox-switch-auth"><a href="#" onclick="Dsq.Templates.lightboxAuthenticate(' + post_id + ',\'register\'); return false">Register instead</a></div> \
				</div> \
				<div id="dsq-lightbox-errors' + pid + '" class="dsq-lightbox-errors"></div> \
				<div class="dsq-lightbox-submit"> \
					<div class="dsq-lightbox-auth-post"><button type="button" class="dsq-button" onclick="Dsq.Templates.validateAuth(this, ' + post_id + ',\'' + auth_choice + '\')">Login and Post comment</button></div>'
					+ (Dsq.jsonData.forum.allow_anon_post
						? '<div class="dsq-lightbox-auth-skip"><button type="button" class="dsq-button-small" onclick="Dsq.Templates.postComment(' + post_id + ', this, true)">Just post as a Guest</button></div>'
						: '')
				+ '</div> \
				';
				break;
			default:
				break;
		}
		Dsq.Popup.lightbox(body, title, post_id);
		Dsq.$('dsq-field-username' + pid).focus();
	};
	
	this.buttonsToRestore = [];
	this.setLoadingButton = function(btn, post_id) {
		var pid = post_id ? '-' + post_id : '';
		if (btn) {

			var loadingBtn = document.createElement('button');
			loadingBtn.id = btn.id + '-loading';
			loadingBtn.innerHTML = '<img src="http://media.disqus.com/images/loading-lite.gif" alt="" /> ' + Dsq.Strings.JUST_A_MOMENT;
			loadingBtn.className = btn.className + ' dsq-post-loading';
			btn.parentNode.appendChild(loadingBtn);
			btn.style.display = 'none';
			var cancelBtn = Dsq.$('dsq-cancel-button' + pid);
			if(cancelBtn) { cancelBtn.style.display = 'none'; this.buttonsToRestore.push(cancelBtn); }
			this.buttonsToRestore.push(btn);
		} else {

			var buttons = this.buttonsToRestore;
			for(var i = 0; i < buttons.length; i++) {
				buttons[i].style.display = 'inline';
				Dsq.Utils.deleteNode(Dsq.$(buttons[i].id + '-loading'));
			}
		}
		
	};

	this.postComment = function(post_id, el_clicked, force, auth_choice) {
		var append_id = post_id ? '-' + post_id : '';
		var fields = Dsq.Templates.getFormFields(post_id);

		if (Dsq.Templates.validateFields(post_id)) {

			if (!Dsq.jsonData.request.is_authenticated && !force &&
				((!Dsq.Utils.readCookie('skipped_auth') && !disqus_skip_auth && !Dsq.jsonData.forum.disqus_auth_disabled) || !Dsq.jsonData.forum.allow_anon_post)) {
				Dsq.Templates.checkExistingUser(post_id);
				return false;
			}
			var params = [];
			if (!Dsq.jsonData.request.is_authenticated) {
				params.push(fields.name.value,
					fields.email.value,
					fields.website.value);

				if (auth_choice == 'login' || auth_choice == 'register') {
					params.push({
						auth_choice: auth_choice,
						username: fields.username.value,
						password: fields.password.value,
						email: fields.email.value
					});
				} else {
					params.push(null);
				}

				params.push(null /* sharing options */, Dsq.$('dsq-subscribe-on-post' + append_id).value);
			} else {
				var service_checked = function(name) {
					var el = Dsq.$('dsq-sharing-' + name + append_id);
					return (el !== null && el.checked === true) ? '1' : '0';
				};
				params.push(null, null, null, null, {
					tw: service_checked('twitter'),
					fb: service_checked('facebook'),
					tr: service_checked('tumblr'),
					wp: service_checked('wordpress'),
					mt: service_checked('movabletype'),
					tp: service_checked('typepad'),
					yh: service_checked('yahoo')
				});
			}

			var frame = Dsq.frames['reply_' + (post_id ? post_id : 0)];
			frame.post.apply(frame, params);

			if (el_clicked) {
				Dsq.Templates.setLoadingButton(el_clicked, post_id);
			}
			
			if (force) {
				Dsq.Utils.createCookie('skipped_auth', true);	
			}
			
		} else {
			return false;
		}
	};

	this.editComment = function(el_clicked, post_id) {
		var edited_message = Dsq.$('dsq-edit-textarea-' + post_id).value;

		Dsq.Templates.setLoadingButton(el_clicked, post_id);
		Dsq.frames['edit_' + post_id].edit(post_id, edited_message);
	};

	this.toggleEdit = function(post_id) {
		var body = Dsq.$('dsq-comment-body-' + post_id);
		var message = Dsq.$('dsq-comment-message-' + post_id);

		if (!Dsq.Post.stateEditToggled[post_id]) {


			message.style.display = 'none';
			if (Dsq.$('dsq-edit-' + post_id)) {
				Dsq.$('dsq-edit-' + post_id).style.display = 'block';
			} else {

				var edit_area = document.createElement('div');
				edit_area.id = 'dsq-edit-' + post_id;
				edit_area.className = 'dsq-edit dsq-textarea';
				edit_area.innerHTML = ' \
				<div class="dsq-textarea-wrapper"> \
					<textarea class="dsq-edit-textarea" id="dsq-edit-textarea-' + post_id + '">' + message.innerHTML + '</textarea> \
				</div> \
				<div class="dsq-save-edit"> \
					<button type="button" onclick="Dsq.Templates.editComment(this, ' + post_id + ')" class="dsq-button-small">Save Edit</button> \
				</div> \
				<div id="dsq-edit-iframe-' + post_id + '" style="display: none"></div> \
				';

				body.appendChild(edit_area);

				if (!Dsq.frames['edit_' + post_id]) {
					var _meta = Dsq.jsonData.posts[post_id];
					Dsq.frames['edit_' + post_id] = new Dsq.ReplyFrame(Dsq.$('dsq-edit-iframe-' + post_id), post_id);
					Dsq.frames['edit_' + post_id].init();
					Dsq.frames['edit_' + post_id].setState(post_id, _meta.depth);
				}
			}
		} else {

			message.style.display = 'block';
			Dsq.$('dsq-edit-' + post_id).style.display = 'none';
		}
		
		Dsq.Post.stateEditToggled[post_id] = !Dsq.Post.stateEditToggled[post_id];
	};
	
	this.edit = function(el, post_id) {

		Dsq.Templates.toggleEdit(post_id);
	};

	this.toggleReply = function(post_id, button) {
		
		if(!this.stateReplyToggled[post_id]) {

			if (Dsq.$('dsq-reply-post-' + post_id)) {
				Dsq.$('dsq-append-post-' + post_id).style.display = 'block';
			} else {
				Dsq.$('dsq-append-post-' + post_id).innerHTML = Dsq.Templates.postBox(post_id);
				var container = Dsq.$('dsq-textarea-wrapper-' + post_id);
				if (!Dsq.frames['reply_' + post_id] && container) {
					var _meta = Dsq.jsonData.posts[post_id];
					Dsq.frames['reply_' + post_id] = new Dsq.ReplyFrame(container, post_id);
					Dsq.frames['reply_' + post_id].init(function() {

						Dsq.$('dsq-append-post-' + post_id).innerHTML = Dsq.Templates.postBox(post_id, true);
						Dsq.$('dsq-form-area-' + post_id).innerHTML = '';

						var theme = (typeof disqus_frame_theme == 'undefined') ? 'default' : disqus_frame_theme;
						Dsq.Iframes.showReplyIframeInContainer(Dsq.$('dsq-form-area-' + post_id), post_id, {theme: theme});

					});
					Dsq.frames['reply_' + post_id].setState(post_id, _meta.depth);
				}
			}
			Dsq.$('dsq-append-post-' + post_id).className = 'dsq-append-post';
			Dsq.$('dsq-comment-footer-reply-' + post_id).className = 'dsq-comment-footer-reply-active';
			
		} else {

			Dsq.$('dsq-append-post-' + post_id).style.display = 'none';
			Dsq.$('dsq-append-post-' + post_id).className = '';
			Dsq.$('dsq-comment-footer-reply-' + post_id).className = 'dsq-comment-footer-reply';
		}
		
		this.stateReplyToggled[post_id] = !this.stateReplyToggled[post_id];

		if(Dsq.Utils.ie && this.stateReplyToggled[post_id]) {

		}

		Dsq.Events.fire(Dsq.Events.REPLY_IFRAME_TOGGLED, {
			postId: post_id,
			opened: this.stateReplyToggled[post_id]
		});
	};
	
	this.moderateOptions = function(post_id) {
		var _meta = Dsq.jsonData.posts[post_id];
		var userData = Dsq.jsonData['users'][_meta.user_key];
		
		if(!Dsq.jsonData.request.is_moderator && !Dsq.jsonData.request.is_global_moderator) { return false; }

		var html;
		
		html = ' \
		<div class="dsq-moderate-options"> \
		<table>'
		+ (_meta.email ? '<tr><td>Email</td><td>' + _meta.email + '</td></tr>' : '')
		+ (_meta.ip ? '<tr><td>IP address</td><td>' + _meta.ip + '</td></tr>' : '')
		+ '<tr> \
			<td>Actions</td> \
			<td><ul>'
			+ (Dsq.jsonData.request.moderator_can_edit
				? '<li><a href="#" onclick="Dsq.Post.edit(this, ' + post_id + '); Dsq.Popup._closePopup(null, true); return false;">Edit Comment</a></li>'
				: '')
			+ '<li><a href="#" onclick="Dsq.Post.removePost(' + post_id + ', 1); Dsq.Popup._closePopup(null, true); return false;">Delete Comment</a></li> \
			<li><a href="#" onclick="Dsq.Post.reportSpam(' + post_id + '); Dsq.Popup._closePopup(null, true); return false;">Mark Spam</a></li> \
			<li><a href="#" onclick="Dsq.Popup.blacklist(' + post_id + '); return false">Block User</a></li> \
			</ul></td> \
			</table> \
		</div> \
		';
		
		html += '<p>Go to the full <a href="http://disqus.com/comments/moderate/" target="_blank">moderate panel</a> for more options.</p>';
		
		return Dsq.Popup.popModal(html, 'Moderate Options', post_id);
	};
	
	this.placeholder = {
		'class': 'dsq-placeholder',
		'name': Dsq.Strings.NAME,
		'email': Dsq.Strings.EMAIL,
		'website': Dsq.Strings.WEBSITE + ' (' + Dsq.Strings.OPTIONAL.toLowerCase() + ')'
	};
	
	this.handlePlaceholder = function(evt, el, key) {
		var placeholder = Dsq.Templates.placeholder[key];
		var className = Dsq.Templates.placeholder['class'];
		
		switch(evt.type) {
			case 'focus':
				if(el.value == placeholder) {
					el.value = '';
					el.className = '';
				}
				break;

			case 'blur':
				if(el.value == '') {
					el.value = placeholder;
					el.className = className;
				}
				break;
			default:
				break;
		}
	};
	
	this.paginate = function(page, el_clicked) {

		var extra_params = '';

		if(typeof disqus_per_page != 'undefined') {
			extra_params += '&per_page=' + disqus_per_page;
		}
		if(typeof disqus_sort != 'undefined') {
			extra_params += '&sort=' + disqus_sort;
		}

		Dsq.$('dsq-pagination').innerHTML += '<img src="http://media.disqus.com/images/loading-small.gif">';
		
		if(el_clicked) {
			Dsq.Templates.setLoadingButton(el_clicked);
		}
		
		Dsq.Utils.execScript('http://disqus.com/forums/scobleizer/thread.js'
			+ '?slug='	+ 'who_should_be_usa8217s_cto'
			+ '&p='		+ page
			+ extra_params);
	};
	
	
	this.rate = function(el, id, vote) {


		if(Dsq.jsonData.request.is_authenticated || Dsq.jsonData.forum.allow_anon_votes) {
			if(vote == 1) {
				Dsq.$('dsq-like-' + id).innerHTML = '<img src="http://media.disqus.com/images/loading-small.gif">';
			}
			Dsq.Utils.execScript('http://disqus.com/forums/scobleizer/vote.js'
				+ '?post_id='    + id
				+ '&vote='        + vote);
		} else {
			Dsq.Popup.login('To rate, please log in');
		}
	};

	this.voted = function(post_id, points, vote) {

		Dsq.$('dsq-like-pts-' + post_id).innerHTML = points + Dsq.Utils.pluralize(points, ' person', ' people') + ' liked this.';

		if(vote) {
			Dsq.$('dsq-like-' + post_id).innerHTML = 'You liked this.&nbsp;&nbsp;';
		}
	};




	this.postComment_onSuccess = function(response, parent_post_id, post_id) {
		var approved = response.message.post_meta.approved;

		if (parent_post_id) {
			Dsq.Post.toggleReply(parent_post_id);
		}

		Dsq.Popup._closePopup(null, true);
		
		if (approved) {
			Dsq.Post.incrementPostCount();
			Dsq.Post.outlineComment(post_id);
		} else {			
			var unapproved_msg = 'Thanks for posting!\
	 Your comment must be approved by a moderator before appearing here.\
			';
			Dsq.Popup.popModal(unapproved_msg, 'Comment awaiting approval', post_id);
		}

		var sharing_results = response.message.sharing_results;
		var sharing_errors = '';
		for (var service in sharing_results) {
			if (sharing_results.hasOwnProperty(service) === true) {
				if (sharing_results[service].error === true) {
					sharing_errors += service + ', ';
				}
			}
		}

		if (sharing_results.facebook && sharing_results.facebook.callback) {
			FB.ensureInit(function() {
				FB.Connect.streamPublish('', sharing_results.facebook.attachment);
			});
		}

		if (sharing_errors !== '') {
			var message = 'Your comment was posted, but there were errors sharing with the following connections: ';
			message += sharing_errors.replace(/,\s$/, '');
			message += '<p><a href="' + Dsq.jsonData.settings.disqus_url + '/profile/connections" target="_blank">Configure your connections here</a></p>'
			Dsq.Popup.popModal(message, 'Sharing options');
		}

		Dsq.Templates.setLoadingButton(false);
	};

	this.postComment_onFailure = function(response, parent_post_id, post_id) {

		Dsq.Templates.setLoadingButton(false);
	};
};




// TODO: It might be faster to use string methods to find all <li (...) </li> blocks and pass to Dsq.PostHandler manually.
Dsq.CommentsHandler = function(str, head, post_id, content, tail, offset, s) {
	var prepend_post = Dsq.Templates.prependPost(post_id);
	var append_post = Dsq.Templates.appendPost(post_id);

	content = content.replace(Dsq.POST_RE, Dsq.PostHandler);
	Dsq.Templates.postLoopCounter++;
	head = Dsq.Templates.Filters.commentContainer(post_id, head);
	return prepend_post + head + content + tail + append_post;
};

Dsq.PostHandler = function(str, h_head, post_id, h_content, h_tail, b_head, b_content, b_tail, offset, s) {
	var prepend_header = Dsq.Templates.postPrependHeader(post_id);
	var append_header = Dsq.Templates.postAppendHeader(post_id);
	var prepend_body = Dsq.Templates.preBody(post_id);
	var append_body = Dsq.Templates.postBody(post_id);
	var append_footer = Dsq.Templates.postFooter(post_id);

	b_content = b_content.replace(Dsq.POST_BODY_RE, Dsq.PostBodyHandler);
	return h_head + prepend_header + h_content + append_header + h_tail + b_head + prepend_body + b_content + append_body + b_tail + append_footer;
};

Dsq.PostBodyHandler = function(str, head, post_id, content, tail, offset, s) {
	content = Dsq.Templates.Filters.commentContent(post_id, content);
	return head + content + tail;
};

Dsq.MediaPostHandler = function(str, args, offset, s) {
	args = args.split(' ');
	if(args[0] == 'seesmic') {
		return '<br />' + Dsq.Templates.mediaSeesmic(args[1], args[2]);
	}
	return '';
};


/**
 * Shorcuts
 */
Dsq.$ = function(element) { return document.getElementById(element); };
Dsq.$b = document.body || document.getElementsByTagName('body')[0];


/**
 * Dsq.Debug: Logging functions.
 */

Dsq.Debug = new function() {this.log=function(s){};this.profile=function(f){if(typeof f == 'function')return f();else return eval(f);};};


/**
 * Dsq.Urls: URL paths
 */
Dsq.Urls = new function() {
	this.LOGIN = '/profile/login/';
	this.LOGOUT = '/logout/';
	this.REPLY = 'http://scobleizer.disqus.com/who_should_be_usa8217s_cto/reply.html';
	this.REQUEST_USER_PROFILE = '/AnonymousUser/';
	this.REQUEST_USER_AVATAR = 'http://media.disqus.com/images/noavatar92.png';
};
// Dsq.Urls

/**
 * Dsq.Validators: Validation for form fields
 */
Dsq.Validators = new function() {
	this.VALID_EMAIL_RE = /^[a-z0-9\-\_\+]+(\.[a-z0-9\-\_\+]+)*\@(([a-z0-9\-\_\+]+(\.[a-z0-9\-\_\+]+)*)+\.[a-z]{2,}|([0-9]+\.){3}[0-9]+)$/i;
	this.name = function(name) {
		var error = false;

		if(typeof Dsq.Templates.placeholder !== 'undefined' &&
		   name == Dsq.Templates.placeholder.name) {
			error = true;
		}
		if(name.length <= 1) {
			error = true;
		}

		if(error) {
			return "Please enter a name to comment.";
		} else {
			return true;
		}
	};
	this.email = function(addr) {
		if(Dsq.Validators.VALID_EMAIL_RE.test(addr)) {
			return true;
		} else {
			return "Please enter a valid email to comment.";
		}
	};
	this.url = function(addr) {
		if(!addr || addr.indexOf('.') != -1) {
			return true;
		} else {
			return "Please check your website URL (this field is optional).";
		}
	};

	this.validate = function(bulk_validation, failure_callback) {
		failure_callback = failure_callback || function(e){ alert(e); };

		for(var i = 0; i < bulk_validation.length; i++) {
			v = bulk_validation[i];
			ret = v.validator(v.value);
			if(ret !== true) {
				failure_callback(ret);
				return false;
			}
		}
		return true;
	};
};

/**
 * Dsq.Utils: Generic utility functions.
 */
Dsq.Utils = new function() {
	this.ie = /msie/i.test(navigator.userAgent) && !/opera/i.test(navigator.userAgent);
	this.ie7 = (document.all && !window.opera && window.XMLHttpRequest) ? true : false;
	this.ie6 = (!window.XMLHttpRequest) ? true: false;
	this.webkit = navigator.userAgent.indexOf('AppleWebKit/') >= 0;
	this.gebiFromElementCollectionCache = {};
	this._styleSheet = null;

	this.gebiFromElement = function(el, id, tag) {
		// This only method only helps IE.
		if(!this.ie) {
			return Dsq.$(id);
		} else {
			var cacheKey = el.id + '-' + tag;
			tag = tag || 'div';
			if(typeof this.gebiFromElementCollectionCache[cacheKey] != 'undefined') {
				collection = this.gebiFromElementCollectionCache[cacheKey];
			} else {
				collection = el.getElementsByTagName(tag);
				this.gebiFromElementCollectionCache[cacheKey] = collection;
			}

			for(var i = 0; i < collection.length; i++) {
				if(collection[i].id == id) {
					return collection[i];
				}
			}
			return null;
		}
	};

	this.execOnReady = function(func) {
		var node = document.createElement('document:ready');
		try {
			node.doScroll('left');
			func();
			node = null;
		} catch(err) {
			setTimeout(function() { Dsq.Utils.execOnReady(func); }, 10);
		}
	};


	// Courtesy of http://www.quirksmode.org/js/cookies.html
	this.createCookie = function(name,value,days) {
		if (days) {
			var date = new Date();
			date.setTime(date.getTime()+(days*24*60*60*1000));
			var expires = "; expires="+date.toGMTString();
		}
		else var expires = "";
		document.cookie = name+"="+value+expires+"; path=/";
	};

	this.readCookie = function(name) {
		var nameEQ = name + "=";
		var ca = document.cookie.split(';');
		for(var i=0;i < ca.length;i++) {
			var c = ca[i];
			while (c.charAt(0)==' ') c = c.substring(1,c.length);
			if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
		}
		return null;
	};

	this.eraseCookie = function(name) {
		Dsq.Utils.createCookie(name,"",-1);
	};

	this.deleteNode = function(node) {
		if(node) {
			this.deleteChildren(node);
			if(typeof node.outerHTML != 'undefined') { node.outerHTML = ''; }
			else if(node.parentNode) { node.parentNode.removeChild(node); }
			delete node;
		}
	};

	this.deleteChildren = function(node) {
		if(node) {
			for(var x = node.childNodes.length-1; x >= 0; x--) {
				var childNode = node.childNodes[x];
				if(childNode.hasChildNodes()) { this.deleteChildren(childNode); }
				if(typeof childNode.outerHTML != 'undefined') { childNode.outerHTML = ''; }
				else node.removeChild(childNode);
				delete childNode;
			}
		}
	};

	this.findPos = function(obj) {
		var curleft = 0;
		var curtop = 0;
		if (obj.offsetParent) {
			do {
				curleft += obj.offsetLeft;
				curtop += obj.offsetTop;
			} while (obj = obj.offsetParent);
		}
		return [curleft,curtop];
	};

	this.getWindowSize = function() {
		var windowWidth = -1;
		var windowHeight = -1;

		if(typeof(window.innerWidth) == 'number') { //Non-IE
			windowWidth = window.innerWidth;
			windowHeight = window.innerHeight;
		} else if(document.documentElement) { // IE 6+ in 'standards compliant mode'
			windowWidth = document.documentElement.clientWidth || document.body.clientWidth;
			windowHeight = document.documentElement.clientHeight || document.body.clientHeight;
		}

		return [windowWidth, windowHeight];
	}

	this.getScrollPos = function() {
		var scrollWidth, scrollTop;

		if(document.documentElement && (document.documentElement.scrollTop || document.documentElement.scrollWidth)) {
			scrollWidth = document.documentElement.scrollWidth;
			// IE is weird here.  If no doctype is provided, document.body.scrollTop is 0,
			// otherwise document.documentElement.scrollTop is 0.
			scrollTop = document.documentElement.scrollTop || document.body.scrollTop;
		} else if(document.body.scrollTop && document.body.scrollWidth) {
			scrollWidth = document.body.scrollWidth;
			scrollTop = document.body.scrollTop;
		}

		return [scrollWidth, scrollTop];
	}

	this.addEventListener = function(instance, eventName, listener) {
		var listenerFn = listener;
		if (instance.addEventListener) {
			instance.addEventListener(eventName, listenerFn, false);
		} else if (instance.attachEvent) {
			listenerFn = function() {
				listener(window.event);
			};
			instance.attachEvent("on" + eventName, listenerFn);
		} else {
			throw new Error("Event registration not supported");
		}
		return {
			instance: instance,
			name: eventName,
			listener: listenerFn
		};
	};

	this.removeEventListener = function(event) {
		var instance = event.instance;
		if (instance.removeEventListener) {
			instance.removeEventListener(event.name, event.listener, false);
		} else if (instance.detachEvent) {
			instance.detachEvent("on" + event.name, event.listener);
		}
	};

	this.fixIframesIE = function(id) {
		var disqusThread = Dsq.$(disqus_container_id);
		var iframes = disqusThread.getElementsByTagName('iframe');

		if(id) {
			var container = Dsq.$(id);
		} else {
			var container = Dsq.$('dsq-content');
		}

		for(i = 0; i < iframes.length; i++) {
			if (container) {
				iframes[i].style.width = container.offsetWidth;
			}
		}
	};

	this.getElementsByClassName = function(oElm, strTagName, strClassName) {
	/* Credit: Jonathan Snook [http://www.snook.ca/jonathan], Robert Nyman [http://www.robertnyman.com] */
		var arrElements = (strTagName == "*" && oElm.all)? oElm.all : oElm.getElementsByTagName(strTagName);
		var arrReturnElements = new Array();
		strClassName = strClassName.replace(/\-/g, "\\-");
		var oRegExp = new RegExp("(^|\\s)" + strClassName + "(\\s|$)");
		var oElement;
		for(var i = 0; i < arrElements.length; i++) {
			oElement = arrElements[i];
			if(oRegExp.test(oElement.className)) {
				arrReturnElements.push(oElement);
			}
		}
		return (arrReturnElements);
	};

	this.postToUrl = function(url, post_data, opt_redirect) {
		var form = document.createElement('form');
		var iframe_container = document.createElement('div');
		var id = 'dsq-temp-iframe-' + (new Date()).getTime();

		form.method = 'POST';
		form.action = url;
		if (!opt_redirect) {
			form.target = id;
		}
		iframe_container.innerHTML = '<iframe style="display:none" name="' + id + '" id="' + id + '"></iframe>';

		for(var key in post_data) {
			if(post_data.hasOwnProperty(key)) {
				var input = document.createElement('input');
				input.name = key;
				input.type = 'hidden';
				input.value = post_data[key];

				form.appendChild(input);
			}
		}

		Dsq.$b.appendChild(iframe_container);
		Dsq.$b.appendChild(form);
		form.submit();
	};

	// Strips integer id from id of element in the form ('some-id-###')
	this.extractId = function(e) {
		var chunks = e.id.split('-');
		if(chunks.length <= 1) {
			return 0;
		} else {
			var retval = parseInt(chunks[chunks.length-1]);
			return !isNaN(retval) ? retval : null;
		}
	};

	this.getStyle = function(el, styleProp) {
		if(el.currentStyle) {
			var y = el.currentStyle[styleProp];
		} else if(window.getComputedStyle) {
			var y = document.defaultView.getComputedStyle(el, null).getPropertyValue(styleProp);
		}

		if(y == 'transparent' || y == '') {
			this.getStyle(el.parentNode, styleProp);
		} else {
			return y;
		}
	};

	this.execScript = function(url, append_qs, container) {
		var script = document.createElement('script');
		append_qs = typeof append_qs == 'undefined' ? true : append_qs;
		container = container || Dsq.container;

		if(append_qs) {
			var j = (url.indexOf('?') >= 0) ? '&' : '?';
			url += j + (new Date()).getTime();
		}
		script.type = 'text/javascript';
		script.charset = 'UTF-8';
		script.src = url;
		container.appendChild(script);
		return script;
	};

	this.pluralize = function(num, singular, plural) {
		return (num != 1) ? plural || 's' : singular || '';
	};

	this.getRequestParams = function(queryString /* optional */) {
		var pairs, tuple;
		var params = {};

		queryString = queryString || window.location.search.substring(1);
		pairs = queryString.split('&');

		for (var i = 0, pair; pair = pairs[i]; i++) {
			tuple = pair.split('=');
			params[tuple[0]] = (tuple[1] || true);
		}

		return params;
	};

	this.addCssRule = function(selector, styleText, index) {
		var stylesheet;
		index = index || 0;

		if(!this._styleSheet) {
			var styleEl = document.createElement('style');
			document.getElementsByTagName('head')[0].appendChild(styleEl);
			this._styleSheet = styleEl.sheet;
			if(!this._styleSheet) {
				// IE does not like our newly created stylesheet.
				this._styleSheet = document.styleSheets[document.styleSheets.length-1];
			}
		}
		stylesheet = this._styleSheet;

		if(stylesheet.insertRule) {
			var ruleText = selector + ' { ' + styleText + ' }';
			if(index == -1) {
				index = stylesheet.cssRules.length;
			}
			stylesheet.insertRule(ruleText, index);
		} else if(stylesheet.addRule) {
			stylesheet.addRule(selector, styleText, index);
		}
	};

	this.forEachIn = function(obj, callback) {
		for(var key in obj) {
			if(obj.hasOwnProperty(key)) {
				callback(key, obj[key]);
			}
		}
	};

	this._interpolateGlobalContext = {
		// values that get used a lot and are global to the request
		'profile_url': Dsq.Urls.REQUEST_USER_PROFILE,

		'disqus_url': Dsq.jsonData.settings.disqus_url,
		'media_url': Dsq.jsonData.settings.media_url,
		'request_username': Dsq.jsonData.request.username,
		'request_display_username': Dsq.jsonData.request.display_username,
		'forum_name': Dsq.jsonData.forum.name
	};

	this.renderFromContextStack = function(key, contexts) {
		// Returns the first instance of `key` in the array of objects `contexts` or else ''
		for (var i=0; i<contexts.length; i++) {
			if (contexts[i][key] !== undefined) {
				return String(contexts[i][key]);
			}
		}
		throw new Error('key ' + key + ' not found in context');
	};

	var that = this;
	this.interpolate = function(fmt, opt_localContext) {
		// Interpolate `fmt` named-format string with an assumed global context.
		// Based on `interpolate` in django.views.i18n
		var contextStack = [opt_localContext || {}, that._interpolateGlobalContext];
		return fmt.replace(/%\(\w+\)s/g, function(match){
			return that.renderFromContextStack(match.slice(2,-2), contextStack);
		});
	};

	this.stripTags = function(s) {
		// Removes HTML tags from `s`
		return s.replace(/(<([^>]+)>)/g,"");

	};

	this.assert = function(b) {
		if (!b) {
			throw new Error('Assertion error.');
		}
	};

};
// Dsq.Utils

/**
 * Dsq.Popup: Popup helper functions.
 */
Dsq.Popup = new function() {
	this.timeHide = new Array();
	this.timeShow = new Array();
	this.activePopup = {};
	this.profileCache = {};
	this.statusCache = {};

	this.showTimer = function(post_id) {
		// clear the hide timer
		clearTimeout(this.timeHide[post_id]);

		// start the timer
		if(!Dsq.Popup.profileIsOn && !Dsq.Thread.adminIsOn) {
			this.timeShow[post_id] = setTimeout("Dsq.Popup.popProfile(\"" + post_id + "\")", 400);
		}
	};

	this.hideTimer = function(post_id) {
		// clear the show timer
		clearTimeout(this.timeShow[post_id]);
	};

	this.updateProfile = function(username) {
		// Callback from /embed/profile.js
		if (this.statusCache[username]) {
			var statusEl = Dsq.$('dsq-profile-status-' + username);
			statusEl.innerHTML = this.statusCache[username];
			statusEl.style.display = 'block';
		}

		if (this.profileCache[username]) {
			var _cache = this.profileCache[username];

			var _genhtml = function(text) { return '<span><big>' + text + '</big></span>'; };
			var _no_comments = _genhtml(Dsq.FmtStrings.NUMBER_OF_COMMENTS(_cache.comments_count));
			var _no_likes = _genhtml(Dsq.FmtStrings.NUMBER_OF_LIKES(_cache.likes_count));
			var _no_points = _genhtml(Dsq.FmtStrings.NUMBER_OF_POINTS(_cache.points));

			var statsEl = Dsq.$('dsq-popup-profile-user-stats-' + username);
			statsEl.innerHTML = '';

			if (Dsq.jsonData.users[username].registered) {
				statsEl.innerHTML = _no_comments + _no_likes;
			}
			statsEl.innerHTML += _no_points;

			var activeSites = '';
			for (var i = 0; i < _cache.active_sites.length; i++) {
				var site = _cache.active_sites[i];
				activeSites += '<li><a href="' + site.url + '"> \
					<img src="' + site.favicon + '"/ width="16" height="16"/></a>\
					<a href="' + site.url + '">' + site.name + '</a></li>';
			}
			if (activeSites !== '') {
				Dsq.$('dsq-popup-profile-active-sites-' + username).innerHTML = activeSites;
			} else {
				Dsq.$('dsq-popup-profile-active-sites-' + username).innerHTML = 'This site.';
			}

			var moderatedSites = '';
			for (var i = 0; i < _cache.moderated_sites.length; i++) {
				var site = _cache.moderated_sites[i];
				moderatedSites += '<li><a href="' + site.url + '"> \
					<img src="' + site.favicon + '"/ width="16" height="16"/></a>\
					<a href="' + site.url + '">' + site.name + '</a></li>';
			}
			if (moderatedSites !== '') {
				Dsq.$('dsq-popup-profile-moderated-' + username).innerHTML = moderatedSites;
			} else {
				Dsq.$('dsq-popup-profile-moderated-wrapper-' + username).innerHTML = '';
			}
		}

		// Reposition popup after full HTML is rendered
		if(Dsq.Popup.activePopup && Dsq.Popup.activePopup.el) {
			Dsq.Popup.initPopup(Dsq.Popup.activePopup.el, Dsq.Popup.activePopup.id, Dsq.Popup.activePopup.type);
		}

	};

	this.showCookieMsgs = function() {
		var title = '';
		var message = '';
		var numAlerts = 0;

		Dsq.Utils.forEachIn(Dsq.jsonData.cookie_messages, function(k, v) {
			if (!v) return;

			switch(k) {
				// Cookie: Twitter
				case 'post_twitter':
					if (v === 'error') {
						title = 'Twitter Error!';
						message += '<li id="dsq-msg-twitter-error">Oops, we couldn\'t tweet this comment. Please check your <a href="http://disqus.com/account/services">account settings</a>.</li>';
					} else {
						var _msg = v.split(':');
						title = 'Tweeted!';
						message += '<li id="dsq-msg-twitter-success">Your comment was successfully tweeted. <a href="http://twitter.com/' + _msg[0] + '/status/' + _msg[1] + '">Click here to view the tweet</a>.</li>';
					}
					break;
				// Cookie: Unapproved Post
				case 'post_not_approved':
					title = 'Comment awaiting approval by a moderator';
					message += '<li id="dsq-msg-post-not-approved">Your comment must be approved by a moderator before appearing here.</li>';
					break;
				// Cookie: Profile Found
				case 'post_has_profile':
					title = 'Use your existing commenter profile';
					message += '<li id="dsq-msg-post-has-profile">You have just posted your commment as a <span class="dsq-badge-guest">Guest</span>, but you may already have a <span class="logo-disqus">Disqus</span> Profile.<br /><br /><a href="http://disqus.com/claim">Log in and claim this comment!</a></li>';
					break;
				case 'user_created':
					var _data = v.split(':');
					title = 'Profile created!';
					message += '<li id="dsq-msg-user-created">You have just created a <span class="logo-disqus">Disqus</span> Profile, the best way to claim, manage, and track your comments all over the web. \
					<br /><br />A confirmation is being sent to <strong>' + _data[1] + '</strong>. Please check for this email in order to verify your profile. \
					<ul class="dsq-list-tick"> \
						<li>Your username is <strong>' + _data[0] +'</strong>. <a href="http://disqus.com/people/' + _data[0] + '/" target="_blank">Click here to view your public profile</a>.</li> \
						<li>Be sure to set your profile picture, as well as connect your <span class="dsq-badge-facebook">Facebook</span> and <span class="dsq-badge-twitter">Twitter</span> accounts. <a href="http://disqus.com/account/" target="_blank">Click here for account settings</a>.</li> \
					</ul> \
					</li>'
					break;
				default:
					break;
			}
			numAlerts++;
		});

		if(numAlerts > 1) {
			message = '<ul class="dsq-list-bluebullet">' + message;
			message += '</ul>';
			title = 'Thanks for posting!';
		}
		if(numAlerts > 0) {
			if(typeof(disqus_cookie_msgs) == 'function') {
				disqus_cookie_msgs(message, title);
			} else {
				Dsq.Popup.popModal(message, title);
			}
		}
	};

	this.helpBadges = function(post_id) {
		var html = ' \
			<ul class="dsq-popup-help"> \
				<li><span class="dsq-badge dsq-badge-verified">Verified</span> has a <span class="logo-disqus">Disqus</span> Profile with a confirmed email address.</li> \
				<li><span class="dsq-badge dsq-badge-registered">Registered</span> has a <span class="logo-disqus">Disqus</span> Profile, but has not yet confirmed his or her email address.</li> \
				<li><span class="dsq-badge dsq-badge-guest">Guest</span> is not logged in with any account and has not claimed his or her comments.</li> \
				<li class="dsq-help-otheraccts">Other accounts</li> \
				<li><span class="dsq-badge dsq-badge-facebook">Facebook</span> is using his or her Facebook profile via Facebook Connect.</li> \
				<li><span class="dsq-badge dsq-badge-twitter">Twitter</span> is using his or her Twitter profile via Twitter Sign-in.</li> \
				<li><span class="dsq-badge dsq-badge-openid">OpenID</span> is using his or her OpenID.</li> \
			</ul> \
		';

		this.popModal(html, 'Help: Types of Commenters', post_id);
		return;
	};

	this.permalink = function(post_id) {
		var header = 'Link to this comment';
		var body = '<strong>You are anchored to</strong>:<br />' + document.location.protocol + '//' + document.location.host + document.location.pathname + document.location.search + '#comment-' + post_id;

		this.popModal(body, header, post_id);
	};

	this.login = function(header, body) {
		var h = header || 'Login or Register';
		var b = body || '';
		b += Dsq.Templates.frameLogin({id: 'dsq-popup-login'});
		b += '</iframe>'; // HACK: Sometimes there is something funky with the IFRAME SRC that causes no end tag
		this.popModal(b, h, null, true, 'dsq-popup-login');
	};

	this.blacklist = function(id) {
		var _meta = Dsq.jsonData.posts[id];
		var userData = Dsq.jsonData['users'][_meta.user_key];
		var title = 'Add to Blacklist';
		var message = ' \
		Adding this person to the blacklist will block him or her from commenting on this site. Check the following types that you would like to add to the blacklist:'
		+ (userData['registered'] ?
			'<div class="dsq-blacklist-option"> \
				<input id="dsq-blacklist-username" type="checkbox" checked> \
				<label for="dsq-blacklist-username"><strong>Username</strong>: ' + userData['username'] + '</label> \
			</div>'
			: '')
		+ (_meta.email ?
			'<div class="dsq-blacklist-option"> \
				<input id="dsq-blacklist-email" type="checkbox" checked> \
				<label for="dsq-blacklist-email"><strong>Email address</strong>: ' + _meta.email + '</label> \
			</div>'
			: '')
		+ '<div class="dsq-blacklist-option"> \
			<input id="dsq-blacklist-ip" type="checkbox" onclick="Dsq.$(\'dsq-blacklist-ip-warning\').style.display=\'block\'"> \
			<label for="dsq-blacklist-ip"><strong>IP address</strong>: ' + _meta.ip + '</label> \
		</div> \
		';

		message += ' \
			<p id="dsq-blacklist-ip-warning" style="display:none">	\
				Note: Blocking this person\'s IP address may also unintentionally prevent others, who share his/her IP address, from commenting on this site. \
				This may include people who are sharing the same computer, living in the same house, or using the same Internet provider. Only block an IP address as a last resort. \
			</p> \
		';

		message += ' \
			<p style="text-align:center"><button type="button" onclick="Dsq.Post.blockUser(' + id + '); this.disabled=true; this.innerHTML=\'Just one moment...\'">Add to Blacklist</button></p> \
		';

		Dsq.Popup.popModal(message, title);
	};

	this.remoteAccountSettings = function() {
		var body = '';
		// Set up IFrame.
		var params = {};
		var base_url = 'http://disqus.com/forums/scobleizer/_auth/embed/remote_settings/';
		var attributes = {id: 'dsq-popup-account-settings'};
		if (typeof disqus_frame_theme != 'undefined') {
			params['theme'] = disqus_frame_theme;
		}

		body = Dsq.Templates._frameGeneric(base_url, params, attributes);
		this.popModal(body, 'Account Settings', null, true, 'dsq-popup-account-settings');
	};

	this.popModal = function(message, title, post_id, use_listener, extra_classes) {
		var container = document.createElement('div');
		var header, body;

		Dsq.Popup._closePopup(null, true);

		if(typeof(title) == 'undefined') { title = ''; }
		if(typeof(use_listener) == 'undefined') { use_listener = true; }

		if(post_id) {
			container.id = 'dsq-popup-message-' + post_id;
		} else {
			container.id = 'dsq-popup-message';
		}

		header = title;
		body = message;

		container.innerHTML = Dsq.Templates.popupModal(header, body);
		Dsq.Popup.initPopup(container, post_id, 'message', extra_classes);
		if(use_listener) {
			Dsq.Popup.popupListener = Dsq.Utils.addEventListener(document, 'mouseup', Dsq.Popup._closePopup);
		}
	};

	this.popAlert = this.popModal;

	this.loading = function(post_id) {
		var title = Dsq.Strings.JUST_A_MOMENT;
		var body = '<div style="text-align:center; padding: 5px 0 10px 0"><img src="http://media.disqus.com/images/loading.gif" alt="" /></div>'
		Dsq.Popup.lightbox(body, title, post_id);
	};

	this.lightbox = function(message, title, post_id) {
		// Wraps Dsq.Popup.popModal

		var overlay = document.createElement('div');
		overlay.id = 'dsq-overlay';
		overlay.className = 'dsq-overlay';
		Dsq.$b.appendChild(overlay);
		
		Dsq.Popup.popModal(message, title, post_id, false, 'dsq-lightbox');
	};

	this.popProfile = function(post_id, userKey) {
		var post = Dsq.jsonData['posts'][post_id];
		if (post && post.has_been_anonymized) {
			Dsq.Popup.popModal('This message was anonymized by its previous owner.', 'Anonymized', post_id);
			return;
		}

		if(post_id) {
			userKey = Dsq.jsonData['posts'][post_id].user_key;	
		}
		var userData = Dsq.jsonData['users'][userKey];
		var elId = 'dsq-popup-profile-' + userKey;
		var container = document.createElement('div');

		if(this.activePopup.el) {
			this._closePopup(null, true);
			if(this.activePopup.linkClicked) {
				this.activePopup.linkClicked = false;
				return;
			}
		}

		container.id = elId;
		container.innerHTML = Dsq.Templates.popupProfile(userKey);

		this.initPopup(container, post_id, 'profile');
		this.popupListener = Dsq.Utils.addEventListener(document, 'mouseup', this._closePopup);

		if(!this.profileCache[userKey]) {
			Dsq.Utils.execScript('http://disqus.com/embed/profile.js'
				+ '?username=' + userKey
				+ '&anon=' + (userData['registered'] ? 0 : 1)
				+ '&f=' + Dsq.jsonData['request'].forum);
		} else {
			this.updateProfile(userKey);
		}
	};

	this._closePopup = function(e, force) {
		var activePopup = Dsq.Popup.activePopup.el;
		var id = Dsq.Popup.activePopup.id;
		var link = 'dsq-avatar-' + id; // HACK: Specific to profile toggle target

		// HACK: This event should be gone if there is no active popup.
		if(!activePopup) {
			return;
		}
		if(force || !Dsq.Popup.isClicked(e, activePopup.id)) {
			// TODO: This is breaking iE?
			if(Dsq.Popup.popupListener) {
				Dsq.Utils.removeEventListener(Dsq.Popup.popupListener);
			}
			
			// Kill overlay
			var overlay = Dsq.$('dsq-overlay');
			if(overlay) { Dsq.Utils.deleteNode(overlay); }
			
			try {
				Dsq.Utils.deleteNode(activePopup);
			} catch(e) {
				// HACK: IE6 throws an error when using deleteNode() with a node containing a <table> in the html.
				activePopup.parentNode.removeChild(activePopup);
			}
			Dsq.Popup.activePopup = {};
		}

		if(!force && Dsq.Popup.isClicked(e, link)) {
 			Dsq.Popup.activePopup.linkClicked = true;
		}

	};

	this.initPopup = function(popup, post_id, type, extra_classes) {
		popup.className = 'dsq-popup dsq-popup-' + type + ' ' + (extra_classes ? extra_classes : '');
		if(Dsq.Utils.ie6 || Dsq.Utils.ie7) {
			// HACK: We can't modify the body before it's ready, so we need
			//       to use an IE-safe "DOMReady" workaround before loading
			//       our popup.
			Dsq.Utils.execOnReady(function() {Dsq.$b.appendChild(popup); });
		} else {
			Dsq.$b.appendChild(popup);
		}

		popup.style.display = 'block';

		var xPos = (Dsq.Utils.getWindowSize()[0] - popup.offsetWidth) / 2;
		var yPos = (Dsq.Utils.getWindowSize()[1] - popup.offsetHeight) / 2;

		if(Dsq.Utils.ie6) {
			yPos += Dsq.Utils.getScrollPos()[1];
		}

		popup.style.left = xPos + 'px';
		popup.style.top = yPos + 'px';

		Dsq.Popup.activePopup = {
			'el' : popup,
			'id' : post_id,
			'type': type,
			'linkClicked' : false
		};
	};

	this.isClicked = function(e, id) {
		var t = e.target || e.srcElement;
		while(t && t.parentNode) {
			if(t.id == id) {
				return true;
			}

			t = t.parentNode;
		}
		return false;
	};
};
// Dsq.Popup

/**
 * Dsq.Templates
 */
Dsq.Templates = new function() {
	/*
	 * Counter keeping track of the number of posts iterated over.
	 */
	this.postLoopCounter = 0;
	this.filters = {};
	this.addPostContainer = 'dsq-post-add';
	this.textareaContainer = 'dsq-post-add';

	this.registerTemplate = function(name, func) {
		this['$$_' + name] = func;

		if(typeof DsqLocal.Filters != 'undefined'
		&& typeof DsqLocal.Filters[name] == 'function') {
			// Push filters to this.filters to unify code.
			this.filters[name] = this.filters[name] || [];
			this.filters[name].push(DsqLocal.Filters[name]);
		}

		this[name] = function() {
			var ret;

			if(typeof DsqLocal.Templates != 'undefined'
			&& typeof DsqLocal.Templates[name] == 'function') {
				ret = DsqLocal.Templates[name].apply(this, arguments);
			}

			if(ret === undefined) {
				ret = this['$$_' + name].apply(this, arguments);
			}

			if(this.filters[name]) {
				var args = [ret];

				args.push.apply(args, arguments);
				for(var i = 0; i < this.filters[name].length; i++) {
					ret = this.filters[name][i].apply(this, args);
				}
			}

			return ret;
		};
	};

	this.registerFilter = function(name, func) {
		this.filters[name] = this.filters[name] || [];
		this.filters[name].push(func);
	};

	/**
	 * Dsq.Templates.Filters
	 */
	this.Filters = new function() {
		this.commentContainer = function(post_id, s) {
			var _meta = Dsq.jsonData.posts[post_id];
			var classes = [];
			if(Dsq.jsonData.request.page > 1) {
				classes.push('dsq-append');
			}

			//
			// Extra classes used for custom themes
			//

			if(_meta.depth) {
				classes.push('dsq-comment-child', 'dsq-depth-' + _meta.depth, 'dsq-parent-is-' + _meta.parent_post_id);
			}


			//

			if(_meta.author_is_creator) {
				// TODO: We need to deprecate the "special" class since it is not properly prefixed.
				classes.push('special', 'dsq-special');
			}
			if(_meta.author_is_moderator) {
				classes.push('dsq-moderator');
			}
			classes.push(['dsq-odd', 'dsq-even'][Dsq.Templates.postLoopCounter % 2]);

			s = s.substring(0, s.lastIndexOf('>'));
			return s + ' class="dsq-comment ' + classes.join(' ') + '" style="margin-left:' + _meta.depth*30 + 'px">';
		};

		this.commentContent = function(post_id, s) {
			var _meta = Dsq.jsonData.posts[post_id];
			if (_meta.killed) {
				return '<em>Comment removed.</em>';
			} else if (!_meta.approved) {
				return '<em>This comment was flagged for review.</em>';
			}

			s = s.replace(Dsq.MEDIA_POST_RE, Dsq.MediaPostHandler);
			return s;
		};
	};

	//
	// Thread
	//
	// TODO: These need to be stripped of all Django template tags.

	this.authPost = function() {
		if (!Dsq.jsonData.context.show_reply) {
			return '';
		}
		var result = [];
		result = result.concat([
				'<div id="dsq-auth"',
						Dsq.jsonData.integration.reply_position ? 'class="dsq-auth-bottom"' : '',
						'>',
					'<div class="dsq-by">',
						'<a href="http://disqus.com" target="_blank">',
							(Dsq.jsonData.integration.disqus_logo ?
								Dsq.Utils.interpolate('<img src="%(media_url)s/images/embed/by-disqus.png" alt="discussion by DISQUS">') :
								Dsq.Utils.interpolate('<img src="%(media_url)s/images/embed/dsq-button-120x19.png" alt="discussion by DISQUS">')
							),
						'</a>',
					'</div>',
					'<div class="dsq-auth-header">',
						'<h3 id="dsq-add-new-comment" class="dsq-h3-addcomment">',
								Dsq.Strings.ADD_NEW_COMMENT,
						'</h3>',
						'<div id="dsq-login">',
						(!Dsq.jsonData.request.is_authenticated && Dsq.jsonData.forum.allow_anon_post
								? '<p class="dsq-login-message" id="dsq-login-message">You are commenting as a <a class="dsq-help" title="Click for more information" href="#" onclick="Dsq.Popup.helpBadges(); return false">Guest</a>. You may select one to log into:</p>'
								: '')
		]);
		if (!Dsq.jsonData.request.is_authenticated) {
			result = result.concat([
							Dsq.Utils.interpolate(
								'<a id="dsq-login-toggle" href="%(disqus_url)s%(login_url)s?next=article:%(thread_id)s" onclick="Dsq.Popup.login(); return false"><img class="dsq-login-icon" src="%(media_url)s/images/dsq-profile-btn.png" title="%(log_into)s" alt="%(log_into)s"/></a>',
								{login_url: Dsq.Urls.LOGIN, thread_id: Dsq.jsonData.thread.id, log_into: Dsq.Strings.LOG_INTO_DISQUS}
								),
							'&nbsp; ',
							(Dsq.jsonData.context.use_fb_connect ?
								'<div id="dsq-fbc-login" onlogin="DisqusFbcParentController.onLogin()" size="medium" background="light" length="short" style="display:inline; margin-right:7px"></div>' :
								''
							),
							(Dsq.jsonData.context.use_twitter_signin ?
								Dsq.Utils.interpolate(
									'<div id="dsq-twitter-login" class="dsq-twitter-login" onclick="Dsq.Twitter.startTwitterConnect();" style="display:inline; cursor: pointer"><img src="%(media_url)s/images/twitter-signin-short.png" style="margin-right:7px" /></div>', {}) : ''),
							(Dsq.jsonData.context.use_openid ?
								Dsq.Utils.interpolate(
									'<div id="dsq-openid-login" class="dsq-openid-login" onclick="Dsq.OpenID.requestURL();" style="display:inline; cursor:pointer;"><img src="%(media_url)s/images/openid-login-button.png"/></div>', {}
								) : '')
			]);
		}
		result = result.concat([
						'</div>', // dsq-login
					'</div>', // dsq-auth-header
					'<div id="dsq-authenticated" class="dsq-authenticated" ',
						Dsq.jsonData.request.is_authenticated ? 'style="display:block"' : '',
						'>',
						'<div class="dsq-authenticated-pic">',
								Dsq.Utils.interpolate('<a href="%(url)s" title="%(request_display_username)s">' +
																			'<img class="dsq-post-avatar" src="%(avatar_url)s" alt="" /></a>',
																			{avatar_url: Dsq.Urls.REQUEST_USER_AVATAR,
																			url: (Dsq.jsonData.request.is_remote
																					 ? Dsq.jsonData.request.url
																					 : Dsq.jsonData.settings.disqus_url + Dsq.Urls.REQUEST_USER_PROFILE) }),
						'</div>',
						'<div class="dsq-authenticated-info">',
							'<ul>',
								'<li>',
									(Dsq.jsonData.request.is_remote
										? Dsq.FmtStrings.LOGGED_IN_AS(
												Dsq.Utils.interpolate('<a href="%(url)s" title="%(request_display_username)s">%(request_display_username)s</a>', {url:Dsq.jsonData.request.url})
										  )
										: Dsq.FmtStrings.LOGGED_IN_AS(
												Dsq.Utils.interpolate('<a href="%(disqus_url)s%(profile_url)s" title="%(request_display_username)s">%(request_display_username)s</a>')
											)
									),
								'</li>',
								'<li class="logout">',
									(!Dsq.jsonData.request.is_remote
										? Dsq.Utils.interpolate('<img class="dsq-login-icon" src="%(media_url)s/images/dsqicon12.png" alt="%(logged_in_as)s"/>&nbsp',
											{logged_in_as: Dsq.FmtStrings.LOGGED_IN_AS(Dsq.jsonData.request.display_username)})
										: ''),

									(!Dsq.jsonData.request.is_remote
										? Dsq.Utils.interpolate('<a href="%(disqus_url)s%(logout_url)s?ctkn=%(csrf_token)s" title="%(logout_from_disqus)s">',
											{logout_url: Dsq.Urls.LOGOUT, csrf_token: Dsq.CSRF_TOKEN, logout_from_disqus: Dsq.FmtStrings.LOGOUT_FROM('DISQUS')})
										: ((Dsq.jsonData.request.remote_domain == 'twitter')
												? Dsq.Utils.interpolate('using Twitter (<a href="%(disqus_url)s%(logout_url)s?ctkn=%(csrf_token)s" title="Logout">Logout</a>)',
												 {logout_url: Dsq.Urls.LOGOUT, csrf_token: Dsq.CSRF_TOKEN})
												: ((Dsq.jsonData.request.remote_domain == 'openid')
													 ? Dsq.Utils.interpolate('using OpenID (<a href="%(disqus_url)s%(logout_url)s?ctkn=%(csrf_token)s" title="Logout">Logout</a>)',
													 {logout_url: Dsq.Urls.LOGOUT, csrf_token: Dsq.CSRF_TOKEN})
													 : ''
													)
											)
									),

									(!Dsq.jsonData.request.is_remote ? Dsq.FmtStrings.LOGOUT_FROM('<span class="logo-disqus">DISQUS</span>') : ''),
									'</a>',
								'</li>',
							'</ul>',
						'</div>',
					'</div>'
		]);
		if (Dsq.jsonData.context.use_fb_connect) {
			result = result.concat([
					'<div id="dsq-fbc-authenticated" class="dsq-authenticated">',
						'<div id="dsq-fbc-profilepic" class="dsq-authenticated-pic" uid="loggedinuser" type="FB.XFBML.ProfilePic" size="square" facebook-logo="true"></div>',
						'<div class="dsq-authenticated-info">',
							'<ul>',
								'<li>',
									'Logged in as <span id="dsq-fbc-name" uid="loggedinuser" type="FB.XFBML.Name" linked="true" useyou="false"></span>',
								'</li>',
								'<li class="logout">using Facebook Connect <a href="#" onclick="javascript:DisqusFbcParentController.logout();return false;">(Logout)</a></li>',
							'</ul>',
						'</div>',
					'</div>'
			]);
		}
		result = result.concat([
				'</div>', // dsq-auth
				'<div id="dsq-toolbar-items">',
				'</div>'
		]);
		result = result.concat([
					//
					//
					//
				((!Dsq.jsonData.forum.allow_anon_post && !Dsq.jsonData.request.is_authenticated) ?
					// Needs to be translated:
					('<p id="dsq-no-anon-msg">Required: Please log into <span class="logo-disqus">Disqus</span> ' +
					(Dsq.jsonData.context.use_fb_connect ? 'or connect with Facebook ' : '') +
					(Dsq.jsonData.context.use_twitter_signin ? 'or sign in with Twitter ' : '') +
					(Dsq.jsonData.context.use_openid ? 'or sign in using OpenID ' : '') +
					Dsq.Utils.interpolate('to comment on <strong>%(forum_name)s</strong>.</p>')) :
					''
				),
				'<div id="dsq-post-add"></div>',
				'<div style="margin:10px 0">',
				((Dsq.jsonData.forum.use_media) ?
						'<a href="#" id="dsq-media-link" onclick="Dsq.Post.showMenu(this, false, \'media\'); return false">' + Dsq.Strings.USE_MEDIA + ' <small>&#9660;</small></a>' :
						''),
				'</div>'
		]);
		return result.join('');
	};


	this.header = function() {

		var html = '\<h3 id="dsq-comments-count" class="dsq-h3-commentcount">\
	 <span id="dsq-num-posts">76</span> Comments\
	 &nbsp;\
	 <span class="dsq-item-feed">\
	 <a href="http://scobleizer.disqus.com/who_should_be_usa8217s_cto/latest.rss"><img src="http://media.disqus.com/images/embed/bullet-feed.png"></a>\
	 </span>\
	 </h3>\
	 <div id="dsq-options" style="margin:15px 0">\
	 <span class="dsq-item-sort">\
	 Sort by\
	 <select id="dsq-sort-select" onchange="Dsq.Thread.sortBy(this.value);">\
	 <option value="hot" selected="selected">Popular now</option>\
	 <option value="best" >Best Rating</option>\
	 <option value="newest" >Newest first</option>\
	 <option value="oldest" >Oldest first</option>\
	 </select>\
	 &nbsp;\
	 </span>\
	 <span class="dsq-item-cp"><a href="http://scobleizer.disqus.com/who_should_be_usa8217s_cto/">Community Page</a>&nbsp;&nbsp;&nbsp;</span>\
	 <span class="dsq-item-subscribe">\
	 <img src="http://media.disqus.com/images/embed/email.png" style="width:12px;height:12px;vertical-align:middle">\
	 <span id="dsq-subscribe">\
	 <a href="#" onclick="Dsq.Thread.subscribe(1); return false">Subscribe by email</a>\
	 </span>\
	 </span>\
	 </div>\
	 <div id="dsq-alerts">\
	 <p>Comments for this page are closed.</p>\
	 </div>\
		';

		

		
		if (Dsq.jsonData.request.is_moderator) { 
			html = ' \
			<div class="dsq-alert-message dsq-upgrade-message"> \
				<strong>Disqus upgrade available.</strong> Hi ' + Dsq.jsonData.request.display_username + ', this message is being displayed to you because you are a moderator of this site. <a href="#" onclick="Dsq.$(\'dsq-upgrade-message\').style.display=\'block\';this.style.display=\'none\';return false">Click here for details.</a> \
				<div style="display:none; margin-top:10px;" id="dsq-upgrade-message"> \
					A new theme is available with added features. <a href="http://disqus.com/comments/settings/' + Dsq.jsonData.forum.url + '/?p=customize">To change your theme, click here</a> and choose the theme Narcissus. \
					If you do not upgrade, you are missing out on features such as: real-time commenting, new sign-in integrations, and an upgrade interface. \
					<strong>This message will automatically go away in one week.</strong> \
				</div> \
			</div> \
			' + html; 
		}
		return html;
	};

	this.footer = function() {
		var html = Dsq.Templates.pagination();

		
			html += Dsq.Templates.authPost();
		

		html += Dsq.Templates.reactions();

		
			html += Dsq.Templates.trackbacks();
		

		return html;
	};

	this.pagination = function() {
		var html = '';
		
		if (Dsq.$('dsq-pagination')) { Dsq.$('dsq-pagination').innerHTML = ''; }
		if (!Dsq.jsonData.thread.paginate) { return ''; }

		//
		// TODO: num_paginator still uses the template tag for pagination, 
		// 		while append_paginator does it all in JavaScript.
		//		This should all be in JavaScript.
		//

		if (Dsq.jsonData.thread.num_pages > 1 && Dsq.jsonData.request.page < Dsq.jsonData.thread.num_pages) {
			html = ' \<a class="dsq-paginate-append-text" href="#" onclick="Dsq.Thread.paginate(Dsq.jsonData.request.page + 1, this); return false">Show more comments...</a>\
	 <button type="button" class="dsq-button-small dsq-paginate-append-button" onclick="Dsq.Thread.paginate(Dsq.jsonData.request.page + 1, this);">Load more comments</button>\
			';
		}
		
		if (Dsq.$('dsq-pagination')) {
			Dsq.$('dsq-pagination').innerHTML = html;
			return '';
		} else {
			return '<div id="dsq-pagination" class="dsq-pagination">' + html + '</div>';
		}
	};

	this.trackbacks = function() {
		var html = '';

		if(typeof DsqLocal != 'undefined' && DsqLocal.trackback_url && DsqLocal.trackbacks) {
			var trackbacks = DsqLocal.trackbacks;
			var trackback_url = DsqLocal.trackback_url;
		} else {
			var trackbacks = [
			
			
			];
			var trackback_url = 'http://scobleizer.disqus.com/who_should_be_usa8217s_cto/trackback/';
		}

		html += '<div class="dsq-item-trackback">Trackback URL&nbsp;&nbsp;<input class="dsq-trackback-url" onclick="this.select()" readonly="true" value="' + trackback_url + '"></div>';

		if(trackbacks.length) {
			html += '<ul id="dsq-references">'
			for(var i = 0; i < trackbacks.length; i++) {
				var trackback = trackbacks[i];
				html += '<li><cite><a href="' + trackback.author_url + '" rel="nofollow">' + trackback.author_name + '</a></cite> \
						<p class="dsq-meta">' + trackback.date + '</p> \
						<p class="dsq-content">' + trackback.excerpt + '</p></li>';
			}
			html += '</ul>';
			html = '<h3 class="dsq-h3-trackbacks">Trackbacks</h3>' + html;
		}

		return html;
	}

	this.showRetweets = function(id, limit, element_id /* Optional */) {
		var source, html = '';

		for (var i = 0, reaction; reaction = Dsq.jsonData.reactions[i]; i++) {
			if (reaction.id === id) {
				source = reaction.retweets;
			}
		}

		if (source) {
			if (limit === 0) {
				limit = source.length;
			}

			for (var j = 0; j < limit; j++) {
				var rt = source[j];
				html += '<a href="' + rt.url + '">' + rt.author_name + '</a>'	+ ((j === (limit - 1)) ? '.' : ', ');
			}
		}

		if (element_id === undefined) {
			return html;
		}

		var element = document.getElementById(element_id);
		element.innerHTML = html;
		return element;
	};

	this.showMoreReactions = function(reactions, has_more, start, limit) {
		var link = document.getElementById('dsq-show-more-reactions');
		var container = link.parentNode;
		container.removeChild(link);

		for (var i = 0, reaction; reaction = reactions[i]; i++) {
			var el = Dsq.Templates.generateReactionHTML(reaction);
			if (el) {
				container.innerHTML += el;
			}
		}

		if (has_more) {
			var d = Dsq.jsonData.settings.disqus_url;
			var f = Dsq.jsonData.forum.url;
			var t = Dsq.jsonData.thread.id;
			var s = start;
			var l = limit;

			var handler = 'Dsq.Utils.execScript(\'' + d + '/forums/' + f + '/more_reactions.js?t=' + t + '&s=' + s + '&l=' + l + '\', true); return false;';
			container.innerHTML += '<li id="dsq-show-more-reactions"><a href="#" onclick="' + handler + '">Show more reactions</a></li>';
		}
	};

	this.generateReactionHTML = function(reaction) {
		if (reaction.body === null || reaction.body == '') {
			return;
		}

		if (reaction.author_name === '') {
			reaction.author_name = '&nbsp;';
		}

		if (reaction.url === '') {
			reaction.url = reaction.get_service_url;
		}

		/* Reaction HTML begins */
		var item = '<li class="dsq-reaction" id="dsq-reaction-' + reaction.id + '">'
			+ '<div class="dsq-reaction-header">'
			+ '<div class="dsq-header-avatar">';

		if (reaction.author_url && reaction.author_url !== '') {
			item += '<a target="_blank" href="' + reaction.author_url +'">';
		} else {
			item += '<a target="_blank" href="#" onclick="return false;">';
		}

		if (reaction.avatar_url && reaction.avatar_url !== '') {
			item += '<img src="' + reaction.avatar_url + '"/>';
		} else {
			item += '<img src="' + Dsq.jsonData.media_url + '/images/noavatar32.png"/>';
		}

		var service_icon = (reaction.get_service_name == 'trackback' || reaction.get_service_name == 'pingback' ? 'rss' : reaction.get_service_name.replace(' ', ''));
		item += '<img class="dsq-service-icon" src="' + Dsq.jsonData.media_url + '/images/reactions/services/' + service_icon + '.png"/>'
			+ '</a></div>'
			+ '<cite><span>' + reaction.author_name + '</span></cite>'
			+ '<span class="dsq-header-meta"><a class="dsq-header-time">' + reaction.date_created + '</a></span>'
			+ '</div><div class="dsq-reaction-body">'
			+ '<div class="dsq-reaction-message">' + reaction.body + '</div>'
			+ '<div class="dsq-reaction-footer">From <a class="dsq-service-name" target="_blank" href="' + reaction.url + '">' + reaction.get_service_name + '</a> '
			+ 'via <a href="' + reaction.source_url + '">' + (reaction.source == 'backtype' ? 'BackType' : 'UberVU') + '</a>'
			+ (Dsq.jsonData.request.is_moderator || Dsq.jsonData.request.is_global_moderator ? '&nbsp;&bull;&nbsp;<a class="dsq-hide-reaction" href="#" onclick="Dsq.Reaction.hide(' + reaction.id + '); return false;">Hide</a>' : '') + '</div></div>';

		if(reaction.retweets) {
			var num_retweets = reaction.retweets.length;
			if (num_retweets > 0) {
				item += '<div class="dsq-reaction-retweets">';
				if (num_retweets == 1) {
					item += 'One more retweet from <a href="' + reaction.retweets[0].url + '">'  + reaction.retweets[0].author_name + '</a>';
				} else {
					item += (num_retweets + ' more retweets from ');

					item += '<span id="dsq-reaction-retweets-' + reaction.id + '">';
					var n_tweets = (num_retweets > 15) ? 15 : num_retweets;
					item += Dsq.Templates.showRetweets(reaction.id, n_tweets);

					if (n_tweets != num_retweets) {
						item += '</span> <a onclick="Dsq.Templates.showRetweets(' + reaction.id + ', 0, \'dsq-reaction-retweets-' + reaction.id + '\');'
							+ 'this.parentNode.removeChild(this); return false;" href="#">Show all</a>';
					}
				}
				item += '</div>';
			}
		}

		item += '</li>'; /* Reaction HTML ends */
		return item;
	};

	this.reactions = function() {
		var html, reaction;

		if (Dsq.jsonData.reactions === undefined || Dsq.jsonData.reactions.length === 0) {
			return '';
		}

		html = '';
		for (var i = 0; reaction = Dsq.jsonData.reactions[i]; i++) {
			var item = Dsq.Templates.generateReactionHTML(reaction);
			if (item) {
				html += item;
			}
		}

		if (Dsq.jsonData.has_more_reactions) {
			var d = Dsq.jsonData.settings.disqus_url;
			var f = Dsq.jsonData.forum.url;
			var t = Dsq.jsonData.thread.id;
			var s = Dsq.jsonData.reactions_start;
			var l = Dsq.jsonData.reactions_limit;

			var handler = 'Dsq.Utils.execScript(\'' + d + '/forums/' + f + '/more_reactions.js?t=' + t + '&s=' + s + '&l=' + l + '\', true); return false;';
			html += '<li id="dsq-show-more-reactions"><a href="#" onclick="' + handler + '">Show more reactions</a></li>';
		}

		return '<h3 class="dsq-h3-reactions">Reactions</h3><ul id="dsq-reactions" class="dsq-reactions">' + html + '</ul>';
	};
	
	this.missingPermissions = function() {
		return '	<p>Comments for this page are closed.</p>\n';
	};

	//
	// Post
	//

	this.prependPost = function(post_id) {
		var html = '<div id="comment-' + post_id + '"></div>';
		return html;
	};

	this.appendPost = function(post_id) {
		var html = '<div id="dsq-comment-reply-' + post_id + '"></div>';
		return html;
	};

	this.postPrependHeader = function(post_id) {
		var _meta = Dsq.jsonData.posts[post_id];
		var userData = Dsq.jsonData['users'][_meta.user_key];

		var _includeServices = function() {
			var userServices = Dsq.Post.getUserServices(null, post_id);
			var html = '';
			var hiddenThreshold = 3; // Define # of services to show before stuffing them in hidden div

			for(var i = 0; i < userServices.length; i++) {
				html +=
				(i == hiddenThreshold
					? '<li id="dsq-drop-hidden-' + post_id +'" class="dsq-drop-hidden"><ul>'
					: '')
				+ '<li class="dsq-drop-services"> \
					<a class="dsq-service-' + userServices[i].name.toLowerCase() + '" href="' + userServices[i].url + '" target="_blank"> \
						<img src="' + Dsq.jsonData.media_url + '/images/embed/services/' + userServices[i].name.toLowerCase() + '.png" alt="' + userServices[i].name.toLowerCase() + '">'
					+ userServices[i].name
					+ '</a> \
				</li>';
			}

			if(i >= hiddenThreshold) {
				html += '</ul></li> \
				<li id="dsq-drop-more-' + post_id + '" class="dsq-drop-more"><a href="#" onclick="Dsq.Post.dropProfileMore(this, '+ post_id + '); return false"><small>&#9660;</small></a></li> \
				';
			}
			return html;
		};

		return ' \
			<div class="dsq-header-avatar" id="dsq-header-avatar-' + post_id + '" onmouseover="Dsq.Post.dropProfile(' + post_id + ')"> \
				<a id="dsq-avatar-' + post_id + '" class="dsq-avatar" href="' + userData.url + '" onclick="Dsq.Popup.popProfile(' + post_id + '); return false;">'
			+ (Dsq.jsonData.forum.show_avatar
				? '<img src="' + Dsq.jsonData.users[_meta.user_key].avatar + '" alt="" />'
				: '')
			+ '</a>'
			+ '</div> \
		';
	};

	this.postAppendHeader = function(post_id) {
		var _meta = Dsq.jsonData.posts[post_id];

		return ''
			+ (_meta.author_is_moderator
				? '<img class="dsq-mod-star" src="http://media.disqus.com/images/bullet-star.png" title="Moderator" alt="" />'
				: '')
			+ '<span class="dsq-header-meta"> \
				<a id="dsq-time-' + post_id + '" class="dsq-header-time" href="#comment-' + post_id + '" title="Permalink">' + _meta.date + '</a> \
			</span>';
	};

	this.preBody = function(post_id) {
		return '';
	}

	this.postBody = function(post_id) {
		// TODO: Deprecate flagging conditional
		var _meta = Dsq.jsonData.posts[post_id];
		return ''
			+ (_meta.edited
				? '<p class="dsq-editedtxt">(Edited by a moderator)</p>'
				: '')
			;
	};

	this.postFooter = function(post_id) {
		// TODO: Use media should be conditional
		var _meta = Dsq.jsonData.posts[post_id];
		if(_meta.killed) { return ''; }

		return ' \
			<div class="dsq-comment-footer" id="dsq-comment-footer-' + post_id + '"> \
				<div id="dsq-points-' + post_id + '" class="dsq-likedtxt">'
				+ (_meta.points
					? _meta.points + Dsq.Utils.pluralize(_meta.points, ' person', ' people') + ' liked this comment.'
					: '')
				+ '</div>'
				+ '<ul class="dsq-comment-options dsq-list-style">'
				+ (_meta.votable
					? '<li class="dsq-list-first dsq-rate" id="dsq-rate-cont-' + post_id + '">'
					+ (!_meta.up_voted
						? '<a href="#" onclick="Dsq.Post.rate(this, ' + post_id + ', 1); return false;">Like</a>'
						: 'You liked this.') + '</li>'
					: '')
				+ '<li class="dsq-report' + (!_meta.votable ? ' dsq-list-first' : '') + '" id="dsq-post-report-' + post_id + '"><a href="#" class="dsq-post-report" onclick="Dsq.Post.report(' + post_id + ', false); return false;">Report</a></li> \
				</ul> \
				<ul class="dsq-list-style">'
				+ (_meta.can_reply
					? '<li class="dsq-list-first"><a href="#" id="dsq-reply-link-' + post_id +'" onclick="Dsq.Post.toggleReply(this, ' + post_id +'); return false;">Reply</a></li>'
					: '')
				+ (_meta.can_reply && !_meta.has_replies && _meta.from_request_user
					? '<li id="dsq-edit-el-' + post_id + '"><a id="dsq-edit-link-' + post_id + '" href="#" onclick="Dsq.Post.edit(this, ' + post_id + '); return false;">Edit</a></li>'
					: '')
				+ '<li class="' + (!_meta.can_reply ? 'dsq-list-first' : '') + '" id="dsq-more-el-' + post_id + '"><a id="dsq-more-link-' + post_id + '" href="#" onclick="Dsq.Post.showMenu(this, ' + post_id + ', \'more\'); return false">More <small>&#9660;</small></a></li>'
				+ (Dsq.jsonData.forum.use_media
					? '<li id="dsq-media-el-' + post_id +'" style="display:none"><a id="dsq-media-link-' + post_id + '" href="#" onclick="Dsq.Post.showMenu(this, ' + post_id + ', \'media\'); return false">Use Media <small>&#9660;</small></a></li>'
					: '')
				+ '</ul>'
				+ '<div id="dsq-reply-bar-' + post_id + '" class="dsq-reply-bar" style="display:none"> \
						<div id="dsq-reply-bar-items-' + post_id + '" class="dsq-reply-bar-items"> \
						</div> \
						<div id="dsq-reply-bar-auth-' + post_id + '" class="dsq-reply-bar-auth"> \
							 \
								 \
								 	<a href="#" class="dsq-help dsq-reply-req-opt" title="You are commenting as a Guest. You may choose to log into an existing DISQUS Profile, your Facebook, Twitter or OpenID account to comment on Scobleizer" onclick="Dsq.Popup.helpBadges(); return false">Optional:</a> \
								 \
								<img class="dsq-login-icon" src="http://media.disqus.com/images/dsq-favicon-16x16.png" alt="" /> \
								<a id="dsq-reply-login-' + post_id + '" href="http://disqus.com/profile/login/?next=article:18350330" onclick="Dsq.Popup.login(); return false">Login</a> \
								 \
									&nbsp;or&nbsp; \
									<img class="fb_login_image" src="http://static.ak.fbcdn.net/images/fbconnect/login-buttons/connect_light_small_short.gif" alt="Facebook Connect"/> \
									<a href="#" onclick="FB.Connect.requireSession(DisqusFbcParentController.onLogin); return false;">Connect</a> \
								 \
								&nbsp;or&nbsp; \
									<img src="http://media.disqus.com/images/twitter-signin-icon.png" alt="" /> \
									<a href="#" onclick="Dsq.Twitter.startTwitterConnect(); return false">Sign-in</a> \
								 \
								 \
							 \
						</div> \
					</div> \
					<div id="dsq-reply-' + post_id + '"></div> \
			</div> \
		';
	};

	//
	// Iframes
	//

	this._makeAttributes = function(attributes) {
		// Makes a tag attributes string out of an object.
		// Caller is responsible for making sure nothing needs to be escaped.
		var result = [];
		for (key in attributes) {
			result.push(' ' + key + '="' + attributes[key] + '"');
		}
		result = result.join('');
		return result;
	};

	this._frameGeneric = function(base_url, params, attributes) {
		if(typeof(disqus_callback_params) == 'undefined') {
			disqus_callback_params = '';
		}

		var default_params = {
			// TODO: These should be moved to Dsq.jsonData.
			'f'				: 'scobleizer',
			't'				: 'who_should_be_usa8217s_cto',
			// Do we need encodeURIComponent here?
			'ifrs'			: encodeURIComponent(disqus_iframe_css),
			'to_redirect'	: encodeURIComponent(window.location),
			'cbp'			: disqus_callback_params,
			'ff'			: Dsq.Thread.ff,
			'fc'			: Dsq.Thread.fc,
			'ac'			: Dsq.Thread.ac,
			'default_text'	: disqus_default_text
		};

		base_url += '?' + (new Date()).getTime();
		// Add params to default_params.
		if(params) {
			for(var key in params) {
				if(params.hasOwnProperty(key)) {
					default_params[key] = encodeURIComponent(params[key]);
				}
			}
		}
		// Build querystring.
		for(var key in default_params) {
			if(default_params[key] && default_params.hasOwnProperty(key)) {
				base_url += '&' + key + '=' + default_params[key];
			}
		}

		return [
			'<iframe marginwidth="0" marginheight="0" hspace="0" vspace="0" frameborder="0"',
			(' allowtransparency="true" src="' + base_url + '"'),
			this._makeAttributes(attributes),
			'</iframe>'].join('');
	};

	this.frameLogin = function(opt_attributes) {
		var params = {};
		var base_url = 'http://disqus.com/embed/login.html';
		var attributes = opt_attributes || {};
		attributes['class'] = 'dsq-post-login';

		if(typeof disqus_frame_theme != 'undefined') {
			params['theme'] = disqus_frame_theme;
		}
		return this._frameGeneric(base_url, params, attributes);
	};

	this.frameReply = function(post_id, extra_params, attributes) {
		// Returns the HTML for a reply iframe. Called by Dsq.Iframes.setReplyIframeToContainer
		var _meta = (typeof post_id != 'undefined') ? Dsq.jsonData.posts[post_id] : false;
		var base_url = Dsq.Urls.REPLY;
		var params = {
			'def_email'		: disqus_def_email,
			'def_name'		: disqus_def_name
		};
		if(extra_params) {
			for(var key in extra_params) {
				if(extra_params.hasOwnProperty(key)) {
					params[key] = extra_params[key];
				}
			}
		}
		if(_meta) {
			params['parent_post'] = post_id;
		}
		if(typeof disqus_per_page != 'undefined') {
			params['per_page'] = disqus_per_page;
		}
		if(typeof disqus_frame_theme != 'undefined') {
			params['theme'] = disqus_frame_theme;
		}
		if(Dsq.jsonData.request.is_authenticated) {
			attributes['class'] += '-authenticated';
		}
		return this._frameGeneric(base_url, params, attributes);
	};

	this.frameEdit = function(post_id) {
		var _meta = (typeof post_id != 'undefined') ? Dsq.jsonData.posts[post_id] : false;
		var base_url = 'http://disqus.com/embed/edit.html';
		var params = {
			'p' : post_id
		};
		return this._frameGeneric(base_url, params, {'class': 'dsq-post-edit', 'name': 'dsq-edit_' + post_id + '-frame'});
	};

	//
	// Menus
	//

	this.menuMore = function(post_id) {
		// TODO: "Remove post" button should hide menu.
		var _meta = Dsq.jsonData.posts[post_id];
		var userData = Dsq.jsonData['users'][_meta.user_key];
		return ' \
			<li><a href="#comment-' + post_id + '" onclick="Dsq.Popup.permalink(' + post_id + ')">Link</a></li> \
			<li><a href="#" onclick="Dsq.Popup.popProfile(' + post_id + '); return false;">Profile</a></li>'
	+ (Dsq.jsonData.request.is_moderator || Dsq.jsonData.request.is_global_moderator
		? '	<li class="dsq-menu-sep"></li>' + (_meta.email ? '<li class="dsq-admin-email">' + _meta.email + '</li>' : '')
		+ '	<li class="dsq-admin-ip">' + _meta.ip + '</li> \
			<li class="dsq-menu-sep"></li>'
		+ (Dsq.jsonData.request.moderator_can_edit
			? ' <li class="dsq-admin-edit"><a href="#" onclick="Dsq.Post.edit(this, ' + post_id + '); return false;">Edit Comment</a></li>'
			: '')
		+ ' <li class="dsq-remove"><a href="#" onclick="Dsq.Post.removePost(' + post_id + ', 1); return false;">Remove Comment</a></li> \
			<li class="dsq-report-spam"><a href="#" onclick="Dsq.Post.reportSpam(' + post_id + '); return false;">Mark Spam</a></li> \
			<li class="dsq-block-user"><a href="#" onclick="Dsq.Popup.blacklist(' + post_id + '); return false">Block User</a></li>'
		: '');
	};

	this.menuMedia = function(post_id) {
		return ' \
			<li><a href="#" onclick="Dsq.Post.toggleMediaReply(this, ' + post_id + ', \'seesmic\'); return false;">Record video</a></li> \
		';
	};

	this.dropProfile = function(post_id) {
		var _meta = Dsq.jsonData.posts[post_id];
		var userData = Dsq.jsonData['users'][_meta.user_key];

		var _includeServices = function() {
			var userServices = Dsq.Post.getUserServices(null, post_id);
			var html = '';
			var hiddenThreshold = 3; // Define # of services to show before stuffing them in hidden div

			for(var i = 0; i < userServices.length; i++) {
				html +=
				(i == hiddenThreshold
					? '<li id="dsq-drop-hidden-' + post_id +'" class="dsq-drop-hidden"><ul>'
					: '')
				+ '<li class="dsq-drop-services"> \
					<a class="dsq-service-' + userServices[i].name.toLowerCase() + '" href="' + userServices[i].url + '" target="_blank"> \
						<img src="' + Dsq.jsonData.media_url + '/images/embed/services/' + userServices[i].name.toLowerCase() + '.png" alt="' + userServices[i].name.toLowerCase() + '">'
					+ userServices[i].name
					+ '</a> \
				</li>';
			}

			if(i >= hiddenThreshold) {
				html += '</ul></li> \
				<li id="dsq-drop-more-' + post_id + '" class="dsq-drop-more"><a href="#" onclick="Dsq.Post.dropProfileMore(this, '+ post_id + '); return false"><small>&#9660;</small></a></li> \
				';
			}
			return html;
		};


		var menu = '<li class="dsq-drop-showlnk"><a href="#" onclick="Dsq.Popup.popProfile(' + post_id + '); return false;">Expand &#8663;</a></li>';
		var pointsMessage = '';
		if (userData['registered']) {
			pointsMessage = 'with ' + userData['points'] + ' points (more points are better).';
		}

		if (userData['is_remote']) {
			var domain = userData['remote_domain_name'];
			menu += '<li class="dsq-drop-badge" title="' + userData['display_name'] + ' is a ' + domain + ' user ' + pointsMessage + '" onclick="Dsq.Popup.helpBadges()">';
			menu += '<span class="dsq-badge-' + domain.toLowerCase() + '">' + domain + '</span></li>';
		} else if (userData['registered']) {
			if (userData['verified']) {
				menu += '<li class="dsq-drop-badge" title="' + userData['display_name'] + ' has a verified commenter profile ' + pointsMessage + '" onclick="Dsq.Popup.helpBadges()">';
				menu += '<span class="dsq-badge-verified">Verified</span></li>';
			} else {
				menu += '<li class="dsq-drop-badge" title="' + userData['display_name'] + ' has a registered, but unverified, commenter profile ' + pointsMessage + '" onclick="Dsq.Popup.helpBadges()">';
				menu += '<span class="dsq-badge-registered">Registered</span></li>';
			}
		} else {
			menu += '<li class="dsq-drop-badge" title="' + userData['display_name'] + ' has not claimed this commenter profile." onclick="Dsq.Popup.helpBadges()"><span class="dsq-badge-guest">Guest</span></li>';
		}

		menu += _includeServices();
		return menu;
	};

	//
	// Popups
	//

	this._popupGeneric = function(content) {
		return ' \
		<div class="dsq-popup-content"> \
			<div class="dsq-popup-top"></div> \
			<div class="dsq-popup-body" class="clearfix"> \
				<div class="dsq-popup-body-padding"> \
					<div class="dsq-popup-header"> \
						<a class="dsq-close-link" href="#" onclick="Dsq.Popup._closePopup(null, true); return false"><img src="http://media.disqus.com/images/modal-close.png" alt="" /></a>'
						+ content['header']
					+ '</div>'
					+ content['body']
					+ '<div class="powered-by"><a href="http://disqus.com/comments/">Powered by <img src="http://media.disqus.com/images/embed/disqus-logo.png" alt="Disqus Comments" style="margin-bottom:-5px" /></a></div> \
				</div> <!-- padding --> \
			</div> <!-- body --> \
			<div class="dsq-popup-bottom"></div> \
		</div> \
		';
	};

	this.popupProfile = function(user_key) {
		var userServices = Dsq.Post.getUserServices(user_key, null);
		var userData = Dsq.jsonData['users'][user_key];
		var headerHtml = '';
		var bodyHtml = '';
		var content = {};

		var _includeServices = function() {
			var html = '';
			for(var i = 0; i < userServices.length; i++) {
				html +=
				(i == 0
					? '<h4>Connections</h4><ul>'
					: '')
				+ '<li> \
					<img src="' + Dsq.jsonData.media_url + '/images/embed/services/' + userServices[i].name.toLowerCase() + '.png" alt="' + userServices[i].name.toLowerCase() + '" title="' + userServices[i].name.toLowerCase() + '" /> \
					<a class="dsq-service-' + userServices[i].name.toLowerCase() + '" href="' + userServices[i].url + '" target="_blank">'
					+ userServices[i].name
					+ '</a> \
				</li>'
				+ (i+1 == userServices.length ? '</ul>' : '');
			}
			return html;
		};

		headerHtml = ' \
			<table> \
				<tr> \
					<td> \
						<a class="dsq-profile-userurl" href="' + userData.url + '"><img class="dsq-popup-profile-avatar" src="' + userData['avatar'] + '" alt="" /></a> \
					</td> \
					<td> \
						<div class="dsq-popup-profile-user"> \
							<h3>' + userData['display_name'] + '</h3> \
							<div class="dsq-popup-profile-user-stats" id="dsq-popup-profile-user-stats-' + user_key + '">Loading...</div> \
						</div> \
					</td> \
				</tr> \
			</table> \
		';

		bodyHtml = ' \
			<div class="dsq-popup-profile-state"> \
				This is a&nbsp;<span class="'
					+ (userData['registered']
						? (userData['verified']
							? ' dsq-badge-verified'
							: (userData['is_remote']
								? ' dsq-badge-' + userData['remote_domain_name'].toLowerCase()
								: ' dsq-badge-registered')
							)
							: ' dsq-badge-guest') + '">'
			+ (userData['registered']
				? (userData['verified']
					? 'Verified'
					: (userData['is_remote']
						 ? userData['remote_domain_name']
						 : 'Registered')
					)
				: 'Guest')
			+ '</span>&nbsp;commenter profile.'
			+ '&nbsp;<a class="dsq-profile-userurl" href="' + userData.url + '"><strong>View more comments </strong></a>'
			+ (!userData['points']
				? '<p class="dsq-popup-notice">If this is you, <a href="http://disqus.com/profile" target="_blank">claim it now</a> to manage your comments.</p>'
				: '')
			+ ((userData['registered'] && !userData['verified'] && (Dsq.jsonData.request.username && (Dsq.jsonData.request.username == userData['username'])) && !userData['is_remote'])
				? '<p class="dsq-popup-notice"><strong>Alert</strong>: You have not verified this account. <a href="http://disqus.com/verify">Verify it now.</a></p>'
				: '')
			+ '</div> \
			<div id="dsq-profile-status-' + user_key + '" class="dsq-popup-profile-status" style="display:none"></div> \
			<div class="dsq-popup-profile-snapshot"> \
				<table> \
					<tr> \
						<td> \
							<div id="dsq-popup-profile-active-sites-wrapper-' + user_key + '"> \
								<h4>Most active sites</h4> \
								<ul id="dsq-popup-profile-active-sites-' + user_key + '"> \
									<li>Loading...</li> \
								</ul> \
							</div> \
						</td> \
						<td>'
							+ _includeServices()
							+ '<div id="dsq-popup-profile-moderated-wrapper-' + user_key + '"> \
								<h4>Moderator of</h4> \
								<ul id="dsq-popup-profile-moderated-' + user_key + '"> \
									<li>Loading...</li> \
								</ul> \
							</div> \
						</td> \
					</tr> \
				</table> \
			</div> \
			';

		content = {
			'header': headerHtml,
			'body': bodyHtml
		};

		return this._popupGeneric(content);
	};

	this.popupReblog = function() {
		var headerHtml = '';
		var bodyHtml = '';
		var content = {};

		headerHtml = ' \
			<cite><span>Reblog this comment</span></cite> \
		';

		bodyHtml = ' \
			<div id="dsq-reblog-form" class="dsq-reblog-form"> \
			</div> \
		';

		content = {
			'header': headerHtml,
			'body': bodyHtml
		};

		return this._popupGeneric(content);
	};

	this.popupModal = function(title, message) {
		var headerHtml = '';
		var bodyHtml = '';
		var content = {};

		headerHtml = ' \
			<h3>' + title + '</h3> \
		';

		bodyHtml = message;

		content = {
			'header': headerHtml,
			'body': bodyHtml
		};

		return this._popupGeneric(content);
	};

	this.alertContent = function(name, post_id) {
		var alert = {
			'post_not_approved': {
				'title': 'Comment awaiting approval by a moderator',
				'message': 'Thanks for posting. Your comment must be approved by a moderator before appearing here.'
			},
			'post_has_profile': {
				'title': 'Use your existing commenter profile',
				'message': 'You have just posted your commment as a <span class="dsq-badge dsq-badge-guest">Guest</span>, but you may already have a <span class="dsq-badge dsq-badge-registered">Registered</span> commenter profile.<br /><br /><a href="http://disqus.com/claim">Log in and claim this comment!</a>'
			}
		};
		return alert[name] || false;
	};

	//
	// Actions
	//

	this.voted = function(post_id, points, vote) {
		// Update number of points
		Dsq.$('dsq-points-' + post_id).innerHTML = points + Dsq.Utils.pluralize(points, ' person', ' people') + ' liked this comment.';

		// Update link text
		if(vote) {
			Dsq.$('dsq-rate-cont-' + post_id).innerHTML = 'You liked this.';
		}
	};

	this.subscribed = function(status) {
		var title, message;

		if(status) {
			title = 'Subscribed!';
			message = 'You have subscribed to this comment thread. New comments will be sent directly to your email inbox, where you may read and respond by email.';
			Dsq.$('dsq-subscribe').innerHTML = ' \
				<a href="#" onclick="Dsq.Thread.subscribe(0); return false">Unsubscribe</a> \
			';
		} else {
			title = 'Unsubscribed';
			message = 'You have unsubscribed to this comment thread. New comments will no longer be sent to your email inbox.';
			Dsq.$('dsq-subscribe').innerHTML = ' \
				<a href="#" onclick="Dsq.Thread.subscribe(1); return false">Subscribe by email</a> \
			';
		}

		Dsq.Popup.popModal(message, title);

	};
	
	this.highlighted = function() {
		Dsq.Popup.popModal('This comment has been highlighted.', 'Highlighted comment');
	};

	//
	// Media
	//

	this.mediaSeesmic = function(id, thumb) {
		return ' \
			<div id="dsq-seesmic-' + id + '_preview" class="dsq-seesmic-preview"><a href="http://www.seesmic.com/video/' + id + '" target="_blank" class="see_link">&nbsp;</a> \
				<div style="display:block;width:160px; height:120px; border:none; background-image:url(http://t.seesmic.com/thumbnail/' + thumb + ')"> \
					<div id="dsq-seesmic-' + id + '_hide" class="seePlayOverlay" style="display:none;"><img onclick="see_play_video(\'' + id + '\',false)" src="http://media.disqus.com/images/seesmic/stopOverlay.png" width="50" height="50" style="cursor:pointer; cursor:hand; padding-top: 30px; padding-left: 50px" alt="" /></div> \
					<div id="dsq-seesmic-' + id + '_show" class="seePlayOverlay"><img onclick="see_play_video(\'' + id + '\',true)" src="http://media.disqus.com/images/seesmic/playOverlay.png" width="50" height="50" style="cursor:pointer; cursor:hand; border:none; padding-top: 30px; padding-left: 50px" alt="" /></div> \
				</div> \
			</div> \
			<div id="' + id + '_content" style="display:block; width:100%; padding-top:5px"></div> \
		';
	};

	//
	// Callbacks
	//

	this.postComment_onSuccess = function(parent_post_id) {
		// Increment post count
		var num_posts = Dsq.$('dsq-num-posts');
		var total_posts = Dsq.$('dsq-total-posts');
		
		if (num_posts) { 
			num_posts.innerHTML = parseInt(num_posts.innerHTML) + 1;
		}
		if (total_posts) { 
			total_posts.innerHTML = parseInt(total_posts.innerHTML) + 1;
		}
	};
};
// Dsq.Templates


/**
 * Dsq.Post
 */
Dsq.Post = new function() {
	this.openedMenu = {};
	this.menuEventListener = null;
	this.stateReplyToggled = {};
	this.stateEditToggled = {};
	this.stateRecordLink = {};

	/**
	 * Inserts a new post into the document.
	 *
	 * @param after_id {Number}	Insert a post before specified id.  If after_id
	 *							evaluates to false, then post in the front.  If
	 *							after_id is -1, post at the end.
	 */
	this.insert = function(after_id, id, message, author) {
		// Skeleton template from thread_posts.html.
		var skeleton = ' \
			<li id="dsq-comment-%(id)s"> \
				<div id="dsq-comment-header-%(id)s" class="dsq-comment-header"> \
					<cite id="dsq-cite-%(id)s" class="dsq-comment-cite"> \
						<a id="dsq-author-user-%(id)s" href="%(author_url)s" target="_blank" rel="nofollow">%(author_name)s</a> \
					</cite> \
				</div> \
				<div id="dsq-comment-body-%(id)s" class="dsq-comment-body"> \
					<div id="dsq-comment-message-%(id)s" class="dsq-comment-message">%(message)s</div> \
				</div> \
			</li> \
		';
		var _meta = Dsq.jsonData.posts[id];
		var _user_meta = Dsq.jsonData.users[_meta.user_key];
		var markup = Dsq.Utils.interpolate(skeleton, {
			id: id,
			message: message,
			author_url: _user_meta.blog,
			author_name: _user_meta.display_name
		});
		var div = document.createElement('div');
		markup = markup.replace(Dsq.COMMENTS_RE, Dsq.CommentsHandler);
		div.innerHTML = markup;

		if (after_id === -1) {
			Dsq.$('dsq-comments').appendChild(div);
		} else if (!after_id) {
			Dsq.$('dsq-comments').insertBefore(div, Dsq.$('dsq-comments').firstChild);
		} else if (Dsq.$('dsq-comment-' + after_id)) {
			// Get next node after "after_id", so we can insert before it.
			// If "after_id" is the last comment, the target node is the
			// last node.
			
			// var append_post_id = Dsq.Templates.appendPost(after_id).replace('<div id="','').replace('"></div>', '');
			var append_post_id = 'dsq-append-post-' + after_id;
			var node = Dsq.$(append_post_id);
			while (node = node.nextSibling) {
				if (!node || node.nodeType == 1) { // 1 == Node.ELEMENT_NODE
					break;
				}
			}
			if (!node) {
				node = Dsq.$(append_post_id);
			}
			node.parentNode.insertBefore(div, node);
		}
	};

	this.incrementPostCount = function() {
		
		var num_posts = Dsq.$('dsq-num-posts');
		var total_posts = Dsq.$('dsq-total-posts');

		if (num_posts) {
			num_posts.innerHTML = parseInt(num_posts.innerHTML, 10) + 1;
		}
		if (total_posts) {
			total_posts.innerHTML = parseInt(total_posts.innerHTML, 10) + 1;
		}
	}
	
	this.outlineComment = function(post_id) {
		Dsq.$('dsq-comment-' + post_id).className += ' dsq-comment-outline';
		setTimeout("(function () { Dsq.Post.clearOutlineComment(" + post_id + ") })()", 3000);
	};
	
	this.clearOutlineComment = function(post_id) {
		Dsq.$('dsq-comment-' + post_id).className = Dsq.$('dsq-comment-' + post_id).className.replace('dsq-comment-outline', '');
	};

	this.showMenu = function(el, id, name) {
		var anchorPos = Dsq.Utils.findPos(el);
		var menu = document.createElement('ul');

		if(this.openedMenu) {
			if(this.openedMenu.linkClicked) {
				this.openedMenu.linkClicked = false;
				return;
			}
		}

		switch(name) {
			case 'more':
				menu.innerHTML = Dsq.Templates.menuMore(id);
				break;
			case 'media':
				menu.innerHTML = Dsq.Templates.menuMedia(id);
				break;
			default:
				break;
		}

		// Add menu to document body
		menu.id = 'dsq-menu-' + id;
		menu.className = 'dsq-menu';
		Dsq.$b.appendChild(menu);

		// Position and show
		anchorPos[1] += 15;
		menu.style.left = anchorPos[0] + 'px';
		menu.style.top = anchorPos[1] + 'px';
		menu.style.display = 'block';

		// Set global reference
		this.openedMenu = {
			'el' : menu,
			'id' : id,
			'name' : name,
			'linkClicked' : false
		};

		// Set listener
		this.menuEventListener = Dsq.Utils.addEventListener(document, 'mouseup', this._hideMenu);
	};

	this._hideMenu = function(e) {
		var el = e.target || e.srcElement;
		var openedMenu = Dsq.Post.openedMenu.el;
		var id = Dsq.Post.openedMenu.id;

		if(!id) {
			var link = 'dsq-' + Dsq.Post.openedMenu.name + '-link';
		} else {
			var link = 'dsq-' + Dsq.Post.openedMenu.name + '-link-' + id;
		}

		if(!openedMenu) {
			return;
		}

		if(!Dsq.Popup.isClicked(e, openedMenu.id)) {
			openedMenu.style.display = 'none';
			Dsq.Utils.removeEventListener(Dsq.Post.menuEventListener);
			Dsq.Utils.deleteNode(openedMenu);

		} else {
			// Hide the menu if a link was clicked inside the menu.  We can't
			// completely remove the menu until the onclick event on the link
			// fires, but the menuEventListener will prevent multiple menus
			// from polluting the DOM.
			if(el && typeof el.href != 'undefined') {
				openedMenu.style.display = 'none';
				Dsq.Post.openedMenu.el = null;
			}
		}

		if(Dsq.Popup.isClicked(e, link)) {
 			Dsq.Post.openedMenu.linkClicked = true;
		}
	};


	this.getUserServices = function(user_key, id) {
		if(!user_key && id) {
			var _meta = Dsq.jsonData.posts[id];
			user_key = _meta.user_key;
		}
		var userData = Dsq.jsonData['users'][user_key];
		var userServices = [];

		// Keep a full list of supported services. This is the order they will display in the drop-profile.
		// Each service must have a corresponding case in _buildServiceUrl()
		var supportedServices = ['blog', 'twitter', 'facebook', 'tumblr'];

		function _buildServiceUrl(serviceName) {
			var data = userData[serviceName];
			var services = {
				blog:		function(d) { return d; },
				twitter:	function(d) { return d; },
				facebook:	function(d) { return d; },
				tumblr:		function(d) { return 'http://' + d + '.tumblr.com'; }
			};
			return services[serviceName](data);
		}

		for(var i = 0; i < supportedServices.length; i++) {
			if(userData[supportedServices[i]]) {
				var serviceUrl = _buildServiceUrl(supportedServices[i]);
				userServices.push({'name' : supportedServices[i], 'url' : serviceUrl});
			}
		}
		return userServices;
	}

	this.dropProfile = function(id) {
		var dp = Dsq.$('dsq-drop-profile-' + id);

		// IE6 needs JS to display/hide. All other browsers use CSS.
		if(dp) {
			if(Dsq.Utils.ie6) dp.style.display = (dp.style.display == 'inline') ? 'none' : 'inline';
			return false;
		} else {
			dp = document.createElement('ul');
		}

		dp.id = 'dsq-drop-profile-' + id;
		dp.className = 'dsq-drop-profile';

		if(Dsq.Utils.ie6) { dp.style.display = 'inline'; }

		var container = Dsq.$('dsq-header-avatar-' + id);
		dp.innerHTML = Dsq.Templates.dropProfile(id);
		container.appendChild(dp);
	};

	this.dropProfileMore = function(el, id) {
		var hiddenItems = Dsq.$('dsq-drop-hidden-' + id);

		hiddenItems.style.display = 'inline';
		el.parentNode.style.display = 'none';
	};

	this._updateReplyLinks = function(el, id) {
		// Update "reply / cancel" links based on state.
		var displayDict = {};

		if(id) {
			if(this.stateReplyToggled[id]) {
				el.innerHTML = 'Cancel';
				displayDict['media'] = 'inline';
				displayDict['edit'] = 'none';
			} else {
				el.innerHTML = 'Reply';
				displayDict['media'] = 'none';
				displayDict['edit'] = 'inline';
			}
		}

		for(var key in displayDict) {
			if(displayDict.hasOwnProperty(key)) {
				var	linkEl = Dsq.$('dsq-' + key + '-el-' + id),
					spacer = Dsq.$('dsq-' + key + '-spacer-' + id);

				if(linkEl) {
					linkEl.style.display = displayDict[key];
					if(spacer) spacer.style.display = displayDict[key];
				}
			}
		}
	};

	this._updateMediaLinks = function(el, id) {
		// Update "use media / cancel" links based on state.
		var appendId = (id) ? ('-' + id) : '';
		var link = Dsq.$('dsq-media-link' + appendId);

		if(this.stateRecordLink[id]) {
			link.innerHTML = 'Cancel Media';
			link.onclick = function() { Dsq.Post.toggleMediaReply(link, id); return false; };
		} else {
			link.innerHTML = 'Use Media <small>&#9660;</small>';
			link.onclick = function() { Dsq.Post.showMenu(link, id, 'media'); return false; };
		}
	};

	this.toggleReply = function(el, id) {
		// Create reply IFrame
		if (window.disqus_use_postmessage) {
			if (!this.stateReplyToggled[id]) {
				Dsq.$('dsq-reply-' + id).style.display = 'block';
				Dsq.$('dsq-reply-bar-' + id).style.display = 'block';
				// Create IFrame if it doesn't exist.
				if (!Dsq.frames['reply_' + id]) {
					var _meta = Dsq.jsonData.posts[id];
					Dsq.frames['reply_' + id] = new Dsq.ReplyFrame(Dsq.$('dsq-reply-frame-' + id), id);
					Dsq.frames['reply_' + id].init();
					Dsq.frames['reply_' + id].setState(id, _meta.depth);
				}
			} else {
				Dsq.$('dsq-reply-' + id).style.display = 'none';
				Dsq.$('dsq-reply-bar-' + id).style.display = 'none';
			}
		} else {
			// DEPRECATED
			if(!this.stateReplyToggled[id]) {
				// Reply toolbar
				Dsq.$('dsq-reply-bar-' + id).style.display = 'block';
				Dsq.Iframes.showReplyIframeInContainerIfAllowed(Dsq.$('dsq-reply-' + id), id);
			} else {
				Dsq.$('dsq-reply-bar-' + id).style.display = 'none';
				Dsq.Iframes.hideAllInContainer(Dsq.$('dsq-reply-' + id));
				if(this.stateRecordLink[id]) {
					// HACK: Cancel media before canceling self.
					this.toggleMediaReply(Dsq.$('dsq-media-link-' + id), id);
				}
			}
		}

		this.stateReplyToggled[id] = !this.stateReplyToggled[id];
		this._updateReplyLinks(el, id);

		if(Dsq.Utils.ie) { Dsq.Utils.fixIframesIE('dsq-reply-' + id); }

		Dsq.Events.fire(Dsq.Events.REPLY_IFRAME_TOGGLED, {
			postId: id,
			opened: this.stateReplyToggled[id]
		});
	};

	this.toggleMediaReply = function(el, id, xtype) {
		id = id || 0;
		if(id) {
			var container = Dsq.$('dsq-reply-' + id);
		} else {
			var container = Dsq.$('dsq-post-add');
		}

		if(!this.stateRecordLink[id]) {
			Dsq.Iframes.showReplyIframeInContainer(container, id, {xtype:xtype}, 'dsq-post-video');
		} else {
			Dsq.Iframes.showReplyIframeInContainer(container, id);
		}
		this.stateRecordLink[id] = !this.stateRecordLink[id];
		this._updateMediaLinks(el, id);

		if(Dsq.Utils.ie) { Dsq.Utils.fixIframesIE(); }
	};

	this.edit = function(el, id) {
		Dsq.$('dsq-comment-message-' + id).innerHTML = Dsq.Templates.frameEdit(id);
		el.parentNode.style.display = 'none';
		if(Dsq.Utils.ie) { Dsq.Utils.fixIframesIE('dsq-comment-message-' + id); }
	};

    this.rate = function(el, id, vote) {
		if(Dsq.jsonData.request.is_authenticated || Dsq.jsonData.forum.allow_anon_votes) {
			if(vote == 1) {
                Dsq.$('dsq-rate-cont-' + id).innerHTML = '<img src="http://media.disqus.com/images/loading-small.gif">';
            }

            Dsq.Utils.execScript('http://disqus.com/forums/scobleizer/vote.js'
                + '?post_id='    + id
                + '&vote='        + vote);

		} else {
			Dsq.Popup.login(Dsq.Strings.TO_RATE_PLEASE_LOG_IN);
		}
    };

	this.report = function(id, confirmed) {
		if(confirmed) {
			Dsq.Utils.postToUrl('http://disqus.com/forums/scobleizer/who_should_be_usa8217s_cto/post_report/', {'post_id': id});
			Dsq.Popup.popModal('Thank you. This comment has been flagged for moderator attention.', 'Successfully flagged');
			Dsq.Utils.deleteNode(Dsq.$('dsq-post-report-' + id));
		} else {
			var title = Dsq.Strings.FLAG_INAPPROPRIATE_COMMENT;
			var message = Dsq.Strings.ARE_YOU_SURE_YOU_WOULD_LIKE_TO_REPORT_THIS_COMMENT_TO_A_MODERATOR + '? \
			<br /><br /> \
			<button type="button" onclick="Dsq.Popup._closePopup(null, true)"><strong>' + Dsq.Strings.NO + '</strong>, ' + Dsq.Strings.NEVER_MIND + '</button>&nbsp;&nbsp;&nbsp;<button type="button" onclick="Dsq.Post.report(' + id + ', true);"><strong>' + Dsq.Strings.YES + '</strong>, ' + Dsq.Strings.FLAG_INAPPROPRIATE_COMMENT + '</button><br /><br />'
			+ Dsq.Strings.THIS_WILL_FLAG_COMMENTS_FOR_MODERATORS_TO_TAKE_ACTION + '. \
			';

			Dsq.Popup.popModal(message, title, id);
		}
	};



	this.showAlert = function(id, msg) {
		var msgEl = Dsq.$('dsq-comment-message-' + id);
		var alert = '<div class="dsq-comment-alert">' + msg + '</div>';

		msgEl.innerHTML = alert + msgEl.innerHTML;
	};

};
// Dsq.Post


/**
 * Dsq.Thread
 */
Dsq.Thread = new function() {
	this.fc = null;
	this.ff = null;
	this.ac = null;

	
	this.adminIsOn = false;

	
	
	

	this.hlComment = null;
	this.hlCommentClass = null;

	this.getNextComment = function(el) {
		var start_id = el.id;
		while(el = el.nextSibling) {
			if(el.id && el.id.indexOf('dsq-comment-') != -1 && el.id != start_id) {
				return el;
			}
		}
		return null;
	};

	this.getActiveCommentId = function() {
		if (document.URL.indexOf('#comment-') >= 0) {
			var anchor = document.URL.slice(document.URL.indexOf('#') + 1);
			return anchor.replace('comment-', '');
		}
		return null;
	};

	this.highlightAnchor = function() {
		var i = this.getActiveCommentId();
		if (i == null) return false;
		var id = 'dsq-comment-' + i;
		var hash = window.location.hash;

		// Toggle the hash incase the comment isn't available when the page loads
		// for WebKit-based browsers.
		if (Dsq.Utils.webkit) {
			window.location.hash = '';
			window.location.hash = hash;
		}

		this.hlComment = Dsq.$(id);
		// Adding this conditional guard pending #289
		if (!this.hlComment) {
			return;
		}
		this.hlCommentClass = this.hlComment.className;
		this.hlComment.className += ' dsq-hl-anchor';

		setTimeout("Dsq.Thread.highlightClear()", 3000);
	};

	this.highlightClear = function() {
		if (!this.hlComment) {
			return;
		}
		this.hlComment.className = this.hlCommentClass;
	};

	this.login = function(toggle) {
		// toggle id is #dsq-reply-login-[id]
		var postId;
		if(toggle.id.indexOf('dsq-reply-login') != -1) {
			postId = toggle.id.slice(16);
			var container = Dsq.$('dsq-reply-' + postId);
		} else {
			var container = Dsq.$('dsq-post-add');
		}

		if(toggle) {
			if(toggle.className == 'dsq-login-active') {
				Dsq.Iframes.showReplyIframeInContainerIfAllowed(container, postId);
				toggle.className = '';
			} else {
				Dsq.Iframes.showLoginIframeInContainer(container, postId);
				toggle.className = 'dsq-login-active';
			}
		} else {
			Dsq.Iframes.showLoginIframeInContainer(container, postId);
		}

		if(Dsq.Utils.ie) { Dsq.Utils.fixIframesIE(); }
	};


	this.paginate = function(page, el_clicked, per_page) {
		// Use extra_params to pass any override parameters that we need to persist.
		var extra_params = '';

		// "Per page" can either be overriden by providing it as an argument
		// (per-call) or setting the disqus_per_page override variable (global).
		if(typeof per_page == 'undefined') {
			per_page = null;
		}
		if(typeof disqus_per_page != 'undefined' && per_page === null) {
			per_page = disqus_per_page;
		}

		if(typeof disqus_sort != 'undefined') {
			extra_params += '&sort=' + disqus_sort;
		}
		if(per_page !== null) {
			extra_params += '&per_page=' + per_page;
		}

		Dsq.$('dsq-pagination').innerHTML += '<img src="http://media.disqus.com/images/loading-small.gif">';
		
		if(el_clicked) {
			el_clicked.style.display = 'none';
		}
		
		Dsq.Utils.execScript('http://disqus.com/forums/scobleizer/thread.js'
			+ '?slug='	+ 'who_should_be_usa8217s_cto'
			+ '&p='		+ page
			+ extra_params);
	};

	this.sortBy = function(sort) {
		var disqus_script = document.createElement('script');
		var disqus_date = new Date();

		if (location.hash != '') {
			location.hash = '#disqus_thread';
		}

		if(typeof(disqus_url) == 'undefined') {
			disqus_url = disqus_href;
		}
		disqus_script.type = 'text/javascript';
		disqus_script.src = 'http://disqus.com/forums/scobleizer/thread.js'
			+ '?slug='	+ 'who_should_be_usa8217s_cto'
			+ '&sort='	+ sort
			+ '&title='
			+ '&'		+ disqus_date.getTime();

		Dsq.$('dsq-comments').innerHTML = '<img src="http://media.disqus.com/images/loading.gif">';
		Dsq.container.appendChild(disqus_script);
	};

	this.subscribe = function(status, email) {
		// `status` is an int -- 1 to subscribe, 0 to unsubscribe
		if(Dsq.jsonData.request.is_authenticated || email) {
			// If authenticated user OR anonymous email provided

			if(email) {
				Dsq.Popup._closePopup(null, true);
			}

			Dsq.Utils.execScript('http://disqus.com/forums/scobleizer/subscribe.js'
				+'?status=' 	+ status
				+ '&slug='		+ 'who_should_be_usa8217s_cto'
				+ '&email=' 	+ encodeURIComponent(email));

		} else if(!email) {
			// If anonymous user and no email has been provided yet, prompt for email

			var title = 'Subscribe to this comment thread';
			var message = ' \
				New comments will be sent directly to your email inbox! \
				<div class="dsq-subscribe-submit"> \
					<p><strong>Enter your email address below.</strong></p> \
					<input type="text" id="dsq-subscribe-email"> \
					<button type="button" onclick="Dsq.Thread.subscribe(1, Dsq.$(\'dsq-subscribe-email\').value)">Subscribe</button> \
				</div> \
			';

			Dsq.Popup.popModal(message, title);
		}
	};

	this.showSettings = function() {
		if (!Dsq.jsonData.request.is_moderator) {
			return;
		}

		/* The form has to be re-designed when more options will come out. */
		var html = 'Automatically close comments after <input size="3" id="dsq-thread-days-alive" value="' + Dsq.jsonData.thread.days_alive + '" type="text" /> days. Existing comments will still be displayed.<br /><br />(Using 0 days will disable this feature)<br /><br />'
								 + '<button type="button" onclick="Dsq.Thread.updateDaysAlive();" class="dsq-button-small"><span>Save</span></button>'
								 + '<span id="dsq-thread-settings-status" class="dsq-options-status"></span>';

		Dsq.Popup.popModal(html, 'Settings');
	};

  this.showModeratorActions = function() {
      if (!Dsq.jsonData.request.is_moderator) {
          return;
      }

      var html = '<div class="dsq-moderate-options"><table><tr>' +
                 '<td>' + Dsq.Strings.ACTIONS + '</td><td><ul>';
      html += '<li><a href="#" onclick="Dsq.Thread.toggleClosed(); return false;">' +
              (Dsq.jsonData.thread.closed ? Dsq.Strings.OPEN_THREAD : Dsq.Strings.CLOSE_THREAD) +
              '</a></li>';
      html += '<li><a href="#" onclick="Dsq.Thread.toggleKilled(); return false;">' +
              (Dsq.jsonData.thread.killed ? Dsq.Strings.RESTORE_THREAD : Dsq.Strings.REMOVE_THREAD) +
              '</a></li>';
      html += '</ul></td></tr></table></div>' +
              '<p>Go to the full <a href="http://disqus.com/comments/moderate-threads/" target="_blank">moderate panel</a> for more options.</p>';
      Dsq.Popup.popModal(html, Dsq.Strings.MODERATE_OPTIONS);
  };

	this.updateDaysAlive = function() {
		  var days = Dsq.$('dsq-thread-days-alive').value;
		  var status = Dsq.$('dsq-thread-settings-status');
		  Dsq.Utils.postToUrl('http://disqus.com/forums/scobleizer/update_days_alive.js', {days:days,thread:Dsq.jsonData.thread.id});
		  status.innerHTML = 'Saved!';
		  window.setTimeout(function() { status.innerHTML = ''; }, 1000);
	};

  this.toggleClosed = function() {
      Dsq.Utils.postToUrl('http://disqus.com/forums/scobleizer/toggle_thread_closed.js', {thread:Dsq.jsonData.thread.id});
      window.setTimeout(function() { window.location.reload(); }, 500);
  };

  this.toggleKilled = function() {
      Dsq.Utils.postToUrl('http://disqus.com/forums/scobleizer/toggle_thread_killed.js', {thread:Dsq.jsonData.thread.id});
      window.setTimeout(function() { window.location.reload(); }, 500);
  };
};
// Dsq.Thread

Dsq.Events = function() {
	var obj = {};

	// Private
	var handlers = {};
	var getHandlers = function(event) {
		if (handlers[event] === undefined) {
			handlers[event] = [];
		}
		return handlers[event];
	};

	// Public
	// Value keys : postId, node, xtype
	obj.REPLY_IFRAME_CREATED = 1;
	// Value keys : postId, opened
	obj.REPLY_IFRAME_TOGGLED = 2;
	obj.fire = function(event, opt_value) {
		if (!event) {
			throw new Error('Unknown event');
		}
		var value = opt_value || {};
		for (var i=0; i<getHandlers(event).length; i++) {
			getHandlers(event)[i](value);
		}
	};
	obj.addHandler = function(event, callback) {
		getHandlers(event).push(callback);
	};

	return obj;
}();

/**
 * Dsq.Realtime
 */
Dsq.Realtime = new function() {
	var initialized = false;
	var interval = null;
	var last_checked = Dsq.jsonData.request.timestamp;
	var new_posts = [];
	var ongoing_request = false;
	var prev_script = null;

	function updateNewPostCount() {
		Dsq.$('dsq-realtime-alert').style.display = new_posts.length ? 'block' : 'none';

		Dsq.$('dsq-realtime-queued').innerHTML = new_posts.length
		+ ' new '
		+ Dsq.Utils.pluralize(new_posts.length, 'comment', 'comments')
		+ Dsq.Utils.pluralize(new_posts.length, ' was', ' were')
		+ ' just posted.';

		Dsq.$('dsq-realtime-show').innerHTML = '(' + Dsq.Strings.SHOW + ')';
	}

	function insertNewPosts() {
		var post_id = null;
		var after_id = Dsq.$('dsq-sort-select').value === 'oldest' ? -1 : null;

		for (var i=0; i<new_posts.length; i++) {
			post_id = new_posts[i];
			Dsq.Post.insert(after_id, post_id, Dsq.jsonData.posts[post_id].message);
			Dsq.Post.incrementPostCount();
			Dsq.Post.outlineComment(post_id);
		}
		new_posts = [];
	}

	this.enableInterval = function() {
		interval = setInterval(Dsq.Realtime.check, Dsq.jsonData.context.realtime_speed);
		Dsq.$('dsq-realtime-status').innerHTML = Dsq.Strings.ENABLED;
		Dsq.$('dsq-realtime-toggle').innerHTML = '(' + Dsq.Strings.PAUSE + ')';
	}

	this.disableInterval = function() {
		if (interval) {
			clearInterval(interval);
			interval = null;
		}
		Dsq.$('dsq-realtime-status').innerHTML = Dsq.Strings.PAUSED;
		Dsq.$('dsq-realtime-toggle').innerHTML = '(' + Dsq.Strings.RESUME + ')';
	}

	this.toggleInterval = function() {
		if (!interval) {
			Dsq.Realtime.enableInterval();
		} else {
			Dsq.Realtime.disableInterval();
		}
		return false;
	}

	this.initialize = function() {
		if (!initialized) {
			initialized = true;
			Dsq.$('dsq-realtime-toggle').onclick = this.toggleInterval;
			if (!Dsq.jsonData.forum.streaming_realtime) {
				Dsq.$('dsq-realtime-show').onclick = this.show;
				updateNewPostCount();
			}
			if (Dsq.jsonData.thread.realtime_paused) {
				Dsq.Realtime.disableInterval();
			} else {
				Dsq.Realtime.enableInterval();
			}
		}
	}

	this.show = function() {
		insertNewPosts();
		updateNewPostCount();
		return false;
	}

	this.check = function() {
		if (!ongoing_request && Dsq.jsonData.realtime_enabled) {
			if (prev_script) {
				prev_script.parentNode.removeChild(prev_script);
			}
			ongoing_request = true;
			prev_script = Dsq.Utils.execScript('http://disqus.com/forums/18350330/realtime.js?timestamp=' + last_checked);
		}
	};

	this.update = function(timestamp, posts, users) {
		ongoing_request = false;
		last_checked = timestamp;

		if (users) {
			for (var user_id in users) {
				if (users.hasOwnProperty(user_id)) {
					if (!Dsq.jsonData.users[user_id]) {
						Dsq.jsonData.users[user_id] = users[user_id];
					}
				}
			}
		}

		if (posts) {
			for (var post_id in posts) {
				if (posts.hasOwnProperty(post_id)) {
					if (!Dsq.jsonData.posts[post_id]) {
						Dsq.jsonData.posts[post_id] = posts[post_id];
						new_posts.push(post_id);
					}
				}
			}

			if (Dsq.jsonData.forum.streaming_realtime) {
				insertNewPosts();
			} else {
				updateNewPostCount();
			}
		}
	};

}();

// DEPRECATED
Dsq.Iframes = function() {
	// Different style of object from the above. Hoping to switch to this for some reason.
	var obj = {};

	// Private
	var showIframeInContainer = function(container, id, markup) {
		// Look through container for iframes, hiding them, except show one that matches id
		// If none of them matched id, create a new iframe using markup and insert it.
		// Returns the iframe node if and only if it was newly created.
		var found = false;
		for (var i=0; i<container.childNodes.length; i++) {
			var child = container.childNodes[i];
			if (child.nodeName == 'IFRAME') {
				if (child.id == id) {
					child.style.display = 'block';
					found = true;
				} else {
					child.style.display = 'none';
				}
			}
		}
		if (found) {
			return;
		}
		// The iframe wasn't found, so construct it and add it to the container.
		// Don't use innerHTML because it might reload iframes
		var div = document.createElement('div');
		div.innerHTML = markup;
		var iframe = div.childNodes[0];
		div.removeChild(iframe);
		container.appendChild(iframe);
		return iframe;
	};

	// Public
	obj.makeReplyIframeId = function(opt_postId, opt_xtype) {
		var id = 'dsq-post-add-iframe';
		if (opt_xtype) {
			id += '-' + opt_xtype;
		}
		if (opt_postId) {
			id += '-' + opt_postId;
		}
		return id;
	};
	obj.makeLoginIframeId = function(opt_postId) {
		if (!opt_postId) {
			return 'dsq-login-iframe';
		}
		return 'dsq-login-iframe-' + opt_postId;
	};
	obj.makeReplyIframeName = function(opt_postId, opt_xtype) {
		var name = 'dsq-reply-frame';
		if (opt_xtype) {
			name += '-' + opt_xtype;
		}
		if (opt_postId) {
			name += '-' + opt_postId;
		}
		return name;
	};
	obj.showReplyIframeInContainer = function(container, opt_postId, opt_extraParams, opt_className) {
		// Construct the id so we can check if it's already present.
		// Hide any other iframes we find, and show this one if it's found.
		var params = opt_extraParams || {};
		// use xtype in the id and name so we can distinguish media replies from text replies:
		var id = Dsq.Iframes.makeReplyIframeId(opt_postId, params.xtype);
		var name = Dsq.Iframes.makeReplyIframeName(opt_postId, params.xtype);
		var attributes = {
			'id': id,
			'name': name,
			'class': opt_className || 'dsq-post-reply'
			};
		var markup = Dsq.Templates.frameReply(opt_postId, opt_extraParams, attributes);
		var iframe = showIframeInContainer(container, id, markup);
		// It was newly created
		if (iframe) {
			Dsq.Events.fire(Dsq.Events.REPLY_IFRAME_CREATED, {
				postId: opt_postId,
				node: iframe,
				xtype: params.xtype
			});
		}
	};
	obj.showLoginIframeInContainer = function(container, opt_postId) {
		var id = Dsq.Iframes.makeLoginIframeId(opt_postId);
		var markup = Dsq.Templates.frameLogin({id: id});
		showIframeInContainer(container, id, markup);
	};
	obj.showReplyIframeInContainerIfAllowed = function(container, opt_postId) {
		if (Dsq.jsonData.context.show_reply) {
			obj.showReplyIframeInContainer(container, opt_postId);
		} else {
			obj.hideAllInContainer(container);
		}
	};
	obj.hideAllInContainer = function(container) {
		for (var i=0; i<container.childNodes.length; i++) {
			var child = container.childNodes[i];
			if (child.nodeName == 'IFRAME') {
				child.style.display = 'none';
			}
		}
	};

	return obj;
}();

Dsq.Twitter = new function() {
	var that = this;

	this.startTwitterConnect = function() {
		var popupParams = 'location=0,status=0,width=800,height=400';
		that._twitterWindow = window.open(Dsq.jsonData.settings.disqus_url + '/_ax/twitter/begin/', 'twitterWindow', popupParams);
		that._twitterInterval = window.setInterval(that.completeTwitterConnect, 1000);
	};

	this.completeTwitterConnect = function() {
		if (that._twitterWindow.closed) {
			window.clearInterval(that._twitterInterval);
			window.location.reload();
		}
	};
};

Dsq.Yahoo = new function() {
	var that = this;

	this.startYahooConnect = function() {
		var popupParams = 'location=0,status=0,width=800,height=400';
		that._yahooWindow = window.open(Dsq.jsonData.settings.disqus_url + '/_ax/yahoo/begin/', 'yahooWindow', popupParams);
		that._yahooInterval = window.setInterval(that.completeYahooConnect, 1000);
	};

	this.completeYahooConnect = function() {
		if (that._yahooWindow.closed) {
			window.clearInterval(that._yahooInterval);
			window.location.reload();
		}
	};
};

Dsq.OpenID = new function() {
	var that = this;

	this.requestURL = function() {
		var message = '<table class="dsq-openid-form"><tr><td style="vertical-align:top;" rowspan="2"><img src="' + Dsq.jsonData.settings.media_url + '/images/openid-icon-100x100.png" /></td>';
		message += '<td><label for="dsq-openid-url">OpenID URL:</label></td><td><input type="text" id="dsq-openid-url" /></td></tr>';
		message += '<tr><td><label for="dsq-openid-username">Display name:</label></td><td><input type="text" id="dsq-openid-username" /></td></tr>';
		message += '<tr><td class="dsq-openid-submit" colspan="3"><input type="button" value="Sign in" onclick="Dsq.OpenID.startConnect();" /></td></tr>';
		message += "</table>";

		Dsq.Popup.popModal(message, 'Sign in using OpenID');
	};

	this.startConnect = function() {
		var isblank = function(str) {
			return /^\s*$/.test(str);
		};

		var openid_url = Dsq.$('dsq-openid-url').value;
		var username = Dsq.$('dsq-openid-username').value;

		if (isblank(openid_url)) {
			return;
		}

		var popupParams = 'location=0,status=0,width=800,height=500';
		var url = Dsq.jsonData.settings.disqus_url + '/_ax/openid/begin/' + '?url=' + encodeURIComponent(openid_url) + '&username=' + encodeURIComponent(username);
		that._openidWindow = window.open(url, 'openidWindow', popupParams);
		that._openidInterval = window.setInterval(that.completeConnect, 1000);
	};

	this.completeConnect = function() {
		if (that._openidWindow.closed) {
			window.clearInterval(that._openidInterval);
			window.location.reload();
		}
	};
};

Dsq.Reaction = new function() {
	var that = this;

	this.hide = function(id) {
		Dsq.Utils.execScript('http://disqus.com/forums/scobleizer/hidereaction.js?' + 'reaction_id=' + id);
	};

	this.reportMissingReactions = function() {
		if (!Dsq.jsonData.request.is_moderator || !Dsq.jsonData.forum.reactions_enabled) {
			return;
		}

		if (Dsq.jsonData.thread.queued) {
			Dsq.Popup.popModal('Your report has been received. The system will automatically search for new reactions; if any are found, they will be displayed on this comment thread.<br/><br/>Thank&nbsp;you.',
												 'Reported missing reactions');
			return;
		}

		Dsq.Utils.execScript(Dsq.jsonData.settings.disqus_url + '/forums/scobleizer/queueurl.js');
	};
};

Dsq.CNN = function() {
	var obj = {};

	obj.authenticate = function() {
		var url = Dsq.jsonData.settings.disqus_url + "/saml/cnn/try/";
		Dsq.Utils.postToUrl(url, {'target': document.location}, true);
	};

	return obj;
}();


if(Dsq.Utils.ie6) {
	(function() {
		DSQ_HEADER_AVATAR_RE = /<div class="dsq-header-avatar"(.*?)>/gim;
		Dsq.Templates.registerFilter('postPrependHeader', function(html, post_id) {
			// Add "onmouseout" for dsq-header-avatar for dropProfile
			// functionality since IE6 cannot use :hover.
			function _headerAvatarReplace(content, inner, _unused, html) {
				return '<div class="dsq-header-avatar" '
					+ inner
					+ ' onmouseout="Dsq.Post.dropProfile(' + post_id + ')">';
			}
			html = html.replace(DSQ_HEADER_AVATAR_RE, _headerAvatarReplace);
			return html;
		});
	})();
}





	// TODO: Move Seesmic code outside of the main script.  Don't let this script clobber the global namespace.
	if(typeof seesmic == 'undefined') { var seesmic = {}; }
	seesmic.widget = new function () {
		this.callback = function (data) {
			playerVersion = data.disqusplayer;
		};
	};

	
	var scriptEl = document.createElement('script');
	scriptEl.setAttribute('type', 'text/javascript');
	scriptEl.setAttribute('src', 'http://seesmic.com/version.js?callback=seesmic.widget.callback');
	document.getElementsByTagName('head')[0].appendChild(scriptEl);

	
	var scriptEl = document.createElement('script');
	scriptEl.setAttribute('type', 'text/javascript');
	scriptEl.setAttribute('src', 'http://media.disqus.com/javascript/library/swfobject.js');
	document.getElementsByTagName('head')[0].appendChild(scriptEl);

	function see_play_video(_videoUri, _add) {
		var swf = !!playerVersion ? playerVersion : 'http://seesmic.com/embeds/StandalonePlayer.swf';

		flashcontentDiv = Dsq.$(_videoUri + '_content');
		previewDiv = Dsq.$('dsq-seesmic-' + _videoUri + '_preview');
		hideDiv = Dsq.$('dsq-seesmic-' + _videoUri + '_hide');
		showDiv = Dsq.$('dsq-seesmic-' + _videoUri + '_show');
		if(_add) {
			// push flash widget
			var so = new SWFObject(swf, 'sotester', '300', '270', '9', '#000000');
			so.addVariable('video', _videoUri);
			so.addParam('allowFullScreen', 'true');
			so.addParam('allowScriptAccess','always');
			so.useExpressInstall('swfobject/expressinstall.swf');
			so.write(_videoUri + '_content');

			previewDiv.style.display = 'none';
			hideDiv.style.display = 'block';
			showDiv.style.display = 'none';
		}
		else {
			flashcontentDiv.innerHTML = '';
			previewDiv.style.display = 'block';
			hideDiv.style.display = 'none';
			showDiv.style.display = 'block';
		}
	};





(function() {
	//
	// Load theme.  This overrides the base templates with template functions
	// from the respective themes.
	//
	if (Dsq.jsonData.integration.theme == 4) {
		var theme = 'narcissus';
		// HACK: Set variable on window to use post message.
		window.disqus_use_postmessage = true;

		
		for(var prop in Dsq.Themes[theme]) {
			if(Dsq.Themes[theme] && Dsq.Themes[theme].hasOwnProperty(prop)) {
				Dsq.Templates[prop] = Dsq.Themes[theme][prop];
			}
		}
		
		for(var prop in Dsq.Post) {
			if(Dsq.Themes[theme] && Dsq.Themes[theme].hasOwnProperty(prop)) {
				Dsq.Post[prop] = Dsq.Themes[theme][prop];
			}
		}
	}

	//
	// Register templates.  This must be done after all themes are loaded.
	//
	Dsq.Templates.registerTemplate('authPost', Dsq.Templates.authPost);
	Dsq.Templates.registerTemplate('header', Dsq.Templates.header);
	Dsq.Templates.registerTemplate('footer', Dsq.Templates.footer);
	Dsq.Templates.registerTemplate('trackbacks', Dsq.Templates.trackbacks);
	Dsq.Templates.registerTemplate('reactions', Dsq.Templates.reactions);
	Dsq.Templates.registerTemplate('prependPost', Dsq.Templates.prependPost);
	Dsq.Templates.registerTemplate('appendPost', Dsq.Templates.appendPost);
	Dsq.Templates.registerTemplate('postPrependHeader', Dsq.Templates.postPrependHeader);
	Dsq.Templates.registerTemplate('postAppendHeader', Dsq.Templates.postAppendHeader);
	Dsq.Templates.registerTemplate('preBody', Dsq.Templates.preBody);
	Dsq.Templates.registerTemplate('postBody', Dsq.Templates.postBody);
	Dsq.Templates.registerTemplate('postFooter', Dsq.Templates.postFooter);
	Dsq.Templates.registerTemplate('_popupGeneric', Dsq.Templates._popupGeneric);
	Dsq.Templates.registerTemplate('voted', Dsq.Templates.voted);
	Dsq.Templates.registerTemplate('popupProfile', Dsq.Templates.popupProfile);
	Dsq.Templates.registerTemplate('postBox', Dsq.Templates.postBox);
	Dsq.Templates.registerTemplate('pagination', Dsq.Templates.pagination);
	Dsq.Templates.registerTemplate('postComment_onSuccess', Dsq.Templates.postComment_onSuccess);

})();

Dsq.container.className = "clearfix";
Dsq.container.innerHTML = ' \
<ul id="dsq-comments">\
	 <li id="dsq-comment-9708990">\
	 <div id="dsq-comment-header-9708990" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708990" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9708990" href="http://yertblog.blogspot.com/" target="_blank" rel="nofollow">Yert</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708990" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708990" class="dsq-comment-message">Why not volunteer Scoble? You can do it, right?</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708989">\
	 <div id="dsq-comment-header-9708989" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708989" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9708989" href="http://www.jmg-galleries.com/" target="_blank" rel="nofollow">Jim Goldstein</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708989" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708989" class="dsq-comment-message">Sounds like an interesting conversation. Hurry up and get it posted already!</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708988">\
	 <div id="dsq-comment-header-9708988" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708988" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9708988" href="http://scobleizer.com/" target="_blank" rel="nofollow">Robert Scoble</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708988" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708988" class="dsq-comment-message">Yert: nope, I am not passionate about doing this. I don\'t want to live in DC, either, which would be a huge factor in anyone\'s decision to do this. I would, however, love to have a dinner with whoever is CTO every once in a while.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708992">\
	 <div id="dsq-comment-header-9708992" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708992" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9708992" href="http://scobleizer.com/" target="_blank" rel="nofollow">Robert Scoble</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708992" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708992" class="dsq-comment-message">Jim: unfortunately we\'re a bit backed up. Rocky can only do so much and we\'re headed to Berlin on Monday. We have a string of interesting interviews to get up, though. Doing two-camera HD shoots that have editing slows us way down.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708991">\
	 <div id="dsq-comment-header-9708991" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708991" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9708991" href="http://rozelles.wordpress.com/" target="_blank" rel="nofollow">Lincoln</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708991" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708991" class="dsq-comment-message">He/She wouldn\'t have to be that much of a geek - just someone who knows how to get the best from them.<br><br>Why not Steve Jobs?<br><br>He already likes white.<br>He\'s a great public speaker.<br>He gets the best from geeks/techs.<br>He could make using the government a lot easier.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708993">\
	 <div id="dsq-comment-header-9708993" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708993" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9708993" href="http://www.minerpro.com/" target="_blank" rel="nofollow">John Hamilton</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708993" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708993" class="dsq-comment-message">Three points:<br><br>1) Robert fascinating conversation starter. I know my wheels are spinning<br><br><br>2) I know someone who could help you edit those interviews to get them up there faster!<br><br>3) There is no way Steve Jobs would be right for the job. The consumer tech market would fall off the shelf!<br><br>Look forward to the video.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708994">\
	 <div id="dsq-comment-header-9708994" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708994" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9708994" href="http://www.800px.com/" target="_blank" rel="nofollow">Simon</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708994" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708994" class="dsq-comment-message">So Larry Lessig doing the talking, Steven Levitt providing the numbers, Mark Andreessen writing the plans and Joel Spolsky managing the projects. That will work. It will be the CTO that is visible but I think their team is as important.<br><br>The numbers and economics are probably the most important part, otherwise its peoples opinions guiding things.<br><br>Turning the numbers into projects probably isn\'t that hard. Especially when you compare it to something like to going to Mars.<br><br>As for corruption, just make all the numbers public in a format that we can parse and run correlation algorithms over.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708995">\
	 <div id="dsq-comment-header-9708995" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708995" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9708995" href="http://www.cosmictap.com/" target="_blank" rel="nofollow">cosmictap</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708995" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708995" class="dsq-comment-message">Having served in that role for a Governor, I can tell you the cross-agency politics are maddening and incredibly difficult to navigate - even at that level and even with the full support of the Executive.  At the federal level, across the entire Executive Branch, I can\'t even begin to imagine how compounded that would be compared to my own experience...  Having said that, I do think it\'s a worthwhile goal to try to integrate the thinking, the policies, and the action with a *strong* CTO - if the person is really given the authority he or she needs to be effective.  I also believe this person could not be a token mid-level appointment.  They need the ear of the President and his backing to go out and kick some butt.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708996">\
	 <div id="dsq-comment-header-9708996" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708996" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9708996" href="http://www.cosmictap.com/" target="_blank" rel="nofollow">cosmictap</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708996" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708996" class="dsq-comment-message">One more thing - I agree with Lessig (at least what he seemed to be saying) - you need someone who is both geek and evangelist.  But also, that person needs a huge amount of political / diplomatic deft, the ability to negotiate, and (while bold) they do need a sprinkling of personal humility.  Find me *that* among geek evangelists... ;)</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708997">\
	 <div id="dsq-comment-header-9708997" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708997" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9708997" href="http://www.brethorsting.com/" target="_blank" rel="nofollow">Aaron Brethorst</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708997" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708997" class="dsq-comment-message">Meg Whitman? Jesus, why don\'t you just suggest Carly Fiorina? I don\'t think you could select anyone worse.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708998">\
	 <div id="dsq-comment-header-9708998" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708998" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9708998" href="http://www.brethorsting.com/" target="_blank" rel="nofollow">Aaron Brethorst</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708998" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708998" class="dsq-comment-message">Btw, it\'s "Holzschlag," not "Holtzschalg."</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708999">\
	 <div id="dsq-comment-header-9708999" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708999" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9708999" href="http://galaxyspectrum.com/" target="_blank" rel="nofollow">Public Relations</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708999" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708999" class="dsq-comment-message">Here are a few others:<br><br>Vint Cerf<br>Al Gore<br>Tim Berners-Lee<br>Dennis C. Hayes or  Dale Heatherington</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9709001">\
	 <div id="dsq-comment-header-9709001" class="dsq-comment-header">\
	 <cite id="dsq-cite-9709001" class="dsq-comment-cite">\
	 <span id="dsq-author-user-9709001">Ruben</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9709001" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9709001" class="dsq-comment-message">Mike Arrington?<br><br>Anyway, I understand that the role of that CTO position would not be limited to the typical Silicon Valley stuff: Internet, assorted gadgetry, intellectual property stuff, etc. Consider other areas: medical, industrial, transportation, city management, intelligent homes... would R+D in these areas be encompassed too? I think this CTO needs a red cape and an embroidered "S" in his chest, then ;)</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9709002">\
	 <div id="dsq-comment-header-9709002" class="dsq-comment-header">\
	 <cite id="dsq-cite-9709002" class="dsq-comment-cite">\
	 <span id="dsq-author-user-9709002">waste</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9709002" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9709002" class="dsq-comment-message">Putting any bright, articulate technologist in the halls of Washington, DC would be an enormous waste of his and her time. Especially the guys that you are listing.  Entrepreneurial, free spirits.<br><br>BTW.  I hope I misread the lack of sarcasm in your response that you believe you could take on a CTO role in DC (and are just passing).  If not your hubris is amazing, you have ZERO background/skills that would make you an appropriate match for that position...which might fit well with our leading candidate.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9709005">\
	 <div id="dsq-comment-header-9709005" class="dsq-comment-header">\
	 <cite id="dsq-cite-9709005" class="dsq-comment-cite">\
	 <span id="dsq-author-user-9709005">JKemp</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9709005" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9709005" class="dsq-comment-message">And a few others:<br><br>Howard Schmidt - former cyber czar also eBay and Microsoft<br>Dawn Meyerriecks - AOL then DoD CTO<br>Bob Gourley - former DoD CTO<br>Dale Meyerrose - DNI CIO<br>Steve Cooper- Corning the DHS CIO<br>Marv Langston - DoD CIO</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9709000">\
	 <div id="dsq-comment-header-9709000" class="dsq-comment-header">\
	 <cite id="dsq-cite-9709000" class="dsq-comment-cite">\
	 <span id="dsq-author-user-9709000">Harold</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9709000" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9709000" class="dsq-comment-message">Why not have both? The CTO as a geek and a Chief Technology Advocate to be the "Prime Minister" type? That might be cool.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9709003">\
	 <div id="dsq-comment-header-9709003" class="dsq-comment-header">\
	 <cite id="dsq-cite-9709003" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9709003" href="http://philwhitehouse.blogspot.com/" target="_blank" rel="nofollow">Phil Whitehouse</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9709003" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9709003" class="dsq-comment-message">Surprised no-one\'s mentioned Doc Searls yet. He\'s got a solid track record setting the tone of the important issues (net neutrality, open source, open standards, the principles of web commerce). He\'s also engaging, persuasive, well respected and extremely well connected. This last point is critical; we need someone who\'ll be able to spot emerging trends and guage current opinion, and who is trusted by the whole industry to use this knowledge responsibly. And his stewardship of the VRM initiative has demonstrated political acumen.<br><br>Larry Lessig and Vint Cerf also meet the above criteria. Gates would fall way short, IMHO. We wouldn\'t want anyone too commercially minded in this role; the internet is for *everyone*, not just for companies (although of course an awareness of web commerce is essential). And as for Arrington...tell me this is a joke!<br><br>In terms of the traditional CTO role, I don\'t think it\'s all that important to have the technical knowledge oneself, so long as the other criteria are met. The successful candidate will have a staff. In fact Doc himself has proved that one can have a clear perspective on the best way forward without being able to write code.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9709004">\
	 <div id="dsq-comment-header-9709004" class="dsq-comment-header">\
	 <cite id="dsq-cite-9709004" class="dsq-comment-cite">\
	 <span id="dsq-author-user-9709004">Jon</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9709004" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9709004" class="dsq-comment-message">Al Gore??? OMG, lets get a bigger idiot on technology in there... Oh, wait there is none!<br><br>All he does is spout whats already out there with no clue as to what it is.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9709020">\
	 <div id="dsq-comment-header-9709020" class="dsq-comment-header">\
	 <cite id="dsq-cite-9709020" class="dsq-comment-cite">\
	 <span id="dsq-author-user-9709020">Chris Howard</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9709020" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9709020" class="dsq-comment-message">It can\'t possibly be anyone that might be seen as biased. That rules out the likes of Bill Gates and Steve Jobs or any person with ties to an IT vendor, including board members.<br><br>Could you imagine if Bill recommended Vista? Or Steve said Macs?<br><br>Nope. It\'s gotta be someone with those qualities you asked for but who can be seen as independent and objective.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9709021">\
	 <div id="dsq-comment-header-9709021" class="dsq-comment-header">\
	 <cite id="dsq-cite-9709021" class="dsq-comment-cite">\
	 <span id="dsq-author-user-9709021">Liz</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9709021" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9709021" class="dsq-comment-message">I have to wonder how much a CTO could really accomplish in 4 years (maybe 8 if we are lucky). The gov\'t is full of legacy IT systems and a conservative culture. It would be an uphill battle without agency CTOs/CIOs on board with the policy changes. I am sure Lessig realizes this and I am curious how he thinks someone could cause change within such an environment.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9709033">\
	 <div id="dsq-comment-header-9709033" class="dsq-comment-header">\
	 <cite id="dsq-cite-9709033" class="dsq-comment-cite">\
	 <span id="dsq-author-user-9709033">Matt</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9709033" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9709033" class="dsq-comment-message">"he\'d get retard corruption in the capitol"... Perhaps you mean "he\'d retard corruption"?</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9709032">\
	 <div id="dsq-comment-header-9709032" class="dsq-comment-header">\
	 <cite id="dsq-cite-9709032" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9709032" href="http://www.theislanddog.com/" target="_blank" rel="nofollow">Spencer Scott</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9709032" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9709032" class="dsq-comment-message">It really doesn\'t matter who you put in there.  What will their powers be?  What will their influence be?  I would think in reality this is just another useless position that really won\'t accomplish anything but more politics.<br><br>DC doesn\'t accomplish things, they just make them worse.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9709030">\
	 <div id="dsq-comment-header-9709030" class="dsq-comment-header">\
	 <cite id="dsq-cite-9709030" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9709030" href="http://teethgrinder.co.uk/open-flash-chart/" target="_blank" rel="nofollow">monk.e.boy</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9709030" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9709030" class="dsq-comment-message">Richard Stallman? ;-)<br><br>Man, you\'d have to be brave to hire him ;-)</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9709031">\
	 <div id="dsq-comment-header-9709031" class="dsq-comment-header">\
	 <cite id="dsq-cite-9709031" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9709031" href="http://teethgrinder.co.uk/open-flash-chart/" target="_blank" rel="nofollow">open-flash-charts</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9709031" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9709031" class="dsq-comment-message">Actually, what about Guido Van Rossum, smart, gets things done. Has a \'simpler is better\' view point. He also has the respect of nearly every geek I\'ve ever met.<br><br>Interesting question. Pity it\'ll never happen, it\'ll be another oil puppet :-(</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9709029">\
	 <div id="dsq-comment-header-9709029" class="dsq-comment-header">\
	 <cite id="dsq-cite-9709029" class="dsq-comment-cite">\
	 <span id="dsq-author-user-9709029">michael</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9709029" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9709029" class="dsq-comment-message">This is an interesting intellectual exercise, but one that doesn\'t seem to be grounded in any kind of reality. You need someone with clear answers to very difficult questions. And someone with a solid resume in today\'s political as well as technical issues. ("Lost" email, anyone?) Lessig is interesting, but like TBL, tends to hubris over pragmatism. Andreessen is an interesting choice, but not enough of a security wonk.<br><br>It\'s a tough call ... but Bruce Schneier would be a solid choice, especially on the security front. (\'Beyond Fear\' is a fantastic read, btw.)</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9709027">\
	 <div id="dsq-comment-header-9709027" class="dsq-comment-header">\
	 <cite id="dsq-cite-9709027" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9709027" href="http://molly.com/" target="_blank" rel="nofollow">Molly E. Holzschlag</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9709027" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9709027" class="dsq-comment-message">I\'m honored, but I personally would rather work with others on some kind of technology task force (perhaps run by our CTO) to bring technology as well as excellent education to all people. Now that would be a political task I could get behind.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9709028">\
	 <div id="dsq-comment-header-9709028" class="dsq-comment-header">\
	 <cite id="dsq-cite-9709028" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9709028" href="http://orcmid.com/blog" target="_blank" rel="nofollow">orcmid</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9709028" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9709028" class="dsq-comment-message">I think there are two different positions (at least) of interest here.  First there is technology policy, and that could be a policy advisor position (though those don\'t always amount to much, depending on the President and other considerations).  Like, heard of any Science Policy Advisor incumbents lately?<br><br>The Federal agencies (all executive branch with a few exceptions) have CIOs and there is a CIO counsel.  They also work on the equivalent of enterprise architecture across the Federal Establishment.  There could be a CTO here, along with a national CIO for that matter.   What goes on here also impacts and relates to counterparts at the State level and there are occassions for coordinated efforts.  This is essentially about government operations in their rich variety.  For this end of it, it would help to understand what the Federal investment in ICT infrastructure, operations, and applications is.  You will blink.  Candidates for this level of responsibility and experience are not going to be geek household names.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9709026">\
	 <div id="dsq-comment-header-9709026" class="dsq-comment-header">\
	 <cite id="dsq-cite-9709026" class="dsq-comment-cite">\
	 <span id="dsq-author-user-9709026">Marvin</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9709026" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9709026" class="dsq-comment-message">Lessig would be perfect. I wouldn\'t mind seeing someone like Cory Doctorow. I\'m betting Obama will find one of his nutty cronies like Reverend Wright to put there. McCain has the imagination of an avocado so he\'d probably want Bill Gates, as this is probably the extent of his technology knowledge.<br><br>No one with a Platform to grind like Stallman. To be as intelligent as he is, he is terribly myopic.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9709025">\
	 <div id="dsq-comment-header-9709025" class="dsq-comment-header">\
	 <cite id="dsq-cite-9709025" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9709025" href="http://alignmentinquiries.blogspot.com/" target="_blank" rel="nofollow">Andrew Meyer</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9709025" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9709025" class="dsq-comment-message">There\'s an assumption in what Lessig is saying about the use of technology and transparency that I\'m not sure is true.  Wall St. is one of the heaviest users of technology, possibly they use it more than any other industry segment, but would you call them transparent?<br><br>Transparency comes from an organizational strategy that values transparency.  Technology effectively supports that approach if it exists or obfuscates if one is not careful.<br><br>Is there any reason to believe there\'s a correlation between technology use and transparency?  Theoretically, there should/could be.  Practically, technology may create mirages more effectively than a desert.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9709023">\
	 <div id="dsq-comment-header-9709023" class="dsq-comment-header">\
	 <cite id="dsq-cite-9709023" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9709023" href="http://chriscavanagh.wordpress.com/" target="_blank" rel="nofollow">Chris Cavanagh</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9709023" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9709023" class="dsq-comment-message">Scott Guthrie for CTO, Morgan Freeman or James Earl Jones for President! :D</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9709024">\
	 <div id="dsq-comment-header-9709024" class="dsq-comment-header">\
	 <cite id="dsq-cite-9709024" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9709024" href="http://websaz.wordpress.com/" target="_blank" rel="nofollow">websaz</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9709024" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9709024" class="dsq-comment-message">i\'m agree with orcmid . my idea is like him.thanks</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9709006">\
	 <div id="dsq-comment-header-9709006" class="dsq-comment-header">\
	 <cite id="dsq-cite-9709006" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9709006" href="http://www.networkedinsights.com/" target="_blank" rel="nofollow">Dan Neely</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9709006" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9709006" class="dsq-comment-message">having a campaigning process and then an election process might work-- oh wait that has its issues as well.  How about we have the public select-- maybe use a social network like IT Toolbox to have the voting and interviewing done.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9709007">\
	 <div id="dsq-comment-header-9709007" class="dsq-comment-header">\
	 <cite id="dsq-cite-9709007" class="dsq-comment-cite">\
	 <span id="dsq-author-user-9709007">Steve</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9709007" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9709007" class="dsq-comment-message">I think Bill Gates would be a good fit... but everyone hates Microsoft. Maybe someone from Sun?</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9709008">\
	 <div id="dsq-comment-header-9709008" class="dsq-comment-header">\
	 <cite id="dsq-cite-9709008" class="dsq-comment-cite">\
	 <span id="dsq-author-user-9709008">Steve</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9709008" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9709008" class="dsq-comment-message">If security is a big part of it, then I could see Richard Clarke get the nod, which is incredibly frightening. Bruce Schneider? Naw. Al Gore? LOL!</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9709010">\
	 <div id="dsq-comment-header-9709010" class="dsq-comment-header">\
	 <cite id="dsq-cite-9709010" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9709010" href="http://www.rre.com/ourteam.cfm#Robinson%20IV" target="_blank" rel="nofollow">James D Robinson 4.0</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9709010" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9709010" class="dsq-comment-message">Mike Ashworth, CIO, JP Morgan Chase</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9709009">\
	 <div id="dsq-comment-header-9709009" class="dsq-comment-header">\
	 <cite id="dsq-cite-9709009" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9709009" href="http://sidecutreports.com/" target="_blank" rel="nofollow">Paul Kapustka</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9709009" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9709009" class="dsq-comment-message">The idea of a national CTO is a good one, but @orcmid is right in noting that the problem that needs solving isn\'t finding smart technical people, it\'s herding the cats of politics and turf battles to get the gubmint moving in a sane direction. We might be better served by finding an organizer/arm-twister (like Peter Uberroth?) who could then enlist a task force from various parts of the industry for the technical answers.<br><br>It\'s great to think smart technical people could solve the problem, but when it comes to national policy (especially involving communications) it all boils down to politics, since the politicians control the budgets and the laws. That\'s not changing anytime soon.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9709011">\
	 <div id="dsq-comment-header-9709011" class="dsq-comment-header">\
	 <cite id="dsq-cite-9709011" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9709011" href="http://scripting.com/" target="_blank" rel="nofollow">Dave Winer</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9709011" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9709011" class="dsq-comment-message">How about another role -- making sure that the big companies play fair with technology, like the current debacle with Comcast. Keep the President advised on ways he can use the the bully pulpit to get people organized to make sure we don\'t all get rolled over by the companies. Kind of the antidote to Bush.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9709012">\
	 <div id="dsq-comment-header-9709012" class="dsq-comment-header">\
	 <cite id="dsq-cite-9709012" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9709012" href="http://www.hover.com/" target="_blank" rel="nofollow">Ross Rader</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9709012" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9709012" class="dsq-comment-message">Al Gore has done more for the internet in the US than any other politician that I\'m aware of. He get\'s technology and he (clearly) gets politics. I don\'t think there is a better candidate.<br><br>/r</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9709013">\
	 <div id="dsq-comment-header-9709013" class="dsq-comment-header">\
	 <cite id="dsq-cite-9709013" class="dsq-comment-cite">\
	 <span id="dsq-author-user-9709013">Mark</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9709013" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9709013" class="dsq-comment-message">Mark Andreessen? No.<br>Dave Winer? Hell no.<br>Joel Spolsky? OH HELL NO.<br>Tantek Celik? No.<br>Molly Holzschalg? No.<br>Meg Whitman? Hell no.<br>Bill Gates? ...maybe.<br>Steve Wozniak? No.<br>Caterina Fake? No.<br><br>I submit, for your consideration: America\'s CTO, Ed Felten.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9709014">\
	 <div id="dsq-comment-header-9709014" class="dsq-comment-header">\
	 <cite id="dsq-cite-9709014" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9709014" href="http://paulytron.blogspot.com/" target="_blank" rel="nofollow">Pauly</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9709014" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9709014" class="dsq-comment-message">Bill Gates? The epitome of tech oligarchists? As the CTO.gov in an Obama administration? I think not.<br><br>I like Winer\'s instincts about the role of OPEN TRANSPARENT tech in business and the economy and he\'s clearly an Obama guy, but he doesn\'t strike me as "CTO material" (I hope you take this as the compliment I intended it Dave).<br><br>The only other one on this list that I like is Andreessen, who I think is in fact "CTO material". But I\'m not sure I trust his instincts on openness and transparency.<br><br>How about adding Doc Searls or Steve Gillmor to the list? They have the right stuff.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708984">\
	 <div id="dsq-comment-header-9708984" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708984" class="dsq-comment-cite">\
	 <span id="dsq-author-user-9708984">User</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708984" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708984" class="dsq-comment-message">A CTO need to have vision, so the best candidate would be Neil Stephenson or William Gibson.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708983">\
	 <div id="dsq-comment-header-9708983" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708983" class="dsq-comment-cite">\
	 <span id="dsq-author-user-9708983">User</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708983" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708983" class="dsq-comment-message">I forgot Bruce Sterling. Have you heard his ideas about the Spimes?</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708981">\
	 <div id="dsq-comment-header-9708981" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708981" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9708981" href="http://www.twitter.com/immunity" target="_blank" rel="nofollow">Andrea Baker</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708981" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708981" class="dsq-comment-message">I\'ll do it. I live in the DC area. DC born.<br><br>I have spent my career in Government and push for emerging technology, not only using it, but teaching and mentoring.<br><br>I am also a woman (a bonus - for the first time the position is created to have a woman in the position).<br><br>I know I am not a big name, yet.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708982">\
	 <div id="dsq-comment-header-9708982" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708982" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9708982" href="http://twitter.com/cheeky_geeky" target="_blank" rel="nofollow">Mark Drapeau</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708982" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708982" class="dsq-comment-message">Is Robert Scoble, Larry Lessig, and everyone commenting completely unaware that the President has, and has long had, an Office of Science and Technology Policy, the leader of which serves as the President\'s chief S&amp;T advisor?  Are you also unaware that there is a Deputy OSTP Director for Technology?<br><br>Furthermore, the idea that a good technologist (alone) would survive two days in that position is completely idiotic.  Success and influence at that level in Washington is a lot more about (duh) politics and turf battles than raw skills.  Just compare Rumsfeld vs. Powell early on in the Bush Administration.<br><br>Finally it is completely unclear what the role of a fictional CTO would be, or where they would actually sit in the Washington hierarchy.  Presumably they would work for the President, in which case they would help guide national policymaking and the budget process for S&amp;T.  Various agencies and entities around Washington already have their own CIO\'s, CTO\'s, etc as appropriate.<br><br>It could be that you mean there should be outside informal advisors on these issues, but it turns out that there are many of these already as well.  For example, the JASONS are a group of independent scientists, technologists, etc who tackle problems in national security.<br><br>If you actually want to know how Washington works, and why it does, and what you can do to help, I suggest you move here and learn.  Discussions like this is why people like you have no influence over "how things work" here.  And meeting a couple of Congressmen for a Qik broadcast doesn\'t count.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708978">\
	 <div id="dsq-comment-header-9708978" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708978" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9708978" href="http://www.twitter.com/immunity" target="_blank" rel="nofollow">Andrea Baker</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708978" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708978" class="dsq-comment-message">@Mark Drapeau maybe we need to have blogger\'s roundtable. Like we did with the media a couple years back when we announced Intellipedia to the world.<br><br>Letting the critics come and ask us questions and engage in a discussion on how we are changing government from a grassroots level to improve collaboration, process, and technology.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708979">\
	 <div id="dsq-comment-header-9708979" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708979" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9708979" href="http://twitter.com/cheeky_geeky" target="_blank" rel="nofollow">Mark Drapeau</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708979" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708979" class="dsq-comment-message">You might also be interested in the EOP\'s National Science and Technology Council (NSTC), which advises the President on whole-of-government matters on the topic, and serves as a coordinating body.<br><br>Finally, PCAST, the President\'s Council of Advisors on Science and Technology, "serves as a source of scientific and technological analysis and judgment for the President with respect to major policies, plans and programs of the Federal Government.  The office works with the private sector to ensure Federal investments in science and technology contribute to economic prosperity, environmental quality, and national security."<br><br>So - If a fictional CTO position was created, how would it be justified to Congress, who would pass hearings, how would they interact with the OSTP Director, would they serve on the NSTC and in what capacity, how would they deal with the PCAST, what would their authority be over relevant officials in all of the various Cabinet-level agencies, how would they work with existing Government-owned venture capital funds like In-Q-Tel?<br><br>Just to get started with a realistic one-page white paper for a transition team in November.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708980">\
	 <div id="dsq-comment-header-9708980" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708980" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9708980" href="http://www.greghughes.net/" target="_blank" rel="nofollow">Greg Hughes</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708980" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708980" class="dsq-comment-message">Oh boy, can of worms. I couldn\'t support selection of any of the names on the list. In fact, I strongly and urgently hope for someone who knows what being a CTO in a government role of incredible magnitude would really mean, and someone who could actually navigate the extremely difficult waters. Gates is the only one on there that I think might make it past the first month. I\'m confident it should be someone who\'s name we don\'t already know.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708975">\
	 <div id="dsq-comment-header-9708975" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708975" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9708975" href="http://geekmommy.wordpress.com/" target="_blank" rel="nofollow">geekmommy</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708975" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708975" class="dsq-comment-message">I\'m going to be unpopular... if we\'re going with an actual tech CTO, I want someone under the age of 30.<br>Yes, at 42 I\'m on the other side of the fence.<br><br>But the kind of person I\'d want for CTO is someone who lives and breathes the future of tech - not someone who has spent the past two plus decades getting jaded by it.<br><br>Then again, I don\'t have any names to posit.  Probably because the kind of person I\'m talking about is out there living and breathing tech right now, not "established".</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708976">\
	 <div id="dsq-comment-header-9708976" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708976" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9708976" href="http://mtscarborough.wordpress.com/" target="_blank" rel="nofollow">Tim</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708976" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708976" class="dsq-comment-message">I hate to be a buzz kill, but we don\'t need a national CTO to help shape the nation\'s tech policies. The government already has organizations that the government\'s tech direction. If they\'re not doing an adequate job, fix them. Don\'t add to an already bloated government.<br><br>From the private sector standpoint, they don\'t need direction from DC.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708971">\
	 <div id="dsq-comment-header-9708971" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708971" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9708971" href="http://staynalive.com/" target="_blank" rel="nofollow">Jesse Stay</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708971" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708971" class="dsq-comment-message">Phil Windley of Technometria.  He used to be CTO of Utah, a democrat, and he could be well-received by the nation.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708972">\
	 <div id="dsq-comment-header-9708972" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708972" class="dsq-comment-cite">\
	 <span id="dsq-author-user-9708972">Dave</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708972" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708972" class="dsq-comment-message">This is one of the most ignorant posts I\'ve ever read. The last thing this country needs is another buraucracy. But leave it to Democrats (Barry) to think more govt. is better. Each and every Dept of (fill in the blank) has a technology officer, as does TOTP.  I\'m not sure what problems the US is having in this space  that are serious enough to warrant me paying more in Federal taxes to expand govt.<br><br>Actually Al Gore would be a good choice. Not because he\'s smart; he\'s actually a moron. But he\'s perfect fit because he is the biggest policy wonk ever, and a moron, so thankfully nothing would get done.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708973">\
	 <div id="dsq-comment-header-9708973" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708973" class="dsq-comment-cite">\
	 <span id="dsq-author-user-9708973">Kathy Sierra</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708973" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708973" class="dsq-comment-message">Chris Messina<br>Tim O\'Reilly<br>Esther Dyson</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708974">\
	 <div id="dsq-comment-header-9708974" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708974" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9708974" href="http://michaelkpate.com/" target="_blank" rel="nofollow">Michael K Pate</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708974" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708974" class="dsq-comment-message">The only choice: John C. Dvorak</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708970">\
	 <div id="dsq-comment-header-9708970" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708970" class="dsq-comment-cite">\
	 <span id="dsq-author-user-9708970">Jerry</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708970" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708970" class="dsq-comment-message">@Dave Winer:<br><br>In case you aren\'t from this country and live in a socialist state, we have something in this country called capitalism.  It allows companies to succeed or fail based on the free market. In addition, if I\'m not mistaken we already have a bureaucracy the regulates the hell out of companies like Comcast, thank you. Any role this mythical CTO would play in this space would be somewhat redundant. . The LAST thing we need is MORE govt. intervention. But I understand that\'s anathema to Democrats.<br><br>The country does not need a CTO.  What critical, pressing problem does the US have that this "national"  CTO would solve that that justifies me paying more Federal taxes to support such a position?<br><br>Mark\'s insightful comments only serve to reinforce how naive, inexperienced and clueless Barry H. Obama-ssiah is. A "national" CTO!  Gimme a break!  How ignorant about the Federal Govt can this man be?  Did he even pay attention on the rare occasions he showed up on the Senate floor?</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708969">\
	 <div id="dsq-comment-header-9708969" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708969" class="dsq-comment-cite">\
	 <span id="dsq-author-user-9708969">Dr. Known</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708969" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708969" class="dsq-comment-message">I\'d recommend Linus Torvalds!</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708968">\
	 <div id="dsq-comment-header-9708968" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708968" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9708968" href="http://www.dariosalvelli.com" target="_blank" rel="nofollow">Dario Salvelli</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708968" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708968" class="dsq-comment-message">[OT] - Sorry for the OT, what do u think Robert? <a href="http://www.intel.com/pressroom/archive/releases/20080821comp.htm" rel="nofollow">http://www.intel.com/pressroom/archive/releases...</a></div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9709037">\
	 <div id="dsq-comment-header-9709037" class="dsq-comment-header">\
	 <cite id="dsq-cite-9709037" class="dsq-comment-cite">\
	 <span id="dsq-author-user-9709037">Christopher Coulter</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9709037" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9709037" class="dsq-comment-message">Long Tail Stephen Manesish Corollary - Less of Lessig, is actually More.<br><br>We don\'t need a CTO, just as most good companies don\'t need self-important \'IT as an entity\' CTO or CIOs, as every technology decision is in reality just a business decision.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9709036">\
	 <div id="dsq-comment-header-9709036" class="dsq-comment-header">\
	 <cite id="dsq-cite-9709036" class="dsq-comment-cite">\
	 <span id="dsq-author-user-9709036">Guest</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9709036" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9709036" class="dsq-comment-message">My votes for Lessig! Why? Just watch him talking about John McCain\'s<br>tech- politics; <a href="http://lessig.org/blog/2008/08/me_on_mccain_on_technology.html" rel="nofollow">http://lessig.org/blog/2008/08/me_on_mccain_on_...</a></div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9709035">\
	 <div id="dsq-comment-header-9709035" class="dsq-comment-header">\
	 <cite id="dsq-cite-9709035" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9709035" href="http://www.mortgagesamson.blogspot.com/" target="_blank" rel="nofollow">Samson</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9709035" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9709035" class="dsq-comment-message">If you could get Tantek Celik of Technorati to move from San Francisco then he might take the CTO position in DC...not!</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9709034">\
	 <div id="dsq-comment-header-9709034" class="dsq-comment-header">\
	 <cite id="dsq-cite-9709034" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9709034" href="http://www.kyle-brady.com/" target="_blank" rel="nofollow">Kyle Brady</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9709034" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9709034" class="dsq-comment-message">Right.  Like any of those are actually really options.<br><br>Here\'s a real list of candidates, ignoring all the retarded and Web 2.0 options:  <a href="http://www.kyle-brady.com/2008/08/23/americas-cto/" rel="nofollow">http://www.kyle-brady.com/2008/08/23/americas-cto/</a><br><br>--Kyle</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708967">\
	 <div id="dsq-comment-header-9708967" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708967" class="dsq-comment-cite">\
	 <span id="dsq-author-user-9708967">DV</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708967" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708967" class="dsq-comment-message">I nominate Lew Rockwell.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708966">\
	 <div id="dsq-comment-header-9708966" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708966" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9708966" href="http://retailgeek.com/" target="_blank" rel="nofollow">Jason Goldberg</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708966" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708966" class="dsq-comment-message">Sorry but we need Prof Lessing to reform US intellectual property law, not as CTO.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9709019">\
	 <div id="dsq-comment-header-9709019" class="dsq-comment-header">\
	 <cite id="dsq-cite-9709019" class="dsq-comment-cite">\
	 <span id="dsq-author-user-9709019">celery</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9709019" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9709019" class="dsq-comment-message">Any name will just create "Oh Hell NO" type responses.  I think this is just a way to drum up page hits... Like I just did</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9709018">\
	 <div id="dsq-comment-header-9709018" class="dsq-comment-header">\
	 <cite id="dsq-cite-9709018" class="dsq-comment-cite">\
	 <span id="dsq-author-user-9709018">Borlock</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9709018" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9709018" class="dsq-comment-message">Bill Gates would actually be the ideal candicate for this. (As long as he doesn\'t have directly influence over policy, but serve only as an advisory role to the leadership).<br><br>* He has a fantasic ability to grasp a hugely disparate set of very complex technology, and a great ability to articulate it to those who don\'t.<br>* He is already retired and don\'t control Microsoft tactical operations anymore.<br>* He already has done large filantropic work to make technology available to the masses, inline with the democratic platform.<br>* He is socially liberal, and used to be a democrat until Microsoft was attacked under the Clinton presidency (at which point he switched). Either way I don\'t think he\'ll mind serving under a Democratic president.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9709017">\
	 <div id="dsq-comment-header-9709017" class="dsq-comment-header">\
	 <cite id="dsq-cite-9709017" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9709017" href="http://siliconvalleymusings.com/" target="_blank" rel="nofollow">steve</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9709017" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9709017" class="dsq-comment-message">Shai Agassi and Eric Brewer spring to mind...</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708987">\
	 <div id="dsq-comment-header-9708987" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708987" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9708987" href="http://www.cajuntechie.com/" target="_blank" rel="nofollow">Anthony Papillion</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708987" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708987" class="dsq-comment-message">Robert,<br><br>I like all the candidates you suggested but I think there\'s still someone I believe is very often overlooked: Carly Fiorina, the former CEO of HP.<br><br>Carly is a fantastically intelligent, technically literate, strategically effective, driven person who has the unique ability to work in both the tech and consumer worlds at the same time. She understands how technology can and does effect our lives and has shown a gift for crafting corporate strategy to be both effective and efficient.<br><br>Personally, I think Carly would be a fantastic choice. Too bad her time at HP has tainted her a bit. But I think if we look at her accomplishments beyond HP, we can see how she would be a strong candidate.<br><br>That\'d be my choice.<br>That\'d be pretty damn cool.<br><br>Anthony</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708964">\
	 <div id="dsq-comment-header-9708964" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708964" class="dsq-comment-cite">\
	 <span id="dsq-author-user-9708964">Yodeler</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708964" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708964" class="dsq-comment-message">In the second role that Lessig mentioned -- pioneering the use of technology -- you should all be watching people already involved with the Obama campaign. Adam D\'Angelo may be too young, but watch out for Leonard Lin. He\'s got a rare combination of geek knowledge and a Jedi-like ability to make bureaucracies work for him. After selling his startup to Yahoo he became involved in the movement to rejuvenate the company and had some notable successes. Taking on antiquated procedures in federal government would be an even bigger challenge, but he might be the guy for the job.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9709016">\
	 <div id="dsq-comment-header-9709016" class="dsq-comment-header">\
	 <cite id="dsq-cite-9709016" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9709016" href="http://doc.searls.com/" target="_blank" rel="nofollow">Doc Searls</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9709016" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9709016" class="dsq-comment-message">Good question, Robert. Thanks for asking it.<br><br>I second Ed Felten.<br><br>And, while I appreciate Phil Whitehouse\'s nomination of yours truly, I\'m busy and far less qualified than Ed (and many others).<br><br>FWIW, the extant Office of Science and Technology Policy is here: <a href="http://www.ostp.gov" rel="nofollow">http://www.ostp.gov</a>. It\'s headed by John H. Marburger, III. Here\'s a quick look at its bureaucracy: <a href="http://www.ostp.gov/cs/about_ostp/leadership_staff" rel="nofollow">http://www.ostp.gov/cs/about_ostp/leadership_staff</a>.<br><br>I\'ll say more in Linux Journal this morning. Have a look over there if you\'re interested. <a href="http://linuxjournal.com" rel="nofollow">http://linuxjournal.com</a>.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9709015">\
	 <div id="dsq-comment-header-9709015" class="dsq-comment-header">\
	 <cite id="dsq-cite-9709015" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9709015" href="http://www.tonyleachsf.com/" target="_blank" rel="nofollow">Tony Leach</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9709015" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9709015" class="dsq-comment-message">Can I get a "Lessig for US CTO" bumper sticker?  Maybe I can make some...</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708963">\
	 <div id="dsq-comment-header-9708963" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708963" class="dsq-comment-cite">\
	 <span id="dsq-author-user-9708963">Dan</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708963" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708963" class="dsq-comment-message">I think people are looking at this all wrong.  You don\'t want great IT CEO\'s in the position.  You want great CIO/CTO\'s of large companies.<br>Gary Reiner - CIO GE<br>Jean-Michel R. Arès - CIO Coca Cola<br>Rollin Ford - CIO Walmart<br><br>These are the type of people that could make some real progress in the role.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708965">\
	 <div id="dsq-comment-header-9708965" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708965" class="dsq-comment-cite">\
	 <span id="dsq-author-user-9708965">Some Guy</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708965" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708965" class="dsq-comment-message">"Why not Steve Jobs?"<br><br>Because he has a real job to do.<br><br>There is no need for yet another federal official to interfere with the computer industry.  We got where we are today because we were largely left alone.<br><br>"Carly is a fantastically intelligent, technically literate, strategically effective, driven person who has the unique ability to work in both the tech and consumer worlds at the same time. "<br><br>I see you\'ve been reading her PR.  Try talking to any HP employee for a different opinion.  For that matter, try talking to any of the people from Lucent who were thrilled to see her go.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708986">\
	 <div id="dsq-comment-header-9708986" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708986" class="dsq-comment-cite">\
	 <span id="dsq-author-user-9708986">Some Guy</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708986" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708986" class="dsq-comment-message">For all of you people who are enamored of the idea of a CTO of the federal government, let me remind you of the words of Thomas Jefferson, from our Declaration of Independance:<br><br>"He hath erected a multitude of officers, and sent them forth to harass our people and eat out their substance."<br><br>Let me also remind you that we\'ve had a couple of similar jobs in the federal government, and they\'ve been basically useless.  Anyone remember that it was Tricky Dick Nixon (one of the worst presidents we\'ve ever had) who invented the post of "Energy Czar"?<br><br>Get a grip, people.  This is a bonehead idea.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9708985">\
	 <div id="dsq-comment-header-9708985" class="dsq-comment-header">\
	 <cite id="dsq-cite-9708985" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9708985" href="http://blog.chiefseattlegeek.com/" target="_blank" rel="nofollow">Bill Schrier</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9708985" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9708985" class="dsq-comment-message">Robert:<br>Well, you\'ve compiled an interesting list, but anyone who has headed their own startup or moved technology forward in thought (Lessig) or deed (Gates) has done more to advance technology than any position, real or imagined, in the Fedgov.<br>The real question:   is "national CTO" a policy position, an "advisor" position, or an "internal leadership" to the Fedgov position?<br>As the City of Seattle\'s CTO (also known as "Chief Geek"), I\'ve given this some thought and blogged about it here:   <a href="http://blog.chiefseattlegeek.com" rel="nofollow">blog.chiefseattlegeek.com</a> .<br>In the end, I agree with Vint Cerf:  the last thing we need is another Fedgov "czar" (i.e. "drug" or "intelligence" or "war on poverty").   But I think we sure could use a skilled bureaucrat to harness the great technologies developed by the private sector for use in running the Fedgov and making it more efficient, effective and transparent in service to citizens.<br>-bill</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9709022">\
	 <div id="dsq-comment-header-9709022" class="dsq-comment-header">\
	 <cite id="dsq-cite-9709022" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9709022" href="http://secondthoughts.typepad.com/" target="_blank" rel="nofollow">Prokofy Neva</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9709022" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9709022" class="dsq-comment-message">This is a terrible, terrible idea. Not only a terrible idea even to have a "CTO position," but to put Lessig or Arrington or any other Silicon Valley technolibertarian or socialist. Bad, bad idea.<br><br>Lessig has been struggling for greater power and influence ever since he left Creative Commons, where he worked intensively to destroy the connection between intellectual property and commerce, and now he thinks "transparency" and "corruption" in government are a lucrative field -- except, of course, if Obama comes in, he\'s not going to be wanting to look too closely at Obama and his supporters (he\'s an Obama advisor) so what will he have to do? So he\'ll look to get appointed to some position in government next, and is only being coy about claiming he \'doesn\'t want the job".<br><br>The larger issue, however, is the notion that you should even have such a technology czar untethered to the rest of our nation\'s policy machine. No, you don\'t get to install twittered and facebooked web 2.0 entities with flash mobs in power circumventing elected officials and the will of the American people.<br><br>Re: "View #1 is a person who could help shape our nation’s tech policies. This person would need to be a great speaker, because he or she would need to go to places like the World Economic Forum and communicate what our tech policy should be."<br><br>No, we don\'t need them to communicate what our tech policy is at some global body which will be politicized and reflect the tech policies of other great powers, some direct enemies. The UN or the WEF is the last place you go to shape policy; you have to start at home. And that means starting in the political process, and not installing extremists with agendas.<br><br>Just as the above poster said about "Energy Czar" (and we still have them for some regions like Eurasia), it\'s a way of creating less responsibility in government, not more, and giving a windfall to one lobby, in this case, Silicon Valley. No thanks.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9709038">\
	 <div id="dsq-comment-header-9709038" class="dsq-comment-header">\
	 <cite id="dsq-cite-9709038" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9709038" href="http://infobisnis-qwonk.blogspot.com/" target="_blank" rel="nofollow">infobisnis-qwonk</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9709038" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9709038" class="dsq-comment-message">Why not Steve Jobs?”<br><br>Because he has a real job to do.<br><br>There is no need for yet another federal official to interfere with the computer industry. We got where we are today because we were largely left alone.<br><br>“Carly is a fantastically intelligent, technically literate, strategically effective, driven person who has the unique ability to work in both the tech and consumer worlds at the same time. ”<br><br>I see you’ve been reading her PR. Try talking to any HP employee for a different opinion. For that matter, try talking to any of the people from Lucent who were thrilled to see her go.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-9709039">\
	 <div id="dsq-comment-header-9709039" class="dsq-comment-header">\
	 <cite id="dsq-cite-9709039" class="dsq-comment-cite">\
	 <a id="dsq-author-user-9709039" href="http://www.siyonizm.net/" target="_blank" rel="nofollow">Kabala</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-9709039" class="dsq-comment-body">\
	 <div id="dsq-comment-message-9709039" class="dsq-comment-message">thanks</div>\
	 </div>\
	 </li>\
	 </ul>\
';

(function() {
	
	





Dsq.Debug.profile(function() {
	if(Dsq.jsonData.request.page == 1 && Dsq.jsonData.request.is_initial_load) {
		Dsq.container.innerHTML = Dsq.Templates.header() + Dsq.container.innerHTML + Dsq.Templates.footer();
	}
	Dsq.$(Dsq.curPageId).innerHTML = Dsq.$(Dsq.curPageId).innerHTML.replace(Dsq.COMMENTS_RE, Dsq.CommentsHandler);
}); // Dsq.Debug.Profile

// HACK: Resetting cache because we're done with.
Dsq.Utils.gebiFromElementCollectionCache = null;


	
	
	var dsq_styleEl = document.getElementById(disqus_container_id);
	var dsq_anchorEl = document.getElementsByTagName('a')[0];
	
	Dsq.Thread.fc = Dsq.Utils.getStyle(dsq_styleEl, 'color');
	if(dsq_anchorEl) { Dsq.Thread.ac = Dsq.Utils.getStyle(dsq_anchorEl, 'color'); }
	Dsq.Thread.ff = Dsq.Utils.getStyle(dsq_styleEl, (Dsq.Utils.ie || window.opera ? 'fontFamily' : 'font-family'));
	// For Safari / Opera: strip quotes.
	Dsq.Thread.ff = Dsq.Thread.ff.replace(/['"]/g, '');
	Dsq.Thread.fc = encodeURIComponent(Dsq.Thread.fc);
	Dsq.Thread.ac = encodeURIComponent(Dsq.Thread.ac);
	Dsq.Thread.ff = encodeURIComponent(Dsq.Thread.ff);

	
	
	
	if(Dsq.$(Dsq.Templates.addPostContainer)) {
		// TODO: Check to see if theme uses postmessage.
		if (window.disqus_use_postmessage) {
			Dsq.frames['reply_0'] = new Dsq.ReplyFrame(Dsq.$(Dsq.Templates.textareaContainer));
			Dsq.frames['reply_0'].init(function() {
				// Use fallback iframe
				Dsq.$(Dsq.Templates.addPostContainer).innerHTML = '';
				var theme = (typeof disqus_frame_theme == 'undefined') ? 'default' : disqus_frame_theme;
				Dsq.Iframes.showReplyIframeInContainer(Dsq.$(Dsq.Templates.addPostContainer), null, {theme: theme});
				// if(Dsq.Utils.ie) { Dsq.Utils.fixIframesIE(); }
			});
		} else {
			// DEPRECATED
			Dsq.Iframes.showReplyIframeInContainer(Dsq.$('dsq-post-add'));
		}
	}

	
	

	
	if(document.location.hash != '') {
		document.location.hash = document.location.hash.substring(1);
	}

	Dsq.Popup.showCookieMsgs();

	
	if(document.location.search != '' && location.hash != '#disqus_thread') {
		var reply_id = Dsq.Utils.getRequestParams().dsq;
		if(reply_id) { document.location.hash = 'comment-' + reply_id; }
	}

	
	if((typeof OB_Script != 'undefined') && (typeof OB_versionNum != 'undefined')) {
		if(navigator.userAgent.indexOf("Firefox") != -1) {
			if(window.frames['dsq-reply-frame']) {
				window.frames['dsq-reply-frame'].location = Dsq.Urls.REPLY + (new Date()).getTime() + '&f=scobleizer&t=who_should_be_usa8217s_cto&to_redirect=' + encodeURIComponent(window.location) + '&ifrs=' + encodeURIComponent(disqus_iframe_css);
			}
		}
	}

	if (Dsq.jsonData.integration.theme == 4) {
		if (Dsq.jsonData.realtime_enabled) {
			Dsq.Realtime.initialize();
		}
	}

	



	window.ExecuteWhen = (function () {
	var obj = {}
	
	// Private
	var running = false;
	var timer = null;
	var pending = [];
	var startTimer = function() {
		running = true;
		timer = setInterval(obj.heartBeat, 100);
	};
	var stopTimer = function() {
		running = false;
		clearInterval(timer);
	};
	
	// Public
	obj.add = function (condition, code) {
		pending.push([condition,code]);
		this.heartBeat(); //!
		if (!running) {
			startTimer();
		}
	};
	obj.heartBeat = function() {
		if (!pending.length) {
			stopTimer();
		}
		var newPending = [];
		for (var i=0; i<pending.length; i++) {
			var cond = pending[i][0];
			var code = pending[i][1];
			// FIXME: if cond or code throw an error, they never get removed from pending
			if (cond()){
				code();
			}
			else {
				newPending.push([cond, code]);
			}
		}
		pending = newPending;
	};
	return obj;
})();

// also used in embed_thread.js:
window.fbIsReady = function () {return window.FB && FB.init;};
// NOTE: This script gets executed again without threadEl
//       set when we are loaded again as the fbc_receiver.
//       In this case, we don't need the hidden container.

if(!window.FB || !FB.init) {
	if(window.Dsq && Dsq.container) {
		// container is not present when init.js is loaded from an xd-receiver iframe; in this case,
		// we don't need the FB_HiddenContainer anyway.
		var fbDiv = document.createElement('div');
		fbDiv.id = "FB_HiddenContainer";	// Required or else FeatureLoader will execute a document.write.
		fbDiv.style.position = 'absolute';	// This is intentionally not setting display to none as this breaks
		fbDiv.style.top = '-10000px';		// Flash in Safari.
		fbDiv.style.left = '-10000px';
		fbDiv.style.width = '0px';
		fbDiv.style.height = '0px';
		Dsq.container.appendChild(fbDiv);
	}
	var fbJS = document.createElement('script');
	fbJS.type = "text/javascript";
	fbJS.src = "http://static.ak.connect.facebook.com/js/api_lib/v0.4/FeatureLoader.js.php";
	document.getElementsByTagName('head')[0].appendChild(fbJS);

	ExecuteWhen.add(window.fbIsReady,
		function () {
			// HACK: This is a workaround FBC's single domain limitation by
			//		 allowing sites to create multiple forums with different
			//		 Facebook API keys.  This must be used in conjunction with
			//		 disqus_facebook_forum (see authenticateFacebook).
			var facebook_api_key = 'faaf467d0f47abde553c3b8e0e1b3570';
			if (typeof disqus_facebook_api_key != 'undefined') {
				facebook_api_key = disqus_facebook_api_key;
			}

			FB.init(facebook_api_key, window.facebookXdReceiverPath || null,
				{fetchSignedPublicSessionData: true});
		});
}


	


if(typeof(disqus_callback) == 'function') {
	var callback_params = Dsq.Utils.getRequestParams()['dsq_cbp'] || null;

	// We don't care about any errors in third-party code
	try {
		disqus_callback(callback_params);
	} catch (x) {
		if (typeof(console) != 'undefined' && typeof(console.log) == 'function') {
			// But it would be nice to let developers know about them
			console.log(x);
		}
		// pass
	}

	// HACK: We don't know if the callback wraps our container, which may
	// possibly result in a new DOM element.
	Dsq.container = document.getElementById('dsq-content');
}

// Global event handler for narcissus.
if (Dsq.jsonData.integration.theme == 4) {
	var g = Dsq.Utils.ie ? document : window;
	Dsq.Utils.addEventListener(g, 'keydown', function(event) {
		// Handle "enter" key on input for post box.
		if ((event.keyCode || event.which) == 13) {
			var target = Dsq.Utils.ie ? event.srcElement : event.target;
			// For Safari bug, detect text node.
			if (target.nodeType == 3) {
				target = target.parentNode;
			}

			if (target.nodeName == 'INPUT' &&
				target.parentNode.className == 'dsq-input-wrapper') {
				var postId = Dsq.Utils.extractId(target);
				Dsq.Templates.postComment(postId, this, false);
			}
		}
	});
}

})();




