<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Web 2.1 &#187; rant</title>
	<atom:link href="http://web.2point1.com/tag/rant/feed/" rel="self" type="application/rss+xml" />
	<link>http://web.2point1.com</link>
	<description>Tim Whitlock&#039;s home in the Blogohedron</description>
	<lastBuildDate>Thu, 13 May 2010 21:26:34 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Twitter changes break TwitBlock [again]</title>
		<link>http://web.2point1.com/2009/09/19/twitter-changes-break-twitblock-again/</link>
		<comments>http://web.2point1.com/2009/09/19/twitter-changes-break-twitblock-again/#comments</comments>
		<pubDate>Sat, 19 Sep 2009 19:43:58 +0000</pubDate>
		<dc:creator>Tim</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[rant]]></category>
		<category><![CDATA[twitblock]]></category>
		<category><![CDATA[twitter]]></category>

		<guid isPermaLink="false">http://web.2point1.com/?p=168</guid>
		<description><![CDATA[Last week a another change to Twitter caused me problems with my personal project TwitBlock. For the impatient, see my Google groups post about it. (It didn&#8217;t go down very well).
If you&#8217;re a Twitter user, you&#8217;re probably familiar with this image:

It is/was the default profile image for users that have not uploaded a custom avatar. [...]]]></description>
			<content:encoded><![CDATA[<p>Last week a another change to Twitter caused me problems with my personal project <a href="http://twitblock.org/" target="_blank">TwitBlock</a>. For the impatient, see my <a href="http://groups.google.com/group/twitter-development-talk/browse_thread/thread/ee7839d0c82ea17a?hl=en" target="_blank">Google groups post</a> about it. (It didn&#8217;t go down very well).</p>
<p>If you&#8217;re a Twitter user, you&#8217;re probably familiar with this image:</p>
<p><img class="alignnone size-full wp-image-169" title="default_profile_normal" src="http://web.2point1.com/wp-content/uploads/2009/09/default_profile_normal.png" alt="default_profile_normal" width="48" height="48" /></p>
<p>It is/was the default profile image for users that have not uploaded a custom avatar. You may also have noticed last week that Twitter has introduced a new version. Actually they they made seven of them in different colours:<br />
<img class="alignnone size-full wp-image-170" title="default_profile_0_normal" src="http://web.2point1.com/wp-content/uploads/2009/09/default_profile_0_normal.png" alt="default_profile_0_normal" width="48" height="48" /> <img class="alignnone size-full wp-image-171" title="default_profile_1_normal" src="http://web.2point1.com/wp-content/uploads/2009/09/default_profile_1_normal.png" alt="default_profile_1_normal" width="48" height="48" /> <img class="alignnone size-full wp-image-172" title="default_profile_2_normal" src="http://web.2point1.com/wp-content/uploads/2009/09/default_profile_2_normal.png" alt="default_profile_2_normal" width="48" height="48" /> <img class="alignnone size-full wp-image-173" title="default_profile_3_normal" src="http://web.2point1.com/wp-content/uploads/2009/09/default_profile_3_normal.png" alt="default_profile_3_normal" width="48" height="48" /> <img class="alignnone size-full wp-image-174" title="default_profile_4_normal" src="http://web.2point1.com/wp-content/uploads/2009/09/default_profile_4_normal.png" alt="default_profile_4_normal" width="48" height="48" /> <img class="alignnone size-full wp-image-175" title="default_profile_5_normal" src="http://web.2point1.com/wp-content/uploads/2009/09/default_profile_5_normal.png" alt="default_profile_5_normal" width="48" height="48" /> <img class="alignnone size-full wp-image-176" title="default_profile_6_normal" src="http://web.2point1.com/wp-content/uploads/2009/09/default_profile_6_normal.png" alt="default_profile_6_normal" width="48" height="48" /></p>
<p>At least I think they made seven; I can&#8217;t find any more, but I can&#8217;t find any official document stating how many are out there either.</p>
<p><span id="more-168"></span></p>
<h3>So what?</h3>
<p>So &#8230; TwitBlock crawls Twitter for <a href="http://www.twitblock.org/report_pics.php" target="_blank">duplicate profile pics</a> to help identify spam accounts. The app needs to know what images are the default ones, because otherwise it will penalize people heavily for having what <em>appears </em>to be the same image as thousands of other people.</p>
<p>This relies rather delicately on factors that are liable to change and that aren&#8217;t strictly a part of the <a href="http://apiwiki.twitter.com/" target="_blank">developer API</a>, so I have to keep a close eye on things. I concede this is not a very robust solution, and I certainly wouldn&#8217;t base a commercial product around such weak &#8220;technology&#8221;. In fact I&#8217;m not sure I&#8217;d base a commercial product around Twitter at all.</p>
<p>I get a lot of emails and DMs from people telling me that they&#8217;ve received errors using TwitBlock. Almost always this is due to the Twitter API failing to respond &#8211; either timing out or sending back some HTTP error. It&#8217;s quite embarrassing, and I can only imagine how much worse this would be if people were paying for a Twitter-based service.</p>
<p>A Twitter app doesn&#8217;t just rely on the API, it relies on everything that makes up the Twitter service. This includes its full feature set and its hardware infrastructure. I am of the opinion that the above-described profile image change was significant enough that Twitter should have documented the change in advance. Facebook do a good job of addressing the community far in advance of changes, and I think this is yet another indicator that Twitter is out of its depth.</p>
]]></content:encoded>
			<wfw:commentRss>http://web.2point1.com/2009/09/19/twitter-changes-break-twitblock-again/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>Lessons learned &#8230; again</title>
		<link>http://web.2point1.com/2009/03/21/lessons-learned-again/</link>
		<comments>http://web.2point1.com/2009/03/21/lessons-learned-again/#comments</comments>
		<pubDate>Sat, 21 Mar 2009 13:02:54 +0000</pubDate>
		<dc:creator>Tim</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[isp]]></category>
		<category><![CDATA[lamp]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[rant]]></category>

		<guid isPermaLink="false">http://web.2point1.com/2009/03/21/lessons-learned-again/</guid>
		<description><![CDATA[I re-learned a few old lessons last week.

1&#38;1 suck like it&#8217;s going out of fashion

The only backup is a full disk image backup
I am not a Linux sysadmin

And finally a lesson for 1&#38;1 .. good customer service is about exceeding expectations not covering your arse*.

1. I had a budget root server with 1&#38;1 internet for [...]]]></description>
			<content:encoded><![CDATA[<h4>I re-learned a few old lessons last week.</h4>
<ol>
<li><strong><a href="http://www.google.co.uk/search?q=1%261+suck" target="_blank">1&amp;1 suck</a></strong> like it&#8217;s going out of fashion<a href="http://www.google.co.uk/search?q=1%261+suck" target="_blank"><br />
</a></li>
<li>The only backup is a full <a href="http://www.slicehost.com/questions/#backups" target="_blank">disk image backup</a></li>
<li>I am not a Linux <a href="http://en.wikipedia.org/wiki/Sysadmin" target="_blank">sysadmin</a></li>
</ol>
<p>And finally a lesson for 1&amp;1 .. good customer service is about <em>exceeding</em> expectations not covering your arse*.</p>
<p><span id="more-114"></span></p>
<p><strong>1. I had a budget root server with 1&amp;1 internet for about 5 years</strong>. Apparently about a month ago 1&amp;1 emailed me stating that they were going to physically move my server, and that they would not be responsible for any data loss during that time. I say <em>apparently</em> because I don&#8217;t remember it. It&#8217;s quite likely I thought it was a marketing email and trashed it without a second look, or maybe it got junked&#8230; who knows.</p>
<p>Anyway,  they switched my server off, moved it, and switched it back on. The hard disk which was running for 5 years basically had a heart attack and died. I was told by a 1&amp;1 call centre chap that &#8220;this is expected&#8221;, and of course they don&#8217;t back it up for you.</p>
<p><strong>2.  Fortunately I was backing up my databases</strong> using a home-made combination of <a href="http://dev.mysql.com/doc/en/mysqldump.html" target="_blank">mysqldump</a> and [the fabulous] <a href="http://samba.anu.edu.au/rsync/" target="_blank">rsync</a>, but it was only my personal server for tinkerings such as this blog, so I wasn&#8217;t paying for a full mirror. <strong>( Error</strong> <strong>)</strong>. Not only was there an absolute tonne of software, and highly custom configurations, but I had totally forgotten to backup the file uploads on this blog. (<strong> s%&amp;t! ). </strong>So I&#8217;m really sorry for the <a href="http://en.wikipedia.org/wiki/404_error" target="_blank">404</a>s, especially on my <a href="http://web.2point1.com/2008/04/13/scale-rotate-around-an-arbitrary-centre/">most popular post</a>, where the demo files are currently AWOL; I shall work on reinstating these, because half my traffic goes to this article.</p>
<p>This blog is now running on a small <a href="http://en.wikipedia.org/wiki/Virtual_private_server" target="_blank">VPS</a> at <a href="http://slicehost.net/" target="_blank">Slicehost</a>. and for $5 per month I keep a daily, weekly and adhoc mirror of the complete image. Marvelous :)</p>
<p><strong> 3. I am a web developer, not a Linux sysadmin</strong>, but the lines blur &#8230; <em>a lot</em>. If you&#8217;re a back end developer working for a fairly small company, you will have to do a lot of this stuff. It actually makes you a much better developer, but installing a complete operating system is not just a massive pain in the arse*, but there are lots of issues you&#8217;re probably not qualified to tackle. (Security, performance, maintenance, etc.. ). The magic of <a href="http://en.wikipedia.org/wiki/Yellow_dog_Updater,_Modified" target="_blank">yum</a> got me a working LAMP server within about 10 minutes from a base Fedora 10 install, but I spent my weekend configuring <a href="http://www.postfix.org/" target="_blank">Postfix</a>, and <a href="http://www.dovecot.org/" target="_blank">Dovecot</a> and generally ensuring the system was in reasonable shape. As usual, it took lots of Googling, forum browsing, and chatting to the excellent Slicehost support people &#8211; This is not what I do for a living and I&#8217;m not particularly good at it either. <strong>I build web apps</strong>, and I need to remember that.</p>
<p>* UK Glossary: arse = ass</p>
]]></content:encoded>
			<wfw:commentRss>http://web.2point1.com/2009/03/21/lessons-learned-again/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>The Trademan&#8217;s Entrance</title>
		<link>http://web.2point1.com/2008/03/26/the-trademans-entrance/</link>
		<comments>http://web.2point1.com/2008/03/26/the-trademans-entrance/#comments</comments>
		<pubDate>Wed, 26 Mar 2008 08:39:34 +0000</pubDate>
		<dc:creator>Tim</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[diy]]></category>
		<category><![CDATA[rant]]></category>

		<guid isPermaLink="false">http://web.2point1.com/2008/03/26/the-trademans-entrance/</guid>
		<description><![CDATA[I write this as I wait for my builder to arrive at my house.
If I treated my profession like a tradesman, you wouldn&#8217;t have a website. Here&#8217;s why:

I will arrive early at your office. Nobody is there to let me in, but I&#8217;m still &#8220;on site&#8221;, so I&#8217;m still leaving at 4:30;
If you ask me [...]]]></description>
			<content:encoded><![CDATA[<p>I write this as I wait for my builder to arrive at my house.<br />
If I treated my profession like a <a href="http://dictionary.reference.com/browse/tradesman" title="definition of a tradesman for Americans" target="_blank">tradesman</a>, you wouldn&#8217;t have a website. Here&#8217;s why:<span id="more-14"></span></p>
<ul>
<li>I will arrive <em>early</em> at your office. Nobody is there to let me in, but I&#8217;m still &#8220;on site&#8221;, so I&#8217;m still leaving at 4:30;</li>
<li>If you ask me to come in a bit later the following day, I will arrive an additional hour late just to be sure, or possibly to teach you a lesson;</li>
<li>When we discuss the project, I will use words you don&#8217;t understand. When you ask me to clarify, I&#8217;ll just repeat the same words again, until you get embarrassed enough to stop asking;</li>
<li>The less you understand about my job, the less respect I will give you, and the less helpful I will be;</li>
<li>If you aren&#8217;t running the right software, God help you! I did say &#8211; briefly over the phone a few weeks ago, possibly;</li>
<li>If you had recently hired another developer, I will be sure to slag off their work and give you totally different information than you got from them;</li>
<li>If the previous developer was from another country I will make racist slurs assuming that you are probably as comfortable with that as I am;</li>
<li>I&#8217;ll decide when the job is finished. You can disagree, but I&#8217;ll do my best to intimidate you into saying everything is fine so I can get to the pub;</li>
<li>You will pay me in <em>cash</em> as I am walking out the door on my last day. No 30 day nonsense. And I may not have an invoice &#8220;on me&#8221;, but I&#8217;ll promise to drop one in sometime;</li>
<li>If the project takes longer, or is more difficult than expected, <strong>I will not work late &#8211; you&#8217;ll just have to wait</strong>!</li>
</ul>
<p>I am now late for work. Sans builder. But I&#8217;m sure it will be fine when I get home at 8pm.</p>
]]></content:encoded>
			<wfw:commentRss>http://web.2point1.com/2008/03/26/the-trademans-entrance/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
