<?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>Strawberrysoup Blog &#38; News</title>
	<atom:link href="http://blog.strawberrysoup.co.uk/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.strawberrysoup.co.uk</link>
	<description>Creative web and design consultants in Chichester, Bournemouth and London</description>
	<lastBuildDate>Tue, 02 Mar 2010 16:26:13 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Testing Websites &#8211; Types of Testing</title>
		<link>http://blog.strawberrysoup.co.uk/2010/03/01/testing-websites-types-of-testin/</link>
		<comments>http://blog.strawberrysoup.co.uk/2010/03/01/testing-websites-types-of-testin/#comments</comments>
		<pubDate>Mon, 01 Mar 2010 12:39:22 +0000</pubDate>
		<dc:creator>Stuart</dc:creator>
				<category><![CDATA[Web Design]]></category>
		<category><![CDATA[Web Development]]></category>

		<guid isPermaLink="false">http://blog.strawberrysoup.co.uk/?p=726</guid>
		<description><![CDATA[
			
				
			
		
When you are trusting your entire company operations to a single website, it becomes the largest priority to keep it operating smoothly, efficiently and without any problems. Although there are not many companies that entire revenue stream is generated online, most modern companies will use their website to generate leads.
Making sure everything is running as [...]]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fblog.strawberrysoup.co.uk%2F2010%2F03%2F01%2Ftesting-websites-types-of-testin%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fblog.strawberrysoup.co.uk%2F2010%2F03%2F01%2Ftesting-websites-types-of-testin%2F&amp;source=strawberrysoup&amp;style=normal&amp;service=bit.ly" height="61" width="50" /><br />
			</a>
		</div>
<p>When you are trusting your entire company operations to a single website, it becomes the largest priority to keep it operating smoothly, efficiently and without any problems. Although there are not many companies that entire revenue stream is generated online, most modern companies will use their website to generate leads.</p>
<p>Making sure everything is running as it should be can be a daunting task; when there are over a thousand pages to test. However as the internet has grown and sites become larger and more important online so have the tools used to automate testing become more thorough and usable.</p>
<p><em>Tests in the programming world are separated into several areas, the main categories being:<strong> </strong></em></p>
<p><strong>Unit Testing</strong><br />
A system that tests each individual unit of the code separately to make sure it&#8217;s output is correct;     <strong></strong></p>
<p><strong>Functional Testing</strong><br />
Functional testing allows the sites operations to be tested as if used by a customer; the system is &#8220;spoofed&#8221; into acting as it would when accessed by a real person and the output is tested against a set of rules it should follow.</p>
<p><strong>Cross Browser Testing</strong><br />
Cross browser testing is the act of testing the sites design and layout in each browser to make sure it is visually similar to how it should be.</p>
<h2>Unit Testing</h2>
<p>When building large complex sites, it would be complex and costly to start from scratch with every project and build the groundwork from scratch; programmers have long learn&#8217;t that &#8220;re-inventing the wheel&#8221; is a pointless task which only increases the cost, amount of bugs and time needed to build a site. Instead, most programmers have a set of core tools and libraries which they use on every site; these are normally quite generic pieces of code that aid a developer in getting a site built quickly and smoothly.</p>
<p>Due to the way these units are used, it is the biggest priority that these units work exactly as they are supposed to; if a unit is found to have a bug in too late it can be on hundreds of sites that all would need upgrading manually. To stop this happening we use a &#8220;Unit Testing Framework&#8221; which allows us to write a set of expected outputs for a set of strict inputs, these are all manually worked out away from the program, e.g. in a library to work out VAT on products we would write a set of inputs (1 item at £5, 2 at £3, etc) and then manually work out the expected output and see if they match.</p>
<p>Although this may seem like a large amount of time to invest in such a small and simple module there is a huge amount of advantages; the main one being is if you change any of the code in the module you can simply re-run the test and make sure you haven&#8217;t broken anything. This can turn 1 hour of manual testing into a simple button click which an instantly tell is something has been broken.</p>
<p>A recent development in the &#8220;Agile Programming&#8221; area is Test Driven Development (TDD) this is nearly a complete reversal of the way code is written. In TDD a large number of tests are written that cover the whole purpose of the library and how it should perform; which code is then written against until it passes all tests.</p>
<h2>Functional Testing</h2>
<p>Although each unit has been tested individually and proven to have no bugs it is not surprising to find that integrating hundreds of these small units into a single site can sometimes have unexpected consequences. Functional testing can be used to help locate these problems and solve them correctly.</p>
<p>When the site is built (whether as a prototype or set live) a developer will go through the entire site manually testing each section of the site (search, re-ordering, contact forms, etc) and while this is happening, a tool (e.g. Selenium) will record all the actions that were taken to reach this point. This allows for the developer to re-run all these tests automatically in seconds whenever a new change has been made to the site; instantly allowing the developer to know if any parts of the site have been broken indirectly.</p>
<p>These tests can also be run on a regular schedule in the background to make sure nothing has been broken due to a time based error or change made by site owners; once a problem is found a developer is notified and the error can be fixed before anyone has noticed or any orders failed.</p>
<h2>Cross Browser Testing</h2>
<p>As the internet has evolved from a purely academic tool for research to a global point of communication for businesses and social reasons; the tools used to read and publish on the internet have changed. There are now more than 8 major browsers used to browse the web; each of these have different ways of handling text and layouts on web pages. Even though this can be seen as a small problem, it can sometimes have consequences larger than any programming bug; if the checkout button is invisible or hidden under an image in a browser such as Internet Explorer 6, then as many as up to 40% of the visitors will never be able to use the site.</p>
<p>Out of all the different types of testing that can be run on a website this is still the most manual; normally requiring someone to test each of the browsers on most pages manually. Luckily a websites&#8217; layout and design will normally stay the same once set live and so only required to be tested once. However for websites that do change content frequently or theme the site (colours, banners, etc) for special occasions, there are a small set of tools that are now being used to help the automation of this testing.</p>
<p>Both Adobe Browser labs and Litmus Testing allow for a single URL to be submitted to the server which then fetches a screen-shot of the site in every major browser allowing them to be compared next to each other to find any problems.</p>
<h2>Continuous Integration</h2>
<p>When developing a site it is a major advantage to be able to know the instant something goes wrong before the problem is made any worse or data loss occurs. To solve this problem Continuous Integration can be used; it&#8217;s name is quite generic and can be applied to a variety of things however at Strawberrysoup, we use it to automatically run all tests required as we are writing code. This means that the second we need it tested, we already have the results and know where the problem is and when it was caused; allowing smooth development of highly complex websites.</p>
<h2>Links</h2>
<ul>
<li>Wikipedia&#8217;s Entry on Unit Testing &#8211; <a href="http://en.wikipedia.org/wiki/Unit_testing">http://en.wikipedia.org/wiki/Unit_testing</a></li>
<li>Selenium Website Link &#8211; <a href="http://seleniumhq.org/">http://seleniumhq.org/</a></li>
<li>Links to Litmus website &#8211; <a href="http://litmusapp.com/">http://litmusapp.com/</a></li>
</ul>
<!-- Social Bookmarks BEGIN -->
<div class="social_bookmark">
<a><strong><em>Social Bookmarks</em></strong></a>
<br />
<div class="d">
<br />
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://blinklist.com/index.php?Action=Blink/addblink.php&amp;Name=Testing+Websites+%26%238211%3B+Types+of+Testing&amp;Description=Testing+Websites+%26%238211%3B+Types+of+Testing&amp;Url=http://blog.strawberrysoup.co.uk/2010/03/01/testing-websites-types-of-testin/" rel="nofollow" title="Add to&nbsp;BlinkList"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/blinklist.png" title="Add to&nbsp;BlinkList" alt="Add to&nbsp;BlinkList" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://del.icio.us/post?url=http://blog.strawberrysoup.co.uk/2010/03/01/testing-websites-types-of-testin/&amp;title=Testing+Websites+%26%238211%3B+Types+of+Testing" rel="nofollow" title="Add to&nbsp;Del.icio.us"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/delicious.png" title="Add to&nbsp;Del.icio.us" alt="Add to&nbsp;Del.icio.us" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://digg.com/submit?phase=2&amp;url=http://blog.strawberrysoup.co.uk/2010/03/01/testing-websites-types-of-testin/&amp;title=Testing+Websites+%26%238211%3B+Types+of+Testing" rel="nofollow" title="Add to&nbsp;digg"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/digg.png" title="Add to&nbsp;digg" alt="Add to&nbsp;digg" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.facebook.com/sharer.php?u=http://blog.strawberrysoup.co.uk/2010/03/01/testing-websites-types-of-testin/" rel="nofollow" title="Add to&nbsp;Facebook"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/facebook.png" title="Add to&nbsp;Facebook" alt="Add to&nbsp;Facebook" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.google.com/bookmarks/mark?op=edit&amp;output=popup&amp;bkmk=http://blog.strawberrysoup.co.uk/2010/03/01/testing-websites-types-of-testin/&amp;title=Testing+Websites+%26%238211%3B+Types+of+Testing" rel="nofollow" title="Add to&nbsp;Google Bookmarks"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/google.png" title="Add to&nbsp;Google Bookmarks" alt="Add to&nbsp;Google Bookmarks" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.mister-wong.com/index.php?action=addurl&amp;bm_url=http://blog.strawberrysoup.co.uk/2010/03/01/testing-websites-types-of-testin/&amp;bm_description=Testing+Websites+%26%238211%3B+Types+of+Testing" rel="nofollow" title="Add to&nbsp;Mister Wong"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/misterwong.png" title="Add to&nbsp;Mister Wong" alt="Add to&nbsp;Mister Wong" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://reddit.com/submit?url=http://blog.strawberrysoup.co.uk/2010/03/01/testing-websites-types-of-testin/&amp;title=Testing+Websites+%26%238211%3B+Types+of+Testing" rel="nofollow" title="Add to&nbsp;reddit"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/reddit.png" title="Add to&nbsp;reddit" alt="Add to&nbsp;reddit" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.stumbleupon.com/submit?url=http://blog.strawberrysoup.co.uk/2010/03/01/testing-websites-types-of-testin/&amp;title=Testing+Websites+%26%238211%3B+Types+of+Testing" rel="nofollow" title="Add to&nbsp;Stumble Upon"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/stumbleupon.png" title="Add to&nbsp;Stumble Upon" alt="Add to&nbsp;Stumble Upon" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.technorati.com/faves?add=http://blog.strawberrysoup.co.uk/2010/03/01/testing-websites-types-of-testin/" rel="nofollow" title="Add to&nbsp;Technorati"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/technorati.png" title="Add to&nbsp;Technorati" alt="Add to&nbsp;Technorati" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://tipd.com/submit.php?url=http://blog.strawberrysoup.co.uk/2010/03/01/testing-websites-types-of-testin/" rel="nofollow" title="Add to&nbsp;Tip'd"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/tipd.png" title="Add to&nbsp;Tip'd" alt="Add to&nbsp;Tip'd" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://twitter.com/home/?status=Check+out+Testing+Websites+%26%238211%3B+Types+of+Testing+@+http://blog.strawberrysoup.co.uk/2010/03/01/testing-websites-types-of-testin/" rel="nofollow" title="Add to&nbsp;Twitter"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/twitter.png" title="Add to&nbsp;Twitter" alt="Add to&nbsp;Twitter" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://myweb2.search.yahoo.com/myresults/bookmarklet?u=http://blog.strawberrysoup.co.uk/2010/03/01/testing-websites-types-of-testin/&amp;t=Testing+Websites+%26%238211%3B+Types+of+Testing" rel="nofollow" title="Add to&nbsp;Yahoo My Web"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/yahoo.png" title="Add to&nbsp;Yahoo My Web" alt="Add to&nbsp;Yahoo My Web" /></a>
<br />
</div>
</div>
<!-- Social Bookmarks END -->
]]></content:encoded>
			<wfw:commentRss>http://blog.strawberrysoup.co.uk/2010/03/01/testing-websites-types-of-testin/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WhereWeDesign Launched and 10,000 Visits per Day</title>
		<link>http://blog.strawberrysoup.co.uk/2010/02/12/wherewedesign-launched-and-10000-visits-per-day/</link>
		<comments>http://blog.strawberrysoup.co.uk/2010/02/12/wherewedesign-launched-and-10000-visits-per-day/#comments</comments>
		<pubDate>Fri, 12 Feb 2010 13:59:11 +0000</pubDate>
		<dc:creator>Neil</dc:creator>
				<category><![CDATA[Design]]></category>
		<category><![CDATA[News]]></category>
		<category><![CDATA[Portfolio]]></category>
		<category><![CDATA[Strawberrysoup]]></category>

		<guid isPermaLink="false">http://blog.strawberrysoup.co.uk/?p=718</guid>
		<description><![CDATA[
			
				
			
		
We love the design community and the people, agencies and places that everyone works. With this in mind, we launched WhereWeDesign in January 2010 &#8211; a new community whereby creative people can share where they work.
The response to date has been fantastic. We have had submissions from graphic designers, architects, web designers, musicians, interior  [...]]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fblog.strawberrysoup.co.uk%2F2010%2F02%2F12%2Fwherewedesign-launched-and-10000-visits-per-day%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fblog.strawberrysoup.co.uk%2F2010%2F02%2F12%2Fwherewedesign-launched-and-10000-visits-per-day%2F&amp;source=strawberrysoup&amp;style=normal&amp;service=bit.ly" height="61" width="50" /><br />
			</a>
		</div>
<p>We love the design community and the people, agencies and places that everyone works. With this in mind, we launched <a title="WhereWeDesign" href="http://www.wherewedesign.com">WhereWeDesign</a> in January 2010 &#8211; a new community whereby creative people can share where they work.</p>
<p>The response to date has been fantastic. We have had submissions from graphic designers, architects, web designers, musicians, interior  designers and various other creative people who wanted to share their spaces as inspiration to others. There has been lots of activity on social networking websites like Facebook and <a title="Twitter" href="http://search.twitter.com/search?q=wherewedesign">Twitter</a>.</p>
<p>At the peak of its traffic to date, the website attracted 10,000 visits in one day following a featured on <a title="http://www.twitter.com/smashingmag" href="http://www.twitter.com/smashingmag">@smashingmag</a> whereby the server crashed due to the levels of traffic that the website received! We are also really proud of the response the website has received from the blogging community, with many personal blogs featuring the website and recommending users to submit their workspaces.</p>
<p>Some of our personal favourites include <a title="Parliament" href="http://wherewedesign.com/2010/01/parliament/">Parliament</a>, <a title="Bark Design" href="http://wherewedesign.com/2010/02/bark-design/">Bark Design</a> and <a title="APFEL" href="http://wherewedesign.com/2010/01/apfel/">APFEL</a>. Thanks so much for everyone&#8217;s support so far, and keep submitting your design workspaces!!</p>
<p><a href="http://blog.strawberrysoup.co.uk/wp-content/uploads/2010/02/Screen-shot-2010-02-12-at-13.52.24.png"><img class="alignnone size-full wp-image-719" title="WhereWeDesign" src="http://blog.strawberrysoup.co.uk/wp-content/uploads/2010/02/Screen-shot-2010-02-12-at-13.52.24.png" alt="WhereWeDesign" width="630" height="535" /></a></p>
<!-- Social Bookmarks BEGIN -->
<div class="social_bookmark">
<a><strong><em>Social Bookmarks</em></strong></a>
<br />
<div class="d">
<br />
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://blinklist.com/index.php?Action=Blink/addblink.php&amp;Name=WhereWeDesign+Launched+and+10%2C000+Visits+per+Day&amp;Description=WhereWeDesign+Launched+and+10%2C000+Visits+per+Day&amp;Url=http://blog.strawberrysoup.co.uk/2010/02/12/wherewedesign-launched-and-10000-visits-per-day/" rel="nofollow" title="Add to&nbsp;BlinkList"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/blinklist.png" title="Add to&nbsp;BlinkList" alt="Add to&nbsp;BlinkList" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://del.icio.us/post?url=http://blog.strawberrysoup.co.uk/2010/02/12/wherewedesign-launched-and-10000-visits-per-day/&amp;title=WhereWeDesign+Launched+and+10%2C000+Visits+per+Day" rel="nofollow" title="Add to&nbsp;Del.icio.us"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/delicious.png" title="Add to&nbsp;Del.icio.us" alt="Add to&nbsp;Del.icio.us" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://digg.com/submit?phase=2&amp;url=http://blog.strawberrysoup.co.uk/2010/02/12/wherewedesign-launched-and-10000-visits-per-day/&amp;title=WhereWeDesign+Launched+and+10%2C000+Visits+per+Day" rel="nofollow" title="Add to&nbsp;digg"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/digg.png" title="Add to&nbsp;digg" alt="Add to&nbsp;digg" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.facebook.com/sharer.php?u=http://blog.strawberrysoup.co.uk/2010/02/12/wherewedesign-launched-and-10000-visits-per-day/" rel="nofollow" title="Add to&nbsp;Facebook"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/facebook.png" title="Add to&nbsp;Facebook" alt="Add to&nbsp;Facebook" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.google.com/bookmarks/mark?op=edit&amp;output=popup&amp;bkmk=http://blog.strawberrysoup.co.uk/2010/02/12/wherewedesign-launched-and-10000-visits-per-day/&amp;title=WhereWeDesign+Launched+and+10%2C000+Visits+per+Day" rel="nofollow" title="Add to&nbsp;Google Bookmarks"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/google.png" title="Add to&nbsp;Google Bookmarks" alt="Add to&nbsp;Google Bookmarks" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.mister-wong.com/index.php?action=addurl&amp;bm_url=http://blog.strawberrysoup.co.uk/2010/02/12/wherewedesign-launched-and-10000-visits-per-day/&amp;bm_description=WhereWeDesign+Launched+and+10%2C000+Visits+per+Day" rel="nofollow" title="Add to&nbsp;Mister Wong"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/misterwong.png" title="Add to&nbsp;Mister Wong" alt="Add to&nbsp;Mister Wong" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://reddit.com/submit?url=http://blog.strawberrysoup.co.uk/2010/02/12/wherewedesign-launched-and-10000-visits-per-day/&amp;title=WhereWeDesign+Launched+and+10%2C000+Visits+per+Day" rel="nofollow" title="Add to&nbsp;reddit"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/reddit.png" title="Add to&nbsp;reddit" alt="Add to&nbsp;reddit" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.stumbleupon.com/submit?url=http://blog.strawberrysoup.co.uk/2010/02/12/wherewedesign-launched-and-10000-visits-per-day/&amp;title=WhereWeDesign+Launched+and+10%2C000+Visits+per+Day" rel="nofollow" title="Add to&nbsp;Stumble Upon"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/stumbleupon.png" title="Add to&nbsp;Stumble Upon" alt="Add to&nbsp;Stumble Upon" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.technorati.com/faves?add=http://blog.strawberrysoup.co.uk/2010/02/12/wherewedesign-launched-and-10000-visits-per-day/" rel="nofollow" title="Add to&nbsp;Technorati"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/technorati.png" title="Add to&nbsp;Technorati" alt="Add to&nbsp;Technorati" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://tipd.com/submit.php?url=http://blog.strawberrysoup.co.uk/2010/02/12/wherewedesign-launched-and-10000-visits-per-day/" rel="nofollow" title="Add to&nbsp;Tip'd"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/tipd.png" title="Add to&nbsp;Tip'd" alt="Add to&nbsp;Tip'd" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://twitter.com/home/?status=Check+out+WhereWeDesign+Launched+and+10%2C000+Visits+per+Day+@+http://blog.strawberrysoup.co.uk/2010/02/12/wherewedesign-launched-and-10000-visits-per-day/" rel="nofollow" title="Add to&nbsp;Twitter"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/twitter.png" title="Add to&nbsp;Twitter" alt="Add to&nbsp;Twitter" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://myweb2.search.yahoo.com/myresults/bookmarklet?u=http://blog.strawberrysoup.co.uk/2010/02/12/wherewedesign-launched-and-10000-visits-per-day/&amp;t=WhereWeDesign+Launched+and+10%2C000+Visits+per+Day" rel="nofollow" title="Add to&nbsp;Yahoo My Web"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/yahoo.png" title="Add to&nbsp;Yahoo My Web" alt="Add to&nbsp;Yahoo My Web" /></a>
<br />
</div>
</div>
<!-- Social Bookmarks END -->
]]></content:encoded>
			<wfw:commentRss>http://blog.strawberrysoup.co.uk/2010/02/12/wherewedesign-launched-and-10000-visits-per-day/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The AA Choose Strawberrysoup</title>
		<link>http://blog.strawberrysoup.co.uk/2010/02/12/the-aa-chooses-strawberrysoup/</link>
		<comments>http://blog.strawberrysoup.co.uk/2010/02/12/the-aa-chooses-strawberrysoup/#comments</comments>
		<pubDate>Fri, 12 Feb 2010 13:47:30 +0000</pubDate>
		<dc:creator>Keith</dc:creator>
				<category><![CDATA[Design]]></category>
		<category><![CDATA[News]]></category>

		<guid isPermaLink="false">http://blog.strawberrysoup.co.uk/?p=712</guid>
		<description><![CDATA[
			
				
			
		
We love working with brands we admire, and we are pleased to announce that The AA has chosen Strawberrysoup to help them design a series of email campaigns for their various divisions.
This exciting project involves both our design and technical team, who are responsible for designing new and innovative ways of displaying information and special [...]]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fblog.strawberrysoup.co.uk%2F2010%2F02%2F12%2Fthe-aa-chooses-strawberrysoup%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fblog.strawberrysoup.co.uk%2F2010%2F02%2F12%2Fthe-aa-chooses-strawberrysoup%2F&amp;source=strawberrysoup&amp;style=normal&amp;service=bit.ly" height="61" width="50" /><br />
			</a>
		</div>
<p>We love working with brands we admire, and we are pleased to announce that <a title="The AA" href="http://www.theaa.com">The AA</a> has chosen Strawberrysoup to help them design a series of email campaigns for their various divisions.</p>
<p>This exciting project involves both our design and technical team, who are responsible for designing new and innovative ways of displaying information and special offers via emails which are sent direct to The AA&#8217;s customers. The emails will be sent to hundred of thousands of subscribers, so ensuring they are easy to read, navigate and that calls-to-action are obvious is very important to the overall campaign success.</p>
<p><a href="http://blog.strawberrysoup.co.uk/wp-content/uploads/2010/02/aa.jpg"><img class="alignnone size-full wp-image-713" title="The AA" src="http://blog.strawberrysoup.co.uk/wp-content/uploads/2010/02/aa.jpg" alt="The AA" width="630" height="139" /></a></p>
<!-- Social Bookmarks BEGIN -->
<div class="social_bookmark">
<a><strong><em>Social Bookmarks</em></strong></a>
<br />
<div class="d">
<br />
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://blinklist.com/index.php?Action=Blink/addblink.php&amp;Name=The+AA+Choose+Strawberrysoup&amp;Description=The+AA+Choose+Strawberrysoup&amp;Url=http://blog.strawberrysoup.co.uk/2010/02/12/the-aa-chooses-strawberrysoup/" rel="nofollow" title="Add to&nbsp;BlinkList"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/blinklist.png" title="Add to&nbsp;BlinkList" alt="Add to&nbsp;BlinkList" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://del.icio.us/post?url=http://blog.strawberrysoup.co.uk/2010/02/12/the-aa-chooses-strawberrysoup/&amp;title=The+AA+Choose+Strawberrysoup" rel="nofollow" title="Add to&nbsp;Del.icio.us"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/delicious.png" title="Add to&nbsp;Del.icio.us" alt="Add to&nbsp;Del.icio.us" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://digg.com/submit?phase=2&amp;url=http://blog.strawberrysoup.co.uk/2010/02/12/the-aa-chooses-strawberrysoup/&amp;title=The+AA+Choose+Strawberrysoup" rel="nofollow" title="Add to&nbsp;digg"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/digg.png" title="Add to&nbsp;digg" alt="Add to&nbsp;digg" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.facebook.com/sharer.php?u=http://blog.strawberrysoup.co.uk/2010/02/12/the-aa-chooses-strawberrysoup/" rel="nofollow" title="Add to&nbsp;Facebook"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/facebook.png" title="Add to&nbsp;Facebook" alt="Add to&nbsp;Facebook" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.google.com/bookmarks/mark?op=edit&amp;output=popup&amp;bkmk=http://blog.strawberrysoup.co.uk/2010/02/12/the-aa-chooses-strawberrysoup/&amp;title=The+AA+Choose+Strawberrysoup" rel="nofollow" title="Add to&nbsp;Google Bookmarks"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/google.png" title="Add to&nbsp;Google Bookmarks" alt="Add to&nbsp;Google Bookmarks" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.mister-wong.com/index.php?action=addurl&amp;bm_url=http://blog.strawberrysoup.co.uk/2010/02/12/the-aa-chooses-strawberrysoup/&amp;bm_description=The+AA+Choose+Strawberrysoup" rel="nofollow" title="Add to&nbsp;Mister Wong"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/misterwong.png" title="Add to&nbsp;Mister Wong" alt="Add to&nbsp;Mister Wong" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://reddit.com/submit?url=http://blog.strawberrysoup.co.uk/2010/02/12/the-aa-chooses-strawberrysoup/&amp;title=The+AA+Choose+Strawberrysoup" rel="nofollow" title="Add to&nbsp;reddit"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/reddit.png" title="Add to&nbsp;reddit" alt="Add to&nbsp;reddit" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.stumbleupon.com/submit?url=http://blog.strawberrysoup.co.uk/2010/02/12/the-aa-chooses-strawberrysoup/&amp;title=The+AA+Choose+Strawberrysoup" rel="nofollow" title="Add to&nbsp;Stumble Upon"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/stumbleupon.png" title="Add to&nbsp;Stumble Upon" alt="Add to&nbsp;Stumble Upon" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.technorati.com/faves?add=http://blog.strawberrysoup.co.uk/2010/02/12/the-aa-chooses-strawberrysoup/" rel="nofollow" title="Add to&nbsp;Technorati"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/technorati.png" title="Add to&nbsp;Technorati" alt="Add to&nbsp;Technorati" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://tipd.com/submit.php?url=http://blog.strawberrysoup.co.uk/2010/02/12/the-aa-chooses-strawberrysoup/" rel="nofollow" title="Add to&nbsp;Tip'd"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/tipd.png" title="Add to&nbsp;Tip'd" alt="Add to&nbsp;Tip'd" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://twitter.com/home/?status=Check+out+The+AA+Choose+Strawberrysoup+@+http://blog.strawberrysoup.co.uk/2010/02/12/the-aa-chooses-strawberrysoup/" rel="nofollow" title="Add to&nbsp;Twitter"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/twitter.png" title="Add to&nbsp;Twitter" alt="Add to&nbsp;Twitter" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://myweb2.search.yahoo.com/myresults/bookmarklet?u=http://blog.strawberrysoup.co.uk/2010/02/12/the-aa-chooses-strawberrysoup/&amp;t=The+AA+Choose+Strawberrysoup" rel="nofollow" title="Add to&nbsp;Yahoo My Web"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/yahoo.png" title="Add to&nbsp;Yahoo My Web" alt="Add to&nbsp;Yahoo My Web" /></a>
<br />
</div>
</div>
<!-- Social Bookmarks END -->
]]></content:encoded>
			<wfw:commentRss>http://blog.strawberrysoup.co.uk/2010/02/12/the-aa-chooses-strawberrysoup/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Building Location Aware Sites with Geo-IP</title>
		<link>http://blog.strawberrysoup.co.uk/2010/01/14/building-location-aware-sites-with-geo-ip/</link>
		<comments>http://blog.strawberrysoup.co.uk/2010/01/14/building-location-aware-sites-with-geo-ip/#comments</comments>
		<pubDate>Thu, 14 Jan 2010 11:13:36 +0000</pubDate>
		<dc:creator>Stuart</dc:creator>
				<category><![CDATA[Articles]]></category>
		<category><![CDATA[Labs]]></category>
		<category><![CDATA[Strawberrysoup]]></category>
		<category><![CDATA[Web Development]]></category>

		<guid isPermaLink="false">http://blog.strawberrysoup.co.uk/?p=685</guid>
		<description><![CDATA[
			
				
			
		
One of the most powerful features of the internet is the power to connect and share from opposite poles of the earth; no longer does your geographic location affect who you talk to or what you read. Companies that were once specific to a certain location now have access to the whole online market; with [...]]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fblog.strawberrysoup.co.uk%2F2010%2F01%2F14%2Fbuilding-location-aware-sites-with-geo-ip%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fblog.strawberrysoup.co.uk%2F2010%2F01%2F14%2Fbuilding-location-aware-sites-with-geo-ip%2F&amp;source=strawberrysoup&amp;style=normal&amp;service=bit.ly" height="61" width="50" /><br />
			</a>
		</div>
<p>One of the most powerful features of the internet is the power to connect and share from opposite poles of the earth; no longer does your geographic location affect who you talk to or what you read. Companies that were once specific to a certain location now have access to the whole online market; with 1.4 billion people currently connected it opens up whole new revenue streams.</p>
<p><a href="http://blog.strawberrysoup.co.uk/wp-content/uploads/2010/01/Screen-shot-2010-01-14-at-11.10.25.png"><img class="alignleft size-full wp-image-687" title="Screen shot" src="http://blog.strawberrysoup.co.uk/wp-content/uploads/2010/01/Screen-shot-2010-01-14-at-11.10.25.png" alt="" width="234" height="69" /></a>The final product will simply tell you where it thinks you are and allows you to set a new default location.</p>
<p>However with this global access there becomes another problem, not all data is global; the weather in London is most likely different to the current weather in New York. What about shopping? Currencies often change between borders and tax makes things even more complex. There have been countless solutions to this problem; the most glaringly obvious is a splash page or a form asking for the users location.</p>
<p>There’s nothing wrong with these solutions but there’s also nothing special about them, just more distractions and obstacles between the user and their final destination. In this tutorial we’ll be building a simple function and demo which solves this problem and should be easily pluggable into any new or existing project.</p>
<h2>Location Uses?</h2>
<p>As previously mentioned there are several uses for location based sites; simply looking through the days history in your favourite browser will probably reveal several sites that have asked for your location before, whether it be for simple data collection or put to use to give you more relevant information; local news, weather, messages from people close by or maybe to warn you about bad traffic in your area.</p>
<p>How many times in the last month have you entered your address or country? Whenever you&#8217;ve bought anything online or registered to a new site you&#8217;ve doubtless had to put in a variety of location based answers.</p>
<h2>So what is GeoIP?</h2>
<p>GeoIP is the common name given to the technique of determining a visitors Geographical location based on their visiting IP. It requires a database which pairs IP blocks to a country and/or city, these are available from several places online however for this tutorial to work than you will have to use the IPinfoDB SQL, available and updated monthly at http://www.ipinfodb.com/ip_database.php we’ll be specifically using the country only version with only one table, this is for performance and simplicity reasons &#8211; once you have the tutorial working with the country only version, modifying the script to work with the other versions should be simple. So go ahead and create a blank MySQL database and import the SQL straight into it.</p>
<p><strong>1. Set up project</strong></p>
<p>Create a blank index.php somewhere on your PHP enabled server and write the following lines into it, replacing all the variables to whatever username, password and database name you have chosen to use.</p>
<pre>&lt;?php
mysql_connect('localhost', '%USERNAME%', '%PASSWORD%');
mysql_select_db('%DBNAME%');
?&gt;</pre>
<p><strong>2. Building the detection script</strong></p>
<p>The first actual fresh code we need to do write is the script which detects the users location &#8211; surprisingly this is actually quite simple and straightforward once you have a simple database to query. All the function is going to do is query the database for the closest result and then return the country name.</p>
<pre>function detect_location($ip=false) {
 if(!$ip) $ip = $_SERVER['REMOTE_ADDR'];
 $parts = explode('.', $ip);
 $iph = (($parts[0]*256+$parts[1])*256+$parts[2])*256 + $parts[3];
 $result = mysql_query('SELECT country_name FROM `ip_group_country` where `ip_start` &lt;= '.$iph.'order by ip_start desc limit 1');
 while ($row = mysql_fetch_assoc($result)) {
 return $row['country_name'];
 }
}
?&gt;</pre>
<p>So what does all of this do? Well let’s go through it bit by bit:</p>
<pre>if(!$ip) $ip = $_SERVER['REMOTE_ADDR'];</pre>
<p>This sets the first $ip to the visitors IP if the function receives no parameter</p>
<pre>$parts = explode('.', $ip);
$iph = (($parts[0]*256+$parts[1])*256+$parts[2])*256 + $parts[3];</pre>
<p>This bit is the most confusing bit, the first line splits the IP into it’s four sections, the second line put’s it into a format usable for the database.</p>
<p>After that the rest is a simple SQL query to get the first result which matches the IP closest and then returns the country name.</p>
<p><strong>3. Displaying results to the user</strong></p>
<p>This is where we actually start using our function and giving it a purpose, we’ll start simple and just display where we think the user is coming from, underneath the PHP block write the following below:</p>
<pre>&lt;?php
$country = detect_location();
?&gt;
&lt;h1&gt;Are you from: &lt;?=$country?&gt;&lt;/h1&gt;</pre>
<p><strong>4. Is it wrong?</strong></p>
<p>Now you can visit your file in a browser and see if it guesses your location is correct; it’s wrong? Well if you run the file locally then it will always be wrong because it detects your local IP (127.0.0.1 or ::1). So what can you do? Short of testing it by placing it on a public machine elsewhere we can modify our code to force an IP:</p>
<pre>Change $country = detect_location(); to read $country = detect_location('74.125.45.100');.</pre>
<p>Testing it again should return &#8220;United States&#8221; &#8211; this is because the IP is one of Googles US servers IP&#8217;s. From here on we could just carry on but from seeing that error it exposes a simple problem; as with most programming things it will not be 100% correct every time. So how can we fix this? Well in the unlikely event it is wrong we can give the user some way of changing it. Modify the current code to match that of below and afterwards it will be explained.</p>
<pre>&lt;?php
session_start();
mysql_connect(‘localhost’, ‘%USERNAME%’, ‘%PASSWORD%’);
mysql_select_db(‘%DBNAME%’);
function detect_location($ip=false) {
 if(!$ip) $ip = $_SERVER['REMOTE_ADDR'];
 $parts = explode('.', $ip);
 $iph = (($parts[0]*256+$parts[1])*256+$parts[2])*256 + $parts[3];
 $result = mysql_query('SELECT country_name FROM `ip_group_country` where `ip_start` &lt;= '.$iph.'order by ip_start desc limit 1');
 while ($row = mysql_fetch_assoc($result)) {
 return $row['country_name'];
 }
}
if($_POST &amp;&amp; $_POST[‘country’]) {
 $_SESSION[‘country’] = $_POST[‘country’];
}
$country = (isset($_SESSION[‘country’])) ? $_SESSION[‘country’] :
detect_location($_SERVER['REMOTE_ADDR']);
?&gt;
&lt;h1&gt;Are you from: &lt;?=$country?&gt;&lt;/h1&gt;
&lt;p&gt;Change Region:
&lt;form action="" method="post"&gt;
 &lt;select name="country"&gt;
 &lt;option value="United Kingdom"&gt;United Kingdom&lt;/option&gt;
 &lt;option value="France"&gt;France&lt;/option&gt;
 &lt;/select&gt;
 &lt;input type="submit" value="Go" /&gt;
&lt;/p&gt;</pre>
<p>For now there is only the option to change your country to either the UK or France, but it should be easily changeable to list all countries &#8211; either by finding the select HTML from somewhere online or plugging it into a database table of all countries<strong> </strong></p>
<p><strong>4a &#8211; Making sense of it all</strong></p>
<p>As you can tell the size of the code has suddenly doubled, so it’s probably time to inspect what is actually happening in each section to dispel all claims of magic. Each addition is documented below in enough detail for you to understand it&#8217;s purpose.</p>
<pre>session_start();</pre>
<p>This tells the PHP engine that our script will be using sessions so needs to give the visitor a session to use, or retrieve their current session off the filesystem.</p>
<pre>if($_POST &amp;&amp; $_POST[‘country’]) {
 $_SESSION[‘country’] = $_POST[‘country’];
}</pre>
<p>This detects if a new country name has been submitted to the page via POST, if this occurs than the data is saved into a session &#8211; if this wasn&#8217;t done than the user would have to tell the site where they are for every page request which would be extremely bad usability.</p>
<pre>$country = (isset($_SESSION[‘country’])) ? $_SESSION[‘country’] : detect_location($_SERVER['REMOTE_ADDR']);</pre>
<p>To those that have not seen a ternary if statement in PHP this may seem like a daunting piece of code however once explained it&#8217;s actually very simple. In PHP as well as a lot of other C based languages you can write single line if/else statements using something called a ternary statement. The syntax is as follows:</p>
<pre>(expression) ? true : false</pre>
<p>So applying that to our code above gives the explanation; first it checks to see if $_SESSION['country'] is set, if it is than $country is set to contain the sessions value, if not than it is retrieved out of the database.</p>
<p>Under the old &lt;h1&gt; there’s a form in which the important things to note is that the action is set to blank so it submits to whatever URL you are on and that the method is set to post. Inside the form there is only a select box which is where the visitor can choose what country they are in.</p>
<p><strong>5. Test, Play, Experiment</strong></p>
<p>After typing all of that above, fire up the page in your favourite browser and test the new drop down out; then make sure it saves when you refresh the page. It works? Finally. Now that this all works you should hopefully have enough basic knowledge about GeoIP to build it into a new project and even change the script to do some even more amazing things.</p>
<p><a href="http://blog.strawberrysoup.co.uk/wp-content/uploads/2010/01/Screen-shot-2010-01-14-at-11.11.541.png"><img class="alignleft size-full wp-image-690" title="Screen shot" src="http://blog.strawberrysoup.co.uk/wp-content/uploads/2010/01/Screen-shot-2010-01-14-at-11.11.541.png" alt="" width="634" height="315" /></a></p>
<p>At only 28 lines of code you can see how simple it is to build such useful functionality.</p>
<h2>Online API’s</h2>
<p>If you don’t have access to a SQL database or don’t want to host the database locally, IPinfoDB hosts a simply web API for submitting an IP and getting back it’s information in a variety of formats including JSON and XML. The downside of this is it means you are reliant on their servers being online 100% of the time and also that they keep the service available and free. The upside though is that all maintenance is done by them so you don’t have to update your IP tables every month or so. For documentation on this API documentation is available at: http://www.ipinfodb.com/ip_location_api.php The easiest way to use this is with the simple code below:</p>
<pre>&lt;?php
 session_start();
 if(!isset($_SESSION['country'])) {
 $file = file_get_contents('http://ipinfodb.com/ip_query.php?ip='.$_SERVER['REMOTE_ADDR'].'&amp;format=json');
 $data = json_decode($file);
 $_SESSION['country'] = $data['CountryName'];
 }
 $country = $_SESSION['country'];
 echo 'You live in: '.$country;
?&gt;</pre>
<p>This also saves the users location in a session so that you don’t have to keep sending requests to the API’s server &#8211; this has a number of advantages; speeding up your page loads, lowering bandwidth usage and decreasing the chance of ever going over any fair usage policy.</p>
<h2>HTML5 Geolocation API</h2>
<p>One of the recent additions to the HTML5 specification is a new javascript API for retrieving geographical information about the visitor, this includes the ability to gain coordinates for the visitor but also to watch the visitors location for changes. Currently it is already supported in Firefox 3.5 as well as a similar available for the Google Gears API. Being able to retrieve more precise information from the visitor (especially on the client-side) could lead to some interesting uses and web applications. More information and documentation on it’s features can be found at: http://www.w3.org/TR/geolocation-API/</p>
<p>Although there aren’t a lot of public examples of this new HTML5 API, it’s only time before people start creating games played on smartphones which interact with each others position or some other imaginative use.</p>
<h2>Sites Using GeoIP</h2>
<p>The newly launched irregular choice store uses GeoIP to display localised stock lists and prices at <a href="http://shop.irregularchoice.com" target="_blank">http://shop.irregularchoice.com</a></p>
<p>GeoIP isn’t just restricted to PHP and conventional HTML;  an example of GeoIP in a flex app using python exists at: <a href="http://blog.pyamf.org/archives/geoip-example" target="_blank">http://blog.pyamf.org/archives/geoip-example</a></p>
<h2>Resources</h2>
<p>If your using Lighttpd then you can use mod_geoip to handle all the logic for you enabling you to focus on what you do with a visitors location. You can find a tutorial at: <a href="http://www.cyberciti.biz/tips/linux-lighttpd-install-mod_geoip-tutorial.html" target="_blank">http://www.cyberciti.biz/tips/linux-lighttpd-install-mod_geoip-tutorial.html</a></p>
<!-- Social Bookmarks BEGIN -->
<div class="social_bookmark">
<a><strong><em>Social Bookmarks</em></strong></a>
<br />
<div class="d">
<br />
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://blinklist.com/index.php?Action=Blink/addblink.php&amp;Name=Building+Location+Aware+Sites+with+Geo-IP&amp;Description=Building+Location+Aware+Sites+with+Geo-IP&amp;Url=http://blog.strawberrysoup.co.uk/2010/01/14/building-location-aware-sites-with-geo-ip/" rel="nofollow" title="Add to&nbsp;BlinkList"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/blinklist.png" title="Add to&nbsp;BlinkList" alt="Add to&nbsp;BlinkList" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://del.icio.us/post?url=http://blog.strawberrysoup.co.uk/2010/01/14/building-location-aware-sites-with-geo-ip/&amp;title=Building+Location+Aware+Sites+with+Geo-IP" rel="nofollow" title="Add to&nbsp;Del.icio.us"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/delicious.png" title="Add to&nbsp;Del.icio.us" alt="Add to&nbsp;Del.icio.us" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://digg.com/submit?phase=2&amp;url=http://blog.strawberrysoup.co.uk/2010/01/14/building-location-aware-sites-with-geo-ip/&amp;title=Building+Location+Aware+Sites+with+Geo-IP" rel="nofollow" title="Add to&nbsp;digg"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/digg.png" title="Add to&nbsp;digg" alt="Add to&nbsp;digg" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.facebook.com/sharer.php?u=http://blog.strawberrysoup.co.uk/2010/01/14/building-location-aware-sites-with-geo-ip/" rel="nofollow" title="Add to&nbsp;Facebook"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/facebook.png" title="Add to&nbsp;Facebook" alt="Add to&nbsp;Facebook" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.google.com/bookmarks/mark?op=edit&amp;output=popup&amp;bkmk=http://blog.strawberrysoup.co.uk/2010/01/14/building-location-aware-sites-with-geo-ip/&amp;title=Building+Location+Aware+Sites+with+Geo-IP" rel="nofollow" title="Add to&nbsp;Google Bookmarks"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/google.png" title="Add to&nbsp;Google Bookmarks" alt="Add to&nbsp;Google Bookmarks" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.mister-wong.com/index.php?action=addurl&amp;bm_url=http://blog.strawberrysoup.co.uk/2010/01/14/building-location-aware-sites-with-geo-ip/&amp;bm_description=Building+Location+Aware+Sites+with+Geo-IP" rel="nofollow" title="Add to&nbsp;Mister Wong"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/misterwong.png" title="Add to&nbsp;Mister Wong" alt="Add to&nbsp;Mister Wong" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://reddit.com/submit?url=http://blog.strawberrysoup.co.uk/2010/01/14/building-location-aware-sites-with-geo-ip/&amp;title=Building+Location+Aware+Sites+with+Geo-IP" rel="nofollow" title="Add to&nbsp;reddit"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/reddit.png" title="Add to&nbsp;reddit" alt="Add to&nbsp;reddit" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.stumbleupon.com/submit?url=http://blog.strawberrysoup.co.uk/2010/01/14/building-location-aware-sites-with-geo-ip/&amp;title=Building+Location+Aware+Sites+with+Geo-IP" rel="nofollow" title="Add to&nbsp;Stumble Upon"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/stumbleupon.png" title="Add to&nbsp;Stumble Upon" alt="Add to&nbsp;Stumble Upon" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.technorati.com/faves?add=http://blog.strawberrysoup.co.uk/2010/01/14/building-location-aware-sites-with-geo-ip/" rel="nofollow" title="Add to&nbsp;Technorati"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/technorati.png" title="Add to&nbsp;Technorati" alt="Add to&nbsp;Technorati" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://tipd.com/submit.php?url=http://blog.strawberrysoup.co.uk/2010/01/14/building-location-aware-sites-with-geo-ip/" rel="nofollow" title="Add to&nbsp;Tip'd"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/tipd.png" title="Add to&nbsp;Tip'd" alt="Add to&nbsp;Tip'd" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://twitter.com/home/?status=Check+out+Building+Location+Aware+Sites+with+Geo-IP+@+http://blog.strawberrysoup.co.uk/2010/01/14/building-location-aware-sites-with-geo-ip/" rel="nofollow" title="Add to&nbsp;Twitter"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/twitter.png" title="Add to&nbsp;Twitter" alt="Add to&nbsp;Twitter" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://myweb2.search.yahoo.com/myresults/bookmarklet?u=http://blog.strawberrysoup.co.uk/2010/01/14/building-location-aware-sites-with-geo-ip/&amp;t=Building+Location+Aware+Sites+with+Geo-IP" rel="nofollow" title="Add to&nbsp;Yahoo My Web"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/yahoo.png" title="Add to&nbsp;Yahoo My Web" alt="Add to&nbsp;Yahoo My Web" /></a>
<br />
</div>
</div>
<!-- Social Bookmarks END -->
]]></content:encoded>
			<wfw:commentRss>http://blog.strawberrysoup.co.uk/2010/01/14/building-location-aware-sites-with-geo-ip/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>New Branding and Website for Denise Kelly</title>
		<link>http://blog.strawberrysoup.co.uk/2010/01/08/new-branding-and-website-for-denise-kelly/</link>
		<comments>http://blog.strawberrysoup.co.uk/2010/01/08/new-branding-and-website-for-denise-kelly/#comments</comments>
		<pubDate>Fri, 08 Jan 2010 22:05:10 +0000</pubDate>
		<dc:creator>Pree</dc:creator>
				<category><![CDATA[Branding]]></category>
		<category><![CDATA[Graphic Design]]></category>
		<category><![CDATA[Portfolio]]></category>
		<category><![CDATA[Web Design]]></category>
		<category><![CDATA[Web Development]]></category>

		<guid isPermaLink="false">http://blog.strawberrysoup.co.uk/?p=681</guid>
		<description><![CDATA[
			
				
			
		
Denise Kelly, as a Nutritional Therapist provides personal, professional and unique advice on how anyone can improve the quality of their health. She can help deal with chronic or acute diseases, help with boosting the immune system, increase energy levels, enthusiasm and vibrancy for life.
As this was a completely new business venture, Denise Kelly needed [...]]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fblog.strawberrysoup.co.uk%2F2010%2F01%2F08%2Fnew-branding-and-website-for-denise-kelly%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fblog.strawberrysoup.co.uk%2F2010%2F01%2F08%2Fnew-branding-and-website-for-denise-kelly%2F&amp;source=strawberrysoup&amp;style=normal&amp;service=bit.ly" height="61" width="50" /><br />
			</a>
		</div>
<p><a href="http://www.denisekelly.co.uk">Denise Kelly</a>, as a Nutritional Therapist provides personal, professional and unique advice on how anyone can improve the quality of their health. She can help deal with chronic or acute diseases, help with boosting the immune system, increase energy levels, enthusiasm and vibrancy for life.</p>
<p>As this was a completely new business venture, Denise Kelly needed full branding together with a vibrant but simple website.</p>
<p>The entire Denise Kelly (or DK) brand comprises of 2 other brands, K4 Fit Kidz and The Fridge Detective. Although all 3 brands are within the health and fitness sector, each offers something different.</p>
<p>Although the website part of this project was relatively small, it was the branding and ‘voice’ that proved to be the biggest challenge. As this was a new business a huge amount of consultation between Strawberrysoup and Denise Kelly occurred. Understanding the direction of the business was key to developing a great looking website.</p>
<p><a href="http://blog.strawberrysoup.co.uk/wp-content/uploads/2010/01/denisekelly.jpg"><img class="alignleft size-full wp-image-682" title="Denise Kelly" src="http://blog.strawberrysoup.co.uk/wp-content/uploads/2010/01/denisekelly.jpg" alt="Denise Kelly" width="630" height="139" /></a></p>
<!-- Social Bookmarks BEGIN -->
<div class="social_bookmark">
<a><strong><em>Social Bookmarks</em></strong></a>
<br />
<div class="d">
<br />
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://blinklist.com/index.php?Action=Blink/addblink.php&amp;Name=New+Branding+and+Website+for+Denise+Kelly&amp;Description=New+Branding+and+Website+for+Denise+Kelly&amp;Url=http://blog.strawberrysoup.co.uk/2010/01/08/new-branding-and-website-for-denise-kelly/" rel="nofollow" title="Add to&nbsp;BlinkList"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/blinklist.png" title="Add to&nbsp;BlinkList" alt="Add to&nbsp;BlinkList" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://del.icio.us/post?url=http://blog.strawberrysoup.co.uk/2010/01/08/new-branding-and-website-for-denise-kelly/&amp;title=New+Branding+and+Website+for+Denise+Kelly" rel="nofollow" title="Add to&nbsp;Del.icio.us"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/delicious.png" title="Add to&nbsp;Del.icio.us" alt="Add to&nbsp;Del.icio.us" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://digg.com/submit?phase=2&amp;url=http://blog.strawberrysoup.co.uk/2010/01/08/new-branding-and-website-for-denise-kelly/&amp;title=New+Branding+and+Website+for+Denise+Kelly" rel="nofollow" title="Add to&nbsp;digg"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/digg.png" title="Add to&nbsp;digg" alt="Add to&nbsp;digg" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.facebook.com/sharer.php?u=http://blog.strawberrysoup.co.uk/2010/01/08/new-branding-and-website-for-denise-kelly/" rel="nofollow" title="Add to&nbsp;Facebook"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/facebook.png" title="Add to&nbsp;Facebook" alt="Add to&nbsp;Facebook" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.google.com/bookmarks/mark?op=edit&amp;output=popup&amp;bkmk=http://blog.strawberrysoup.co.uk/2010/01/08/new-branding-and-website-for-denise-kelly/&amp;title=New+Branding+and+Website+for+Denise+Kelly" rel="nofollow" title="Add to&nbsp;Google Bookmarks"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/google.png" title="Add to&nbsp;Google Bookmarks" alt="Add to&nbsp;Google Bookmarks" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.mister-wong.com/index.php?action=addurl&amp;bm_url=http://blog.strawberrysoup.co.uk/2010/01/08/new-branding-and-website-for-denise-kelly/&amp;bm_description=New+Branding+and+Website+for+Denise+Kelly" rel="nofollow" title="Add to&nbsp;Mister Wong"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/misterwong.png" title="Add to&nbsp;Mister Wong" alt="Add to&nbsp;Mister Wong" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://reddit.com/submit?url=http://blog.strawberrysoup.co.uk/2010/01/08/new-branding-and-website-for-denise-kelly/&amp;title=New+Branding+and+Website+for+Denise+Kelly" rel="nofollow" title="Add to&nbsp;reddit"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/reddit.png" title="Add to&nbsp;reddit" alt="Add to&nbsp;reddit" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.stumbleupon.com/submit?url=http://blog.strawberrysoup.co.uk/2010/01/08/new-branding-and-website-for-denise-kelly/&amp;title=New+Branding+and+Website+for+Denise+Kelly" rel="nofollow" title="Add to&nbsp;Stumble Upon"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/stumbleupon.png" title="Add to&nbsp;Stumble Upon" alt="Add to&nbsp;Stumble Upon" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.technorati.com/faves?add=http://blog.strawberrysoup.co.uk/2010/01/08/new-branding-and-website-for-denise-kelly/" rel="nofollow" title="Add to&nbsp;Technorati"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/technorati.png" title="Add to&nbsp;Technorati" alt="Add to&nbsp;Technorati" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://tipd.com/submit.php?url=http://blog.strawberrysoup.co.uk/2010/01/08/new-branding-and-website-for-denise-kelly/" rel="nofollow" title="Add to&nbsp;Tip'd"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/tipd.png" title="Add to&nbsp;Tip'd" alt="Add to&nbsp;Tip'd" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://twitter.com/home/?status=Check+out+New+Branding+and+Website+for+Denise+Kelly+@+http://blog.strawberrysoup.co.uk/2010/01/08/new-branding-and-website-for-denise-kelly/" rel="nofollow" title="Add to&nbsp;Twitter"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/twitter.png" title="Add to&nbsp;Twitter" alt="Add to&nbsp;Twitter" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://myweb2.search.yahoo.com/myresults/bookmarklet?u=http://blog.strawberrysoup.co.uk/2010/01/08/new-branding-and-website-for-denise-kelly/&amp;t=New+Branding+and+Website+for+Denise+Kelly" rel="nofollow" title="Add to&nbsp;Yahoo My Web"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/yahoo.png" title="Add to&nbsp;Yahoo My Web" alt="Add to&nbsp;Yahoo My Web" /></a>
<br />
</div>
</div>
<!-- Social Bookmarks END -->
]]></content:encoded>
			<wfw:commentRss>http://blog.strawberrysoup.co.uk/2010/01/08/new-branding-and-website-for-denise-kelly/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Dynamic CSS &#8211; Creating Time Sensitive Sites</title>
		<link>http://blog.strawberrysoup.co.uk/2010/01/07/dynamic-css-creating-time-sensitive-sites/</link>
		<comments>http://blog.strawberrysoup.co.uk/2010/01/07/dynamic-css-creating-time-sensitive-sites/#comments</comments>
		<pubDate>Thu, 07 Jan 2010 16:32:20 +0000</pubDate>
		<dc:creator>Stuart</dc:creator>
				<category><![CDATA[Articles]]></category>
		<category><![CDATA[Labs]]></category>
		<category><![CDATA[Web Development]]></category>

		<guid isPermaLink="false">http://blog.strawberrysoup.co.uk/?p=667</guid>
		<description><![CDATA[
			
				
			
		
Create subtle CSS changes to your site based on time and date
In todays modern web design environment it takes more and more to attract visitors visually, and even more to make them keep coming back. Of course this mostly depends on content as there has to be a purpose to the visit, however small subtle [...]]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fblog.strawberrysoup.co.uk%2F2010%2F01%2F07%2Fdynamic-css-creating-time-sensitive-sites%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fblog.strawberrysoup.co.uk%2F2010%2F01%2F07%2Fdynamic-css-creating-time-sensitive-sites%2F&amp;source=strawberrysoup&amp;style=normal&amp;service=bit.ly" height="61" width="50" /><br />
			</a>
		</div>
<p><strong>Create subtle CSS changes to your site based on time and date</strong></p>
<div id="attachment_672" class="wp-caption alignleft" style="width: 310px"><a href="http://blog.strawberrysoup.co.uk/wp-content/uploads/2010/01/Screen-shot-2010-01-07-at-16.37.03.png"><img class="size-medium wp-image-672" title="Screen shot 2010-01-07 at 16.37.03" src="http://blog.strawberrysoup.co.uk/wp-content/uploads/2010/01/Screen-shot-2010-01-07-at-16.37.03-300x233.png" alt="" width="300" height="233" /></a><p class="wp-caption-text">Oasis Overland uses time sensitive stylesheets</p></div>
<p>In todays modern web design environment it takes more and more to attract visitors visually, and even more to make them keep coming back. Of course this mostly depends on content as there has to be a purpose to the visit, however small subtle details to the site can make any visitor become excited.</p>
<p>In this tutorial, you will create a site that changes it’s background based on the time a person visits the site, afterwards you should have the knowledge to adapt the script to be based on any other data you want to use.</p>
<p>All server-side examples in this tutorial will be based on PHP, so make sure you have a working test environment with PHP5 enabled. If you are using any other server-side scripting tool it is likely there will be a guide to accomplish a similar effect online; however reading through this guide you will likely recognise similar syntax and functions allowing you to convert it to the language you’re using.</p>
<p><strong>Opening the Folders</strong></p>
<p>Included <a href="http://blog.strawberrysoup.co.uk/wp-content/uploads/2010/01/dynamic_css.zip" target="_blank">in this download</a> is a folder called dynamic_css which contains all of the base files needed to complete this project. Move the folder into your testing servers root directory. Open the folder in your preferred IDE and then view index.php in a browser. If you’ve got PHP enabled and everything was copied successfully then you should see a basic white page with a header, navigation on the left and lorem ipsum on the right; it’s now time to start the dynamic styles.</p>
<p><strong>PHP Sunsets and Sunrises</strong></p>
<p>Using PHP to retrieve and make decisions based on time has it’s advantages and disadvantages. The largest disadvantage is the fact that PHP can’t access the users computer time and can only get the time of the server, the advantage however is that PHP has a large set of functions that make dealing with time that little less painfull. If you open up index.php, before the start &lt;html&gt; tag type the following PHP. Afterwards I will explain the key parts of the script.</p>
<pre>&lt;?php
 $time = date('G');
 $sunrise = date_sunrise(time(), SUNFUNCS_RET_DOUBLE);
 $sunset = date_sunset(time(), SUNFUNCS_RET_DOUBLE) + 1;
 if($time &gt;= $sunrise &amp;&amp; $time &lt; $sunrise + 2) $style = 'sunrise';
 elseif($time &gt;= $sunrise + 2 &amp;&amp; $time &lt; $sunset) $style = 'day';
 elseif($time &gt;= $sunset &amp;&amp; $time &lt; $sunset + 2) $style = 'sunset';
 else $style = 'night';
?&gt;</pre>
<p>Lines 2 &#8211; 4 set three variables; $time is set to the current hour, <em>$sunrise</em> is set to the sunrise time for today and <em>$sunset</em> is set to one hour later than the sunset time (from my experience, official sunset times start an hour or two before what most people would call sunset starts).</p>
<p>Lines 5 &#8211; 8 runs a set of standard if statement to determine which style to show; sunrise, day, sunset or night, this is then set to the variable <em>$style</em>. This can now be used whenever a reference to the time of day is needed, as you will be shown below.</p>
<p><strong>Dynamic CSS Techniques; One, Two and Three</strong></p>
<p>There are three main ways of achieving dynamic CSS &#8211; which one you use depends on several factors; the amount of styles that change per data, amount of style sheets that get loaded into the page and the amount of customisation you have on your server.</p>
<p><strong>Setting a body id/class</strong></p>
<p>The most popular method of using dynamic CSS is to set the body id or class of the page depending on the styles needed. The advantages of this is that no server changes need to be made, you can use the same id/class across style sheets with no extra code and it’s easy to quickly prototype and debug. The disadvantage of this is that you can only use pre-defined constants, because of this you can’t have random colour pallates using this method.</p>
<p><strong>Including style sheets</strong></p>
<p>The second most popular method is to include extra style sheets depending on which styles you need, this can be beneficial when a lot of styles change depending on what is needed; this stops the stylesheet having to include styles for all other posible states of the site together. The disadvantages is that you have to create a stylesheet per state, this can be a large hassle if you are going to have a lot of different styles, it also inherits the flaw of not being able to access the data in the style sheet.</p>
<p><strong>PHP in the style sheet</strong></p>
<p>This approach can be done in several ways, when used successfully and appropiately this can create the largest amount of freedom with data being able to be directly accessed in the style sheet meaning there is no limit to the amount of states possible. The disadvantages is that if you want your style sheets to still have the .css file extension you need to customise the server, this also means you lose the portability of the style sheet. The other option is to use .php as the CSS extension. Another disadvantage is that you are limited to having all the rules in one file without having to duplicate and re-process the PHP.</p>
<p><strong>Setting a body ID</strong></p>
<p>In our example there are only a few things changing per state and there are only 4 states, based on the advantages and disadvantages outlined above, setting a body id is probably the best way of achieving the effect.</p>
<p>Change the &lt;body&gt; tag to be the following:</p>
<pre>&lt;body id="&lt;?=$style?&gt;"&gt;</pre>
<p>Then open base.css and add the following to the end of the file.</p>
<pre>/********** TIME SENSITIVE CSS **********/</pre>
<pre>#sunset {
background: url('../images/sunset.jpg') repeat-x #BE7001;
}
</pre>
<pre>#sunrise {
background: url('../images/sunrise.jpg') repeat-x #EFC501;
}</pre>
<pre>#day {
background: url('../images/day.jpg') repeat-x #0A6FBF;
}</pre>
<pre>#night {
background: url('../images/night.jpg') repeat-x #00123A;
}</pre>
<p>Open your page in a browser now and admire the scenery depending on what time of day it is.</p>
<p><strong>Including style sheets</strong></p>
<p>Including style sheets is another simple yet effect method, the practice involves having a separate style sheet for each state. To adapt the current site to use this method create 4 style sheets called, sunset.css, sunrise.css, day.css and night.css. Place the appropriate code for each state in it&#8217;s file, then remove the id on the body tag and instead place the below code in the &lt;head&gt; tag.</p>
<pre>&lt;link rel="stylesheet" href="css/&lt;?=$style?&gt;.css" type="text/css" media="screen" charset="utf-8" /&gt;</pre>
<p><strong>PHP in the style sheet</strong></p>
<p>Out of the three methods outlined this one is by far the most flexible and powerful however also requires the most work so if a stage doesn&#8217;t work for you go back and repeat again; if it still isn&#8217;t working as it should then a quick search online will normally end up in a solution to the same problem someone else had.</p>
<p><strong>Setting .css to be run as php</strong></p>
<p>This is a matter of personal opinion however, I feel that having a .css extension helps define what an external asset is doing; this stage isn&#8217;t required so if you don&#8217;t mind having css with the .php ending or your server doesn&#8217;t allow you to make the following changes then skip this step.</p>
<p>Create a .htaccess file in the root of your site, place the following line in it:</p>
<pre>AddHandler application/x-httpd-php .css</pre>
<p>This sets PHP to handle all files with a .css extension, allowing you to place php in a .css file as if it were exactly the same as a .php file. If it fails to do anything at first, restart apache and see if that solves the problem.</p>
<p><strong>Setting the Content-Type and Using the PHP</strong></p>
<p>The most important thing to do when using dynamic CSS is to stop PHP setting the content-type header as text/html, you need your css files to be sent to the browser with the content-type text/css. To do this place the following line at the top of base.css (or base.php if you didn&#8217;t complete the previous step).</p>
<pre>&lt;?php header('Content-Type: text/css'); ?&gt;</pre>
<p>To get the background to change now place this just below the line you just wrote at the top (you can remove all the PHP from the index.php):</p>
<pre>&lt;?php
 $time = date('G');
 $sunrise = date_sunrise(time(), SUNFUNCS_RET_DOUBLE);
 $sunset = date_sunset(time(), SUNFUNCS_RET_DOUBLE) + 1;
 if($time &gt;= $sunrise &amp;&amp; $time &lt; $sunrise + 2) $style = 'url(../images/sunrise_bg.jpeg) repeat-x orange';
 elseif($time &gt;= $sunrise + 2 &amp;&amp; $time &lt; $sunset) $style = 'url(../images/day_bg.jpeg) repeat-x blue';
 elseif($time &gt;= $sunset &amp;&amp; $time &lt; $sunset + 2) $style = 'url(../images/sunset_bg.jpeg) repeat-x black';
 else $style = 'url(../images/night_bg.jpeg) repeat-x black';
?&gt;
body {
 background: &lt;?=$style?&gt;;
}</pre>
<p>Opening the page in a browser should now show you a background simulating the great outdoors.</p>
<p><strong>The equivalent in javascript</strong></p>
<p>PHP isn&#8217;t the only way to add dynamic elements in your sites, javascript has been the raw base to site dynamics for years. Of the three methods above the first two will work fine in javascript with adaptations. Javascript has a few disadvantages; there&#8217;s a delay between page load and the new styles, javascript is also notorious for browser differences and it of course requires javascript</p>
<p>Javascript doesn&#8217;t have the same resources as PHP and so can&#8217;t provide sunrise and sunset times so in the examples below the state will be statically set to &#8216;day&#8217;.</p>
<p><strong>Setting a body id</strong></p>
<pre>var state = 'day';
document.getElementsByTagName('body')[0].id = state;</pre>
<p>A general breakdown of the code above is that it assigns the variable state a value of &#8216;day&#8217;, the second line then starts by selecting the document, finds all the elements with the tag name body (should always be just one) and then gives the first ( 0 nth element) the id of state.</p>
<p><strong>Including extra style sheets</strong></p>
<pre>var state = 'day';
var cssFile = 'css/' + state + '.css';
var link = document.createElement('link');
link.setAttribute('href', cssFile);
document.getElementsByTagName('head')[0].appendChild(link);</pre>
<p><strong>Enjoy and Explore</strong></p>
<p>Based on the three PHP methods demoed here there are a llimitless amount of different ways you can make your CSS dynamic, if you need some ideas though just see the taking it further boxout for more info.</p>
<p><strong>Taking it Further</strong></p>
<p>Dynamic CSS isn’t restricted to simple time and date manipulations. Any data that your server or the clients browser can access can be used. Whether it&#8217;s pre-determined states such as seasons or  based on data hosted elsewhere, a few extra ideas are below.</p>
<p><em>1) Location</em> &#8211; Retrieving the visitors location is a tricky thing although there are several popular libraries and snippets readily available to make things easier. Mozilla is also pioneering the methods in which a server and site can detect a users location. Having the background change to compliment your location could be an easy way to make your site more localised.</p>
<p><em>2) Weather</em> &#8211; Having your sites background change depending on the weather could add function as well as design to a site, visitors to a local harbour could quickly determine the current weather or water height before even getting to the page.<br />
RSS Feeds &#8211; Easily accessible and retrievable RSS feeds now span the spectrum of content on the web, colour palettes, political data, surveys and pretty much anything you could want is probably already in RSS format.</p>
<p><em>3) Local site data </em>- If your site has dynamic content why not compliment it with some dynamic styles. If you have a blog then you could have the background represent the category which was last blogged about.</p>
<!-- Social Bookmarks BEGIN -->
<div class="social_bookmark">
<a><strong><em>Social Bookmarks</em></strong></a>
<br />
<div class="d">
<br />
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://blinklist.com/index.php?Action=Blink/addblink.php&amp;Name=Dynamic+CSS+%26%238211%3B+Creating+Time+Sensitive+Sites&amp;Description=Dynamic+CSS+%26%238211%3B+Creating+Time+Sensitive+Sites&amp;Url=http://blog.strawberrysoup.co.uk/2010/01/07/dynamic-css-creating-time-sensitive-sites/" rel="nofollow" title="Add to&nbsp;BlinkList"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/blinklist.png" title="Add to&nbsp;BlinkList" alt="Add to&nbsp;BlinkList" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://del.icio.us/post?url=http://blog.strawberrysoup.co.uk/2010/01/07/dynamic-css-creating-time-sensitive-sites/&amp;title=Dynamic+CSS+%26%238211%3B+Creating+Time+Sensitive+Sites" rel="nofollow" title="Add to&nbsp;Del.icio.us"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/delicious.png" title="Add to&nbsp;Del.icio.us" alt="Add to&nbsp;Del.icio.us" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://digg.com/submit?phase=2&amp;url=http://blog.strawberrysoup.co.uk/2010/01/07/dynamic-css-creating-time-sensitive-sites/&amp;title=Dynamic+CSS+%26%238211%3B+Creating+Time+Sensitive+Sites" rel="nofollow" title="Add to&nbsp;digg"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/digg.png" title="Add to&nbsp;digg" alt="Add to&nbsp;digg" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.facebook.com/sharer.php?u=http://blog.strawberrysoup.co.uk/2010/01/07/dynamic-css-creating-time-sensitive-sites/" rel="nofollow" title="Add to&nbsp;Facebook"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/facebook.png" title="Add to&nbsp;Facebook" alt="Add to&nbsp;Facebook" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.google.com/bookmarks/mark?op=edit&amp;output=popup&amp;bkmk=http://blog.strawberrysoup.co.uk/2010/01/07/dynamic-css-creating-time-sensitive-sites/&amp;title=Dynamic+CSS+%26%238211%3B+Creating+Time+Sensitive+Sites" rel="nofollow" title="Add to&nbsp;Google Bookmarks"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/google.png" title="Add to&nbsp;Google Bookmarks" alt="Add to&nbsp;Google Bookmarks" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.mister-wong.com/index.php?action=addurl&amp;bm_url=http://blog.strawberrysoup.co.uk/2010/01/07/dynamic-css-creating-time-sensitive-sites/&amp;bm_description=Dynamic+CSS+%26%238211%3B+Creating+Time+Sensitive+Sites" rel="nofollow" title="Add to&nbsp;Mister Wong"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/misterwong.png" title="Add to&nbsp;Mister Wong" alt="Add to&nbsp;Mister Wong" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://reddit.com/submit?url=http://blog.strawberrysoup.co.uk/2010/01/07/dynamic-css-creating-time-sensitive-sites/&amp;title=Dynamic+CSS+%26%238211%3B+Creating+Time+Sensitive+Sites" rel="nofollow" title="Add to&nbsp;reddit"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/reddit.png" title="Add to&nbsp;reddit" alt="Add to&nbsp;reddit" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.stumbleupon.com/submit?url=http://blog.strawberrysoup.co.uk/2010/01/07/dynamic-css-creating-time-sensitive-sites/&amp;title=Dynamic+CSS+%26%238211%3B+Creating+Time+Sensitive+Sites" rel="nofollow" title="Add to&nbsp;Stumble Upon"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/stumbleupon.png" title="Add to&nbsp;Stumble Upon" alt="Add to&nbsp;Stumble Upon" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.technorati.com/faves?add=http://blog.strawberrysoup.co.uk/2010/01/07/dynamic-css-creating-time-sensitive-sites/" rel="nofollow" title="Add to&nbsp;Technorati"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/technorati.png" title="Add to&nbsp;Technorati" alt="Add to&nbsp;Technorati" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://tipd.com/submit.php?url=http://blog.strawberrysoup.co.uk/2010/01/07/dynamic-css-creating-time-sensitive-sites/" rel="nofollow" title="Add to&nbsp;Tip'd"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/tipd.png" title="Add to&nbsp;Tip'd" alt="Add to&nbsp;Tip'd" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://twitter.com/home/?status=Check+out+Dynamic+CSS+%26%238211%3B+Creating+Time+Sensitive+Sites+@+http://blog.strawberrysoup.co.uk/2010/01/07/dynamic-css-creating-time-sensitive-sites/" rel="nofollow" title="Add to&nbsp;Twitter"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/twitter.png" title="Add to&nbsp;Twitter" alt="Add to&nbsp;Twitter" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://myweb2.search.yahoo.com/myresults/bookmarklet?u=http://blog.strawberrysoup.co.uk/2010/01/07/dynamic-css-creating-time-sensitive-sites/&amp;t=Dynamic+CSS+%26%238211%3B+Creating+Time+Sensitive+Sites" rel="nofollow" title="Add to&nbsp;Yahoo My Web"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/yahoo.png" title="Add to&nbsp;Yahoo My Web" alt="Add to&nbsp;Yahoo My Web" /></a>
<br />
</div>
</div>
<!-- Social Bookmarks END -->
]]></content:encoded>
			<wfw:commentRss>http://blog.strawberrysoup.co.uk/2010/01/07/dynamic-css-creating-time-sensitive-sites/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Should stock photography be used on your website?</title>
		<link>http://blog.strawberrysoup.co.uk/2010/01/06/should-stock-photography-be-used-on-your-website/</link>
		<comments>http://blog.strawberrysoup.co.uk/2010/01/06/should-stock-photography-be-used-on-your-website/#comments</comments>
		<pubDate>Wed, 06 Jan 2010 16:47:05 +0000</pubDate>
		<dc:creator>Neil</dc:creator>
				<category><![CDATA[Articles]]></category>
		<category><![CDATA[Design]]></category>
		<category><![CDATA[Graphic Design]]></category>
		<category><![CDATA[Photography]]></category>
		<category><![CDATA[Web Design]]></category>

		<guid isPermaLink="false">http://blog.strawberrysoup.co.uk/?p=659</guid>
		<description><![CDATA[
			
				
			
		
No-one can disagree that the huge popularity of stock photography has shaped the way apperance of many websites on todays modern Internet. Who can resist those ethnically diverse teams, smiling at the camera around a laptop in a modern office? How about those beautiful outdoor shots of rolling hills and bright blue sky? They are [...]]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fblog.strawberrysoup.co.uk%2F2010%2F01%2F06%2Fshould-stock-photography-be-used-on-your-website%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fblog.strawberrysoup.co.uk%2F2010%2F01%2F06%2Fshould-stock-photography-be-used-on-your-website%2F&amp;source=strawberrysoup&amp;style=normal&amp;service=bit.ly" height="61" width="50" /><br />
			</a>
		</div>
<p>No-one can disagree that the huge popularity of stock photography has shaped the way apperance of many websites on todays modern Internet. Who can resist those ethnically diverse teams, smiling at the camera around a laptop in a modern office? How about those beautiful outdoor shots of rolling hills and bright blue sky? They are classic stock photography.</p>
<p>But should we think carefully about the use stock photos on our websites? Are we missing an opportunity and creating monotonous and predictable websites?</p>
<p><strong>What is Stock Photography</strong></p>
<p>Stock photography has gained a lot of momentum over the past 4 years. It is the term associated with professionally taken photographs that you can buy the rights to use on your website or printed material. There is a wide range of stock photography websites available online with two of the popular options being Getty and iStockPhoto.</p>
<p><a title="Getty" href="http://www.gettyimages.com" target="_blank">Getty</a> specialise in top quality and higher-end photography. They supply many of the news networks with photography for their stories. Their prices range from between £150 &#8211; £600 per image, depending on the sector and size chosen.</p>
<p><a title="iStockPhoto" href="http://www.istockphoto.com" target="_blank">iStockPhoto</a> (which is now owned by Getty) is one of the most popular galleries available and is community rather than corporate based. End users can submit their own photos for inclusion and these are then reviewed by iStockPhoto. Successful photos are available to purchase by end users and the photographer receives a commission. Costs are based on a credit system, with images based around between £1 and £15, depending on their size.</p>
<p><strong>Why should I use Stock Photography?</strong></p>
<p>One of the main reasons is budget. Choosing stock photography is almost always cheaper than commissioning a professional photographer to snap your employees, products or services. This does however depend on the number of photos that you are purchasing and the quality required.</p>
<p>Variation and range is another good reason. There are millions of stock photos available to purchase. The benefit of this is that you are more than likely to find a photo to suit your business and website.</p>
<p><strong>Why shouldn’t I use Stock Photography?</strong></p>
<p>We feel that one of the main problems with stock photography is repetition. Popular stock photos can be seen all over the Internet. When you buy a stock photo, you do not have the rights to use this exclusively, so you will no doubt find other websites, and possibly competitors using the same photos as you.</p>
<p>This undoubtably results in your website looking rather generic and convoluted. It is difficult to showcase your personality through generic photos that have been snapped from all around the world.  Sticking with the ethnically diverse team photo as above &#8211; why not show a nice photo of the actual people behind your business, rather than a staged and predictable photo like this?</p>
<p>Depending on the subject of your website, stock photography may not suit. If your website is very specialised or technical, you may not find any photos that suit. If this is the case, commissioning a photographer may be the only option.</p>
<p><strong>Conclusion</strong></p>
<p>For Strawberrysoup, using stock photography is always going to be a bit of a sticky subject. It is ultimately client dependent &#8211; are they based in a very specialised field, how many photos do they require and do they have the budget to hire a professional photographer?</p>
<p>For our new website, we are not going to be using stock photos. We feel that we have a brilliant team and a unique ethos &#8211; using stock photos would not do us justice. We want to showcase our team and our personality from a design and photographic perspective, rather than looking generic and like many other web design agencies out there.</p>
<!-- Social Bookmarks BEGIN -->
<div class="social_bookmark">
<a><strong><em>Social Bookmarks</em></strong></a>
<br />
<div class="d">
<br />
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://blinklist.com/index.php?Action=Blink/addblink.php&amp;Name=Should+stock+photography+be+used+on+your+website%3F&amp;Description=Should+stock+photography+be+used+on+your+website%3F&amp;Url=http://blog.strawberrysoup.co.uk/2010/01/06/should-stock-photography-be-used-on-your-website/" rel="nofollow" title="Add to&nbsp;BlinkList"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/blinklist.png" title="Add to&nbsp;BlinkList" alt="Add to&nbsp;BlinkList" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://del.icio.us/post?url=http://blog.strawberrysoup.co.uk/2010/01/06/should-stock-photography-be-used-on-your-website/&amp;title=Should+stock+photography+be+used+on+your+website%3F" rel="nofollow" title="Add to&nbsp;Del.icio.us"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/delicious.png" title="Add to&nbsp;Del.icio.us" alt="Add to&nbsp;Del.icio.us" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://digg.com/submit?phase=2&amp;url=http://blog.strawberrysoup.co.uk/2010/01/06/should-stock-photography-be-used-on-your-website/&amp;title=Should+stock+photography+be+used+on+your+website%3F" rel="nofollow" title="Add to&nbsp;digg"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/digg.png" title="Add to&nbsp;digg" alt="Add to&nbsp;digg" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.facebook.com/sharer.php?u=http://blog.strawberrysoup.co.uk/2010/01/06/should-stock-photography-be-used-on-your-website/" rel="nofollow" title="Add to&nbsp;Facebook"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/facebook.png" title="Add to&nbsp;Facebook" alt="Add to&nbsp;Facebook" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.google.com/bookmarks/mark?op=edit&amp;output=popup&amp;bkmk=http://blog.strawberrysoup.co.uk/2010/01/06/should-stock-photography-be-used-on-your-website/&amp;title=Should+stock+photography+be+used+on+your+website%3F" rel="nofollow" title="Add to&nbsp;Google Bookmarks"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/google.png" title="Add to&nbsp;Google Bookmarks" alt="Add to&nbsp;Google Bookmarks" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.mister-wong.com/index.php?action=addurl&amp;bm_url=http://blog.strawberrysoup.co.uk/2010/01/06/should-stock-photography-be-used-on-your-website/&amp;bm_description=Should+stock+photography+be+used+on+your+website%3F" rel="nofollow" title="Add to&nbsp;Mister Wong"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/misterwong.png" title="Add to&nbsp;Mister Wong" alt="Add to&nbsp;Mister Wong" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://reddit.com/submit?url=http://blog.strawberrysoup.co.uk/2010/01/06/should-stock-photography-be-used-on-your-website/&amp;title=Should+stock+photography+be+used+on+your+website%3F" rel="nofollow" title="Add to&nbsp;reddit"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/reddit.png" title="Add to&nbsp;reddit" alt="Add to&nbsp;reddit" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.stumbleupon.com/submit?url=http://blog.strawberrysoup.co.uk/2010/01/06/should-stock-photography-be-used-on-your-website/&amp;title=Should+stock+photography+be+used+on+your+website%3F" rel="nofollow" title="Add to&nbsp;Stumble Upon"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/stumbleupon.png" title="Add to&nbsp;Stumble Upon" alt="Add to&nbsp;Stumble Upon" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.technorati.com/faves?add=http://blog.strawberrysoup.co.uk/2010/01/06/should-stock-photography-be-used-on-your-website/" rel="nofollow" title="Add to&nbsp;Technorati"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/technorati.png" title="Add to&nbsp;Technorati" alt="Add to&nbsp;Technorati" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://tipd.com/submit.php?url=http://blog.strawberrysoup.co.uk/2010/01/06/should-stock-photography-be-used-on-your-website/" rel="nofollow" title="Add to&nbsp;Tip'd"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/tipd.png" title="Add to&nbsp;Tip'd" alt="Add to&nbsp;Tip'd" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://twitter.com/home/?status=Check+out+Should+stock+photography+be+used+on+your+website%3F+@+http://blog.strawberrysoup.co.uk/2010/01/06/should-stock-photography-be-used-on-your-website/" rel="nofollow" title="Add to&nbsp;Twitter"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/twitter.png" title="Add to&nbsp;Twitter" alt="Add to&nbsp;Twitter" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://myweb2.search.yahoo.com/myresults/bookmarklet?u=http://blog.strawberrysoup.co.uk/2010/01/06/should-stock-photography-be-used-on-your-website/&amp;t=Should+stock+photography+be+used+on+your+website%3F" rel="nofollow" title="Add to&nbsp;Yahoo My Web"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/yahoo.png" title="Add to&nbsp;Yahoo My Web" alt="Add to&nbsp;Yahoo My Web" /></a>
<br />
</div>
</div>
<!-- Social Bookmarks END -->
]]></content:encoded>
			<wfw:commentRss>http://blog.strawberrysoup.co.uk/2010/01/06/should-stock-photography-be-used-on-your-website/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The Internet Explorer 6 Debate</title>
		<link>http://blog.strawberrysoup.co.uk/2009/12/18/the-internet-explorer-6-debate/</link>
		<comments>http://blog.strawberrysoup.co.uk/2009/12/18/the-internet-explorer-6-debate/#comments</comments>
		<pubDate>Fri, 18 Dec 2009 14:16:39 +0000</pubDate>
		<dc:creator>Neil</dc:creator>
				<category><![CDATA[Articles]]></category>
		<category><![CDATA[Design]]></category>
		<category><![CDATA[Web Design]]></category>
		<category><![CDATA[Web Development]]></category>

		<guid isPermaLink="false">http://blog.strawberrysoup.co.uk/?p=652</guid>
		<description><![CDATA[
			
				
			
		
We have been having a few debates recently at Strawberrysoup which mainly focus around cross browser interoperability and if the websites we create should support the archaic Microsoft Internet Explorer 6.
As every web developer and designer knows, the main problem that we face every day when developing websites is how they look over the many [...]]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fblog.strawberrysoup.co.uk%2F2009%2F12%2F18%2Fthe-internet-explorer-6-debate%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fblog.strawberrysoup.co.uk%2F2009%2F12%2F18%2Fthe-internet-explorer-6-debate%2F&amp;source=strawberrysoup&amp;style=normal&amp;service=bit.ly" height="61" width="50" /><br />
			</a>
		</div>
<p>We have been having a few debates recently at Strawberrysoup which mainly focus around cross browser interoperability and if the websites we create should support the archaic Microsoft Internet Explorer 6.</p>
<p><img class="alignleft size-full wp-image-654" title="Bring Down IE6" src="http://blog.strawberrysoup.co.uk/wp-content/uploads/2009/12/bd.png" alt="Bring Down IE6" width="117" height="120" />As every web developer and designer knows, the main problem that we face every day when developing websites is how they look over the many different browsers – Internet Explorer, Firefox, Chrome, Safari, Camino, Flock, Opera – the list goes on.</p>
<p>At Strawberrysoup, we build each website by testing in Firefox 3 (our favourite due to it&#8217;s standards compliance) and then tweak the site for the remaining browsers. As always, Internet Explorer 6 is the problem child, and can typically add 5% onto a budget due to the time taken to debug and fix.</p>
<p>We find that the difficultly arises when a designer creates a beautiful, usable and technologically advanced website for a client. It gets signed off and  when the developers try and fit/translate this design for a browser that is 10 years old – it just doesn’t happen.</p>
<p>One of the problems that we face when trying to justify this problem is the statistics. IE6 still has a market share of about 11% now (according to <a href="http://www.w3schools.com/browsers/browsers_stats.asp" target="_blank">http://www.w3schools.com/browsers/browsers_stats.asp</a>)  – but the good news is that this share of the market is reducing each month (it was 18% in January 2009). Microsoft’s forced IE7 and IE8 update has further reduced this share, but so has the increased exposure of Firefox (47%) and the more and more people using Google&#8217;s Chrome (8.5%) and Apple&#8217;s Safari (4%).</p>
<p>We work with a wide range of clients, some small businesses but increasingly we are working with larger companies and local councils. Local councils especially seem to use older browsers and they are unfortunately stuck with the cost of company wide system or browser update restricting their end users having the latest versions of software (even if the actual browser upgrade would be free.)</p>
<blockquote><p>A good analogy would be the same as ordering Sky HD, being excited about the stunning picture quality and then realising that your 14” portable TV doesn’t support most of the features so you end up with the basic cut down version – its disappointing to say the least.</p></blockquote>
<p>There is no doubt that other web design agencies in a similar predicament. We have heard that some have opted at the original spec stage, to mention that the site will have all of the bells and whistles on for Firefox, IE7, Safari and that IE6 will be supported, but only to a limited extent as even Microsoft has ended support for their legacy browser. They also mention other browsers such as Camino or Flock will be supported at an additional charge.</p>
<p>It seems that many agencies/freelancers are stuck in this dilemma for the near future – should we continue to support IE6 as much as possible (with CSS hacks and alike) or should we offer clients a cut down version of the originally signed off design? I suppose the answer to this question depends on budget, timeframes and the target market.</p>
<p>For more information on the browser dilemma, why not visit <a href="http://www.savethedevelopers.org" target="_blank">http://www.savethedevelopers.org</a> or <a href="http://www.bringdownie6.com" target="_blank">http://www.bringdownie6.com</a>.</p>
<!-- Social Bookmarks BEGIN -->
<div class="social_bookmark">
<a><strong><em>Social Bookmarks</em></strong></a>
<br />
<div class="d">
<br />
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://blinklist.com/index.php?Action=Blink/addblink.php&amp;Name=The+Internet+Explorer+6+Debate&amp;Description=The+Internet+Explorer+6+Debate&amp;Url=http://blog.strawberrysoup.co.uk/2009/12/18/the-internet-explorer-6-debate/" rel="nofollow" title="Add to&nbsp;BlinkList"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/blinklist.png" title="Add to&nbsp;BlinkList" alt="Add to&nbsp;BlinkList" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://del.icio.us/post?url=http://blog.strawberrysoup.co.uk/2009/12/18/the-internet-explorer-6-debate/&amp;title=The+Internet+Explorer+6+Debate" rel="nofollow" title="Add to&nbsp;Del.icio.us"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/delicious.png" title="Add to&nbsp;Del.icio.us" alt="Add to&nbsp;Del.icio.us" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://digg.com/submit?phase=2&amp;url=http://blog.strawberrysoup.co.uk/2009/12/18/the-internet-explorer-6-debate/&amp;title=The+Internet+Explorer+6+Debate" rel="nofollow" title="Add to&nbsp;digg"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/digg.png" title="Add to&nbsp;digg" alt="Add to&nbsp;digg" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.facebook.com/sharer.php?u=http://blog.strawberrysoup.co.uk/2009/12/18/the-internet-explorer-6-debate/" rel="nofollow" title="Add to&nbsp;Facebook"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/facebook.png" title="Add to&nbsp;Facebook" alt="Add to&nbsp;Facebook" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.google.com/bookmarks/mark?op=edit&amp;output=popup&amp;bkmk=http://blog.strawberrysoup.co.uk/2009/12/18/the-internet-explorer-6-debate/&amp;title=The+Internet+Explorer+6+Debate" rel="nofollow" title="Add to&nbsp;Google Bookmarks"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/google.png" title="Add to&nbsp;Google Bookmarks" alt="Add to&nbsp;Google Bookmarks" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.mister-wong.com/index.php?action=addurl&amp;bm_url=http://blog.strawberrysoup.co.uk/2009/12/18/the-internet-explorer-6-debate/&amp;bm_description=The+Internet+Explorer+6+Debate" rel="nofollow" title="Add to&nbsp;Mister Wong"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/misterwong.png" title="Add to&nbsp;Mister Wong" alt="Add to&nbsp;Mister Wong" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://reddit.com/submit?url=http://blog.strawberrysoup.co.uk/2009/12/18/the-internet-explorer-6-debate/&amp;title=The+Internet+Explorer+6+Debate" rel="nofollow" title="Add to&nbsp;reddit"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/reddit.png" title="Add to&nbsp;reddit" alt="Add to&nbsp;reddit" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.stumbleupon.com/submit?url=http://blog.strawberrysoup.co.uk/2009/12/18/the-internet-explorer-6-debate/&amp;title=The+Internet+Explorer+6+Debate" rel="nofollow" title="Add to&nbsp;Stumble Upon"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/stumbleupon.png" title="Add to&nbsp;Stumble Upon" alt="Add to&nbsp;Stumble Upon" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.technorati.com/faves?add=http://blog.strawberrysoup.co.uk/2009/12/18/the-internet-explorer-6-debate/" rel="nofollow" title="Add to&nbsp;Technorati"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/technorati.png" title="Add to&nbsp;Technorati" alt="Add to&nbsp;Technorati" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://tipd.com/submit.php?url=http://blog.strawberrysoup.co.uk/2009/12/18/the-internet-explorer-6-debate/" rel="nofollow" title="Add to&nbsp;Tip'd"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/tipd.png" title="Add to&nbsp;Tip'd" alt="Add to&nbsp;Tip'd" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://twitter.com/home/?status=Check+out+The+Internet+Explorer+6+Debate+@+http://blog.strawberrysoup.co.uk/2009/12/18/the-internet-explorer-6-debate/" rel="nofollow" title="Add to&nbsp;Twitter"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/twitter.png" title="Add to&nbsp;Twitter" alt="Add to&nbsp;Twitter" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://myweb2.search.yahoo.com/myresults/bookmarklet?u=http://blog.strawberrysoup.co.uk/2009/12/18/the-internet-explorer-6-debate/&amp;t=The+Internet+Explorer+6+Debate" rel="nofollow" title="Add to&nbsp;Yahoo My Web"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/yahoo.png" title="Add to&nbsp;Yahoo My Web" alt="Add to&nbsp;Yahoo My Web" /></a>
<br />
</div>
</div>
<!-- Social Bookmarks END -->
]]></content:encoded>
			<wfw:commentRss>http://blog.strawberrysoup.co.uk/2009/12/18/the-internet-explorer-6-debate/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>New Design for Culinary Travels of a Kitchen Godess</title>
		<link>http://blog.strawberrysoup.co.uk/2009/12/17/new-design-for-culinary-travels/</link>
		<comments>http://blog.strawberrysoup.co.uk/2009/12/17/new-design-for-culinary-travels/#comments</comments>
		<pubDate>Thu, 17 Dec 2009 15:49:48 +0000</pubDate>
		<dc:creator>Morgan</dc:creator>
				<category><![CDATA[Design]]></category>
		<category><![CDATA[Portfolio]]></category>
		<category><![CDATA[Web Design]]></category>

		<guid isPermaLink="false">http://blog.strawberrysoup.co.uk/?p=644</guid>
		<description><![CDATA[
			
				
			
		
Culinary Travels of a Kitchen Godess is a popular food blog written by dedicated foodie Georgina Ingham.
We were approached and asked to redesign her blog as it needed to be updated visually. The blog was using off-the-shelf Wordpress themes, and it was time to give the site a unique feel of its own.
The blog is [...]]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fblog.strawberrysoup.co.uk%2F2009%2F12%2F17%2Fnew-design-for-culinary-travels%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fblog.strawberrysoup.co.uk%2F2009%2F12%2F17%2Fnew-design-for-culinary-travels%2F&amp;source=strawberrysoup&amp;style=normal&amp;service=bit.ly" height="61" width="50" /><br />
			</a>
		</div>
<p><a href="http://culinarytravels.co.uk" target="_blank">Culinary Travels of a Kitchen Godess</a> is a popular food blog written by dedicated foodie Georgina Ingham.</p>
<p>We were approached and asked to redesign her blog as it needed to be updated visually. The blog was using off-the-shelf Wordpress themes, and it was time to give the site a unique feel of its own.</p>
<p>The blog is incredibly popular, and receives thousands of visits a week from users who love the way that Georgina writes about food, cooks and creates recipes. From a design perspective the blog had to capture Georgina&#8217;s natural flair for food and entice users into revisiting again and again. It also had to publicise her Twitter, Facebook and RSS feeds.</p>
<p>Since launch a few days ago, the feedback to date has been very positive and Georgina is very proud of her new blog. We wish her continued success in 2010!</p>
<p><img class="alignleft size-full wp-image-645" title="Culinary Travels of a Kitchen Godess" src="http://blog.strawberrysoup.co.uk/wp-content/uploads/2009/12/culinary_travels.jpg" alt="Culinary Travels of a Kitchen Godess" width="630" height="139" /></p>
<!-- Social Bookmarks BEGIN -->
<div class="social_bookmark">
<a><strong><em>Social Bookmarks</em></strong></a>
<br />
<div class="d">
<br />
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://blinklist.com/index.php?Action=Blink/addblink.php&amp;Name=New+Design+for+Culinary+Travels+of+a+Kitchen+Godess&amp;Description=New+Design+for+Culinary+Travels+of+a+Kitchen+Godess&amp;Url=http://blog.strawberrysoup.co.uk/2009/12/17/new-design-for-culinary-travels/" rel="nofollow" title="Add to&nbsp;BlinkList"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/blinklist.png" title="Add to&nbsp;BlinkList" alt="Add to&nbsp;BlinkList" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://del.icio.us/post?url=http://blog.strawberrysoup.co.uk/2009/12/17/new-design-for-culinary-travels/&amp;title=New+Design+for+Culinary+Travels+of+a+Kitchen+Godess" rel="nofollow" title="Add to&nbsp;Del.icio.us"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/delicious.png" title="Add to&nbsp;Del.icio.us" alt="Add to&nbsp;Del.icio.us" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://digg.com/submit?phase=2&amp;url=http://blog.strawberrysoup.co.uk/2009/12/17/new-design-for-culinary-travels/&amp;title=New+Design+for+Culinary+Travels+of+a+Kitchen+Godess" rel="nofollow" title="Add to&nbsp;digg"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/digg.png" title="Add to&nbsp;digg" alt="Add to&nbsp;digg" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.facebook.com/sharer.php?u=http://blog.strawberrysoup.co.uk/2009/12/17/new-design-for-culinary-travels/" rel="nofollow" title="Add to&nbsp;Facebook"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/facebook.png" title="Add to&nbsp;Facebook" alt="Add to&nbsp;Facebook" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.google.com/bookmarks/mark?op=edit&amp;output=popup&amp;bkmk=http://blog.strawberrysoup.co.uk/2009/12/17/new-design-for-culinary-travels/&amp;title=New+Design+for+Culinary+Travels+of+a+Kitchen+Godess" rel="nofollow" title="Add to&nbsp;Google Bookmarks"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/google.png" title="Add to&nbsp;Google Bookmarks" alt="Add to&nbsp;Google Bookmarks" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.mister-wong.com/index.php?action=addurl&amp;bm_url=http://blog.strawberrysoup.co.uk/2009/12/17/new-design-for-culinary-travels/&amp;bm_description=New+Design+for+Culinary+Travels+of+a+Kitchen+Godess" rel="nofollow" title="Add to&nbsp;Mister Wong"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/misterwong.png" title="Add to&nbsp;Mister Wong" alt="Add to&nbsp;Mister Wong" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://reddit.com/submit?url=http://blog.strawberrysoup.co.uk/2009/12/17/new-design-for-culinary-travels/&amp;title=New+Design+for+Culinary+Travels+of+a+Kitchen+Godess" rel="nofollow" title="Add to&nbsp;reddit"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/reddit.png" title="Add to&nbsp;reddit" alt="Add to&nbsp;reddit" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.stumbleupon.com/submit?url=http://blog.strawberrysoup.co.uk/2009/12/17/new-design-for-culinary-travels/&amp;title=New+Design+for+Culinary+Travels+of+a+Kitchen+Godess" rel="nofollow" title="Add to&nbsp;Stumble Upon"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/stumbleupon.png" title="Add to&nbsp;Stumble Upon" alt="Add to&nbsp;Stumble Upon" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.technorati.com/faves?add=http://blog.strawberrysoup.co.uk/2009/12/17/new-design-for-culinary-travels/" rel="nofollow" title="Add to&nbsp;Technorati"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/technorati.png" title="Add to&nbsp;Technorati" alt="Add to&nbsp;Technorati" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://tipd.com/submit.php?url=http://blog.strawberrysoup.co.uk/2009/12/17/new-design-for-culinary-travels/" rel="nofollow" title="Add to&nbsp;Tip'd"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/tipd.png" title="Add to&nbsp;Tip'd" alt="Add to&nbsp;Tip'd" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://twitter.com/home/?status=Check+out+New+Design+for+Culinary+Travels+of+a+Kitchen+Godess+@+http://blog.strawberrysoup.co.uk/2009/12/17/new-design-for-culinary-travels/" rel="nofollow" title="Add to&nbsp;Twitter"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/twitter.png" title="Add to&nbsp;Twitter" alt="Add to&nbsp;Twitter" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://myweb2.search.yahoo.com/myresults/bookmarklet?u=http://blog.strawberrysoup.co.uk/2009/12/17/new-design-for-culinary-travels/&amp;t=New+Design+for+Culinary+Travels+of+a+Kitchen+Godess" rel="nofollow" title="Add to&nbsp;Yahoo My Web"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/yahoo.png" title="Add to&nbsp;Yahoo My Web" alt="Add to&nbsp;Yahoo My Web" /></a>
<br />
</div>
</div>
<!-- Social Bookmarks END -->
]]></content:encoded>
			<wfw:commentRss>http://blog.strawberrysoup.co.uk/2009/12/17/new-design-for-culinary-travels/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Dennis &amp; McGregor</title>
		<link>http://blog.strawberrysoup.co.uk/2009/12/15/dennis-mcgregor/</link>
		<comments>http://blog.strawberrysoup.co.uk/2009/12/15/dennis-mcgregor/#comments</comments>
		<pubDate>Tue, 15 Dec 2009 16:03:38 +0000</pubDate>
		<dc:creator>Keith</dc:creator>
				<category><![CDATA[Business]]></category>
		<category><![CDATA[Design]]></category>
		<category><![CDATA[E-Commerce]]></category>
		<category><![CDATA[Portfolio]]></category>
		<category><![CDATA[Strawberrysoup]]></category>
		<category><![CDATA[Web Development]]></category>

		<guid isPermaLink="false">http://blog.strawberrysoup.co.uk/?p=641</guid>
		<description><![CDATA[
			
				
			
		
Being a graphic and web design agency, we love design. Dennis and McGregor is a new business that we decided to start, selling &#8220;design-led products for living&#8221; online.
The concept behind the website was simple &#8211; we wanted a well designed and usable eCommerce website to sell design-led products. We also wanted a platform that we [...]]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fblog.strawberrysoup.co.uk%2F2009%2F12%2F15%2Fdennis-mcgregor%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fblog.strawberrysoup.co.uk%2F2009%2F12%2F15%2Fdennis-mcgregor%2F&amp;source=strawberrysoup&amp;style=normal&amp;service=bit.ly" height="61" width="50" /><br />
			</a>
		</div>
<p>Being a graphic and web design agency, we love design. <a href="http://www.dennisandmcgregor.co.uk" target="_blank">Dennis and McGregor</a> is a new business that we decided to start, selling &#8220;design-led products for living&#8221; online.</p>
<p>The concept behind the website was simple &#8211; we wanted a well designed and usable eCommerce website to sell design-led products. We also wanted a platform that we could use to showcase our eCommerce platform &#8211; to show potential customers what it can do.</p>
<p>We had many discussions within the team about the functionality that the website should offer both us and our end users. We use various other web-based applications, and the main requirement was to link to these as well as add value through new functionality.</p>
<p>As a result, the new Dennis and McGregor website links automatically to eBay, Amazon, XERO and 37Signal&#8217;s Highrise &#8211; which helps maintain the accounts and fulfilment process. From an end user perspective, we wanted to give users a range of value add services, including wish-lists, reviews and the ability to follow our blog/news &#8211; which we aim to keep up to date weekly.</p>
<p>We are really proud of this new website. Not only from a design perspective, but from comments that we have had from customers to date. They find the website simple to navigate, easy to purchase and enjoy the fact that we love the products as much as they do!</p>
<p><img class="alignleft size-full wp-image-642" title="Dennis and McGregor" src="http://blog.strawberrysoup.co.uk/wp-content/uploads/2009/12/dennis.jpg" alt="Dennis and McGregor" width="630" height="139" /></p>
<!-- Social Bookmarks BEGIN -->
<div class="social_bookmark">
<a><strong><em>Social Bookmarks</em></strong></a>
<br />
<div class="d">
<br />
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://blinklist.com/index.php?Action=Blink/addblink.php&amp;Name=Dennis+%26%23038%3B+McGregor&amp;Description=Dennis+%26%23038%3B+McGregor&amp;Url=http://blog.strawberrysoup.co.uk/2009/12/15/dennis-mcgregor/" rel="nofollow" title="Add to&nbsp;BlinkList"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/blinklist.png" title="Add to&nbsp;BlinkList" alt="Add to&nbsp;BlinkList" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://del.icio.us/post?url=http://blog.strawberrysoup.co.uk/2009/12/15/dennis-mcgregor/&amp;title=Dennis+%26%23038%3B+McGregor" rel="nofollow" title="Add to&nbsp;Del.icio.us"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/delicious.png" title="Add to&nbsp;Del.icio.us" alt="Add to&nbsp;Del.icio.us" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://digg.com/submit?phase=2&amp;url=http://blog.strawberrysoup.co.uk/2009/12/15/dennis-mcgregor/&amp;title=Dennis+%26%23038%3B+McGregor" rel="nofollow" title="Add to&nbsp;digg"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/digg.png" title="Add to&nbsp;digg" alt="Add to&nbsp;digg" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.facebook.com/sharer.php?u=http://blog.strawberrysoup.co.uk/2009/12/15/dennis-mcgregor/" rel="nofollow" title="Add to&nbsp;Facebook"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/facebook.png" title="Add to&nbsp;Facebook" alt="Add to&nbsp;Facebook" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.google.com/bookmarks/mark?op=edit&amp;output=popup&amp;bkmk=http://blog.strawberrysoup.co.uk/2009/12/15/dennis-mcgregor/&amp;title=Dennis+%26%23038%3B+McGregor" rel="nofollow" title="Add to&nbsp;Google Bookmarks"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/google.png" title="Add to&nbsp;Google Bookmarks" alt="Add to&nbsp;Google Bookmarks" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.mister-wong.com/index.php?action=addurl&amp;bm_url=http://blog.strawberrysoup.co.uk/2009/12/15/dennis-mcgregor/&amp;bm_description=Dennis+%26%23038%3B+McGregor" rel="nofollow" title="Add to&nbsp;Mister Wong"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/misterwong.png" title="Add to&nbsp;Mister Wong" alt="Add to&nbsp;Mister Wong" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://reddit.com/submit?url=http://blog.strawberrysoup.co.uk/2009/12/15/dennis-mcgregor/&amp;title=Dennis+%26%23038%3B+McGregor" rel="nofollow" title="Add to&nbsp;reddit"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/reddit.png" title="Add to&nbsp;reddit" alt="Add to&nbsp;reddit" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.stumbleupon.com/submit?url=http://blog.strawberrysoup.co.uk/2009/12/15/dennis-mcgregor/&amp;title=Dennis+%26%23038%3B+McGregor" rel="nofollow" title="Add to&nbsp;Stumble Upon"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/stumbleupon.png" title="Add to&nbsp;Stumble Upon" alt="Add to&nbsp;Stumble Upon" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.technorati.com/faves?add=http://blog.strawberrysoup.co.uk/2009/12/15/dennis-mcgregor/" rel="nofollow" title="Add to&nbsp;Technorati"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/technorati.png" title="Add to&nbsp;Technorati" alt="Add to&nbsp;Technorati" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://tipd.com/submit.php?url=http://blog.strawberrysoup.co.uk/2009/12/15/dennis-mcgregor/" rel="nofollow" title="Add to&nbsp;Tip'd"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/tipd.png" title="Add to&nbsp;Tip'd" alt="Add to&nbsp;Tip'd" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://twitter.com/home/?status=Check+out+Dennis+%26%23038%3B+McGregor+@+http://blog.strawberrysoup.co.uk/2009/12/15/dennis-mcgregor/" rel="nofollow" title="Add to&nbsp;Twitter"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/twitter.png" title="Add to&nbsp;Twitter" alt="Add to&nbsp;Twitter" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://myweb2.search.yahoo.com/myresults/bookmarklet?u=http://blog.strawberrysoup.co.uk/2009/12/15/dennis-mcgregor/&amp;t=Dennis+%26%23038%3B+McGregor" rel="nofollow" title="Add to&nbsp;Yahoo My Web"><img class="social_img" src="http://blog.strawberrysoup.co.uk/wp-content/plugins/social-bookmarks/images/yahoo.png" title="Add to&nbsp;Yahoo My Web" alt="Add to&nbsp;Yahoo My Web" /></a>
<br />
</div>
</div>
<!-- Social Bookmarks END -->
]]></content:encoded>
			<wfw:commentRss>http://blog.strawberrysoup.co.uk/2009/12/15/dennis-mcgregor/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
