{"id":15,"date":"2010-07-09T19:09:59","date_gmt":"2010-07-09T18:09:59","guid":{"rendered":"http:\/\/www.paulplowman.com\/blog\/?p=15"},"modified":"2010-07-09T19:09:59","modified_gmt":"2010-07-09T18:09:59","slug":"bring-me-the-head-of-adam-croot","status":"publish","type":"post","link":"https:\/\/paulplowman.com\/stuff\/bring-me-the-head-of-adam-croot\/","title":{"rendered":"Bring me the head of Adam Croot"},"content":{"rendered":"<p>I don&#8217;t know who Adam Croot is. I&#8217;ve never met him, spoken to him, or &#8211; as far as I&#8217;m aware &#8211; set eyes on him. He&#8217;s probably a decent fellow &#8211; kind to his mother, careful with litter, etc. &#8211; but he&#8217;s really starting to get on my wick.<\/p>\n<p><!--more--><\/p>\n<p>It seems other people are <a href=\"http:\/\/pastebin.com\/z9xgRQg9\">starting to despise him<\/a> as well, and with a lot more vitriol than that which I can muster.<\/p>\n<p>So why is he the target of hatred for myself and other people, none of whom know him from&#8230; well&#8230; Adam?<\/p>\n<p>Well, for some reason, there are quite a few sites on the internet which, due to poor programming, spontaneously redirect you to <a href=\"http:\/\/twitter.com\/undefined\">Adam&#8217;s Twitter feed<\/a>. To any non-nerds it looks for all the world like Adam is some kind of &#8216;elite&#8217; techno-criminal who&#8217;s managed to hack into Twitpic and Photobucket, and other affected sites to make them forward to his site. This is not the case.<\/p>\n<p>A bit of poking around in source code reveals that the sites in question are trying to open an &lt;iframe&gt; containing the page <strong>https:\/\/api.twitter.com\/undefined#<em>blahblahlotsofstuffhere<\/em><\/strong>. Since Adam&#8217;s Twitter name is &#8216;<strong>undefined<\/strong>&#8216;, this redirects you to his Twitter feed.<\/p>\n<p>The &lt;iframe&gt; is generated on-the-fly by the Javascript code in the file <strong><span class=\"attribute-value\">http:\/\/platform.twitter.com\/anywhere.js<\/span><\/strong>. This script is part of the Twitter <a href=\"http:\/\/dev.twitter.com\/anywhere\">@Anywhere API<\/a> &#8211; a framework for integrating Twitter apps into your site. It seems that through a combination of bad programming and poor error-checking, the code is trying to create an &lt;iframe&gt; using a variable which has not been defined, hence it uses <em>undefined<\/em> instead, hence you get redirected to Adam&#8217;s Twitter feed. This has nothing to do with Adam, who I imagine is probably starting to get sick of random strangers verbally abusing him.<\/p>\n<p>So, if you are someone who this is happening to, and would like to stop it, and you have an advert-filtering plugin (like <a href=\"http:\/\/adblockplus.org\">AdBlock Plus<\/a> on Firefox), then simply add the following filter&#8230;<\/p>\n<blockquote><p><strong>https:\/\/api.twitter.com\/undefined#<\/strong><strong>*<\/strong><\/p><\/blockquote>\n<p>&#8230;and if you don&#8217;t have an advert-filtering plugin, pester Twitter to implement better error-checking!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>I don&#8217;t know who Adam Croot is. I&#8217;ve never met him, spoken to him, or &#8211; as far as I&#8217;m aware &#8211; set eyes on him. He&#8217;s probably a decent fellow &#8211; kind to his mother, careful with litter, etc. &#8211; but he&#8217;s really starting to get on my wick.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[2],"tags":[],"class_list":["post-15","post","type-post","status-publish","format-standard","hentry","category-computing"],"_links":{"self":[{"href":"https:\/\/paulplowman.com\/stuff\/wp-json\/wp\/v2\/posts\/15","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/paulplowman.com\/stuff\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/paulplowman.com\/stuff\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/paulplowman.com\/stuff\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/paulplowman.com\/stuff\/wp-json\/wp\/v2\/comments?post=15"}],"version-history":[{"count":0,"href":"https:\/\/paulplowman.com\/stuff\/wp-json\/wp\/v2\/posts\/15\/revisions"}],"wp:attachment":[{"href":"https:\/\/paulplowman.com\/stuff\/wp-json\/wp\/v2\/media?parent=15"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/paulplowman.com\/stuff\/wp-json\/wp\/v2\/categories?post=15"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/paulplowman.com\/stuff\/wp-json\/wp\/v2\/tags?post=15"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}