<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss 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/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>tenfourty.com</title>
	
	<link>http://tenfourty.com</link>
	<description>Just another guy on the web</description>
	<lastBuildDate>Wed, 10 Oct 2012 07:13:06 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/tenfourty" /><feedburner:info uri="tenfourty" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item>
		<title>JBoss World 2012 Abstract Submitted</title>
		<link>http://feedproxy.google.com/~r/tenfourty/~3/QkTmDfamCvM/</link>
		<comments>http://tenfourty.com/2011/12/10/jboss-world-2012-abstract-submitted/#comments</comments>
		<pubDate>Sat, 10 Dec 2011 13:58:46 +0000</pubDate>
		<dc:creator>Jeremy Brown</dc:creator>
				<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://tenfourty.com/?p=193</guid>
		<description><![CDATA[I just submitted an abstract for a talk at JBoss World 2012, hope it gets accepted! Real World Software Development with Openshift OpenShift is Red Hat’s free, auto-scaling platform-as-a-service for Java, Ruby, PHP, Perl and Python applications. In this practical talk, Jeremy Brown will demonstrate how to use Red Hat’s OpenShift PaaS within a team [...]]]></description>
				<content:encoded><![CDATA[<p>I just submitted an abstract for a talk at <a href="http://www.redhat.com/summit/">JBoss World 2012</a>, hope it gets accepted!</p>
<p><strong>Real World Software Development with Openshift</strong></p>
<p>OpenShift is Red Hat’s free, auto-scaling platform-as-a-service for Java, Ruby, PHP, Perl and Python applications.</p>
<p>In this practical talk, Jeremy Brown will demonstrate how to use Red Hat’s OpenShift PaaS within a team of developers to rapidly develop software.</p>
<p>The talk will describe how a team of developers can develop, test and release code in parallel without losing development velocity and will draw on real world examples and insights.</p>
<p>Jeremy will demonstrate how to use and configure a Jenkins Continuous Integration server with a Java project hosted on github.com, while multiple developers commit code and features in parallel, with real time selenium testing as code is released. This talk will include code and configuration samples as well as a hands on demonstration of the end-to-end project workflow.</p>
<p>You will come away with a greater understanding of how you can use OpenShift to create a highly effective cloud development environment with zero server configuration.</p>
<img src="http://feeds.feedburner.com/~r/tenfourty/~4/QkTmDfamCvM" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://tenfourty.com/2011/12/10/jboss-world-2012-abstract-submitted/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://tenfourty.com/2011/12/10/jboss-world-2012-abstract-submitted/</feedburner:origLink></item>
		<item>
		<title>Emergency Conference Speaker Required!</title>
		<link>http://feedproxy.google.com/~r/tenfourty/~3/jty_pDoqI5U/</link>
		<comments>http://tenfourty.com/2011/12/09/emergency-conference-speaker-required/#comments</comments>
		<pubDate>Fri, 09 Dec 2011 17:56:32 +0000</pubDate>
		<dc:creator>Jeremy Brown</dc:creator>
				<category><![CDATA[Blog Posts]]></category>
		<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://tenfourty.com/?p=184</guid>
		<description><![CDATA[I had the slightly dubious privilege this week of standing in at the last-minute as a speaker at a Military conference on security in Prague. On Tuesday at 4:30pm I found out that we needed someone to speak at a conference in Prague the next day… slightly foolishly I volunteered and 24 hours later I found myself [...]]]></description>
				<content:encoded><![CDATA[<p>I had the slightly dubious privilege this week of standing in at the last-minute as a speaker at a Military conference on security in Prague.</p>
<p>On Tuesday at 4:30pm I found out that we needed someone to speak at a conference in Prague the next day… slightly foolishly I volunteered and 24 hours later I found myself presenting!</p>
<p>The conference was the “International Conference ITTE 2011 — Cyber Security and Defense” - <a href="http://www.afcea.cz/">http://www.afcea.cz/</a> My topic was “Open Source and Security: Engineering Security by Design’ and I had to brush up a bit on the content as it’s not something I had ever presented on before.</p>
<p>Still it went OK I think and I enjoyed my brief 24 hours in Prague — though not to the 24 hours before sweating and prepping for the talk and the panel discussion that followed afterwards.</p>
<p>Here are my slides: <a href="http://www.slideshare.net/tenfourty/open-source-and-security-engineering-security-by-design-prague-december-2011">Open Source and Security: Engineering Security by Design</a></p>
<p> </p>
<img src="http://feeds.feedburner.com/~r/tenfourty/~4/jty_pDoqI5U" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://tenfourty.com/2011/12/09/emergency-conference-speaker-required/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://tenfourty.com/2011/12/09/emergency-conference-speaker-required/</feedburner:origLink></item>
		<item>
		<title>Open Sourcing my Linode StackScripts</title>
		<link>http://feedproxy.google.com/~r/tenfourty/~3/9s2F9xJ-QsI/</link>
		<comments>http://tenfourty.com/2011/11/30/open-sourcing-my-linode-stackscripts/#comments</comments>
		<pubDate>Wed, 30 Nov 2011 13:24:27 +0000</pubDate>
		<dc:creator>Jeremy Brown</dc:creator>
				<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://tenfourty.com/?p=180</guid>
		<description><![CDATA[I use Linode to host a VPS and they have a great feature called StackScripts which allows you to: StackScripts™ provide a flexible way to customize our distribution templates. They’re very easy to use — find a StackScript, answer its questions, and click deploy. When the deployment is first booted, the script is executed and does [...]]]></description>
				<content:encoded><![CDATA[<p>I use Linode to host a <a href="http://en.wikipedia.org/wiki/Virtual_private_server">VPS</a> and they have a great feature called <a href="http://www.linode.com/stackscripts/">StackScripts</a> which allows you to:</p>
<blockquote><p>StackScripts™ provide a flexible way to customize our distribution templates. They’re very easy to use — find a StackScript, answer its questions, and click deploy. When the deployment is first booted, the script is executed and does its thing. You can even watch its progress by viewing the console.</p></blockquote>
<p>I’ve used these for a while and decided to open source these scripts to make them publicly available on github - <a href="https://github.com/tenfourty/LinodeEnterpriseLinuxStackScripts">https://github.com/tenfourty/LinodeEnterpriseLinuxStackScripts</a> feel free to fork and update these or let me know of your variations on these on Linode’s StackScripts <a href="http://www.linode.com/stackscripts/profile/?tenfourty">library</a> (where my code is also available).</p>
<img src="http://feeds.feedburner.com/~r/tenfourty/~4/9s2F9xJ-QsI" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://tenfourty.com/2011/11/30/open-sourcing-my-linode-stackscripts/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://tenfourty.com/2011/11/30/open-sourcing-my-linode-stackscripts/</feedburner:origLink></item>
		<item>
		<title>How-to Switch from CentOS 5.6 to Scientific Linux 5.6</title>
		<link>http://feedproxy.google.com/~r/tenfourty/~3/Rx-vF1oiEG0/</link>
		<comments>http://tenfourty.com/2011/07/09/how-to-switch-from-centos-5-6-to-scientific-linux-5-6/#comments</comments>
		<pubDate>Sat, 09 Jul 2011 12:39:16 +0000</pubDate>
		<dc:creator>Jeremy Brown</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[CentOS]]></category>
		<category><![CDATA[How To]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[RHEL]]></category>
		<category><![CDATA[Scientific Linux]]></category>

		<guid isPermaLink="false">http://tenfourty.com/?p=160</guid>
		<description><![CDATA[I have recently switched my Linode VPS from CentOS 5.6 to Scientific Linux 5.6 because I got a bit sick of all of the delays that the CentOS team have been experiencing, to be honest I don’t care what their reasons are, I just want a distro that follows RHEL a bit faster! I think I [...]]]></description>
				<content:encoded><![CDATA[<p>I have recently switched my <a href="http://www.linode.com/">Linode</a> VPS from <a href="http://www.centos.org/">CentOS</a> 5.6 to <a href="http://www.scientificlinux.org/">Scientific Linux</a> 5.6 because I got a bit sick of all of the delays that the CentOS team have been experiencing, to be honest I don’t care what their reasons are, I just want a distro that follows <a href="http://www.redhat.com/rhel/">RHEL</a> a bit faster!</p>
<p>I think I can summarise my reasons based on this email:</p>
<ul>
<li>Faster updates</li>
<li>Professional</li>
<li>Security and bugfix updates separate</li>
<li>Security updates also for older versions of SL</li>
<li>More reliable than CentOS</li>
</ul>
<p><span class="pullquote">The CentOS guys seem more focused on infighting rather than focussing on getting CentOS 6 out the door, considering how long RHEL 6 has been available this has turned into a bit of a joke!</span></p>
<p>When I googled around I couldn’t find a concise article that explained how to do this, so here is a my simple guide to switching from CentOS 5.6 to Scientific Linux (SL) 5.6, it was relatively straightforward and my rock solid VPS has stayed up and reliable throughout the process. These instructions are based on the following articles:</p>
<ul>
<li><a href="http://wiki.centos.org/HowTos/MigrationGuide">CentOS Migration Guide</a></li>
<li><a href="http://listserv.fnal.gov/scripts/wa.exe?A2=ind1101&amp;L=scientific-linux-users&amp;T=0&amp;P=7477">This thread</a> on the SL user mailing list.</li>
</ul>
<p>If you want to tell what version of CentOS you are currently running you can use the following command:</p>
<pre style="padding-left: 30px;">cat /etc/redhat-release</pre>
<p>Now to “upgrade” to SL. All commands should obviously be run as root.</p>
<p>You might also want to back up your release file, you can do that with the following command:</p>
<pre style="padding-left: 30px;">cp /etc/redhat-release /etc/redhat-release-saved</pre>
<p>Then just use the following commands to remove CentOS and install SL:</p>
<pre style="padding-left: 30px;">yum clean all</pre>
<pre style="padding-left: 30px;">rpm -e --nodeps centos-release-notes centos-release yum-3.2.22-33.el5.centos.noarch redhat-logos redhat-artwork redhat-menus</pre>
<pre style="padding-left: 30px;">rpm -e --nodeps yum-3.2.22-33.el5.centos.noarch</pre>
<pre style="padding-left: 30px;">rpm -ivh http://ftp.scientificlinux.org/linux/scientific/56/i386/SL/sl-release-5.6-1.i386.rpm http://ftp.scientificlinux.org/linux/scientific/56/i386/SL/sl-release-notes-5.6-1.noarch.rpm http://ftp.scientificlinux.org/linux/scientific/56/i386/SL/redhat-artwork-5.0.9-2.SL.4.i386.rpm http://ftp.scientificlinux.org/linux/scientific/56/i386/SL/redhat-logos-4.9.16-2.sl5.6.noarch.rpm http://ftp.scientificlinux.org/linux/scientific/56/i386/SL/redhat-menus-6.7.8-3.el5.noarch.rpm http://ftp.scientificlinux.org/linux/scientific/56/i386/SL/yum-3.2.22-33.sl.noarch.rpm http://ftp.scientificlinux.org/linux/scientific/56/i386/SL/yum-autoupdate-1.1-1.SL.noarch.rpm http://ftp.scientificlinux.org/linux/scientific/56/i386/SL/yum-conf-56-1.SL.noarch.rpm</pre>
<pre style="padding-left: 30px;">yum update all</pre>
<p>If you now check what release version you are on you should see something like the following:</p>
<pre style="padding-left: 30px;">[root@wahala ~]# cat /etc/redhat-release
Scientific Linux SL release 5.6 (Boron)
[root@wahala ~]#</pre>
<p>Next I think I’ll attempt to upgrade or rebuild my VPS to run Scientific Linux 6… the subject of a future blog post!</p>
<img src="http://feeds.feedburner.com/~r/tenfourty/~4/Rx-vF1oiEG0" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://tenfourty.com/2011/07/09/how-to-switch-from-centos-5-6-to-scientific-linux-5-6/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://tenfourty.com/2011/07/09/how-to-switch-from-centos-5-6-to-scientific-linux-5-6/</feedburner:origLink></item>
		<item>
		<title>How to load balance TCP connections with HAProxy</title>
		<link>http://feedproxy.google.com/~r/tenfourty/~3/Rz08rHCquq4/</link>
		<comments>http://tenfourty.com/2011/04/09/how-to-load-balance-tcp-connections-with-haproxy/#comments</comments>
		<pubDate>Sat, 09 Apr 2011 08:15:06 +0000</pubDate>
		<dc:creator>Jeremy Brown</dc:creator>
				<category><![CDATA[Blog Posts]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[EAP]]></category>
		<category><![CDATA[EWS]]></category>
		<category><![CDATA[HAProxy]]></category>
		<category><![CDATA[JBoss]]></category>
		<category><![CDATA[JDBC]]></category>
		<category><![CDATA[load balancer]]></category>
		<category><![CDATA[load balancing]]></category>
		<category><![CDATA[ODBC]]></category>
		<category><![CDATA[TCP]]></category>
		<category><![CDATA[Teiid]]></category>

		<guid isPermaLink="false">http://tenfourty.com/?p=150</guid>
		<description><![CDATA[This week I was at a client where we were doing some performance testing of the JBoss Enterprise Data Services product (EDS for short). EDS is based on the JBoss.org community project Teiid which is a data virtualization system that allows applications to use data from multiple, heterogenous data stores. It’s a really cool product [...]]]></description>
				<content:encoded><![CDATA[<p>This week I was at a client where we were doing some performance testing of the<a href="http://www.jboss.com/products/platforms/dataservices/"> JBoss Enterprise Data Service</a>s product (EDS for short). EDS is based on the <a href="http://www.jboss.org/">JBoss.org</a> community project <a href="http://www.jboss.org/teiid">Teiid</a> which is a data virtualization system that allows applications to use data from multiple, heterogenous data stores. It’s a really cool product if you have a lot of backend data sources and you want to expose a simplified virtual (SQL) database to your front end applications — and it runs within the JBoss application server, in our case the enterprise version — <a href="http://www.jboss.com/products/platforms/application/">Enterprise Application Platform</a> or EAP for short.</p>
<p>As we were doing performance testing we wanted to run EDS within a cluster of JBoss EAP nodes, now clustering EAP nodes is fairly straightforward and you can then setup a front end load balancer with Apache httpd, in my case I used the <a href="http://www.redhat.com/">Red Hat</a> product based on the <a href="http://httpd.apache.org/">Apache web server</a> called <a href="http://www.jboss.com/products/platforms/webserver/">Enterprise Web Server</a> (EWS) and mod_cluster to cluster and load balance my application servers. Now this sort of clustering is fine if you want to do replication of your applications and use distributed cache replication within the cluster, however the question was how do you do load balancing on the <a href="http://en.wikipedia.org/wiki/Open_Database_Connectivity">ODBC</a> and <a href="http://en.wikipedia.org/wiki/Java_Database_Connectivity">JDBC</a> connections that EDS provides for the application tier? As these types of connections can’t be load balanced by the Apache Web Server we had to come up with another way to do this.</p>
<p>As we were at a very large enterprise client their initial suggestion was that we use a hardware TCP load balancer to do this, however I was pretty sure this was a straightforward problem that must have been solved already and that a software based solution must exist… and low and behold there is one and it is called <a href="http://haproxy.1wt.eu/">HAProxy</a>.</p>
<p>HAProxy is a really cool load balancer that is very powerful and flexible and also really easy to use and it seems that not too many people are aware that it can be used to load balance ANY TCP connection, <a href="http://www.linickx.com/645/load-balance-anything-with-haproxy">this blog post</a> lead me in the right direction and with the ethos of trying to help all of you out there on the web here is my very short how to and sample configuration for how to load balance ODBC and JDBC connections — specifically for Teiid embedded in the JBoss Enterprise Data Services product.</p>
<p>First you need to get HAProxy, in my case I was running everything on RHEL so the easiest thing is to add the <a href="http://fedoraproject.org/wiki/EPEL">Fedora EPEL repository</a> to your machine and then just do a “yum install haproxy”, you should now have haproxy installed on your machine — now you just need to configure and launch it!</p>
<p>So first configuration, I’ve included a sample configuration file for 4 nodes, as I had two physical machines with 2 nodes running on each of them. The first node on each machine was running the default JBoss ports and the second was using ports 100 greater than the default. Here is my file:</p>
<p><script src="https://gist.github.com/911226.js?file=haproxy_eds.conf"></script></p>
<p>You’ll notice that I also create a listener for stats on on port 9090 — this means that you can have a nifty web stats page that you can view on http://&lt;haproxyIP&gt;:8080/haproxy?stats (username/password = admin/admin).<br />
Now that we have HAProxy configured we just need to run it, in this case it would be “haproxy –f &lt;config file&gt; –V”, I used the verbose flag so that I could see what was going on but you may not necessarily want this for production.</p>
<p>Now just launch the stats page to see your nodes connected and you are up and running — don’t forget to configure the ODBC and JDBC listener sections to put your own ports to listen to depending on the setup you are going to use.</p>
<p>Oh and by the way the performance testing we did showed that Teiid is amazingly performant!</p>
<img src="http://feeds.feedburner.com/~r/tenfourty/~4/Rz08rHCquq4" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://tenfourty.com/2011/04/09/how-to-load-balance-tcp-connections-with-haproxy/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://tenfourty.com/2011/04/09/how-to-load-balance-tcp-connections-with-haproxy/</feedburner:origLink></item>
		<item>
		<title>Cheap And Easy Cloud Cracking On The Way</title>
		<link>http://feedproxy.google.com/~r/tenfourty/~3/zg67GT_V-2I/</link>
		<comments>http://tenfourty.com/2010/11/27/cheap-and-easy-cloud-cracking-on-the-way/#comments</comments>
		<pubDate>Sat, 27 Nov 2010 01:15:28 +0000</pubDate>
		<dc:creator>Jeremy Brown</dc:creator>
				<category><![CDATA[Blog Posts]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[Amazon]]></category>
		<category><![CDATA[Cracking]]></category>
		<category><![CDATA[EC2]]></category>
		<category><![CDATA[GPU]]></category>
		<category><![CDATA[Hacker]]></category>
		<category><![CDATA[Wifi]]></category>
		<category><![CDATA[WPA]]></category>

		<guid isPermaLink="false">http://tenfourty.com/?p=131</guid>
		<description><![CDATA[Amazon recently announced a new instance type for their EC2 cloud service that they call the Cluster GPU which has an impressive spec: 22 GB of memory 33.5 EC2 Compute Units (2 x Intel Xeon X5570, quad-core â€œNehalemâ€ architecture) 2 x NVIDIA Tesla â€œFermiâ€ M2050 GPUs 1690 GB of instance storage 64-bit platform I/O Performance: [...]]]></description>
				<content:encoded><![CDATA[<p>Amazon recently announced a new instance type for their<a href="https://aws.amazon.com/ec2/"> EC2 cloud service</a> that they call the <a href="https://aws.amazon.com/ec2/hpc-applications/">Cluster GPU</a> which has an impressive spec:</p>
<blockquote><p>22 GB of memory<br />
33.5 EC2 Compute Units (2 x Intel Xeon X5570, quad-core â€œNehalemâ€ architecture)<br />
2 x NVIDIA Tesla â€œFermiâ€ M2050 GPUs<br />
1690 GB of instance storage<br />
64-bit platform<br />
I/O Performance: Very High (10 Gigabit Ethernet)</p></blockquote>
<p>The really interesting part that has got a lot of people interested is the fact that it has two high-powered graphics cards which can be used to do massively powerful parallel computing. Now there are many potential applications for these GPUs — image and video processing, computational biology and chemistry, fluid dynamics simulation, CT image reconstruction, seismic analysis, ray tracing and so on. <span class="pullquote">But what really interests me is the possibility of using these GPU instances for password cracking.</span></p>
<p>It’s now well-known that using a GPU to crack passwords can reduce the time required from something like 2 months to 3 days, but what happens when you throw one of these new Amazon instances at the problem? And what if it’s not just one instance but a cluster of them that is used to do the massively parallel computation? TheÂ sheerÂ computing power that even a small cluster of these machines has available would make short work of cracking all sorts of passwords. Some that come to mind are:</p>
<ul>
<li>System Password files which use the MD4, MD5, NTLM or SHA1 algorithms.</li>
<li>WPA-PSK or WPA2-PSK network passwords (WEP is already trivial to crack).</li>
<li>Password protected RAR or ZIP files.</li>
<li>Password protected Microsoft Office or Open Office files.</li>
<li>Password protected PDFs.</li>
<li>Encrypted disks</li>
</ul>
<p>Some people have already tested these GPU instances to <a href="http://stacksmashing.net/2010/11/15/cracking-in-the-cloud-amazons-new-ec2-gpu-instances/">crack password hashes</a> and <a href="https://groups.google.com/group/pyrit/browse_thread/thread/6fb00f6c41e6ee0c">Pyrit has been tested on it</a> (could be used to crack WPA/WPA2). The performance of a single instance is impressive, <a href="http://aws.amazon.com/ec2/pricing/">the cost is equally impressive</a> ($2.10 for an hour). Just a few years ago this kind of computing power was only available to organisations that had a large amount of resources such as governments, large corporations and a few universities and research organisations. Now anyone with a bit of technical knowledge and a credit card has access to it.</p>
<p>It’s only a matter of time before someone uses a cluster of these instances in anger to start cracking passwords, in fact I’m sure someone already is. How long will it be before someone releases a commercial service based on this platform?</p>
<p>The only commercial service for password cracking that I’ve found so far is <a href="http://www.wpacracker.com/">WPA Cracker</a> who claim to have a 400 CPU cluster, however a service that uses a few EC2 GPU instances could blow away the performance of WPA Cracker. We could soon start to see passwords being cracked in just a few minutes with a large enough cluster. I wouldn’t be surprised if it wasn’t long before someone sets up a service like this which integrates nicely into <a href="http://www.backtrack-linux.org/">backtrack</a> or some other wi-fi sniffing software that grabs the required wi-fi packets and uploads it to an EC2 cluster that cracks the password in a few minutes.</p>
<p>All of this isÂ a very strong argument for using longer and more complex passwords that are less vulnerable to dictionary and brute force attacks, and one more reason not to assume that your wi-fi network is secure because you are using WPA or WPA2 instead of WEP.</p>
<img src="http://feeds.feedburner.com/~r/tenfourty/~4/zg67GT_V-2I" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://tenfourty.com/2010/11/27/cheap-and-easy-cloud-cracking-on-the-way/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://tenfourty.com/2010/11/27/cheap-and-easy-cloud-cracking-on-the-way/</feedburner:origLink></item>
		<item>
		<title>Do Cameroonian ISPs care about their customers?</title>
		<link>http://feedproxy.google.com/~r/tenfourty/~3/HPKOQmCvbYA/</link>
		<comments>http://tenfourty.com/2010/11/19/do-cameroonian-isps-care-about-their-customers/#comments</comments>
		<pubDate>Fri, 19 Nov 2010 21:10:16 +0000</pubDate>
		<dc:creator>Jeremy Brown</dc:creator>
				<category><![CDATA[Africa]]></category>
		<category><![CDATA[Blog Posts]]></category>
		<category><![CDATA[Cameroon]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[Camtel]]></category>
		<category><![CDATA[CDMA]]></category>
		<category><![CDATA[Creolink]]></category>
		<category><![CDATA[GPRS]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[ISP]]></category>
		<category><![CDATA[Low Bandwidth]]></category>
		<category><![CDATA[Matrix]]></category>
		<category><![CDATA[MTN]]></category>
		<category><![CDATA[Orange]]></category>
		<category><![CDATA[performance]]></category>
		<category><![CDATA[Ringo]]></category>
		<category><![CDATA[SCDMA]]></category>
		<category><![CDATA[Wifi]]></category>
		<category><![CDATA[Wimax]]></category>

		<guid isPermaLink="false">http://tenfourty.com/?p=87</guid>
		<description><![CDATA[I wanted to investigate the typical experience of a Cameroonian Internet user while visiting the websites of the major Internet Service Providers (ISPs). I figured that the time and energy a company puts into optimising their website for slow connections might indicate how focused they are as a company on their customers. After all, if [...]]]></description>
				<content:encoded><![CDATA[<p>I wanted to investigate the typical experience of a Cameroonian Internet user while visiting the websites of the major Internet Service Providers (ISPs). <span class="pullquote">I figured that the time and energy a company puts into optimising their website for slow connections might indicate how focused they are as a company on their customers.</span> After all, if ISPs know what bandwidth they are giving their customers then surely they will have optimised their sites to work well on those connections?</p>
<p>In addition I hope that this post will highlight the fact that you must optimise your site for low-bandwidth users, especially if you operate in countries with poor Internet connectivity. In fact it’s not too hard to do these days if you take a few simple steps, but first you need to be aware of the issue.</p>
<p>Having lived in Cameroon for the last two years I’m more than familiar with surfing on a poor unreliable connection and it staggers me that so few Cameroonian companies have made an effort to improve the user experience for the majority of people who visit their websites over these slow connections. Internet users in Cameroon either have their own 128 kbps “broadband” connection or they are at an Internet cafÃ© that shares a slow connection between their users (who are all on Facebook and YouTube competing for the bandwidth available). Some are using USBÂ dongles to access mobile data networks, but as none of the operators have a 3G license users are stuck at slower GPRS speeds with patchy coverage.</p>
<hr />
<p><strong>The ISPs</strong></p>
<p>The major ISPs in Cameroon today are:</p>
<ul>
<li><a href="http://www.camtel.cm/" target="_blank"><strong>Camtel</strong></a> — the state-owned incumbent who has a monopoly on all the fibre in the country and the <a href="http://en.wikipedia.org/wiki/SAT-3/WASC_(cable_system)" target="_blank">SAT3 cable</a>, all other ISPs must buy bandwidth from Camtel. Camtel provides Internet access via ADSL or over Wireless using CDMA.</li>
<li><a href="http://www.mtn.cm/" target="_blank"><strong>MTN</strong></a> — the mobile operator with the largest market share, providing Internet through GPRS, wireless hotspots and WiMax.</li>
<li><a href="http://www.orange.cm/" target="_blank"><strong>Orange</strong></a> — the second largest mobile operator, providing Internet through GPRS and WiMax.</li>
<li><a href="http://www.ringo.cm/" target="_blank"><strong>Ringo</strong></a> — they claim to have more bandwidth available than their competitors (apart from Camtel). Ringo is using proprietary SCDMA based McWill technology from XinWei in China and have also started to provide wireless hotspots in the major cities.</li>
<li><a href="http://www.matrixtelecoms.com/" target="_blank"><strong>Matrix Telecoms</strong></a> — ISP using wireless technology to provide access.</li>
<li><a href="http://www.creolink.cm/" target="_blank"><strong>Creolink</strong></a> — uses cable to provide access to their customers.</li>
</ul>
<p>I’ve tried to summarise the cheapest options for consumers from each of these ISPs in the table below.<br />
[table “2” seems to be empty /]<br />
</p>
<p>As you can see 128 kbps is pretty typical, even if some providers claim to have faster speeds the actual speed is closer to 128 kbps in real world conditions. Price wise they are all pretty similar, though it’s quite a difference from the prices we are used to paying in Europe! For example, from <a href="http://shop.virginmedia.com/broadband.html" target="_blank">Virgin</a> in the UK you can pay â‚¬15 a month forÂ a claimed 10 Mbps.</p>
<hr />
<p><strong>Analysis and Results</strong></p>
<p>So given all of this I thought I would do a comparative analysis of the major Cameroonian ISP’s websites to see how they actually fared on a typical 128 kbps connection. I used a combination of <a href="http://forums.macrumors.com/showthread.php?t=333657" target="_blank">pipes and the ipfw command on my mac</a> (for bandwidth simulation), <a href="http://code.google.com/speed/page-speed/docs/extension.html" target="_blank">Page Speed</a>/<a href="http://developer.yahoo.com/yslow/" target="_blank">YSlow</a> plugins for <a href="http://www.mozilla.com/firefox/" target="_blank">Firefox</a> and the developer tools in <a href="http://www.google.com/chrome" target="_blank">Google Chrome</a> to measure the page load results. The tools used and approach wasn’t totally scientific but they give a pretty good indication of real performance. If you are interested in running this test yourself <a href="http://www.aptivate.org/" target="_blank">Aptivate</a> have a great <a href="http://blog.aptivate.org/2010/01/23/make-sure-your-apps-work-in-the-field/" target="_blank">blog post of how to do this</a>. The metrics I measured were:</p>
<ul>
<li>Page load time, empty cache and primed cache</li>
<li>Page size, empty cache and primed cache</li>
<li>Number of HTTP Requests, empty cache and primed cache</li>
<li>Page Speed Score</li>
<li>YSlow Grade</li>
</ul>
<p>The table below details the results.</p>

<table id="wp-table-reloaded-id-3-no-1" class="wp-table-reloaded wp-table-reloaded-id-3">
<thead>
	<tr class="row-1 odd">
		<th class="column-1">Website</th><th class="column-2">Page load time</th><th class="column-3">Page size</th><th class="column-4">Number of HTTP Requests</th><th class="column-5">Page Speed Score</th><th class="column-6">YSlow Grade</th>
	</tr>
</thead>
<tbody>
	<tr class="row-2 even">
		<td class="column-1">http://www.matrixtelecoms.com/</td><td class="column-2">15s / 4.5s</td><td class="column-3">587K / 6.9K</td><td class="column-4">30 / 2</td><td class="column-5">86</td><td class="column-6">88</td>
	</tr>
	<tr class="row-3 odd">
		<td class="column-1">http://www.camtel.cm/</td><td class="column-2">25s (50s) / 6s</td><td class="column-3">339K / 0.0K</td><td class="column-4">22 / 22</td><td class="column-5">87</td><td class="column-6">84</td>
	</tr>
	<tr class="row-4 even">
		<td class="column-1">http://www.mtn.cm/</td><td class="column-2">28s / 7s</td><td class="column-3">191K / 41.6K</td><td class="column-4">20 / 20</td><td class="column-5">76</td><td class="column-6">80</td>
	</tr>
	<tr class="row-5 odd">
		<td class="column-1">http://www.orange.cm/</td><td class="column-2">44s / 10s</td><td class="column-3">424K / 37.7K</td><td class="column-4">56 / 56</td><td class="column-5">75</td><td class="column-6">81</td>
	</tr>
	<tr class="row-6 even">
		<td class="column-1">http://www.ringo.cm/</td><td class="column-2">66s / 9s</td><td class="column-3">746K / 10.9K</td><td class="column-4">69 / 69</td><td class="column-5">65</td><td class="column-6">66</td>
	</tr>
	<tr class="row-7 odd">
		<td class="column-1">http://www.creolink.cm/</td><td class="column-2">66s / 21s</td><td class="column-3">2171K / 96.8K</td><td class="column-4">123 / 108</td><td class="column-5">70</td><td class="column-6">65</td>
	</tr>
</tbody>
</table>
<span class="wp-table-reloaded-table-description-id-3 wp-table-reloaded-table-description">A comparison of website performance of the major ISPs in Cameroon over a simulated 128kbps connection.<br />
Note 1: Where two figures are given this is for the scenarios of an empty cache and then a primed cache.<br />
Note 2: Page Speed and YSlow scores are out of 100.<br />
Note 3: When the cache is empty both Camtel and Creolinks sites load at the time stated but keep loading flash content in the background consuming further bandwidth.<br />
Note 4: The Ringo site had 26 broken links or errors that keep the browser trying to render long after the page was loaded.<br />
Note 5: Though the HTML of the Creolink site loads quickly, flash keeps the page loading until it has downloaded over 2 MB of content.</span>

<p>On the whole the results are pretty disappointing and show just how out of touch with their users the ISPs really are, Matrix does best with a page load time of 15 seconds, not too bad but they still have room for improvement, in comparison it takes 10 seconds to load <a href="http://www.google.cm/" target="_blank">www.google.cm</a>’s 174K page when the cache is empty and 1 second when primed. The results for the other websites go from bad to worse to incredible!</p>
<p>What is really frightening about these results is that the slowest loading sites took nearly a minute or more, surely none of their customers spend that long waiting for the sites to load or much time browsing on their pages. The big culprit in all of this is of course Flash! As far as I’m concerned it just isn’t a technology that should be used on websites, especially in low-bandwidth situations. Usually countries where bandwidth is very low the PCs being used to the access the Internet are old and slow and Flash causes even more problems as it hogs CPU, a double whammy of user pain.</p>
<p>Flash used on these sites to promote the ISP’s products, however because they take so long to display the user has usually moved on by the time they load so they don’t even achieve the aim that justified Flash in the fist place.</p>
<p>One interesting point to note is that though MTN’s site has a relatively small size in comparison to some of the other sites, with very few HTTP requests, they still take a long time to load because they redirect the browser several times, this significantly increases the total time it takes to load the page.</p>
<p>All the sites tested could improve their page load times by taking the recommended steps in the Page Speed and YSlow plugins, removing errors and broken HTML and mostly by removing Flash.</p>
<hr />
<p><strong>Conclusion</strong></p>
<p>In conclusion we can see that most Internet Service Providers in Cameroon seem to be out of touch with their customers and pay little attention to the user experience on their websites AND Flash is very bad in low-bandwidth situations!</p>
<p><em>Does a website reflect a company’s treatment of their customers in real life? I’m curious to hear what your experience is, please leave a comment below.</em></p>
<img src="http://feeds.feedburner.com/~r/tenfourty/~4/HPKOQmCvbYA" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://tenfourty.com/2010/11/19/do-cameroonian-isps-care-about-their-customers/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://tenfourty.com/2010/11/19/do-cameroonian-isps-care-about-their-customers/</feedburner:origLink></item>
		<item>
		<title>How to Optimise WordPress Performance for Search Ranking</title>
		<link>http://feedproxy.google.com/~r/tenfourty/~3/ww1TJyiv6U4/</link>
		<comments>http://tenfourty.com/2010/11/17/how-to-optimise-wordpress-performance-for-search-ranking/#comments</comments>
		<pubDate>Wed, 17 Nov 2010 08:00:17 +0000</pubDate>
		<dc:creator>Jeremy Brown</dc:creator>
				<category><![CDATA[Blog Posts]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[How To]]></category>
		<category><![CDATA[Search]]></category>
		<category><![CDATA[Search Ranking]]></category>
		<category><![CDATA[Speed]]></category>
		<category><![CDATA[W3 Total Cache]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[WP Super Cache]]></category>

		<guid isPermaLink="false">http://tenfourty.com/?p=56</guid>
		<description><![CDATA[Google says that they use the performance of your website as part of your search ranking: You may have heard that here at Google we’re obsessed with speed, inÂ our products andÂ on the web. As part of that effort, today we’re including a new signal in our search ranking algorithms: website speed. Site speed reflects how [...]]]></description>
				<content:encoded><![CDATA[<p>Google says that <a href="http://googlewebmastercentral.blogspot.com/2010/04/using-site-speed-in-web-search-ranking.html" target="_blank">they use the performance of your website</a> as part of your search ranking:</p>
<blockquote><p>You may have heard that here at Google we’re obsessed with speed, inÂ our products andÂ on the web. As part of that effort, today we’re including a new signal in our search ranking algorithms: website speed. Site speed reflects how quickly a website responds to web requests.</p>
<p>Speeding up websites is important â€” not just to site owners, but to all Internet users. Faster sites create happy users and we’ve seen in ourÂ <a href="http://googleresearch.blogspot.com/2009/06/speed-matters.html" target="_blank">internal studies</a> that when a site responds slowly, visitors spend less time there. But faster sites don’t just improve user experience; recent data shows that improving site speed alsoÂ <a href="http://radar.oreilly.com/2009/07/velocity-making-your-site-fast.html" target="_blank">reduces operating costs</a>. Like us, our users place a lot of value in speed â€” that’s why we’ve decided to take site speed into account in our search rankings. We use a variety of sources to determine the speed of a site relative to other sites.</p></blockquote>
<p><a href="http://wordpress.org/extend/plugins/w3-total-cache/faq/" target="_blank">Here</a> are more good reasons why speed matters:</p>
<blockquote><p>Speed is among the most significant success factors web sites face. In fact, your site’s speed directly affects your income (revenue) â€” it’s a fact. Some high traffic sites conducted research and uncovered the following:</p>
<ul>
<li>Google.com:Â <strong>+500 ms</strong> (speed decrease) -&gt;Â <strong>–20% traffic loss</strong> [<a href="http://home.blarg.net/~glinden/StanfordDataMining.2006-11-29.ppt">1</a>]</li>
<li>Yahoo.com:Â <strong>+400 ms</strong> (speed decrease) -&gt;Â <strong>–5–9% full-page traffic loss</strong>(visitor left before the page finished loading) [<a href="http://www.slideshare.net/stoyan/yslow-20-presentation">2</a>]</li>
<li>Amazon.com:Â <strong>+100 ms</strong> (speed decrease) -&gt;Â <strong>–1% sales loss</strong> [<a href="http://home.blarg.net/~glinden/StanfordDataMining.2006-11-29.ppt">1</a>]</li>
</ul>
<p>A thousandth of a second is not a long time, yet the impact is quite significant. Even if you’re not a large company (or just hope to become one), a loss is still a loss.</p></blockquote>
<p>So how do you speed up your WordPress website to get that extra edge in search rankings and give a better experience to your users? Well you install a caching plugin of course! However not all caching plugins are created equal. For years <a href="http://wordpress.org/extend/plugins/wp-super-cache/" target="_blank">WP Super Cache</a> has been my weapon of choice because it is simple to install, very fast and is being constantly developed and improved.</p>
<p>One thing always annoyed me though, when I ran any of the performance analysis plugins like <a href="http://code.google.com/speed/page-speed/docs/extension.html" target="_blank">Page Speed</a> and <a href="http://developer.yahoo.com/yslow/" target="_blank">YSlow</a> in Firefox or the built in Webkit developer tools in Chrome and Safari, my sites still weren’t scoring top marks even though caching was fully on. This really bugged me as I’m such a perfectionist! I just hated to see those red results in the Page Speed report.</p>
<p>Some of the things that always came up when I looked at the generated reports included:</p>
<ul>
<li>Make fewer HTTP requests</li>
<li>Add Expires headers</li>
<li>Compress components with gzip</li>
<li>Make JavaScript and CSS external</li>
<li>Use a Content Delivery Network (CDN)</li>
<li>Configure entity tags (ETags)</li>
<li>Use cookie-free domains</li>
</ul>
<p>When I finally came across <a href="http://wordpress.org/extend/plugins/w3-total-cache/" target="_blank">W3 Total Cache</a> I knew I’d finally found the solution to all of this. After making the switch from WP Super Cache to W3 Total Cache I know I’ll be doing this for all WordPress implementations I do in the future. Don’t get me wrong though, for a simple low traffic site WP Super Cache is probably the way to go every time for it’s simplicity and the lack of technical skills required to install and get it up and running. However if your site has a lot of traffic or you want to improve your websites performance by an order of magnitude then I would recommend switching to W3 Total Cache. It requires a little bit more technical knowledge, but it is well worth it.</p>
<p>We were running WP Super Cache (fully optimised) on our site <a href="http://limbelabssolutions.com/" target="_blank">limbelabssolutions.com</a> before switching to W3 Total Cache, the stats below speak for themselves.</p>

<table id="wp-table-reloaded-id-1-no-1" class="wp-table-reloaded wp-table-reloaded-id-1">
<thead>
	<tr class="row-1 odd">
		<th class="column-1"></th><th class="column-2">Page Size (bytes)</th><th class="column-3">Total Requests</th><th class="column-4">Grade (0–100)</th><th class="column-5">Load Time (ms)</th>
	</tr>
</thead>
<tbody>
	<tr class="row-2 even">
		<td class="column-1">Before</td><td class="column-2">238781</td><td class="column-3">24</td><td class="column-4">75</td><td class="column-5">1960</td>
	</tr>
	<tr class="row-3 odd">
		<td class="column-1">After</td><td class="column-2">182121</td><td class="column-3">12</td><td class="column-4">94</td><td class="column-5">1299</td>
	</tr>
</tbody>
</table>

<p>This could make all the difference to your server if you get a lot of traffic or want to be prepared for a sudden spike in traffic and of course improve your search ranking at the same time.</p>
<p>Here are the steps I recommend you take before installing W3 Total Cache, including some gotchas to watch out for.</p>
<ul>
<li>Benchmark your site before, during and after to understand the impact of your changes. There are many tools out there that you can use. I would recommend a combination of the following:
<ul>
<li>Use Google Webmaster Tools, they have some nice stats on crawling your site, page load times and page sizes.</li>
<li>Use the Page Speed and YSlow plugins for Firefox to profile your site.</li>
<li>Safari and Chrome have a great Webkit profiler built into the developer menu.</li>
<li>There are some online tools that you can use, some I like areÂ <a href="http://www.showslow.com/" target="_blank">www.showslow.com</a>,Â <a href="http://www.webpagetest.org/" target="_blank">www.webpagetest.org</a>,Â <a href="http://tools.pingdom.com/" target="_blank">tools.pingdom.com</a></li>
</ul>
</li>
<li>Remove all existing caching plugins AND delete them. I didn’t do this and it cause me endless problems until I realised what was going wrong.</li>
<li>Install the W3 Total Cache Plugin, <a href="http://wordpress.org/extend/plugins/w3-total-cache/installation/" target="_blank">comprehensive instructions are here</a>. Read them before you start as there are a few extra essential steps that differ from the norm and they will throw you if you don’t RTFM. <a href="http://nimopress.com/pressed/blog-building-how-to-dramatically-speed-up-your-wordpress-site-with-w3-total-cache/" target="_blank">Here’s a good tutorial</a> on how to do it.</li>
<li>I used our own simple Content Delivery Network, which was very easy to setup (see the the tutorial link above). One comment I would have on the CDN is that I wouldn’t host your minified CSS/JS on the CDN as they aren’t gzip compressed when served up, if you keep them on your main site then W3 Total Cache will serve them gziped. I’m running all this in a shared hosting environment, if I had a dedicated server I would have more control. You will also need to <a href="http://codex.wordpress.org/Editing_wp-config.php#Set_Cookie_Domain" target="_blank">set your WordPress cookie domain</a> in your wp-config.php fileÂ if you use this setup.</li>
</ul>
<p>So there you have it, definitely use W3 Total Cache over WP Super Cache if you want to get that extra edge. However it is a bit more complicated to install and keep running.</p>
<img src="http://feeds.feedburner.com/~r/tenfourty/~4/ww1TJyiv6U4" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://tenfourty.com/2010/11/17/how-to-optimise-wordpress-performance-for-search-ranking/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://tenfourty.com/2010/11/17/how-to-optimise-wordpress-performance-for-search-ranking/</feedburner:origLink></item>
		<item>
		<title>tenfourty.com on the Way Back Machine</title>
		<link>http://feedproxy.google.com/~r/tenfourty/~3/W8480V5NkJ4/</link>
		<comments>http://tenfourty.com/2010/11/14/tenfourty-com-on-the-way-back-machine/#comments</comments>
		<pubDate>Sun, 14 Nov 2010 15:06:53 +0000</pubDate>
		<dc:creator>Jeremy Brown</dc:creator>
				<category><![CDATA[Blog Posts]]></category>

		<guid isPermaLink="false">http://tenfourty.com/?p=52</guid>
		<description><![CDATA[When I was thinking of what this site used to look like I thought of the Internet Archive’s Way Back Machine and funny enough I found tenfourty.com on it. Who would have thought that a lowly personal site would have a snapshot kept for posterity, hardly worth keeping around I would have thought. It seems [...]]]></description>
				<content:encoded><![CDATA[<p>When I was thinking of what this site used to look like I thought of the <a href="http://www.archive.org/web/web.php" target="_blank">Internet Archive’s Way Back Machine</a> and funny enough I found <a href="http://web.archive.org/web/*/tenfourty.com" target="_blank">tenfourty.com</a> on it. Who would have thought that a lowly personal site would have a snapshot kept for posterity, hardly worth keeping around I would have thought.</p>
<p>It seems that the <a href="http://web.archive.org/web/20060629205636/http://tenfourty.com/" target="_blank">29th of June 2006</a> was the last time there was content on the site. I’m sure I have some backups of all those old posts — should I try andÂ resurrectÂ them?</p>
<img src="http://feeds.feedburner.com/~r/tenfourty/~4/W8480V5NkJ4" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://tenfourty.com/2010/11/14/tenfourty-com-on-the-way-back-machine/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://tenfourty.com/2010/11/14/tenfourty-com-on-the-way-back-machine/</feedburner:origLink></item>
		<item>
		<title>Relaunching tenfourty.com</title>
		<link>http://feedproxy.google.com/~r/tenfourty/~3/L6cuccu3qeo/</link>
		<comments>http://tenfourty.com/2010/11/13/relaunching-tenfourty-com/#comments</comments>
		<pubDate>Sat, 13 Nov 2010 12:31:34 +0000</pubDate>
		<dc:creator>Jeremy Brown</dc:creator>
				<category><![CDATA[Blog Posts]]></category>

		<guid isPermaLink="false">http://tenfourty.com/?p=1</guid>
		<description><![CDATA[This is my first blog post in quite some time. I used to have a personal website and blog on tenfourty.com quite some time ago, but I got really busy at work and stopped updating it before eventually taking it downÂ when the content got incredibly stale. Since then myÂ personal domain, tenfourty.com, has been empty for [...]]]></description>
				<content:encoded><![CDATA[<p>This is my first blog post in quite some time. I used to have a personal website and blog on tenfourty.com quite some time ago, but I got really busy at work and stopped updating it before eventually taking it downÂ when the content got incredibly stale. Since then myÂ personal domain, tenfourty.com, has been empty for years, not even a placeholder. I’ve recently had a bit of free time so I thought I would setup a simple site using WordPress.</p>
<p>I probably won’t update the site too often so please don’t beÂ disappointedÂ if I don’t blog too much, however it is here and I guess I willÂ occasionally write stuff or update the site.</p>
<p>You can read more <a href="/about/" target="_self">about me</a>, or view <a href="/cv/" target="_self">my CV</a> (dynamically updated from my Linked In account).</p>
<img src="http://feeds.feedburner.com/~r/tenfourty/~4/L6cuccu3qeo" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://tenfourty.com/2010/11/13/relaunching-tenfourty-com/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://tenfourty.com/2010/11/13/relaunching-tenfourty-com/</feedburner:origLink></item>
	</channel>
</rss>
