<?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>Straw Dogs &#187; Category List @ Straw Dogs</title>
	<atom:link href="http://www.straw-dogs.co.uk/category/php/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.straw-dogs.co.uk</link>
	<description>The Tao of Ruby, Python, and....Straw Dogs?</description>
	<lastBuildDate>Tue, 15 Nov 2011 06:47:43 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>PHP Sinatra Clones (Microframeworks)</title>
		<link>http://www.straw-dogs.co.uk/10/19/php-sinatra-clones/</link>
		<comments>http://www.straw-dogs.co.uk/10/19/php-sinatra-clones/#comments</comments>
		<pubDate>Tue, 19 Oct 2010 21:20:54 +0000</pubDate>
		<dc:creator>KingOfThisHereBlog</dc:creator>
				<category><![CDATA[php]]></category>
		<category><![CDATA[frameworks]]></category>
		<category><![CDATA[padrino]]></category>
		<category><![CDATA[ruby]]></category>
		<category><![CDATA[sinatra]]></category>

		<guid isPermaLink="false">http://www.straw-dogs.co.uk/?p=599</guid>
		<description><![CDATA[First off &#8211; Holy shit. April was the last time I posted on this blog. That&#8217;s got to be the biggest break in posting I&#8217;ve ever had since this blog was created. No idea why but I have shifted jobs and had a lot of work on managing a new toy shop (yes I know [...]]]></description>
			<content:encoded><![CDATA[<p><em>First off &#8211; Holy shit. April was the last time I posted on this blog. That&#8217;s got to be the biggest break in posting I&#8217;ve ever had since this blog was created. No idea why but I have shifted jobs and had a lot of work on managing a new toy shop (yes I know &#8211; not tech related). Also working on more affiliate marketing. So I dont&#8217; get that mixing in here I&#8217;ve created a separate </em><a href="http://www.tintophat.com"><em>blog</em></a><em> and </em><a href="http://twitter.com/TinTopHat"><em>Twitter</em></a><em> for AM and search related stuff.</em></p>
<p><strong>Now onto the meat of this posting</strong> which was inspired as I&#8217;m currently looking for a good PHP framework to do a new project. I recently used Kohana 3 at on a project for a client but I needed something lighter and having used <a href="http://www.sinatrarb.com/"><strong>Sinatra</strong></a> and <strong><a href="http://www.padrinorb.com/">Padrino</a></strong> previously but needing it PHP based I did the next natural step &#8211; searched for PHP Sinatra clones.</p>
<p>So I&#8217;ve got the following shortlist of PHP Sinatra clones:</p>
<h3>Limonade</h3>
<p><img style="border: 10px solid #ccc; width: 400px;" src="http://www.straw-dogs.co.uk/wp-content/uploads/2010/10/limonade.png" alt="limonade.png" /></p>
<p>By far the most mature since being started in early 2009.</p>
<ul>
<li><strong>Homepage:</strong> <a href="http://www.limonade-php.net/">limonade-php.net</a></li>
<li><strong>Source:</strong> <a href="http://github.com/sofadesign/limonade/">github.com/sofadesign/limonade/</a></li>
<li><strong>Twitter:</strong> <a href="http://twitter.com/limonadephp">twitter.com/limonadephp</a></li>
<li><strong>Reviews:</strong> None found!</li>
</ul>
<h3>Fat Free Framework</h3>
<p><img style="border: 10px solid #ccc; width: 400px;" src="http://www.straw-dogs.co.uk/wp-content/uploads/2010/10/fat-free.png" alt="Fat Free Framework" /></p>
<p>Not as old as Limonade (released middle of 2010) but already developing quite a healthy community with numerous plugins and extensions being developed. I like where this framework is going after all I&#8217;ve played with far too many projects to know that documentation and community are by far the most important areas.</p>
<p>The plugins on this project are excellent. There&#8217;s everything form API wrappers for Twitter, Yahoo and Akismet to l18n extensions.</p>
<ul>
<li><strong>Homepage:</strong> <a href="http://fatfree.sourceforge.net/">fatfree.sourceforge.net/</a></li>
<li><strong>Source:</strong> <a href="http://sourceforge.net/projects/fatfree/">sourceforge.net/projects/fatfree/</a> (ugh &#8211; why can&#8217;t they use GitHub or BitBucket?)</li>
<li><strong>Twitter:</strong> None!</li>
<li><strong>Reviews:</strong> <a href="http://jessebsmith.com/php-and-mysql/fat-free-framework-review">Sep 2010</a> <a href="http://www.phparch.com/2010/02/26/fat-free-a-new-php-framework/">Feb 2010</a> <a href="http://greenash.net.au/thoughts/2010/05/taking-php-fat-free-framework-for-a-test-drive/">May 2010</a></li>
</ul>
<h3>Slim</h3>
<p><a href="http://slim.joshlockhart.com/index.html"><img style="border: 10px solid #ccc; width: 400px;" title="Slim Framework" src="http://www.straw-dogs.co.uk/wp-content/uploads/2010/10/slim-framework.jpg" alt="Slim Framework" /></a></p>
<p>Originally built as a way of creating simple RESTful apps using PHP and it excels nicely at this. This is what the documentation is most geared towards but you can use it as a standard non-RESTy web framework if you wish.</p>
<ul>
<li><strong>Homepage: </strong><a href="http://slim.joshlockhart.com">slim.joshlockhart.com</a></li>
<li><strong>Source: </strong><a href="http://github.com/codeguy/Slim/">http://github.com/codeguy/Slim/</a></li>
<li><strong>Twitter:</strong> <a href="http://twitter.com/codeguy">http://twitter.com/codeguy</a></li>
<li><strong>Reviews:</strong> None found!</li>
</ul>
<h3>Fitzgerald</h3>
<p><img style="border: 10px solid #ccc; width: 400px;" src="http://www.straw-dogs.co.uk/wp-content/uploads/2010/10/fitzgerald.png" alt="fitzgerald.png" /></p>
<p>The oldest of them all but also strangely the least active. Whereas the other two projects above have healthy sites with communities and buzz surrounding them. Fitz just has a blog post and a Github repo. Still its a nice framework and worth a look.</p>
<ul>
<li><strong>Homepage:</strong> <a href="http://autonomousmachine.com/2008/11/21/fitzgerald-a-sinatra-clone-in-php">blog post</a></li>
<li><strong>Source:</strong> <a href="http://github.com/jim/fitzgerald">github.com/jim/fitzgerald</a></li>
<li><strong>Twitter:</strong> None!</li>
<li><strong>Reviews:</strong> None found!</li>
</ul>
<p>As you can probably guess I&#8217;d pip for <strong>Fat Free</strong>. Although its the youngest of the bunch its actually the one with the biggest community and most active development. With the plugins too it makes for a nice package. Its a shame the other 2 haven&#8217;t taken off to the same extent but I think thats as much down to the less cohesive nature of the PHP community as faults in those projects.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.straw-dogs.co.uk/10/19/php-sinatra-clones/feed/</wfw:commentRss>
		<slash:comments>16</slash:comments>
		</item>
		<item>
		<title>Insight, Facts and Hmmms</title>
		<link>http://www.straw-dogs.co.uk/11/30/insight-facts-and-hmmms/</link>
		<comments>http://www.straw-dogs.co.uk/11/30/insight-facts-and-hmmms/#comments</comments>
		<pubDate>Sun, 30 Nov 2008 13:40:39 +0000</pubDate>
		<dc:creator>KingOfThisHereBlog</dc:creator>
				<category><![CDATA[general]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[python]]></category>
		<category><![CDATA[rails]]></category>
		<category><![CDATA[ruby]]></category>
		<category><![CDATA[silliness]]></category>
		<category><![CDATA[django]]></category>
		<category><![CDATA[google]]></category>
		<category><![CDATA[search]]></category>

		<guid isPermaLink="false">http://www.straw-dogs.co.uk/?p=339</guid>
		<description><![CDATA[I&#8217;m a big fan of Google Insight.  Mainly because it burns time when I&#8217;m bored and provides lots of &#8220;hmm&#8221; moments.  Its a service Google provide that lets you see search volume against a range of other factors such as geography, time, etc.  I thought I&#8217;d put a few together that may be of interest [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m a big fan of Google Insight.  Mainly because it burns time when I&#8217;m bored and provides lots of &#8220;hmm&#8221; moments.  Its a service Google provide that lets you see search volume against a range of other factors such as geography, time, etc.  I thought I&#8217;d put a few together that may be of interest to you all.</p>
<h3>Django is HUGE in Russia</h3>
<p>I have no idea why this is.  Maybe because Django sounds slightly Russian?  No thats ridiculous.  But just look at those numbers &#8211; compared to the US and the UK (doesn&#8217;t appear) its huge!</p>
<div id="attachment_340" class="wp-caption aligncenter" style="width: 510px"><a href="http://www.straw-dogs.co.uk/wp-content/uploads/2008/11/django_russia.png"><img class="size-full wp-image-340" title="Django Russia" src="http://www.straw-dogs.co.uk/wp-content/uploads/2008/11/django_russia.png" alt="Why do the Russians Love Django?" width="500" height="181" /></a><p class="wp-caption-text">Why do the Russians Love Django?</p></div>
<h3>Rails is in Decline</h3>
<p>The Google searches tell no lies.  It seems that Rails is in decline while Django is on a steady and solid incline.  Vive le Django.</p>
<div id="attachment_341" class="wp-caption aligncenter" style="width: 510px"><a href="http://www.straw-dogs.co.uk/wp-content/uploads/2008/11/rails_decline.png"><img class="size-full wp-image-341" title="Rails Decline" src="http://www.straw-dogs.co.uk/wp-content/uploads/2008/11/rails_decline.png" alt="" width="500" height="191" /></a><p class="wp-caption-text">My Heart Bleeds</p></div>
<h3>Everyone Forgot How to Use PHP&#8217;s substr Function</h3>
<p>A collective dose of amnesia seems to have struck the world as the search term &#8220;substr&#8221; seems to have had an 80% increase in recent years.</p>
<div id="attachment_343" class="wp-caption aligncenter" style="width: 464px"><a href="http://www.straw-dogs.co.uk/wp-content/uploads/2008/11/substr.png"><img class="size-full wp-image-343" title="substr" src="http://www.straw-dogs.co.uk/wp-content/uploads/2008/11/substr.png" alt="Surely its Not Hard?" width="454" height="297" /></a><p class="wp-caption-text">Surely its Not Hard?</p></div>
<h3>Scala? Don&#8217;t bother.</h3>
<p>Scala was big a few months back with a sudden influx of tutorials and discourse posted to dZone.  Unfortunately looking at the graph its pointless bothering with it.  On top of that <a href="http://neopythonic.blogspot.com/2008/11/scala.html">Guido doesn&#8217;t think much of it either</a> &#8211; and he knows his languages.</p>
<div id="attachment_344" class="wp-caption aligncenter" style="width: 510px"><a href="http://www.straw-dogs.co.uk/wp-content/uploads/2008/11/scala_rubbish.png"><img class="size-full wp-image-344" title="Scala Rubbish" src="http://www.straw-dogs.co.uk/wp-content/uploads/2008/11/scala_rubbish.png" alt="See that Bottom Feeder?  Scala." width="500" height="218" /></a><p class="wp-caption-text">See that Bottom Feeder?  Scala.</p></div>
<h3>Canadians Love Merb</h3>
<p>I like Canadians.  They were never quite so anti-British as the Americans.  They still have our Queen as their head of State and have none of the beligerant crankiness of republicans in America and Australia.  Its no suprise then that they like Merb &#8211; a lot.  Merb is of course &#8216;Rails-that-works&#8217;.</p>
<div id="attachment_345" class="wp-caption aligncenter" style="width: 510px"><a href="http://www.straw-dogs.co.uk/wp-content/uploads/2008/11/canada_merb.png"><img class="size-full wp-image-345" title="Canada Loves Merb" src="http://www.straw-dogs.co.uk/wp-content/uploads/2008/11/canada_merb.png" alt="God Save the Queen" width="500" height="179" /></a><p class="wp-caption-text">God Save the Queen</p></div>
<p>Well I&#8217;m sure you&#8217;ve all enjoyed these stunning eye-openers.  If I find anymore then I&#8217;ll be sure to let you all know.  In the mean time &#8211; have a good day.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.straw-dogs.co.uk/11/30/insight-facts-and-hmmms/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Open Source Asterisk CRM Platform</title>
		<link>http://www.straw-dogs.co.uk/11/14/open-source-asterisk-crm-platform/</link>
		<comments>http://www.straw-dogs.co.uk/11/14/open-source-asterisk-crm-platform/#comments</comments>
		<pubDate>Fri, 14 Nov 2008 08:34:11 +0000</pubDate>
		<dc:creator>KingOfThisHereBlog</dc:creator>
				<category><![CDATA[asterisk]]></category>
		<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://www.straw-dogs.co.uk/11/14/open-source-asterisk-crm-platform/</guid>
		<description><![CDATA[Built in PHP this Asterisk CRM looks pretty wicked.  Its an open source Customer Relationship Management application which hooks into an Asterisk PBX.  It looks nicer than I sound though so I&#8217;ll shut up and slap you with some pretty pictures&#8230; The Info Link]]></description>
			<content:encoded><![CDATA[<p>Built in PHP this Asterisk CRM looks pretty wicked.  Its an open source Customer Relationship Management application which hooks into an Asterisk PBX.  It looks nicer than I sound though so I&#8217;ll shut up and slap you with some pretty pictures&#8230;</p>
<p><img style="max-width: 800px;" title="Asterisk PBX CRM" src="http://www.straw-dogs.co.uk/wp-content/uploads/2008/11/confirm-1.jpg" alt="Asterisk PBX CRM" width="457" height="255" /></p>
<p><img style="max-width: 800px;" src="http://www.straw-dogs.co.uk/wp-content/uploads/2008/11/astercrm-add.jpg" alt="Asterisk PBX CRM" width="459" height="240" /></p>
<p><strong><a href="http://www.voip-info.org/wiki/view/asterCRM">The Info Link</a></strong></p>
]]></content:encoded>
			<wfw:commentRss>http://www.straw-dogs.co.uk/11/14/open-source-asterisk-crm-platform/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Using the Asterisk Manager PHP API</title>
		<link>http://www.straw-dogs.co.uk/07/19/using-the-asterisk-manager-php-api/</link>
		<comments>http://www.straw-dogs.co.uk/07/19/using-the-asterisk-manager-php-api/#comments</comments>
		<pubDate>Sat, 19 Jul 2008 14:47:58 +0000</pubDate>
		<dc:creator>KingOfThisHereBlog</dc:creator>
				<category><![CDATA[asterisk]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[api]]></category>
		<category><![CDATA[library]]></category>
		<category><![CDATA[pear]]></category>
		<category><![CDATA[projects]]></category>

		<guid isPermaLink="false">http://www.straw-dogs.co.uk/?p=148</guid>
		<description><![CDATA[Well it&#8217;s been a while since the PHP Asterisk Manager API was released and I&#8217;ve yet to produce a clear and definitive example of its use.  So here goes. Prerequisites Your Asterisk server must be set up correctly before this API can &#8216;speak&#8217; to the server. First you&#8217;ll need to ensure the Manager interface is [...]]]></description>
			<content:encoded><![CDATA[<p>Well it&#8217;s been a while since the <a href="http://code.google.com/p/asterisk-php-api/">PHP Asterisk Manager API</a> was released and I&#8217;ve yet to produce a clear and definitive example of its use.  So here goes.</p>
<h2>Prerequisites</h2>
<p>Your Asterisk server must be set up correctly before this API can &#8216;speak&#8217; to the server.</p>
<ul>
<li> First you&#8217;ll need to ensure the Manager interface is active and you&#8217;ve set the correct permissions (If you&#8217;d like this explaining please leave a comment).</li>
<li>Secondly make sure you are setup with the ability for two endpoints to call each other.  This won&#8217;t work if you have one phone on the server.</li>
</ul>
<h2>Install</h2>
<p>Firstly you&#8217;ll need to get hold of the library and there&#8217;s two routes to take.  You can either install via <a href="http://pear.php.net">PEAR</a> or simply checkout the source from the <a href="http://code.google.com/p/asterisk-php-api/">Google Project</a>:</p>
<p><tt>svn checkout <strong><em>http</em></strong>://asterisk-php-api.googlecode.com/svn/trunk/ asterisk-php-api</tt></p>
<h2>Originating a Call</h2>
<p>Once you&#8217;ve got it all ready you need to start your new file thats going to make use of it.  In this example I&#8217;m creating a simple dialler called: &#8220;call.php&#8221; which will take two GET variables, with one being the callee and one the caller.</p>
<pre lang="php">
<?php
/**
* To use this simply call it directly or via an Ajax call.  E.g.
* http://192.168.1.5/call.php?no=07943233397&#038;from=229
*/

require 'AsteriskManager.php';

$number   = str_replace(array(' ', '(', ')', '.', ','), '', $_GET['no']);  //I'm just cleaning the input here.
$from      = 'SIP/'.$_GET['from']; //The SIP handset of who's dialling the outside line
$context  = 'asteriskcontent'; //This is the context in your Asterisk dial plan that this call is made to
$cid        = $number;

//Setup basic parameters for the connection
$params = array(
  'server' => '192.168.1.5',
  'port' => '5038',
  'auto_connect' => true
);

//Initialise
$am = new Net_AsteriskManager($params);

//Login to the Asterisk Manager interface
$am->login('user', 'pass');

//Originate Call is one of the commands available and it causes a call to be made and connected between two endpoints.
$am->originateCall($number, $from, $context, $cid, 1, 30000);
?>
</pre>
<p>By looking at the comments above you should see how this works and the steps required.  If not then leave any comments and I&#8217;ll build on the above.  It&#8217;s sometimes difficult to know what people already know so apologies if this is too simple or complex.  <img src='http://www.straw-dogs.co.uk/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Later on I&#8217;ll show how to work with queues &#8211; adding, removing, listing, etc.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.straw-dogs.co.uk/07/19/using-the-asterisk-manager-php-api/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Asterisk Manager API [PHP]</title>
		<link>http://www.straw-dogs.co.uk/03/15/asterisk-manager-api-php/</link>
		<comments>http://www.straw-dogs.co.uk/03/15/asterisk-manager-api-php/#comments</comments>
		<pubDate>Sat, 15 Mar 2008 18:41:42 +0000</pubDate>
		<dc:creator>KingOfThisHereBlog</dc:creator>
				<category><![CDATA[asterisk]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[library]]></category>
		<category><![CDATA[pear]]></category>

		<guid isPermaLink="false">http://www.straw-dogs.co.uk/03/15/asterisk-manager-api-php/</guid>
		<description><![CDATA[Again with the PHP code! This time its a bit more exciting than a CakePHP component. If you&#8217;ve ever used Asterisk &#8211; an open source PBX &#8211; then you&#8217;ll know it comes with a manager interface which enables developers to send commands to the server to help administer the system and its connected peers and [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://www.straw-dogs.co.uk/wp-content/asterisk.gif" alt="Asterisk Logo" align="left" height="96" width="174" />Again with the PHP code!  This time its a bit more exciting than a <a href="http://www.straw-dogs.co.uk/03/03/cakephp-sms-component/">CakePHP component</a>.  If you&#8217;ve ever used <a href="http://www.asterisk.org">Asterisk</a> &#8211; an open source PBX &#8211; then you&#8217;ll know it comes with a manager interface which enables developers to send commands to the server to help administer the system and its connected peers and channels.</p>
<p><a href="http://www.straw-dogs.co.uk/asterisk-api-php/">Visit the blog page for more info on the new PHP interface.</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.straw-dogs.co.uk/03/15/asterisk-manager-api-php/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>CakePHP SMS Component</title>
		<link>http://www.straw-dogs.co.uk/03/03/cakephp-sms-component/</link>
		<comments>http://www.straw-dogs.co.uk/03/03/cakephp-sms-component/#comments</comments>
		<pubDate>Mon, 03 Mar 2008 23:05:10 +0000</pubDate>
		<dc:creator>KingOfThisHereBlog</dc:creator>
				<category><![CDATA[php]]></category>
		<category><![CDATA[cake]]></category>
		<category><![CDATA[cakephp]]></category>

		<guid isPermaLink="false">http://www.straw-dogs.co.uk/03/03/cakephp-sms-component/</guid>
		<description><![CDATA[I started this blog shortly after getting into Python after becoming fed up with PHP.  Then into Rails and it became (sort of) a Rails and Ruby blog.  I&#8217;ve now gone full circle back to my old school days of PHP and have been tinkering with CakePHP recently after getting a taste for MVC architecture [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://www.cakephp.org/img/cake-logo.png" style="margin: 10px 10px 0pt 0pt; float: left; width: 128px; height: 128px" title="CakePHP" alt="CakePHP" />I started this blog shortly after getting into Python after becoming fed up with PHP.  Then into Rails and it became (sort of) a Rails and Ruby blog.  I&#8217;ve now gone full circle back to my old school days of PHP and have been tinkering with <a href="http://www.cakephp.org">CakePHP</a> recently after getting a taste for MVC architecture working on Rails and Django &#8211; I&#8217;ve been very impressed so far.</p>
<p>Now to the nuts and bolts of the post: I&#8217;m releasing a <a href="http://bakery.cakephp.org/articles/view/sms-text-component">CakePHP component</a> which makes use of the <a href="http://www.clickatell.com">Clickatell</a> HTTP API to send SMS messages.</p>
<p>I&#8217;ll soon be putting up a tutorial with examples at the CakePHP Bakery which I&#8217;ll link to from this post soon!  Until then here&#8217;s the code for anyone who&#8217;s interested: <a href="http://code.google.com/p/clickatell-sms-cakephp/">Google Code page for Clickatell SMS Component</a></p>
<p>Comments, suggestions and feedback is very much welcomed.  There is already a large todo list as you&#8217;ll see but it will be getting crossed off in the next few weeks.</p>
<p>I&#8217;ll soon be releasing a CakePHP component for Asterisk to provide call origination from your <a href="http://www.cakephp.org">CakePHP</a> apps.<br />
<!-- technorati tags begin --></p>
<p style="font-size: 10px; text-align: right">Tags: <a href="http://technorati.com/tag/cakephp" rel="tag">cakephp</a>, <a href="http://technorati.com/tag/cake" rel="tag">cake</a>, <a href="http://technorati.com/tag/%20php" rel="tag"> php</a>, <a href="http://technorati.com/tag/%20component" rel="tag"> component</a></p>
<p><!-- technorati tags end --></p>
]]></content:encoded>
			<wfw:commentRss>http://www.straw-dogs.co.uk/03/03/cakephp-sms-component/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Rails Alternatives</title>
		<link>http://www.straw-dogs.co.uk/01/10/rails-alternatives/</link>
		<comments>http://www.straw-dogs.co.uk/01/10/rails-alternatives/#comments</comments>
		<pubDate>Thu, 10 Jan 2008 06:57:30 +0000</pubDate>
		<dc:creator>KingOfThisHereBlog</dc:creator>
				<category><![CDATA[php]]></category>
		<category><![CDATA[python]]></category>
		<category><![CDATA[rails]]></category>
		<category><![CDATA[ruby]]></category>
		<category><![CDATA[web technologies]]></category>
		<category><![CDATA[django]]></category>
		<category><![CDATA[mvc]]></category>
		<category><![CDATA[turbogears]]></category>
		<category><![CDATA[web]]></category>

		<guid isPermaLink="false">http://www.straw-dogs.co.uk/01/10/rails-alternatives/</guid>
		<description><![CDATA[After the recent turmoil I thought it may be worth pointing out a few alternatives to the Rails framework. So here&#8217;s 4 Ruby-based web framework alternatives for starters: Ramaze &#8211; Has no known bugs and claims excellent stability. Thems fighting words! Camping &#8211; A &#8216;micro-framework&#8217;, this is incredibly lightweight offering limited features but great efficiency [...]]]></description>
			<content:encoded><![CDATA[<p>After the recent turmoil I thought it may be worth pointing out a few alternatives to the <a href="http://www.rubyonrails.org">Rails</a> framework.  So here&#8217;s 4 Ruby-based web framework alternatives for starters:</p>
<ul>
<li><a href="http://ramaze.net/" style="font-weight: bold">Ramaze</a> &#8211; Has no known bugs and claims excellent stability.  Thems fighting words! <img src='http://www.straw-dogs.co.uk/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </li>
<li><a href="http://camping.rubyforge.org/files/README.html" style="font-weight: bold">Camping</a> &#8211; A &#8216;micro-framework&#8217;, this is incredibly lightweight offering limited features but great efficiency and speed.</li>
<li><a href="http://merbivore.com/" style="font-weight: bold">Merb</a> &#8211; One of the frameworks recommended by Zed this started as Mongrel + ERB, hence the name.  Its grown to be a very clean and efficient Ruby framework.</li>
<li><a href="http://hobocentral.net"><span style="font-weight: bold">Hobo</span></a> &#8211; Not a framework in its own right as its built on top of Rails but it offers a raft of extra functionality to ease and speed up development of your projects.</li>
</ul>
<p>You may also be interested in the following web frameworks in other languages:</p>
<ul>
<li><a href="http://www.cakephp.org/" style="font-weight: bold">Cake</a><span style="font-weight: bold"> (PHP)</span> &#8211; One of PHP&#8217;s most popular Rails alternatives.  More verbose than Rails but providing much of the same functionality.</li>
<li><a href="http://www.symfony-project.org/" style="font-weight: bold">Symfony</a><span style="font-weight: bold"> (PHP)</span> &#8211; This is becoming increasingly popular with employers looking for experienced PHP developers.</li>
<li><a href="http://www.djangoproject.com" style="font-weight: bold">Django</a><span style="font-weight: bold"> (Python)</span> &#8211; Hugely popular Python framework and although not the first its overtaken veteran frameworks like Turbogears to be the most popular Python in the box.</li>
<li><a href="http://www.turbogears.org/" style="font-weight: bold">Turbogears</a><span style="font-weight: bold"> (Python)</span> &#8211; An older Python solution which is actually a jumble of technologies stuck together.</li>
<li><strong><a href="http://www.opensails.org/">Sails</a> (Java)</strong> &#8211; One of the many Java frameworks with a lot of promise.</li>
<li><strong><a href="http://seaside.st/">Seaside</a> (Smalltalk) </strong>- The onlySmalltalk based framework I know of.  I&#8217;d really like to have a gander at this at a later date as one of Ruby&#8217;s inspirations was Smalltalk so it&#8217;d be interesting to see how the forefathers go about framework creation.</li>
</ul>
<p><!-- technorati tags begin --></p>
<p>If you&#8217;re a fan of statistics, reviews and comparisons then maybe you&#8217;d like some of these &#8211; about as many web framework reviews as you can possibly want!</p>
<ul>
<li><a href="http://www.sellersrank.com/web-frameworks-benchmarking-results/"><strong>PHP Framework Benchmarks</strong></a> &#8211; Just a run of Symfony, CakePHP and CodeIgniter.</li>
<li><a href="http://klimb.com/blog/2006/11/24/cakephp-vs-ruby-on-rails/"><strong>Rails vs. CakePHP Comparison</strong></a></li>
</ul>
<p><!-- technorati tags end --></p>
]]></content:encoded>
			<wfw:commentRss>http://www.straw-dogs.co.uk/01/10/rails-alternatives/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Facebook API Wins API of the Year</title>
		<link>http://www.straw-dogs.co.uk/12/29/facebook-api-wins-api-of-the-year/</link>
		<comments>http://www.straw-dogs.co.uk/12/29/facebook-api-wins-api-of-the-year/#comments</comments>
		<pubDate>Sat, 29 Dec 2007 14:31:04 +0000</pubDate>
		<dc:creator>KingOfThisHereBlog</dc:creator>
				<category><![CDATA[general]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[rails]]></category>
		<category><![CDATA[ruby]]></category>
		<category><![CDATA[web technologies]]></category>
		<category><![CDATA[api]]></category>
		<category><![CDATA[facebook]]></category>

		<guid isPermaLink="false">http://www.straw-dogs.co.uk/12/29/facebook-api-wins-api-of-the-year/</guid>
		<description><![CDATA[If you&#8217;ve never heard of Programmable Web then I suggest you take a look. Its a huge directory of all the major APIs on the web open for development. They&#8217;ve decided to award the Best API of the Year to the Facebook site. It won based on its openness, audience, money-making potential, viral features, modularity [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://farm2.static.flickr.com/1283/1334963410_75816fe6ca.jpg?v=0" style="margin: 10px 10px 0pt 0pt; float: left" title="Facebook" alt="Facebook Logo" />If you&#8217;ve never heard of <a href="http://www.programmableweb.com/">Programmable Web</a> then I suggest you take a look.  Its a huge directory of all the major APIs on the web open for development.  They&#8217;ve decided to award the <a href="http://blog.programmableweb.com/2007/12/27/api-of-the-year-facebook-platform/">Best API of the Year to the Facebook</a> site.  It won based on its openness, audience, money-making potential, viral features, modularity and metrics.</p>
<p>This got me thinking of ideas to put into a new Facebook app but before I jump in at the deep end I&#8217;m going to start small with a few quizzes that can plu gin to my existing sites then build from there.</p>
<p>Interesting side note for Ruby/Rails developers: There is an API interface for you to with <a href="http://rfacebook.rubyforge.org/">rFacebook</a>.</p>
<p>Failing that you could just get someone else to do it for you by getting one of the many Facebook Developers to do it for you.</p>
<p><!-- technorati tags begin --></p>
<p><!-- technorati tags end --></p>
]]></content:encoded>
			<wfw:commentRss>http://www.straw-dogs.co.uk/12/29/facebook-api-wins-api-of-the-year/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>10 Free SVN &amp; Project Hosting Services</title>
		<link>http://www.straw-dogs.co.uk/09/20/6-free-svn-project-hosting-services/</link>
		<comments>http://www.straw-dogs.co.uk/09/20/6-free-svn-project-hosting-services/#comments</comments>
		<pubDate>Thu, 20 Sep 2007 13:42:48 +0000</pubDate>
		<dc:creator>KingOfThisHereBlog</dc:creator>
				<category><![CDATA[general]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[project management]]></category>
		<category><![CDATA[python]]></category>
		<category><![CDATA[rails]]></category>
		<category><![CDATA[ruby]]></category>
		<category><![CDATA[subversion]]></category>
		<category><![CDATA[web technologies]]></category>
		<category><![CDATA[svn]]></category>
		<category><![CDATA[webapps]]></category>

		<guid isPermaLink="false">http://www.straw-dogs.co.uk/index.php/09/20/6-free-svn-project-hosting-services/</guid>
		<description><![CDATA[UPDATED: As of Jul 10th 2009 Open Source seems to be exploding all over the place at the moment and with online services increasingly jumping on the free offerings its been fantastic for developers wanting to host, manage, flaunt and communicate their projects online. Here’s a rundown of 6 free SVN hosting and project management [...]]]></description>
			<content:encoded><![CDATA[<p><a title="Gears" href="http://www.straw-dogs.co.uk/wp-content/uploads/2007/10/gear.png"><img src="http://www.straw-dogs.co.uk/wp-content/uploads/2007/10/gear.png" border="0" alt="Gears" align="left" /></a></p>
<p><strong>UPDATED: As of Jul 10th 2009</strong><strong><br />
</strong></p>
<p>Open Source seems to be exploding all over the place at the moment and with online services increasingly jumping on the free offerings its been fantastic for developers wanting to host, manage, flaunt and communicate their projects online.  Here’s a rundown of 6 free SVN hosting and project management offerings I like the look of.</p>
<h3><strong><a href="http://unfuddle.com/home">Unfuddle</a></strong></h3>
<p>Nice name and nice site.  Very web 2.0 and slick with project tracking such as issue tickets, source control, time tracking, milestones, etc.  The free package only comes with 200Mb and restrictive user allowances (1 per account) and only one project. This makes them the stingiest of the group. This is reflected in their price-resources on paid plans with $99 only getting you 10Gb and 50 projects. Compare this to $59.99 at Codespaces for the same space but unlimited projects.</p>
<p><strong>Pros:</strong> best interface, great features, Git support.</p>
<p><strong>Cons:</strong> high price, low resources, tiny free account.</p>
<h3><a href="http://www.codespaces.com"><strong>CodeSpaces</strong></a></h3>
<p>They have a hefty 500Mb for 2 free users per account and they have a good range of prices starting from $9 per month for 4-man teams upto $59 for unlimited.</p>
<p><strong>Pros: </strong>nice interface, good pricing, active and involved developers.</p>
<p><strong>Cons: </strong>Not as many features as the &#8216;big-beast&#8217; Assembla.</p>
<h3><strong><a href="http://www.assembla.com/">Assembla</a></strong></h3>
<p>Part of a large and feature-packed service full of project management features as well as basic 200Mb of SVN hosting.  It even has a jobs board but the project hosting comes with wiki pages, blogs, etc.  The free package has all of this but lacks phone supports and is only for open source projects.  They have VERY competitive prices starting from $3.</p>
<p><strong>Pros: </strong>packed with features, reliable, supports Mercurial.</p>
<p><strong>Cons: </strong>pricey in the higher plans.</p>
<h3><strong><a href="https://opensvn.csie.org/">OpenSVN</a></strong></h3>
<p>One of the first to release free SVN hosting and starting to show its age with very barebones features. They had a major failure in backup and restore last year which causes some worry about their reliability. So when I say “free SVN hosting” I really mean just that!</p>
<p><strong>Pros:</strong> unlimited space, unlimited projects.</p>
<p><strong>Cons: </strong>very unreliable, no features!</p>
<h3><a href="http://xp-dev.com"><strong>XP-Dev</strong></a></h3>
<p><a href="http://xp-dev.com"><strong></strong></a>This is a very no-frills setup but they have one killer feature: Private SVN repo hosting &#8211; FOR FREE!!  Made for agile and extreme programmers this doesn&#8217;t have a lot of the features inherent in other services but thats just fine.  Its also got an unlimited repo limit.</p>
<p><strong>Pros:</strong> unlimited repos, free private hosting</p>
<p><strong>Cons:</strong> Only one paid option, very few features.</p>
<h3><strong><a href="https://www.bountysource.com/">Bounty Source</a></strong></h3>
<p>Still going strong after I <a href="http://www.straw-dogs.co.uk/06/08/free-svn-hosting/">first mentioned it back in June</a> Bounty Source offer your basic SVN along with a wiki and CMS for managing your projects online presence as well as a task tracker.  Bounty Source have a unique feature though that enables a developer to be paid for the work they carry out on user feature requests.  Something I really like the look of &#8211; all I need now is an open source project people are going to pay me to finish!</p>
<p><strong>Pros: </strong>bounty system helps devs get paid to work.</p>
<p><strong>Cons: </strong>no paid option, looking old, falling behind in features.<strong></strong></p>
<h3><strong><a href="http://sourceforge.net/">SourceForge</a></strong></h3>
<p>Like an old grandfather clock this has been around years and although very reliable its showing its age.  They tried to spruce it up with some Web2.0 gradients and curves but you can’t scrub out the moldy smell from that interface and features-set.</p>
<p><strong>Pros:</strong> reliable, well established.</p>
<p><strong>Cons: </strong>very intrusive ads, pain to use.</p>
<h3><strong><a href="http://code.google.com/hosting/"> Google Project Hosting</a></strong></h3>
<p>They seem to have taken a lot of the old school methods of project hosting from SourceForge.  Unfortunately as mentioned earlier they’re looking old and although Google looks much cleaner its features still lack the richness that the smaller providers have who’ve gone all out on innovation while Google remains formulaic. Google also don&#8217;t provide paid private hosting. Its all open source here.</p>
<p><strong>Pros:</strong> reliable, clean interface, good features, supports mercurial</p>
<p><strong>Cons:</strong> no private paid options, open source only</p>
<h3>Comparison Table &#8211; Free Accounts</h3>
<table border="0" class="comp_table" cellspacing="0" width="100%">
<tbody>
<tr class="odd">
<th>Metric</th>
<th>Unfuddle</th>
<th>Code Spaces</th>
<th>OpenSVN</th>
<th>Bounty Source</th>
<th>XP-Dev</th>
<th>Google</th>
<th>SourceForge</th>
</tr>
<tr>
<td><strong>Project/Repo</strong></td>
<td>1/Unlimited[1]</td>
<td>Unlimited/Unlimited</td>
<td>1</td>
<td>Unlimited</td>
<td>5</td>
<td>Unlimited[4]</td>
<td>Unlimited</td>
</tr>
<tr class="odd">
<td><strong>Space</strong></td>
<td>200Mb</td>
<td>50Mb</td>
<td>Unlimited</td>
<td>N/A[3]</td>
<td>300Mb</td>
<td>Unlimited[4]</td>
<td>Unlimited</td>
</tr>
<tr>
<td><strong>Wiki</strong></td>
<td>Yes</td>
<td>Yes</td>
<td>No</td>
<td>Yes</td>
<td>No</td>
<td>Yes</td>
<td>Yes</td>
</tr>
<tr class="odd">
<td><strong>Tracking</strong></td>
<td>Yes</td>
<td>Yes</td>
<td>No</td>
<td>Yes</td>
<td>No</td>
<td>Yes</td>
<td>Yes</td>
</tr>
<tr>
<td><strong>Browser</strong></td>
<td>Yes</td>
<td>Yes</td>
<td>No</td>
<td>Yes</td>
<td>No</td>
<td>Yes</td>
<td>Yes</td>
</tr>
</tbody>
</table>
<ul>
<li>[1]<em> Unfuddle allow one active project but unlimited numbers of repos within it.</em></li>
<li>[3]<em> They state nowhere on their site about limits to project size.</em></li>
<li>[4]<em> Google claim in their <a href="http://code.google.com/tos.html">terms</a> that there&#8217;s no upper limit but they reserve the right to impose one.</em></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.straw-dogs.co.uk/09/20/6-free-svn-project-hosting-services/feed/</wfw:commentRss>
		<slash:comments>63</slash:comments>
		</item>
		<item>
		<title>PHP is an Auto-Mountian Bike</title>
		<link>http://www.straw-dogs.co.uk/08/18/php-is-an-auto-mountian-bike/</link>
		<comments>http://www.straw-dogs.co.uk/08/18/php-is-an-auto-mountian-bike/#comments</comments>
		<pubDate>Sat, 18 Aug 2007 14:05:30 +0000</pubDate>
		<dc:creator>KingOfThisHereBlog</dc:creator>
				<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://www.straw-dogs.co.uk/index.php/08/18/php-is-an-auto-mountian-bike/</guid>
		<description><![CDATA[After someone posted this article to the dZone site they were quick to spot that it missed one crucial language from the list: PHP. So here’s my take on what PHP would be like if it was a car: PHP was a mountian bike that got crow barred into car-dom.  Its had a lawn mower [...]]]></description>
			<content:encoded><![CDATA[<p>After someone posted <a href="http://www.cs.caltech.edu/%7Emvanier/hacking/rants/cars.html">this article</a> to the <a href="http://www.dzone.com/">dZone</a> site they were quick to spot that it missed one crucial language from the list: PHP.</p>
<p>So here’s my take on what PHP would be like if it was a car:</p>
<p>PHP <em><strong>was</strong></em> a mountian bike that got crow barred into car-dom.  Its had a lawn mower engine strapped to its rear wheels and a turbo made from washing machine ducting kitted round the front.  To keep it all going a set of stabilisers and prayer beads have been chucked on.  It’ll get you from A to B but its not as reliable or friendly as that Python and Ruby model that just hovered past.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.straw-dogs.co.uk/08/18/php-is-an-auto-mountian-bike/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

