<?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"
	>

<channel>
	<title>Siftware blog</title>
	<atom:link href="http://www.siftware.co.uk/blog/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.siftware.co.uk/blog</link>
	<description>Just another WordPress weblog</description>
	<pubDate>Mon, 20 Jul 2009 10:16:43 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.6.1</generator>
	<language>en</language>
			<item>
		<title>Twitter bot released - @anonymise</title>
		<link>http://www.siftware.co.uk/blog/2009/02/twitter-bot-released-anonymise/</link>
		<comments>http://www.siftware.co.uk/blog/2009/02/twitter-bot-released-anonymise/#comments</comments>
		<pubDate>Fri, 27 Feb 2009 10:52:27 +0000</pubDate>
		<dc:creator>bealers</dc:creator>
		
		<category><![CDATA[news]]></category>

		<category><![CDATA[twitter]]></category>

		<guid isPermaLink="false">http://www.siftware.co.uk/blog/?p=65</guid>
		<description><![CDATA[Update: we&#8217;ve disabled the bot now as it was a simple proof of concept that has served its purpose
You may have heard of Twitter.If not then let&#8217;s just say that it&#8217;s a cross between SMS and blogging; a way to tell people that choose to listen to you - your followers - whatever you like as [...]]]></description>
			<content:encoded><![CDATA[<p><strong>Update: we&#8217;ve disabled the bot now as it was a simple proof of concept that has served its purpose</strong></p>
<p>You may have heard of <a href="http://twitter.com">Twitter</a>.If not then let&#8217;s just say that it&#8217;s a cross between SMS and blogging; a way to tell people that choose to listen to you - your followers - whatever you like as long as it&#8217;s only 140 characters long. Try it. You may not get it immediately but chances are you&#8217;ll be hooked pretty quickly, especially if you&#8217;re proactive in building your network.</p>
<p>Here at Siftware we love Twitter and have been using it for a quite a while. We like it so much that we felt it was time to start putting our web development skills to use by utilising Twitter&#8217;s API. We&#8217;ve a few ideas in the pipeline but our first one was a bit of fun.</p>
<p><a href="http://twitter.com/anonymise">@anonymise</a> is a twitter bot, written using the Symfony web development framework that sits there waiting for people to follow it. When they do it immediately follows the user back and sends them a direct message with usage instructions. The user can then choose to unfollow @anonymise again.</p>
<p>When any user being followed by @anonymise sends it a direct message @anonymise will simply tweet the contents of the message verbatim but NOT divulge the identity of the original sender. Simple.</p>
<p>You can also choose to follow us on Twitter using <a href="http://twitter.com/siftware">@siftware</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.siftware.co.uk/blog/2009/02/twitter-bot-released-anonymise/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Siftware helps launch new Directgov innovation blog</title>
		<link>http://www.siftware.co.uk/blog/2009/02/siftware-helps-launch-new-directgov-innovation-blog/</link>
		<comments>http://www.siftware.co.uk/blog/2009/02/siftware-helps-launch-new-directgov-innovation-blog/#comments</comments>
		<pubDate>Mon, 02 Feb 2009 10:48:28 +0000</pubDate>
		<dc:creator>bealers</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.siftware.co.uk/blog/?p=70</guid>
		<description><![CDATA[On Saturday the 31st of January a new Directgov innovation blog was launched at the UK Government Barcamp in London. The Directgov &#124; innovate developer network has been provided to &#8220;inform the greater developer community about available resources, to provide a platform to connect with one another, and to showcase new ideas with the aim [...]]]></description>
			<content:encoded><![CDATA[<p>On Saturday the 31st of January a new Directgov innovation blog was launched at the UK Government Barcamp in London. The Directgov | innovate developer network has been provided to &#8220;inform the greater developer community about available resources, to provide a platform to connect with one another, and to showcase new ideas with the aim of supporting and encouraging innovation.&#8221;</p>
<p><span>At Siftware we are particularly interested in the new service as we were closely involved with its rollout by taking the supplied designs applying them to the leading open source blog Wordpress as a Wordpress Theme.</span></p>
<p><span>Sharon Cooper the Director of Strategy and Proposition at Directgov said of our involvement: &#8220;Siftware were extremely responsive to our needs. They did a good job and within a tight time window.&#8221;</span></p>
<p><span>Link: </span><a href="http://innovate.direct.gov.uk/"><span>http://innovate.direct.gov.uk/</span></a><span> </span></p>
<p><span>Directgov is the government’s flagship digital service, welcoming more than 11 million visitors every month.</span></p>
]]></content:encoded>
			<wfw:commentRss>http://www.siftware.co.uk/blog/2009/02/siftware-helps-launch-new-directgov-innovation-blog/feed/</wfw:commentRss>
		</item>
		<item>
		<title>New address</title>
		<link>http://www.siftware.co.uk/blog/2009/01/new-address/</link>
		<comments>http://www.siftware.co.uk/blog/2009/01/new-address/#comments</comments>
		<pubDate>Sun, 04 Jan 2009 15:50:46 +0000</pubDate>
		<dc:creator>bealers</dc:creator>
		
		<category><![CDATA[news]]></category>

		<guid isPermaLink="false">http://www.siftware.co.uk/blog/?p=61</guid>
		<description><![CDATA[We&#8217;ve moved our office and we are now slap-bang in the middle of Malvern with better transport links and many more lunch options.
Our new address is:
The Darwin Rooms
1 Worcester Road
Malvern
Worcestershire
WR14 4QY
Tel: 01684 576 700
]]></description>
			<content:encoded><![CDATA[<p>We&#8217;ve moved our office and we are now slap-bang in the middle of Malvern with better transport links and many more lunch options.</p>
<p>Our new address is:</p>
<p>The Darwin Rooms<br />
1 Worcester Road<br />
Malvern<br />
Worcestershire<br />
WR14 4QY</p>
<p><strong>Tel:</strong> 01684 576 700</p>
]]></content:encoded>
			<wfw:commentRss>http://www.siftware.co.uk/blog/2009/01/new-address/feed/</wfw:commentRss>
		</item>
		<item>
		<title>sw0p.com holding site launched</title>
		<link>http://www.siftware.co.uk/blog/2008/10/sw0pcom-holding-site-launched/</link>
		<comments>http://www.siftware.co.uk/blog/2008/10/sw0pcom-holding-site-launched/#comments</comments>
		<pubDate>Wed, 08 Oct 2008 11:44:41 +0000</pubDate>
		<dc:creator>bealers</dc:creator>
		
		<category><![CDATA[news]]></category>

		<category><![CDATA[industry]]></category>

		<guid isPermaLink="false">http://www.siftware.co.uk/blog/?p=53</guid>
		<description><![CDATA[Siftware&#8217;s first web application sw0p.com came one step closer to being a reality today when we launched the holding site in the run up to us launching it as a beta service around Christmas time.
sw0p.com will allow individuals to trade their items and skills with other members with no money changing hands. The site will [...]]]></description>
			<content:encoded><![CDATA[<p><img class="size-full wp-image-54" title="sw0p-screen" src="http://www.siftware.co.uk/blog/wp-content/uploads/2008/10/sw0p-screen.jpg" alt="" width="300" height="179" align="left" />Siftware&#8217;s first web application <a href="http://sw0p.com">sw0p.com</a> came one step closer to being a reality today when we launched the holding site in the run up to us launching it as a beta service around Christmas time.</p>
<p><a href="http://sw0p.com">sw0p.com</a> will allow individuals to trade their items and skills with other members with no money changing hands. The site will be free for all to use with no limitations.</p>
<p>Behind the scenes we are working hard to finsh the last few major tasks and we&#8217;re really looking forard to launching this service in the coming months.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.siftware.co.uk/blog/2008/10/sw0pcom-holding-site-launched/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Bathcamp 2008</title>
		<link>http://www.siftware.co.uk/blog/2008/09/bathcamp-2008/</link>
		<comments>http://www.siftware.co.uk/blog/2008/09/bathcamp-2008/#comments</comments>
		<pubDate>Fri, 19 Sep 2008 11:54:50 +0000</pubDate>
		<dc:creator>bealers</dc:creator>
		
		<category><![CDATA[news]]></category>

		<category><![CDATA[bathcamp08]]></category>

		<category><![CDATA[industry]]></category>

		<guid isPermaLink="false">http://www.siftware.co.uk/blog/?p=42</guid>
		<description><![CDATA[
Last weekend I attended my first barcamp &#8216;unconference&#8217; in Bath called, unsurprisingly, Bathcamp.
It was absolutely brilliant.
There were around 60 attendees a number of whom are now listed on the bathcamp blog and the split was around 70%/30% web geeks and educational/knowledge management types.
There were three areas at the venue and the talks varied from the [...]]]></description>
			<content:encoded><![CDATA[<p><img class="size-medium wp-image-43" title="The list of Batchamp sponsors including Siftware" src="http://www.siftware.co.uk/blog/wp-content/uploads/2008/09/bathcamp-sponsors1.png" alt="The list of Batchamp sponsors including Siftware" width="250" height="289" align="left" /></p>
<p>Last weekend I attended my first <a title="Wikipedia reference" href="http://en.wikipedia.org/wiki/Barcamp">barcamp</a> &#8216;unconference&#8217; in Bath called, unsurprisingly, <a title="The main Bathcamp website" href="http://www.bathcamp.org">Bathcamp</a>.</p>
<p>It was absolutely brilliant.</p>
<p>There were around 60 attendees a number of whom are now <a href="http://blog.bathcamp.org/2008/09/14/bathcamp-we-did-it/">listed on the bathcamp blog</a> and the split was around 70%/30% web geeks and educational/knowledge management types.</p>
<p>There were three areas at the venue and the talks varied from the more standard technical web development techniques (which I mainly attended) to how to make a good Espresso and my personal favourite which was <a title="Frankie's blog" href="http://www.frankieroberto.com/">Frankie Roberto&#8217;s</a> dead-pan delve into the world of the serious Lego geek.</p>
<p>Siftware sponsored the booze for the evening at the venue and I put on a &#8216;tub quiz&#8217; with prizes, amongst others, of a <a href="http://www.flickr.com/photos/bealers/2757016324/">$50,000,000,000 note</a>. The quiz seemed to go down rather well; I know I enjoyed putting it together.</p>
<p>Kudos to the organisers of the event whose forward planning ensured the weekend went very smoothly. A particularly big shout out to <a href="http://electronicmuseum.org.uk/">Mike Ellis</a>, <a href="http://twitter.com/t1mmyb">Tim Beadle</a>, <a href="http://twitter.com/frankieroberto">Frankie Roberto,</a> <a href="http://twitter.com/lisa_price">Lisa Price</a> &amp; <a href="http://twitter.com/emargee">Steve Pope</a> who I&#8217;m sure didn&#8217;t sit down for the 2 days.</p>
<p>I made some great new friends, put faces to names I&#8217;ve known for 10 years and have not laughed so much in ages (you know who you are!).  Overall I came away on Sunday feeling inspired and with that warm glow you get after putting another good time in the bank.</p>
<p>Go Bathcamp.</p>
<p>A few other attendees have blogged about the day or posted their slides. I&#8217;ll add them to this list as and when I get the links:</p>
<ul>
<li><a href="http://twitter.com/jukesie">Matt Jukes</a>: <a href="http://backpass.org/2008/09/16/briliant-bathcamp/">http://backpass.org/2008/09/16/briliant-bathcamp/</a></li>
<li><a href="http://twitter.com/keirwhitaker">Keir Whitaker</a>: <a href="http://www.fiveandlime.com/journal/2008/09/14/10-reasons-you-should-try-django/">http://www.fiveandlime.com/journal/2008/09/14/10-reasons-you-should-try-django </a>(annoyed I missed this one)</li>
<li><a href="http://twitter.com/andij">Drew Jones</a>: <a href="http://andij.com/2008/09/07/sfimagetransform-presentation">http://andij.com/2008/09/07/sfimagetransform-presentation</a></li>
<li><a href="http://twitter.com/jackmartinleith">Jack Martin Leith</a>: <a href="http://www.jackmartinleith.com/?p=1237">http://www.jackmartinleith.com/?p=1237</a></li>
<li><a href="http://twitter.com/samdownie">Sam Downie</a>: <a href="http://bristol-sounds.com/dsoundzmedia/?p=99">http://bristol-sounds.com/dsoundzmedia/?p=99</a></li>
<li><a href="http://twitter.com/frankieroberto">Frankie Roberto</a>: <span><a href="http://www.frankieroberto.com/weblog/881">http://www.frankieroberto.com/weblog/881</a></span></li>
<li><span><a href="http://twitter.com/miaridge">Mia Ridge</a>: </span><a href="http://openobjects.blogspot.com/2008/09/bathcamp-report.html">http://openobjects.blogspot.com/2008/09/bathcamp-report.html</a></li>
<li><a href="http://twitter.com/dmje">Mike Ellis</a>: <a href="http://electronicmuseum.org.uk/2008/09/23/that-wasbathcamp-2008/">http://electronicmuseum.org.uk/2008/09/23/that-wasbathcamp-2008/</a></li>
</ul>
<p><strong>Addendum:</strong></p>
<p>Here&#8217;s the quiz slides with answers, as requested by a few people. Apparently it was too hard?</p>
<div id="__ss_619575" style="width: 425px; text-align: left;"><a style="font:14px Helvetica,Arial,Sans-serif;display:block;margin:12px 0 3px 0;text-decoration:underline;" title="Bathcamp Tub Quiz" href="http://www.slideshare.net/bealers/bathcamp-tub-quiz-presentation?type=powerpoint">Bathcamp Tub Quiz</a><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="425" height="355" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowFullScreen" value="true" /><param name="allowScriptAccess" value="always" /><param name="src" value="http://static.slideshare.net/swf/ssplayer2.swf?doc=bathcamp-tub-quiz-1222418076660191-8&amp;stripped_title=bathcamp-tub-quiz-presentation" /><embed type="application/x-shockwave-flash" width="425" height="355" src="http://static.slideshare.net/swf/ssplayer2.swf?doc=bathcamp-tub-quiz-1222418076660191-8&amp;stripped_title=bathcamp-tub-quiz-presentation" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
<div style="font-size: 11px; font-family: tahoma,arial; height: 26px; padding-top: 2px;">View SlideShare <a style="text-decoration:underline;" title="View Bathcamp Tub Quiz on SlideShare" href="http://www.slideshare.net/bealers/bathcamp-tub-quiz-presentation?type=powerpoint">presentation</a> or <a style="text-decoration:underline;" href="http://www.slideshare.net/upload?type=powerpoint">Upload</a> your own. (tags: <a style="text-decoration:underline;" href="http://slideshare.net/tag/bathcamp08">bathcamp08</a>)</div>
</div>
<p>Here&#8217;s the <a href="http://www.siftware.co.uk/blog/wp-content/uploads/2008/09/batchcampquestions.pdf">answer sheet</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.siftware.co.uk/blog/2008/09/bathcamp-2008/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Google Chrome first thoughts</title>
		<link>http://www.siftware.co.uk/blog/2008/09/google-chrome-first-thoughts/</link>
		<comments>http://www.siftware.co.uk/blog/2008/09/google-chrome-first-thoughts/#comments</comments>
		<pubDate>Tue, 02 Sep 2008 21:12:45 +0000</pubDate>
		<dc:creator>bealers</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<category><![CDATA[industry]]></category>

		<guid isPermaLink="false">http://www.siftware.co.uk/blog/?p=39</guid>
		<description><![CDATA[Today Google released its new web browser called Google Chrome as a public beta, you can download it here.
You could ask why bother releasing a new browser when there&#8217;s IE 8 in beta, Firefox 3 recently released, Apple&#8217;s Safari and at least 10 people use Opera. They pre-empted this perfectly reasonable question by releasing a really [...]]]></description>
			<content:encoded><![CDATA[<p>Today Google released its new web browser called Google Chrome as a public beta, you can <a href="http://www.google.com/chrome">download it here</a>.</p>
<p>You could ask why bother releasing a new browser when there&#8217;s <a href="http://www.microsoft.com/windows/internet-explorer/beta/worldwide-sites.aspx">IE 8 in beta</a>, <a href="http://www.firefoxmozilla3.com/">Firefox 3</a> recently released, <a href="http://www.apple.com/safari/">Apple&#8217;s Safari</a> and at least 10 people use <a href="http://www.opera.com/">Opera.</a> They pre-empted this perfectly reasonable question by releasing a really well done <a href="http://www.google.com/googlebooks/chrome/index.html">comic strip</a> explaining their reasoning, prior to today&#8217;s launch.</p>
<p>In short they are saying that the UI is much improved, each tab is its own process (so if one crashes the whole things doesn&#8217;t close), Javascript can be multi threaded (no more wating for a process to finish before another one starts) and multiple security &amp; privacy improvements.</p>
<p>First impressions after the speedy install and it automatically importing my Firefox bookmarks (particularly the toolbar &amp; without adding extra rubbish) are good.</p>
<p>Immediate likes:</p>
<ul>
<li>Speedy rendering (though to be fair Safari is also based on WebKit)</li>
<li>Folder like tab that one can drag out into a new window (with page preview)</li>
<li>The magic auto complete address/search bar seems pretty clever and I&#8217;m also liking the colour coding in the addresses</li>
<li>Text areas in web pages are stretchy</li>
<li>Javascript debugger and HTML/CSS inspector</li>
<li>There&#8217;s a task manager showing what each tab is doing/using</li>
<li>Gmail hasn&#8217;t crashed yet</li>
</ul>
<p>I&#8217;m not so keen on:</p>
<ul>
<li>No taskbar, though I see that mousing over links brings up a small tooltip at the bottom of the screen</li>
<li>Find is Ctrl-F and I so love the &#8216;/&#8217; of Firefox matching Vim&#8217;s control</li>
<li>Really missing right-click and left for back (using mouse gestures)</li>
<li>No web developer toolbar (another FF extension) or ability to see at a glance if a page validates though to be fair it&#8217;s very early days</li>
<li>Really surprised to see that zoom has taken a step backwards and doesn&#8217;t zoom images.</li>
</ul>
<p>So in reality my only dislikes are that I&#8217;m missing some Firefox add-on features which for a browser only released in the past few hours isn&#8217;t too shoddy at all especially as I could &#8216;make do&#8217; with the in-built debugging support.</p>
<p>I&#8217;ve set it as my default browser and we&#8217;ll see how I get on for a extended period, first signs are promising, though.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.siftware.co.uk/blog/2008/09/google-chrome-first-thoughts/feed/</wfw:commentRss>
		</item>
		<item>
		<title>CMS Made Simple add-on hits 4000 downloads</title>
		<link>http://www.siftware.co.uk/blog/2008/09/cms-made-simple-add-on-hits-4000-downloads/</link>
		<comments>http://www.siftware.co.uk/blog/2008/09/cms-made-simple-add-on-hits-4000-downloads/#comments</comments>
		<pubDate>Tue, 02 Sep 2008 12:58:23 +0000</pubDate>
		<dc:creator>iain</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<category><![CDATA[cms]]></category>

		<category><![CDATA[php]]></category>

		<category><![CDATA[smarty]]></category>

		<guid isPermaLink="false">http://www.siftware.co.uk/blog/?p=33</guid>
		<description><![CDATA[It was nice to see today that the custom tag that I built for CMS Made Simple has exceeded 4000 downloads.
Random Global Content Blocks enables the template editor to specify a range of content blocks to show and then the tag does the work of deciding which one to display per page load. It even [...]]]></description>
			<content:encoded><![CDATA[<p>It was nice to see today that the custom tag that I built for <a title="Visit the CMS Made Simple website" href="http://www.cmsmadesimple.org">CMS Made Simple</a> has exceeded 4000 downloads.</p>
<p><a title="Download the Random Global Content Block tag" href="http://dev.cmsmadesimple.org/frs/?group_id=252">Random Global Content Blocks</a> enables the template editor to specify a range of content blocks to show and then the tag does the work of deciding which one to display per page load. It even supports a regular expression syntax so as long as a given naming convention is adhered to new items can be added through the CMS without the need for template modifications.</p>
<p>For example:<br />
<code>{random_gcb block_regex="^case_study_"}</code></p>
<p>This would mean that any global content block starting with the name starting case_study_ would be included in rotation, randomly.</p>
<p>You can <a href="http://dev.cmsmadesimple.org/frs/?group_id=252">download the tag here</a> or read more about Siftware&#8217;s <a href="http://www.siftware.co.uk/services/cms-made-simple/">CMS Made Simple installation and customisation services</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.siftware.co.uk/blog/2008/09/cms-made-simple-add-on-hits-4000-downloads/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Siftware v2 launched</title>
		<link>http://www.siftware.co.uk/blog/2008/08/siftware-v2-launched/</link>
		<comments>http://www.siftware.co.uk/blog/2008/08/siftware-v2-launched/#comments</comments>
		<pubDate>Fri, 29 Aug 2008 13:51:56 +0000</pubDate>
		<dc:creator>Cathie</dc:creator>
		
		<category><![CDATA[news]]></category>

		<guid isPermaLink="false">http://www.siftware.co.uk/blog/?p=36</guid>
		<description><![CDATA[We&#8217;re delighted to launch the newest version of our website which replaces the original one launched 2 years previously.
This version incorporates the blog you&#8217;re reading which we&#8217;ll be posting to with a mix of company information and technical snippets. It has also been updated with a slightly tweaked brand and details of our streamlined service [...]]]></description>
			<content:encoded><![CDATA[<p>We&#8217;re delighted to launch the newest version of our website which replaces the original one launched 2 years previously.</p>
<p>This version incorporates the blog you&#8217;re reading which we&#8217;ll be posting to with a mix of company information and technical snippets. It has also been updated with a slightly tweaked brand and details of our streamlined service offerings to better reflect the work we&#8217;re now doing.</p>
<p>In summary these service offerings are:</p>
<ul>
<li><a title="CMS Made Simple support" href="http://www.siftware.co.uk/services/cms-made-simple/">CMS Made Simple installations, theming &amp; customisations</a></li>
<li><a title="We build Wordpress Themes" href="http://www.siftware.co.uk/services/wordpress/">Wordpress blog installations, theming &amp; customisations</a></li>
<li><a href="http://www.siftware.co.uk/services/ims-themes-integration/">Skinning and customisation of Third Light&#8217;s Image Management System</a></li>
<li><a title="PHP development" href="http://www.siftware.co.uk/services/symfony-development/">Bespoke Symfony &amp; PHP development</a></li>
</ul>
<p>We&#8217;ve also added a <a title="Ask us to quote" href="http://www.siftware.co.uk/contact/brief-form">briefing form</a> for users wishing for us to provide a quote.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.siftware.co.uk/blog/2008/08/siftware-v2-launched/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Multipack&#8217;s March 2008 meeting</title>
		<link>http://www.siftware.co.uk/blog/2008/03/multipacks-march-2008-meeting/</link>
		<comments>http://www.siftware.co.uk/blog/2008/03/multipacks-march-2008-meeting/#comments</comments>
		<pubDate>Mon, 10 Mar 2008 13:24:35 +0000</pubDate>
		<dc:creator>bealers</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<category><![CDATA[industry]]></category>

		<guid isPermaLink="false">http://siftware.bealers/blog/?p=11</guid>
		<description><![CDATA[The Multipack describes itself as &#8220;a community of multi-talented Web professionals from across the West Midlands&#8221; and attending one of their meetings has been high on my list for over a year now. This Saturday I finally made the effort to get to Birmingham for the March meeting and it was definitely worth it.
I got [...]]]></description>
			<content:encoded><![CDATA[<p><img style="margin-right: 10px" src="/blog/wp-content/uploads/2008/03/multipack.gif" alt="multipack.gif" align="left" /><a href="http://www.multipack.co.uk/">The Multipack</a> describes itself as &#8220;a community of multi-talented Web professionals from across the West Midlands&#8221; and attending one of their meetings has been high on my list for over a year now. This Saturday I finally made the effort to get to Birmingham for the March meeting and it was definitely worth it.</p>
<p>I got there a bit late so didn&#8217;t manage to speak with all of the 15 or so people in attendance as the seating was initially an awkward L-Shape but they seemed a friendly, knowledgeable bunch and people started moving around soon enough. Discussions ranged from Mark James (of <a href="http://www.famfamfam.com/">FamFamFam</a> fame) describing the features of his pseudo-UML source code generator, the merits (or not) of twittering ones every mundane thought and super-mobile notebooks. I also got to put a face to the name of <a href="http://www.fullcreammilk.co.uk/about/">Owen Gregory</a>, had a general business chat with Noel Welsh and Dave Gurnell of <a href="http://www.untyped.com">Untyped</a>, bumped into <a href="http://www.383project.com/">Sukhi Dehal</a> again and had a good chat with <a href="http://www.thesitedoctor.co.uk/">Tim Gaunt</a> on the train home who also happens to be a fellow <a href="http://www.under-score.org.uk/">Underscore</a> subscriber.</p>
<p>I&#8217;m particularly excited by The Multipack as it&#8217;s (as far as I know) the only general interest gathering of web types round these parts, I like its relaxed beer and geekage attitude and although it&#8217;s a bit of a mission for me to get to - 1.5 hr journey each way including a £20 cab fair for the last stretch home from the train station (although that&#8217;s my fault for wanting to drink and living in the middle of nowhere) - I do think Birmingham is a sensible location for the meetings. I did also raise the subject of there being a mailing list aspect to the group which, as I&#8217;ve <a href="http://mailman.lug.org.uk/pipermail/phpwm/2008-January/002333.html">mentioned previously elsewhere</a>, would mean that people don&#8217;t have to remember to visit a website to have a conversation; everyone&#8217;s got email, right?</p>
<p>If you&#8217;re into web and available for the <a href="http://upcoming.yahoo.com/event/417758/">next meeting on the 12th of April</a> then you should definitely come along. It&#8217;s already in my diary.</p>
<p><strong>Update:</strong> There *is* a mailing list, hooray. <a href="http://groups.google.com/group/multipack">http://groups.google.com/group/multipack</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.siftware.co.uk/blog/2008/03/multipacks-march-2008-meeting/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Debugging with PhpED and DBG</title>
		<link>http://www.siftware.co.uk/blog/2008/01/debugging-with-phped-and-dbg/</link>
		<comments>http://www.siftware.co.uk/blog/2008/01/debugging-with-phped-and-dbg/#comments</comments>
		<pubDate>Sun, 20 Jan 2008 15:13:49 +0000</pubDate>
		<dc:creator>bealers</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<category><![CDATA[php]]></category>

		<category><![CDATA[symfony]]></category>

		<guid isPermaLink="false">http://siftware.bealers/blog/?p=3</guid>
		<description><![CDATA[As long-term PhpED user I&#8217;ve always been well aware that I was not making the most of some of the more powerful features of my IDE, particularly the debugging capabilities. Well this week I finally got debugging set-up properly and as per most of my other blog posts I&#8217;m listing what I did here for [...]]]></description>
			<content:encoded><![CDATA[<p>As long-term <a href="http://www.nusphere.com">PhpED</a> user I&#8217;ve always been well aware that I was not making the most of some of the more powerful features of my IDE, particularly the debugging capabilities. Well this week I finally got debugging set-up properly and as per most of my other blog posts I&#8217;m listing what I did here for future reference and just in case it helps anyone else.<span id="more-3"></span></p>
<h3>Step 1: Server and client communication</h3>
<p>The dev server is our standard set-up: Debian stable (currently Etch) running with stable apt packages of PHP 5  (5.2.0) and Apache 2. I have Samba set-up to share each developers home directory with Apache having multiple VirtualHosts per developer serving from within those home directories.</p>
<p>My &#8216;client&#8217; is Windows XP or Vista (FWIW these instructions tested on both) running PhpED 5.2. We&#8217;ve mapped a drive to the home folder on the dev server and we can write to files within it.</p>
<p>The Nusphere website has <a href="http://www.nusphere.com/kb/technicalfaq/index.htm">detailed instructions</a> <a href="http://www.nusphere.com/kb/technicalfaq/howto_debug_rm_website.htm">here</a> &amp; <a href="http://www.nusphere.com/kb/technicalfaq/howto_install_dbg_module.htm">here</a> and here for getting the communication between client and server set-up. You probably want to read through all of that first but here&#8217;s my summary:</p>
<h4>Install the server module</h4>
<p>Situated somewhere like <code>C:\Program Files\nusphere\phped\debugger\server</code> you should find a number of operating system specific folders, these contain the relevant dbg module, in my case I needed <code>\Linux\dbg-3.2.10-Linux-glibc-2.2.tar.gz</code>. Unzip this and place the version specific to your PHP version into PHP&#8217;s extension_dir which can be easily figured out by either running <code>phpinfo();</code> or by looking at php.ini; in my case it&#8217;s <code>/usr/lib/php5/20060613+lfs.</code> For neatness I symlink  dbg.so-5.2.x to dbg.so I then create <code>/etc/php5/apache2/conf.d/dbg.ini</code> and within it I write:</p>
<p><code>extension=dbg.so</code></p>
<p><code>[debugger]<br />
debugger.enabled=on<br />
debugger.profiler_enabled=on<br />
debugger.hosts_allow=ALL<br />
debugger.hosts_deny=ALL<br />
debugger.ports=7869, 10000/16</code></p>
<p>Saving and then restarting Apache I check <code>phpinfo();</code> and see near the top:</p>
<p><code>This program makes use of the Zend Scripting Language Engine:<br />
Zend Engine v2.2.0, Copyright (c) 1998-2006 Zend Technologies<br />
<strong> with DBG v3.2.10, (C) 2000,2007, by Dmitri Dmitrienko</strong></code></p>
<p>&#8230;with further down the page more detailed information relating to the dbg module.</p>
<p>A few notes on my set-up:</p>
<ul>
<li>the <code>/etc/php5/apache2/conf.d/*.ini</code> is a Debian thing. If you&#8217;ve compiled from source or use another distribution then it&#8217;s likely that you want to put the dbg configuration settings into php.ini, you can find out where that lives on your system by looking in <code>phpinfo()</code></li>
<li>note the configuration line <code>debugger.hosts_allow=ALL</code>. It&#8217;s possible (and likely desirable) to only allow debugging sessions between specific machines. On my internal network I don&#8217;t care so to save configuration changes when new developers start or machines change I&#8217;m leaving it open to all</li>
</ul>
<h4>Ensure Server can talk to client</h4>
<p>With the server successfully set-up we now want to ensure that the server can talk to the client. To do this fire up PhpED and ensure that the the listener is running, this is the little satellite dish in your task bar. If you right-click and select set-up you should see this:</p>
<p><img src="/blog/wp-content/uploads/2008/01/listener.gif" alt="listener.gif" /></p>
<p>Good, now on the <strong><em>server</em></strong> telnet to the client, thus:</p>
<p><code>telnet &lt;client IP address&gt; 7869</code></p>
<p>If it&#8217;s working you should see a black dot appear within the listener icon in the system tray, if so you&#8217;re done. Just Ctrl  and ] to exit the telnet session and move onto step 2.</p>
<p><strong>Note: </strong>If you don&#8217;t know your ip address you can fire up a dos window and type ipconfig.<br />
<!--more--></p>
<h3>Step 2: Project set-up and mappings</h3>
<p>Step 1 is all relatively straightforward assuming you&#8217;re already comfortable with the inner workings of your set-up. What is less obvious is how to properly set-up the project to actually get down and start debugging. I have had partial success in the past with simple projects but the issue has always been with mappings. If all you want is a PhpED project where it&#8217;s root is also the document root of the website then there&#8217;s not a lot to it. Where the problem lies, for me at least, is when there are library files outside of the document root that you still want to be able to see and edit from within your project.</p>
<p>To illustrate a slightly more complex project set-up I&#8217;ll go through the mappings for one of my <a href="http://www.symfony-project.org/">Symfony</a> projects.</p>
<p>My directory structure is as follows:</p>
<p><code>/home/&lt;developer&gt;/www/projectname</code> (checked out from subversion, this is the trunk)<br />
<code>/home/&lt;developer&gt;/www/projectname/codebase</code><br />
<code>/home/&lt;developer&gt;/www/projectname/codebase/web</code> (default name for a Symfony project&#8217;s document root)</p>
<p>where <code>/home/&lt;developer&gt;/</code> is mapped to Z:\ (or whatever) on the client.</p>
<p>Elsewhere Symfony has been installed using PEAR so lives in <code>/usr/share/php/symfony</code>. To make it easier for a developer to look at (read only) versions of core Symfony (and PEAR) classes I ensure that within the developers&#8217; sandbox the library files are symlinked. So for example with symfony the developer would have:</p>
<p><code>/home/&lt;developer&gt;/www/lib/symfony -&gt; /usr/share/php/symfony</code></p>
<p>We want to be able to edit all of the files within the project so when setting up the new project we set the root directory to be the projectname folder so in this case it&#8217;ll be <code>Z:\www\projectname</code> and for now, just to get the project set-up and the code imported set the &#8216;Run mode&#8217; to be Local CGI.</p>
<p>Doing so gives us this view within the workspace:</p>
<p><img src="/blog/wp-content/uploads/2008/01/folders.gif" alt="folders.gif" width="200" height="489" /></p>
<p>That done we need to get the mappings sorted, so entering project properties again we set things up so they look like this:</p>
<p><img src="/blog/wp-content/uploads/2008/01/project-properties.gif" alt="project-properties.gif" width="450" height="366" /></p>
<p>Namely:</p>
<ul>
<li>Root directory is  unchanged and <code>Z:\www\projectname</code></li>
<li>Run mode is 3rd party web server</li>
<li>Root URL is blank</li>
<li>Remote root directory is blank</li>
</ul>
<p>If we were to press the OK button now PhpED would complain as it needs to know which URL you&#8217;re using to access the third party web server (our dev server) so instead we select the Mapping tab and <strong>add</strong> the following mappings</p>
<ol>
<li>The apache document root
<ul>
<li>Local directory is <code>Z:\www\projectname\codebase\web</code></li>
<li>Remote directory is <code>/home/user/www/projectname/codebase/web</code></li>
<li>URL is <code>http://projectname</code></li>
</ul>
</li>
<li>The Symfony libraries
<ul>
<li>Local directory is <code>Z:\www\lib\symfony</code></li>
<li>remote directory is <code>/usr/share/php/symfony</code></li>
</ul>
</li>
</ol>
<p><img src="/blog/wp-content/uploads/2008/01/mappings.gif" alt="mappings.gif" width="480" height="82" /></p>
<p>Ensuring that the original project root (in bold) is at the bottom of the list we can now press OK.</p>
<p>That&#8217;s it. If we open one of our pages, in Symfony&#8217;s case one of the  files under web, and then press the debug button (green arrow with a D in) or press F5 the debugging session with launch and by default it&#8217;ll stop on the first line of the first file. You&#8217;re now in debug mode, alright!.</p>
<p>How to use the debugger is left as an exercise for the reader. As you&#8217;d expect there&#8217;s more information on <a href="http://www.nusphere.com/products/php_debugger.htm">PhpED&#8217;s debugging features</a> on their website.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.siftware.co.uk/blog/2008/01/debugging-with-phped-and-dbg/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>
