<?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>Recycled Pixels</title>
	<atom:link href="http://www.recycledpixels.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.recycledpixels.com</link>
	<description>Web Design &#38; Development from an Ageing Hobbyist</description>
	<lastBuildDate>Sun, 11 Dec 2011 00:37:43 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>CSS Background-Position on Android Issue</title>
		<link>http://www.recycledpixels.com/2011/12/11/css-background-position-on-android-issue/</link>
		<comments>http://www.recycledpixels.com/2011/12/11/css-background-position-on-android-issue/#comments</comments>
		<pubDate>Sun, 11 Dec 2011 00:37:43 +0000</pubDate>
		<dc:creator>Paul</dc:creator>
				<category><![CDATA[Design]]></category>
		<category><![CDATA[android]]></category>
		<category><![CDATA[background]]></category>
		<category><![CDATA[background-position]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[sprite]]></category>

		<guid isPermaLink="false">http://www.recycledpixels.com/?p=78</guid>
		<description><![CDATA[<p>I&#8217;m working on a new layout and hit a snag with Android. I&#8217;m using a CSS sprite and equal height columns to set the background on an element. I need the two edges of the box to show the background and the box needs to be flexible in width and this seemed to be the [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m working on a new layout and hit a snag with Android. I&#8217;m using a CSS sprite and equal height columns to set the background on an element. I need the two edges of the box to show the background and the box needs to be flexible in width and this seemed to be the only way of doing it. Setting the background to repeat-y on both &#8216;columns&#8217; gets me the final result but there&#8217;s no way I could get it to work on Android.</p>
<p>Opera, Safari, Firefox, Chrome, IE9, iPhone, iPad all fine. Android no. I started off with &#8216;right&#8217; as the position, tried 100% but it still didn&#8217;t work. In the end I had to abandon the sprite idea and chop off the 9px wide sliver I needed.</p>
<p>Google didn&#8217;t turn up anything so if anybody knows a fix let me know. Otherwise I&#8217;m moving on to more important matters with my new layout.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.recycledpixels.com/2011/12/11/css-background-position-on-android-issue/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Google Analytics &amp; Visitors Flow</title>
		<link>http://www.recycledpixels.com/2011/12/08/google-analytics-visitors-flow/</link>
		<comments>http://www.recycledpixels.com/2011/12/08/google-analytics-visitors-flow/#comments</comments>
		<pubDate>Thu, 08 Dec 2011 19:40:28 +0000</pubDate>
		<dc:creator>Paul</dc:creator>
				<category><![CDATA[Design]]></category>

		<guid isPermaLink="false">http://www.recycledpixels.com/?p=74</guid>
		<description><![CDATA[<p>I was just checking the analytics for the latest site &#8212; <a title="NHP Licensing Solutions" href="http://www.naturalhealthproductlicensing.com" target="_blank">NHP Licensing Solutions</a> &#8212; when Google switched me over to the new Google Analytics interface. I clicked on every link like a good techie and was pretty impressed by all of the new functionality and the sleek interface but [...]]]></description>
			<content:encoded><![CDATA[<p>I was just checking the analytics for the latest site &#8212; <a title="NHP Licensing Solutions" href="http://www.naturalhealthproductlicensing.com" target="_blank">NHP Licensing Solutions</a> &#8212; when Google switched me over to the new Google Analytics interface. I clicked on every link like a good techie and was pretty impressed by all of the new functionality and the sleek interface but there&#8217;s a killer feature I found. Look at this:</p>
<p>&nbsp;</p>
<p><a href="http://www.recycledpixels.com/wp-content/uploads/2011/12/Visitors-Flow-Google-Analytics.png"><img class="aligncenter size-large wp-image-75" title="Visitors Flow - Google Analytics" src="http://www.recycledpixels.com/wp-content/uploads/2011/12/Visitors-Flow-Google-Analytics-1024x509.png" alt="" width="595" height="295" /></a>It shows me visually how visitors move through the site, when they drop off and combines this with source data such as which country they come from. What a great report, so much easier to read than tabular data. Thanks Google Analytics team!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.recycledpixels.com/2011/12/08/google-analytics-visitors-flow/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Kohana 3.2 &#8211; In Love All Over Again</title>
		<link>http://www.recycledpixels.com/2011/11/28/kohana-3-2-in-love-all-over-again/</link>
		<comments>http://www.recycledpixels.com/2011/11/28/kohana-3-2-in-love-all-over-again/#comments</comments>
		<pubDate>Mon, 28 Nov 2011 00:30:08 +0000</pubDate>
		<dc:creator>Paul</dc:creator>
				<category><![CDATA[Design]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[Kohana]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[design]]></category>
		<category><![CDATA[development]]></category>
		<category><![CDATA[kohana]]></category>

		<guid isPermaLink="false">http://www.recycledpixels.com/?p=68</guid>
		<description><![CDATA[<p>It&#8217;s been a while since I&#8217;ve had to build a new site and it was my first opportunity to work with <a href="http://kohanaframework.org/">Kohana v3</a> in a production setting. Here&#8217;s the final site for <a title="Natural Health Product Licensing Solutions" href="http://naturalhealthproductlicensing.com" target="_blank">NHP Licensing Solutions</a> &#8211; who are a specialist provider of licensing and consultancy services to the Natural [...]]]></description>
			<content:encoded><![CDATA[<p>It&#8217;s been a while since I&#8217;ve had to build a new site and it was my first opportunity to work with <a href="http://kohanaframework.org/">Kohana v3</a> in a production setting. Here&#8217;s the final site for <a title="Natural Health Product Licensing Solutions" href="http://naturalhealthproductlicensing.com" target="_blank">NHP Licensing Solutions</a> &#8211; who are a specialist provider of licensing and consultancy services to the Natural Health Product industry in Canada.</p>
<p>It took around 7 days to produce the site from start to finish but this also included setting up the development environment on my PC and ensuring I had everything in place to support this site moving forward. When I have &#8216;play sites&#8217; I don&#8217;t have to worry too much about backing them up or controlling the changes but paid projects require a whole new level of discipline. This means my MySQL databases are dumped and backed up every 4 hours, the whole site is backed up every 24 hours and I also maintain an off-site copy as well. I also wanted to switch from Subversion to Git which was another learning curve.</p>
<p>As for the Kohana specifics though let me go through the design process.</p>
<p>The design itself was a WordPress theme from Theme Forest with stock photography and graphics from Photo Dune and Graphic River. I used the default template controller within Kohana but created views for each page layout type and then created views for the graphical elements and finally the content. Therefore, if I want a full-width page and then use two columns and place a few toggle components in there I just nest the views inside one another and avoid repetition. I could have installed the theme into WordPress but in the end I just hacked the HTML out of a few static pages and worked out how the theme worked.</p>
<p>It took me around 2 days to get the shell of the front page together and split into its various components. Another day and I had the second page completed, along with more elements. Another day and the site content was complete. Kohana didn&#8217;t help to deconstruct the WordPress theme into views, it was just a matter of me working out how the theme worked and where to cut-and-paste into my views.</p>
<p>And then the real work in Kohana started. I initially extended the HTML helper to build some small items such as the menus and then backed it all out as I was violating the HMVC model by putting HTML into my extended helper. In the end I just used views although Kostache could have helped at this point. I extended the Template controller to setup my site-wide variables and bind $title, $description and $keywords to the HEAD meta tags for SEO purposes. Every page on the site has different values as per best practice. I also had to extend the Valid controller to add two new validation callbacks; one to check that email addresses added to the newsletter were unique (via the appropriate Model) and another to ensure that the default form values had not been submitted. Easy enough to do with the cascading file system.</p>
<p>My biggest challenge was writing the form handling code which took a day and a half. I cut a few corners by using jQuery and the Forms plugin but I wanted a full solution &#8212; it needed to be POSTable, client-side validation tied to the blur events and used Ajax where possible. In the end I got there and the approach looks quite tidy in the code as the error messages have been dumped into the HTML so the onBlur events use the same text as the server-side routine. If this site had more forms I&#8217;d probably extend the Forms helper as there&#8217;s still a lot of PHP in the form view to coordinate the process.</p>
<p>My final task was to then create a single Model and have new subscribers added to the database &#8212; all of which took minutes to achieve.</p>
<p>My last day of work was then spent testing the site, optimizing it and driving up the Page Speed score as far as I could. I also setup a custom error handler for the 404 and 500 error messages using a simple non-template&#8217;d view.</p>
<p>My last production Kohana site was v2.3 and it was a painful experience as there were few examples around the Internet to crib from. This time around there were many more examples. Stack Overflow had a lot of good answers, the Kohana v3.2 documentation was much, much better and I also had access to Packt&#8217;s Kohana 3.0 Beginner&#8217;s Guide that I helped to review. Although I will say in my defence that some of those chapters were not reviewed by me and I think in their desire to get this book out that they cut a few editorial corners. The section on custom error handlers is second-rate compared to the Kohana docs and lysender&#8217;s articles and there were so many typos in the first few chapters that I feel for any beginner trying these code samples out and getting nowhere. The most common mistake is that &lt; and &gt; are used when it should be &#8216; and &#8216;. There are also some changes between v3.0 and v3.2 such as the process for using Config that could be confusing.</p>
<p>All-in-all, my experience of using Kohana v3.2 was fantastic and I&#8217;m very happy with the final result, as-is my client &#8212; my sister-in-law. I don&#8217;t normally use Kohana for small sites as I don&#8217;t need an overhead for less than 10 pages of content. However, this site was just a starting point as I know news articles, blogs and surveys are all on the business plan.</p>
<p>My next project is to re-engineer the <a title="O-Sushi Japanese Restaurant | Coquitlam, BC" href="http://www.o-sushi.ca/" target="_blank">O-Sushi</a> site. It&#8217;s currently a single page site but it needs a responsive design as I&#8217;ve got around 15% of the visitors using smartphones. I&#8217;ll also be using Kohana for this project though as I think it&#8217;s easier to use Kohana than doing it in pure PHP, especially as I get logging and error handling for free. I&#8217;m also not limited in what I do in the future and how the site continues to grow.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.recycledpixels.com/2011/11/28/kohana-3-2-in-love-all-over-again/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Responsive Web Design : A Case for Using It</title>
		<link>http://www.recycledpixels.com/2011/10/06/responsive-web-design-a-case-for-using-it/</link>
		<comments>http://www.recycledpixels.com/2011/10/06/responsive-web-design-a-case-for-using-it/#comments</comments>
		<pubDate>Thu, 06 Oct 2011 01:27:20 +0000</pubDate>
		<dc:creator>Paul</dc:creator>
				<category><![CDATA[Design]]></category>
		<category><![CDATA[responsive]]></category>
		<category><![CDATA[web design]]></category>

		<guid isPermaLink="false">http://www.recycledpixels.com/?p=65</guid>
		<description><![CDATA[<p>I&#8217;ve been a fan of liquid layouts from the early days of web design and always compromised my designs to incorporate them. After all, why have all that screen estate and not use it? With the consumerization of IT and the influx of smartphones and tablets we have some additional problems to deal with in [...]]]></description>
			<content:encoded><![CDATA[<p><strong>I&#8217;ve been a fan of liquid layouts from the early days of web design and always compromised my designs to incorporate them. After all, why have all that screen estate and not use it? With the consumerization of IT and the influx of smartphones and tablets we have some additional problems to deal with in terms of resolution.</strong></p>
<ul>
<li>The Smartphone use case relies on a screen width of 320px.</li>
<li>Most Desktop and Laptops can comfortably display 1,280px &#8212; 1,024px to be safe.</li>
<li>And then we have Tablets which pose a secondary problem of rotation; using 1,024px in landscape mode and 768px in portrait mode.</li>
</ul>
<p>Most sites are designed twice; once for the desktop/laptop and once for the mobile world using a lightweight design that is optimized for 320px. I haven&#8217;t seen anybody with a site catering to tablets but the rotational dilemma poses some issues.</p>
<p>Ethan Marcotte has an answer though &#8212; <a href="http://www.alistapart.com/articles/responsive-web-design/">Responsive Web Design</a>&#8211; a design methodology that uses one core site that adapts to the resolution of the browser. There are a few <a href="http://themeforest.net/searches?term=responsive&amp;type=files">responsive designs on ThemeForest</a> with the <a href="http://themes.mdnw.net/?theme=SuperSkeleton">SuperSkeleton</a> design being a great example of how this stuff works.</p>
<p>However, with every new way of doing something there are various detractors saying it&#8217;s not a good idea. I think <a href="http://www.webdesignshock.com/responsive-design-problems/">WebDesignShock</a> have summed up the reasons (11 of them) against responsive web design very well but it&#8217;s not going to put me off.</p>
<p>I don&#8217;t think responsive web design is the all-round solution for every site but if there is a significant audience need for two or three designs then you should consider it. You also need to consider the use cases individually and whether it&#8217;s appropriate to show the same information in all three cases. For example, a cinema site accessed via a smartphone should be optimized to show the current movie showing times. For a tablet and desktop use case, this information is important but not as important so you can fill the pages with fluff and other links. A corporate site may need to focus more on location and contact details rather than corporate news.</p>
<p>You need to understand the use cases and how this impacts your content strategy.</p>
<p>I have a small site for my local sushi restaurant. All three use cases apply and my analytics support the need for a responsive design. At some point they may use tablets to replace their printed menu so using the additional space to provide more details and links to a &#8216;Sushi 101&#8242; would be beneficial.</p>
<p>Lets go through WebDesignShock&#8217;s 11 reasons and consider them against this project.</p>
<ol>
<li>Image Resizing. Good point but it can be countered with some <a href="http://filamentgroup.com/lab/responsive_images_experimenting_with_context_aware_image_sizing/">context-aware image sizing</a>.</li>
<li>Resizing images consumes CPU and RAM. Good point but countered with the link above.</li>
<li>Mobile devices download non-viewable data. True but we&#8217;ll just have to bear this in mind during the design or we could leverage AJAX to load content inline.</li>
<li>Mobile speed vs desktop speed. Another design consideration, not a deal breaker in my mind.</li>
<li>Hiding background images is a bad idea. Another design consideration then.</li>
<li>More code, more to update. I don&#8217;t really agree as I&#8217;d rather update one complex site than three sites that are marginally less complex. With the design criteria we&#8217;re all supposed to follow to achieve high PageSpeed scores we&#8217;re all using a complex set of techniques to achieve that. Adding a little more into the mix isn&#8217;t so bad IMO.</li>
<li>CSS media queries will not remove unncessary code. True, but I can use AJAX again if I really need to.</li>
<li>CSS media query is a bad choice for multiple devices. I&#8217;m not a fan of niche legacy browsers and if my analytics are not showing a significant number of visitors using them, I&#8217;m not going to design for them. It&#8217;s similar to the &#8216;Do I design for IE6?&#8217; question. If it&#8217;s your corporate Intranet and you&#8217;re still running IE6 then &#8216;yes&#8217;. If your user-base is still using IE6 then &#8216;yes&#8217;. If you&#8217;re not as restricted then don&#8217;t do it. If my new site works on the iPhone, iPad, MacBook and Windows Desktop I&#8217;ll be happy as these represent 95% of my audience.</li>
<li>&#8220;Great mobile products are created, never ported&#8221;. Agreed but I&#8217;m not building an App &#8212; which is a completely different argument. If anything I&#8217;m trying to obviate the need for an App by building a site that works equally well on all mobile devices not just the ones from Cupertino especially as I&#8217;m an Android user.</li>
<li>Mobile needs are different from desktop needs. I agree and I opened my discussion with a similar caveat but the final statement about excessive scrolling is misleading. You just replace the large logo with a small one or swap in a different header design.</li>
<li>Better create a mobile website than a responsive one. If there are a significant number of mobile users then it may be worth the effort especially if you have a team of developers behind a high traffic site. If it&#8217;s the local sushi restaurant it&#8217;s not worth the effort.</li>
</ol>
<p>In my case it&#8217;s better to use a responsive design.</p>
<p>Next Question: Do I use a responsive design framework or start from scratch?</p>
]]></content:encoded>
			<wfw:commentRss>http://www.recycledpixels.com/2011/10/06/responsive-web-design-a-case-for-using-it/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Why/When Should I Use Kohana?</title>
		<link>http://www.recycledpixels.com/2011/08/25/whywhen-should-i-use-kohana/</link>
		<comments>http://www.recycledpixels.com/2011/08/25/whywhen-should-i-use-kohana/#comments</comments>
		<pubDate>Thu, 25 Aug 2011 16:27:26 +0000</pubDate>
		<dc:creator>Paul</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[cakephp]]></category>
		<category><![CDATA[frameworks]]></category>
		<category><![CDATA[kohana]]></category>
		<category><![CDATA[mvc]]></category>
		<category><![CDATA[symfony]]></category>
		<category><![CDATA[zend]]></category>

		<guid isPermaLink="false">http://www.recycledpixels.com/?p=53</guid>
		<description><![CDATA[<p><a href="http://www.recycledpixels.com/wp-content/uploads/2011/08/logo-new1.png"></a><a href="http://kohanaframework.org/" target="_blank">Kohana</a> is a small PHP MVC framework that is incredibly powerful, yet lightweight. I see it more like PHP+ than some of the other PHP frameworks.</p> <p>The purpose of an MVC framework is to abstract the high-level programming language into more of an application-level programming language. The framework provides a number of [...]]]></description>
			<content:encoded><![CDATA[<p><strong><a href="http://www.recycledpixels.com/wp-content/uploads/2011/08/logo-new1.png"><img class="alignleft size-full wp-image-60" title="logo-new" src="http://www.recycledpixels.com/wp-content/uploads/2011/08/logo-new1.png" alt="" width="200" height="70" /></a><a href="http://kohanaframework.org/" target="_blank">Kohana</a> is a small PHP MVC framework that is incredibly powerful, yet lightweight. I see it more like PHP+ than some of the other PHP frameworks.</strong></p>
<p>The purpose of an MVC framework is to abstract the high-level programming language into more of an application-level programming language. The framework provides a number of building blocks that enable you to get up-to-speed more quickly and fill in some of the gaps in the underlying language. I&#8217;ve been around PHP since v3 so I&#8217;ve seen a lot of changes with v4 and v5 but there are gaps. Every time I build a new site there are a basic set of classes that have to be developed such as an Error Handler, Logging Subsystem, Database Abstraction, HTML Helpers, Templating and Form Handlers. And above all of that there is a constant thread of Information Security classes that have to be built in to cope with XSS and SQL Injection attacks. Session Management is typically another item on the to-do list.</p>
<p>Why spend all of that time building all of these classes or re-using code from other projects when I can use a framework? If my project needs these components I immediately pull out the framework and start work on the real objective, writing the application not the spending weeks on the underlying codebase.</p>
<p><a href="http://codeigniter.com/" target="_blank">CodeIgniter</a> was my first introduction to the PHP MVC framework, it was quick and did just enough of the basics. The other frameworks such as <a href="http://www.symfony-project.org/" target="_blank">Symfony</a>, <a href="http://cakephp.org/" target="_blank">CakePHP</a> and <a href="http://framework.zend.com/" target="_blank">Zend</a> had too much overhead &#8212; they all abstracted the programming language even further than CodeIgniter and Kohana. Symfony, CakePHP and Zend are like comparing Visual Basic to Visual C++. They&#8217;re higher-level frameworks which means the time to prototype an application is far less than a mid-level framework but the cost is computational overhead. There are plenty of benchmarks around the Internet comparing these frameworks but no matter how flawed the benchmark logic is there is always a clear divide between the mid and high level frameworks.</p>
<p>My sites ultimately end up in production, they&#8217;re not prototypes for a client and I hate having to redo work. I would hate to launch a site in Zend and then have to re-code it later in another faster framework or in pure PHP. I don&#8217;t need to do that with Kohana. The disadvantage is that I have to invest more time building the prototype application but in the long-run I get the benefit. When the site reaches production I&#8217;m able to scale the site more easily as the resource requirements on the server are less. My visitors, users or customers are happier because the site is quicker.</p>
<p>As for how to choose between CodeIgniter and Kohana?</p>
<p>Kohana is originally a fork of CodeIgniter. I went with it because I wanted a framework that was based on PHP v5, not v4. There were a number of significant changes in the PHP language that made programming far easier so I decided to take the less-trodden path. Two years ago when I made my choice, it was easy. Today it&#8217;s harder as CodeIgniter v2.0 is now based around PHP v5 but Kohana has since moved on to v3. I also think that Kohana is starting to evolve beyond the constraints of v2 and the typical criticism of a lack of documentation.</p>
<p>Kohana&#8217;s documentation and examples in the wild are very limited, you really will spend hours of time tracing bugs and reading the source code to understand what you&#8217;re supposed to do. CodeIgniter lets you avoid all of that as there&#8217;s very good documentation, lots of examples and a strong community. Kohana&#8217;s community used to be full of people that said &#8216;read the source code&#8217;, today it&#8217;s a slightly friendlier environment.</p>
<p>I have a new project coming up that I intend to use Kohana for. I&#8217;ll code up a few examples in CodeIgniter and Kohana and post the results. I&#8217;m sure the code in Kohana will be cleaner and easier to understand as there&#8217;s less fluff involved but it will be an interesting learning exercise.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.recycledpixels.com/2011/08/25/whywhen-should-i-use-kohana/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PageLines Platform Pro &#8212; Why?</title>
		<link>http://www.recycledpixels.com/2011/08/25/pagelines-platform-pro-why/</link>
		<comments>http://www.recycledpixels.com/2011/08/25/pagelines-platform-pro-why/#comments</comments>
		<pubDate>Thu, 25 Aug 2011 16:00:34 +0000</pubDate>
		<dc:creator>Paul</dc:creator>
				<category><![CDATA[Design]]></category>
		<category><![CDATA[blogging]]></category>
		<category><![CDATA[genesis]]></category>
		<category><![CDATA[platform pro]]></category>
		<category><![CDATA[thesis]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://www.recycledpixels.com/?p=50</guid>
		<description><![CDATA[<p>WordPress is great blogging platform but I can never get it to do what I want &#8216;out-of-the-box&#8217;. It always seems to take a lot of customization, plugins and widgets to get it right &#8212; I don&#8217;t have the time. This is the benefit of using <a href="http://www.pagelines.com/themes/platformpro/" target="_blank">PageLines Platform Pro</a> framework. A large proportion of [...]]]></description>
			<content:encoded><![CDATA[<p><strong>WordPress is great blogging platform but I can never get it to do what I want &#8216;out-of-the-box&#8217;. It always seems to take a lot of customization, plugins and widgets to get it right &#8212; I don&#8217;t have the time. This is the benefit of using <a href="http://www.pagelines.com/themes/platformpro/" target="_blank">PageLines Platform Pro</a> framework. A large proportion of the work is done for me, all I need to do is add a few plugins and it&#8217;s ready to go.</strong></p>
<p>Blogging for me is about writing, not presentation, design or development. If I wanted to do those things I&#8217;d stick with CSS, HTML, JavaScript or jQuery. If I needed more functionality than a read-only HTML site can deliver I&#8217;d switch to PHP. If I&#8217;m going to build a complex site with hundreds, or thousands, of users I&#8217;d switch it up again to <a href="http://kohanaframework.org/" target="_blank">Kohana</a>.</p>
<p>I looked at a few of the large WordPress frameworks such as <a href="http://diythemes.com/" target="_blank">Thesis</a> and <a href="http://www.studiopress.com/themes/genesis" target="_blank">Genesis</a> but I settled on Platform Pro in the end. I wanted a framework with a clean, professional, typographically-focussed theme and something that I could put on multiple domains as cost-effectively as possible. All of these frameworks seemed to be much-of-a-muchness. Googling around some blog reviews didn&#8217;t sway me one way or another so it largely came down to what the basic theme looked like and how much tweaking I&#8217;d have to do to get a new site up and running.</p>
<p>Platform Pro is licensed to me, not by domain. It&#8217;s also based on a design style I personally like, which reminds me of the NY and LA Times sites, a strong serif font on a clean white page.</p>
<p>My only problem is that it&#8217;s such a complex beast that it could take me months to get used to it, especially as I venture from the safety of blog posts into more of the CMS functionality.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.recycledpixels.com/2011/08/25/pagelines-platform-pro-why/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Flip Counters &amp; Displays with jQuery &amp; PHP</title>
		<link>http://www.recycledpixels.com/2011/08/25/flip-counters-displays-with-jquery-php/</link>
		<comments>http://www.recycledpixels.com/2011/08/25/flip-counters-displays-with-jquery-php/#comments</comments>
		<pubDate>Thu, 25 Aug 2011 06:58:04 +0000</pubDate>
		<dc:creator>Paul</dc:creator>
				<category><![CDATA[Ideas]]></category>
		<category><![CDATA[counter]]></category>
		<category><![CDATA[display]]></category>
		<category><![CDATA[flip]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[UX]]></category>
		<category><![CDATA[widget]]></category>

		<guid isPermaLink="false">http://www.recycledpixels.com/?p=41</guid>
		<description><![CDATA[<p>I had an interesting Internet diversion the other day that resulted in me finding some ideas for a small design project. How about building a flip counter?</p> <p>It started off as a requirement, honest. Every month I want to report on the position of my sites on Google for particular search terms. I want to [...]]]></description>
			<content:encoded><![CDATA[<p><strong>I had an interesting Internet diversion the other day that resulted in me finding some ideas for a small design project. How about building a flip counter?</strong></p>
<p>It started off as a requirement, honest. Every month I want to report on the position of my sites on Google for particular search terms. I want to know that I&#8217;m marketing the sites correctly and pushing them up the rankings. Search Engine Optimization (SEO) or Search Engine Marketing (SEM) isn&#8217;t rocket science, you simply have to provide what Google wants &#8212; quality content. However, how you present this information can make a difference in terms of how your effort is rewarded.</p>
<p>I found a script on Envato&#8217;s Code Canyon, the <a title="PHP Google Position Checker" href="http://codecanyon.net/item/php-google-position-checker/239429" target="_blank">PHP Google Position Checker</a>, that seemed to fit the bill. It&#8217;s a simple script that executes each search via PHP&#8217;s cURL function and reinterprets the results. It&#8217;s not clean, it&#8217;s prone to being blocked by Google but it works nonetheless. It would need some clean-up and wrapping around a CRON job to run it monthly but it got me half-way to my objective for a tiny investment of just $3.</p>
<p>And then somebody in the discussion thread suggested it should be integrated with a <a title="jQuery Flip Counter" href="http://bloggingsquared.com/jquery/flipcounter/" target="_blank">jQuery Flip Counter</a>. What&#8217;s that? I thought so I duly clicked on the link.</p>
<p>It&#8217;s an interesting piece of eye-candy and not something I&#8217;d be interested in but I thought it may be useful for other projects. I like replicating real-world interaction components on websites because there&#8217;s an immediate familiarity that improves the user experience. The more intuitive something is, the less you need to teach them. Websites should be intuitive as you can&#8217;t expect visitors to learn how to use your site.</p>
<p>But I found a better version. Googling led me to Chris Nanney&#8217;s site and his <a title="Apple-Style Counter" href="http://cnanney.com/journal/code/apple-style-counter/" target="_blank">Apple-Style Counter</a>.</p>
<p><a href="http://www.recycledpixels.com/wp-content/uploads/2011/08/apple-counter.png"><img class="aligncenter size-medium wp-image-42" title="apple-counter" src="http://www.recycledpixels.com/wp-content/uploads/2011/08/apple-counter-300x59.png" alt="" width="300" height="59" /></a></p>
<p>Here&#8217;s a <a title="Apple-Style Counter Demo" href="http://cnanney.com/journal/demo/apple-counter/" target="_blank">demo</a>. Chris uses some additional images in the animation to simulate each digit flipping over which gives a much slicker effect.</p>
<p>I also found a few flip counter graphics on Envato&#8217;s <a title="Graphic River" href="http://graphicriver.net" target="_blank">Graphic River</a> but I particularly like the look of <a title="Cesgra's Flip Displays Set" href="http://graphicriver.net/item/flip-displays-set/119664" target="_blank">Cesgra&#8217;s Flip Displays Set</a>.</p>
<p><a href="http://www.recycledpixels.com/wp-content/uploads/2011/08/590width-preview1.jpg"><img class="aligncenter size-large wp-image-45" title="590width preview" src="http://www.recycledpixels.com/wp-content/uploads/2011/08/590width-preview1-231x1024.jpg" alt="" width="231" height="1024" /></a></p>
<p>And then I thought wouldn&#8217;t it be great to use Chris&#8217; or Cesgra&#8217;s images as a base and use PHP&#8217;s GD TTF functions to make custom sprites for whatever I wanted. This means I&#8217;d get the tween states for the slick animation but also get to choose the font and what to write on each flip panel. This means I could replicate a whole airport arrivals/departure board with A-Z flip components. If I took each frame of animation, split it into a number of component images I could then use GD functions to merge them over the top with the correct alpha transparency, e.g. base + digit + shadow. By splitting each digit into three vertical slices I could also build wide panels for months and days as Cesgra uses in his graphics.</p>
<p>And then Elliot came along with an even <a title="Flip Clock and Date" href="http://graphicriver.net/item/flip-clock-and-date/484767" target="_blank">slicker set of flip images</a>.</p>
<p><a href="http://www.recycledpixels.com/wp-content/uploads/2011/08/flip-date-clock-preview.jpg"><img class="aligncenter size-medium wp-image-46" title="flip-date-clock-preview" src="http://www.recycledpixels.com/wp-content/uploads/2011/08/flip-date-clock-preview-252x300.jpg" alt="" width="252" height="300" /></a></p>
<p>Therefore, if anybody ever does get around to implementing this concept please let me know as I&#8217;d love to see if the concept works as well as it does in my head.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.recycledpixels.com/2011/08/25/flip-counters-displays-with-jquery-php/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>

