<?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>Web Development &#38; Stuff &#187; Eco friendly / green computing</title>
	<atom:link href="http://web-development-blog.co.uk/category/eco-friendly-green-computing/feed/" rel="self" type="application/rss+xml" />
	<link>http://web-development-blog.co.uk</link>
	<description>Some interesting findings from web-dev land...</description>
	<lastBuildDate>Thu, 22 Dec 2011 15:35:11 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.6</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Reset PHP array key values</title>
		<link>http://web-development-blog.co.uk/2009/05/16/reset-php-array-key-values/</link>
		<comments>http://web-development-blog.co.uk/2009/05/16/reset-php-array-key-values/#comments</comments>
		<pubDate>Sat, 16 May 2009 11:17:19 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Eco friendly / green computing]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[MySQL]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Ruby on Rails]]></category>
		<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Web development]]></category>

		<guid isPermaLink="false">http://web-development-blog.co.uk/?p=161</guid>
		<description><![CDATA[To reset the key values in  a PHP array you can do this:
1234567891011121314151617181920212223$things = array&#40;'a','b','c','d'&#41;;
unset&#40;$things&#91;0&#93;&#41;;
print_r&#40;$things&#41;; 

#outputs
#Array
#(
# &#160; &#160;[1] =&#62; b
# &#160; &#160;[2] =&#62; c
# &#160; &#160;[3] =&#62; d
#)

# Actually do the reset.
$things = array_values&#40;$things&#41;;

print_r&#40;$things&#41;;
#outputs 
#Array
#(
# &#160; &#160;[0] =&#62; b
# &#160; &#160;[1] =&#62; c
# &#160; &#160;[2] =&#62; d
#)
]]></description>
			<content:encoded><![CDATA[<p>To reset the key values in  a PHP array you can do this:</p>
<div class="codecolorer-container php " style="overflow:auto;white-space:nowrap;width:100%;height:300px"><table cellspacing="0" cellpadding="0"><tbody><tr><td class="line-numbers"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br />20<br />21<br />22<br />23<br /></div></td><td><div class="php codecolorer" style="font-family:Monaco,Lucida Console,monospace"><span class="re0">$things</span> <span class="sy0">=</span> <span class="kw3">array</span><span class="br0">&#40;</span><span class="st_h">'a'</span><span class="sy0">,</span><span class="st_h">'b'</span><span class="sy0">,</span><span class="st_h">'c'</span><span class="sy0">,</span><span class="st_h">'d'</span><span class="br0">&#41;</span><span class="sy0">;</span><br />
<span class="kw3">unset</span><span class="br0">&#40;</span><span class="re0">$things</span><span class="br0">&#91;</span><span class="nu0">0</span><span class="br0">&#93;</span><span class="br0">&#41;</span><span class="sy0">;</span><br />
<span class="kw3">print_r</span><span class="br0">&#40;</span><span class="re0">$things</span><span class="br0">&#41;</span><span class="sy0">;</span> <br />
<br />
<span class="co2">#outputs</span><br />
<span class="co2">#Array</span><br />
<span class="co2">#(</span><br />
<span class="co2"># &nbsp; &nbsp;[1] =&gt; b</span><br />
<span class="co2"># &nbsp; &nbsp;[2] =&gt; c</span><br />
<span class="co2"># &nbsp; &nbsp;[3] =&gt; d</span><br />
<span class="co2">#)</span><br />
<br />
<span class="co2"># Actually do the reset.</span><br />
<span class="re0">$things</span> <span class="sy0">=</span> <span class="kw3">array_values</span><span class="br0">&#40;</span><span class="re0">$things</span><span class="br0">&#41;</span><span class="sy0">;</span><br />
<br />
<span class="kw3">print_r</span><span class="br0">&#40;</span><span class="re0">$things</span><span class="br0">&#41;</span><span class="sy0">;</span><br />
<span class="co2">#outputs </span><br />
<span class="co2">#Array</span><br />
<span class="co2">#(</span><br />
<span class="co2"># &nbsp; &nbsp;[0] =&gt; b</span><br />
<span class="co2"># &nbsp; &nbsp;[1] =&gt; c</span><br />
<span class="co2"># &nbsp; &nbsp;[2] =&gt; d</span><br />
<span class="co2">#)</span></div></td></tr></tbody></table></div>
]]></content:encoded>
			<wfw:commentRss>http://web-development-blog.co.uk/2009/05/16/reset-php-array-key-values/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Dynamic object attributes / member variables with specific visibility not possible with PHP</title>
		<link>http://web-development-blog.co.uk/2009/05/06/dynamic-object-attributes-member-variables-with-specific-visibility-not-possible-with-php/</link>
		<comments>http://web-development-blog.co.uk/2009/05/06/dynamic-object-attributes-member-variables-with-specific-visibility-not-possible-with-php/#comments</comments>
		<pubDate>Wed, 06 May 2009 09:48:53 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Eco friendly / green computing]]></category>
		<category><![CDATA[MySQL]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Web development]]></category>

		<guid isPermaLink="false">http://web-development-blog.co.uk/?p=156</guid>
		<description><![CDATA[Ran into an interesting situation yesterday. I wanted to create some dynamic (overloading) object attributes (object member variables) in PHP with private visibility. Forcing encapsulation via getter methods. It seems this is not possible, as dynamic attributes are only ever public (see the PHP documentation). 
There is however, as always, a work around! If you [...]]]></description>
			<content:encoded><![CDATA[<p>Ran into an interesting situation yesterday. I wanted to create some dynamic (overloading) object attributes (object member variables) in PHP with private visibility. Forcing encapsulation via getter methods. It seems this is not possible, as dynamic attributes are only ever public (<a href="http://ca.php.net/manual/en/language.oop5.overloading.php">see the PHP documentation</a>). </p>
<p>There is however, as always, a work around! If you set a private containing array for your dynamic attributes you can get almost the same behaviour:</p>
<div class="codecolorer-container php " style="overflow:auto;white-space:nowrap;width:100%;height:300px"><table cellspacing="0" cellpadding="0"><tbody><tr><td class="line-numbers"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br />20<br />21<br />22<br /></div></td><td><div class="php codecolorer" style="font-family:Monaco,Lucida Console,monospace"><span class="kw2">class</span> TestClass <span class="br0">&#123;</span><br />
&nbsp; &nbsp; <br />
&nbsp; &nbsp; <span class="kw2">private</span> <span class="re0">$dynamic_attribute_container</span> <span class="sy0">=</span> <span class="kw3">array</span><span class="br0">&#40;</span><span class="br0">&#41;</span><span class="sy0">;</span><br />
&nbsp; &nbsp; <br />
&nbsp; &nbsp; <span class="co2"># This method is used to set new attributes.</span><br />
&nbsp; &nbsp; <span class="kw2">public</span> SettingMethod<span class="br0">&#40;</span><span class="re0">$variable_name</span><span class="sy0">,</span> <span class="re0">$variable_value</span><span class="br0">&#41;</span><span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="re0">$this</span><span class="sy0">-&gt;</span><span class="me1">dynamic_attribute_container</span><span class="br0">&#91;</span><span class="re0">$this</span><span class="sy0">-&gt;</span><span class="me1">variable_name</span><span class="br0">&#93;</span> <span class="sy0">=</span> <span class="re0">$this</span><span class="sy0">-&gt;</span><span class="me1">variable_value</span><span class="sy0">;</span><br />
&nbsp; &nbsp; <span class="br0">&#125;</span><br />
&nbsp; &nbsp; <br />
&nbsp; &nbsp; <span class="co2"># This method is used to return the attributes from within the private array container.</span><br />
&nbsp; &nbsp; <span class="kw2">public</span> GettingMethod<span class="br0">&#40;</span><span class="re0">$attribute_name</span><span class="br0">&#41;</span><span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="co2"># Encapsulation code.</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="re0">$output</span> <span class="sy0">=</span> <span class="kw3">strtolower</span><span class="br0">&#40;</span><span class="re0">$this</span><span class="sy0">-&gt;</span><span class="me1">dynamic_attribute_container</span><span class="br0">&#91;</span><span class="re0">$attribute_name</span><span class="br0">&#93;</span><span class="br0">&#41;</span><span class="sy0">;</span><br />
<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">return</span> <span class="re0">$output</span><span class="sy0">;</span><br />
&nbsp; &nbsp; <span class="br0">&#125;</span><br />
<span class="br0">&#125;</span><br />
<br />
<span class="re0">$object</span> <span class="sy0">=</span> <span class="kw2">new</span> TestClass<span class="br0">&#40;</span><span class="br0">&#41;</span><span class="sy0">;</span><br />
<span class="re0">$object</span><span class="sy0">-&gt;</span><span class="me1">SettingMethod</span><span class="br0">&#40;</span><span class="st_h">'foo'</span><span class="sy0">,</span><span class="st_h">'bar'</span><span class="br0">&#41;</span><span class="sy0">;</span><br />
<span class="re0">$object</span><span class="sy0">-&gt;</span><span class="me1">foo</span><span class="sy0">;</span> <span class="co2"># This will error.</span><br />
<span class="re0">$object</span><span class="sy0">-&gt;</span><span class="me1">GettingMethod</span><span class="br0">&#40;</span><span class="st_h">'foo'</span><span class="br0">&#41;</span><span class="sy0">;</span> <span class="co2"># This will return bar.</span></div></td></tr></tbody></table></div>
<p>If anyone else has any thoughts on this subject I&#8217;d love to hear them.</p>
]]></content:encoded>
			<wfw:commentRss>http://web-development-blog.co.uk/2009/05/06/dynamic-object-attributes-member-variables-with-specific-visibility-not-possible-with-php/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>MySQL indexes &#8211; query performance increase</title>
		<link>http://web-development-blog.co.uk/2009/02/25/mysql-indexes-query-performance-increase/</link>
		<comments>http://web-development-blog.co.uk/2009/02/25/mysql-indexes-query-performance-increase/#comments</comments>
		<pubDate>Wed, 25 Feb 2009 11:54:41 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Eco friendly / green computing]]></category>
		<category><![CDATA[Linux servers]]></category>
		<category><![CDATA[MySQL]]></category>
		<category><![CDATA[Ruby]]></category>
		<category><![CDATA[Ruby on Rails]]></category>
		<category><![CDATA[Web development]]></category>
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://web-development-blog.co.uk/?p=76</guid>
		<description><![CDATA[Today I had a log table report query that contained a nested query. It was taking ages (5mins) to complete. I investigated indexes which I had been meaning to look at for a while. Anyway I managed to bring down the query to 0.04s &#8211; I now have much love for indexes!!
Basic MySQL syntax:
1CREATE INDEX [...]]]></description>
			<content:encoded><![CDATA[<p>Today I had a log table report query that contained a nested query. It was taking ages (5mins) to complete. I investigated indexes which I had been meaning to look at for a while. Anyway I managed to bring down the query to 0.04s &#8211; I now have much love for indexes!!</p>
<p>Basic MySQL syntax:</p>
<div class="codecolorer-container sql " style="overflow:auto;white-space:nowrap;width:100%"><table cellspacing="0" cellpadding="0"><tbody><tr><td class="line-numbers"><div>1<br /></div></td><td><div class="sql codecolorer" style="font-family:Monaco,Lucida Console,monospace"><span class="kw1">CREATE</span> <span class="kw1">INDEX</span> index_name <span class="kw1">ON</span> table_name<span class="br0">&#40;</span>column_name<span class="br0">&#41;</span>;</div></td></tr></tbody></table></div>
<p>You can also create indexes when you create a table. In this example I&#8217;m indexing id,landing_id,page_id and action_id with INDEX (id,landing_id,page_id,action_id):</p>
<div class="codecolorer-container sql " style="overflow:auto;white-space:nowrap;width:100%"><table cellspacing="0" cellpadding="0"><tbody><tr><td class="line-numbers"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br /></div></td><td><div class="sql codecolorer" style="font-family:Monaco,Lucida Console,monospace"><span class="kw1">CREATE</span> <span class="kw1">TABLE</span> <span class="kw1">IF</span> <span class="kw1">NOT</span> <span class="kw1">EXISTS</span> visitor_actions <span class="br0">&#40;</span><br />
&nbsp; id INT <span class="kw1">UNSIGNED</span> <span class="kw1">NOT</span> <span class="kw1">NULL</span> <span class="kw1">AUTO_INCREMENT</span> <span class="kw1">PRIMARY</span> <span class="kw1">KEY</span><span class="sy0">,</span><br />
&nbsp; landing_id INT <span class="kw1">UNSIGNED</span> <span class="kw1">NOT</span> <span class="kw1">NULL</span><span class="sy0">,</span><br />
&nbsp; page_id TINYINT <span class="kw1">UNSIGNED</span> <span class="kw1">NOT</span> <span class="kw1">NULL</span><span class="sy0">,</span><br />
&nbsp; action_id TINYINT <span class="kw1">UNSIGNED</span> <span class="kw1">NOT</span> <span class="kw1">NULL</span><span class="sy0">,</span><br />
&nbsp; dwell_time MEDIUMINT <span class="kw1">UNSIGNED</span> <span class="kw1">NULL</span><span class="sy0">,</span><br />
&nbsp; start TINYINT <span class="kw1">UNSIGNED</span> <span class="kw1">NOT</span> <span class="kw1">NULL</span><span class="sy0">,</span><br />
&nbsp; created_at DATETIME <span class="kw1">NOT</span> <span class="kw1">NULL</span><span class="sy0">,</span><br />
&nbsp; <span class="kw1">INDEX</span> <span class="br0">&#40;</span>id<span class="sy0">,</span>landing_id<span class="sy0">,</span>page_id<span class="sy0">,</span>action_id<span class="br0">&#41;</span><br />
<span class="br0">&#41;</span> ENGINE<span class="sy0">=</span>INNODB;</div></td></tr></tbody></table></div>
<p>I&#8217;ll add to this post when I spend some more time looking at the different index types.</p>
]]></content:encoded>
			<wfw:commentRss>http://web-development-blog.co.uk/2009/02/25/mysql-indexes-query-performance-increase/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Eco friendly (green) PC power supply units</title>
		<link>http://web-development-blog.co.uk/2008/03/26/eco-friendly-green-pc-power-supply-units/</link>
		<comments>http://web-development-blog.co.uk/2008/03/26/eco-friendly-green-pc-power-supply-units/#comments</comments>
		<pubDate>Wed, 26 Mar 2008 22:54:05 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Eco friendly / green computing]]></category>
		<category><![CDATA[PC hardware]]></category>
		<category><![CDATA[PSU / Power supplies]]></category>

		<guid isPermaLink="false">http://web-development-blog.co.uk/2008/03/26/eco-friendly-green-pc-power-supply-units/</guid>
		<description><![CDATA[A little off topic but hey it does say &#8216;&#38; stuff&#8217; in the Blog title!
I&#8217;m turning into a bit of an energy conservationalist, if there&#8217;s such a word!
I was dong a bit of reading about energy efficient power supply units for PC&#8217;s. I suddenly thought about the cheap 350w Jeantech unit I had in my [...]]]></description>
			<content:encoded><![CDATA[<p>A little off topic but hey it does say &#8216;&amp; stuff&#8217; in the Blog title!</p>
<p>I&#8217;m turning into a bit of an energy conservationalist, if there&#8217;s such a word!</p>
<p>I was dong a bit of reading about energy efficient power supply units for PC&#8217;s. I suddenly thought about the cheap 350w Jeantech unit I had in my machine purchased in PC World. I don&#8217;t usually buy stuff from there but there&#8217;s one down the road and I needed it quick.</p>
<p>I checked it out and it had a 65% energy conversion rating. Apparently this means that if 100w is being used by the PSU 65w actually get delivered at the output stage. I thought this was pretty poor.</p>
<p>Anyways I did some research and after a while I came across <a href="http://www.corsair.com/products/power_supplies.aspx" title="Corsair eco friendly power supplies" target="_blank">Coirsair and there new range of units</a> offers an 85% conversion.</p>
<p>I am now the proud owner of one of the 450w models and must say it&#8217;s a very nice unit, well made with loads of neatly bound connections. It was only £35 too.</p>
<p>So I&#8217;m saving 20% on my PC electricity costs, should pay for itself soon, cool! Highly recommended to anyone. I&#8217;ll be using these or better rated PSU units in all future system builds.</p>
<p>If anyone has any more information on this subject including better rated units please leave a comment.</p>
]]></content:encoded>
			<wfw:commentRss>http://web-development-blog.co.uk/2008/03/26/eco-friendly-green-pc-power-supply-units/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

