<?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> &#187; Jeff Lloyd</title>
	<atom:link href="http://blog.fluidcreativity.co.uk/author/jeff-lloyd/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.fluidcreativity.co.uk</link>
	<description></description>
	<lastBuildDate>Tue, 07 Feb 2012 13:56:42 +0000</lastBuildDate>
	
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Setting up a linux web development environment on Vista</title>
		<link>http://blog.fluidcreativity.co.uk/setting-up-a-linux-web-development-environment-on-vista/</link>
		<comments>http://blog.fluidcreativity.co.uk/setting-up-a-linux-web-development-environment-on-vista/#comments</comments>
		<pubDate>Mon, 05 Oct 2009 16:17:48 +0000</pubDate>
		<dc:creator>Jeff Lloyd</dc:creator>
				<category><![CDATA[Web Development]]></category>

		<guid isPermaLink="false">http://blog.fluidcreativity.co.uk/?p=1946</guid>
		<description><![CDATA[I&#8217;ve wanted to play around with Linux for years, and having flirted with Ubuntu on numerous laptops, never with any great success. The main stumbling block for me has been setting up things like wireless devices, video and audio drivers. However, having just got myself a spanking new Dell Studio desktop with Vista Home Premium [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve wanted to play around with Linux for years, and having flirted with Ubuntu on numerous laptops, never with any great success. The main stumbling block for me has been setting up things like wireless devices, video and audio drivers. However, having just got myself a spanking new Dell Studio desktop with Vista Home Premium last week, I thought I&#8217;d give Ubuntu yet another try. After a false start, it was remarkably easier than I had first thought.<br />
<span id="more-1946"></span>I&#8217;ll be up-front from the start, I&#8217;m no linux guru. In fact, I&#8217;m pretty much a newbie to linux and Ubuntu. There may be better ways of setting up a web development environment, but this is what worked for me, and I hope it will be of some use to anyone in a similar situation to me.</p>
<h3>Don&#8217;t try this at home.</h3>
<p>The first thing I did was download the lastest distribution (Ubuntu 9.04 desktop edition), burn it onto a 700Mb CD-R (a trip to Tesco because I&#8217;ve only  used DVDs for years) and boot from the CD. I went straight for the installation option and followed on-screen instructions until Ubuntu booted. It wasn&#8217;t great. Ubuntu didn&#8217;t recognize my display, sound or wireless card. So I was left with a shrunken mute desktop with no internet connection. I was also left with a dual-boot machine that defaulted to Ubuntu. I wanted rid of this, and these two articles gave me all the info I needed to to the job:</p>
<p><strong>Uninstalling grub:</strong><br />
<a href="http://quainttech.blogspot.com/2007/05/how-to-remove-ubuntu-from-vista-dual.html" target="_blank">http://quainttech.blogspot.com/2007/05/how-to-remove-ubuntu-from-vista-dual.html</a><br />
<strong></strong></p>
<p><strong>Removing linux partition from within windows</strong>:<br />
<a href="http://www.vistarewired.com/2007/02/16/how-to-resize-a-partition-in-windows-vista" target="_blank">http://www.vistarewired.com/2007/02/16/how-to-resize-a-partition-in-windows-vista</a></p>
<p>Kicking around the web, I came across a blog post that mentioned running Ubuntu on a VirtualBox inside Vista. Not really knowing what this meant, I was curious.</p>
<h3>That&#8217;s the way to do it</h3>
<p>I hadn&#8217;t heard of a virtual box before, and reading around found that it means  you can boot into Windows as normal, then run Ubuntu as a windowed application. VirtualBox will automatically hook Ubuntu up to your audio and video devices, and (joy of joys) it hooks up to your windows internet connection. Hooray! So here&#8217;s how I did it&#8230;</p>
<h3>Setting up VirtualBox and Installing Ubuntu</h3>
<p>Download the lastest Ubuntu distribution from the Ubuntu website: <a href="http://www.ubuntu.com/getubuntu/download" target="_blank">http://www.ubuntu.com/getubuntu/download</a></p>
<p>On this page you can opt for 32 or 64 bit version (this was under the fold for me and I missed it first time around). Choose your local mirror and “Begin Download”.</p>
<p>The file you get is type .iso which is an image of a cd-rom. You can use software to burn this to a cd and then run the installation from it, but we&#8217;re not going to do that.</p>
<p>While you&#8217;re waiting for the iso to download, go over to Sun&#8217;s Virtual box site and download the latest version of VirtualBox that suits your platform. V3.0.6 for Windows hosts was my option: <a href="http://www.virtualbox.org/wiki/Downloads" target="_blank">http://www.virtualbox.org/wiki/Downloads</a></p>
<p>Install VirtualBox on your machine (known as the host machine).</p>
<p>Go over to Ryan&#8217;s blog and follow his really nice and easy instructions on how to install Ubuntu into VirtualBox. <a href="http://moxiefoxtrot.com/2009/04/23/installing-ubuntu-904-in-virtualbox-202/ " target="_blank">http://moxiefoxtrot.com/2009/04/23/installing-ubuntu-904-in-virtualbox-202/ </a></p>
<p>Following Ryan&#8217;s instructions, when you get mounting the CD/DVD, select ISO Image file, click the folder icon next to the file name box, click the add button on the dialog, browse to the iso file you downloaded, and click open. Then click select, and finally ok.</p>
<p>At the point where you going to install the VboxLinuxAdditions – hold off and do the ubuntu updates first. I did it the other way around and found that updating lost the additions for some reason.</p>
<p>Once you get Ubuntu running, one of the first things that will happen is update manager appears – I had 217.9Mb of updates to download; your mileage may vary. I just let it do it&#8217;s thing, then rebooted linux at the prompt.</p>
<p>Now do the VboxLinuxAdditions thing, and reboot linux.</p>
<h3>Setting up programming environment</h3>
<p>My vista machine is set up with xampp for local development, mysql query browser, komodo editor, and netbeans ide for php. As I want to be as comfortable as possible in Linux, I&#8217;m going to setup a similar environment in Ubuntu.</p>
<p>Remember that the following instructions are performed within Ubuntu!</p>
<p>I like firefox as a development browser, and the version I had on Ubuntu was 3.0.14, so the first thing I did was try to upgrade it. I found numerous different suggested ways of doing this on the web, but the one that worked for me was to open a terminal window and type: sudo apt-get install firefox-3.5. After entering my password, it downloaded the package and installed it, but to my disappointment, clicking the firefox icon on the top menu bar still brought up 3.0.</p>
<p>To change this, right click the icon, click properties, click browse, navigate to filesystem, then usr/lib/firefox-3.5.3/firefox-3.5 and click open. This works, but the icon I&#8217;m used to is replaced by a blue planet. Why? Also note in the Applications/Internet menu, firefox 3.0 still appears, but a new blue planet icon named “Shiretoko Web Browser” has been added – this is the new firefox 3.5.3.</p>
<p>Using firefox, download xampp: <a href="http://sourceforge.net/projects/xampp/" target="_blank">http://sourceforge.net/projects/xampp/</a> &#8211; this page automtically recognized I was using linux and gave me the linux distribution by default.</p>
<p>Go over to linuxhub.net and follow instructions there for installation. <a href="http://linuxhub.net/2009/07/install-xampp-linux-apache-mysql-and-php-lamp-on-ubuntu-how-to/ " target="_blank">http://linuxhub.net/2009/07/install-xampp-linux-apache-mysql-and-php-lamp-on-ubuntu-how-to/ </a></p>
<p>One tip I learned with using Terminal is that you can press Tab key for it to auto-complete filenames, so for me keying “sudo tar xvfz xam[tab]” put in the long filename for me.</p>
<p>My first hurdle – I set up a 64bit environment, and xampp refused to install. If you&#8217;re in the same situation, start “Synaptic Package Manager” from the System/Administration menu, type “ia32” into the search box, tick the box next to ia32-libs and install.</p>
<p>OK, now you can start xampp (previously known as lampp) by typing into the terminal: sudo /opt/lampp/lampp start – and back to linuxhub.net tutorial.</p>
<h3>Setting up a virtual host</h3>
<p>You&#8217;ll probably want to set up virtual hosts so that you can browse your test sites using names such as “local.test.dev”. Here&#8217;s how to do this:</p>
<p>open a terminal and type “sudo -s” and enter your password</p>
<p>cd /opt/lampp/etc</p>
<p>nano httpd.conf</p>
<p>page down to the end of the file then use arrow key to move up the document until you come across this:</p>
<p style="padding-left: 30px;"># Virtual hosts<br />
#Include etc/extra/httpd-vhosts.conf</p>
<p>delete the # from the second line to uncomment it, press ctrl-x, y to save and enter.</p>
<p>In the same terminal: cd /opt/lampp/etc/extra</p>
<p>nano httpd-vhosts.conf</p>
<p>Comment out the first example (dummy-host.example.com) so you have it for future reference.</p>
<p>Delete the second example, and add the following:</p>
<p style="padding-left: 30px;">&lt;VirtualHost *:80&gt;<br />
DocumentRoot /opt/lampp/htdocs<br />
ServerName localhost<br />
&lt;/VirtualHost&gt;</p>
<p>this ensures that browsing to http://localhost will still take you to the xampp control panel</p>
<p>Then add the following to add your development website. I&#8217;m going to use local.test.dev, but just rename as appropriate. Also, I&#8217;ll put public documents in a directory called “public” within the website root.</p>
<p style="padding-left: 30px;">&lt;VirtualHost *:80&gt;<br />
DocumentRoot /home/jeff/website/local.test.dev/public<br />
ServerName local.test.dev<br />
&lt;/VirtualHost&gt;</p>
<p>You can add more of these blocks for each of your development sites.</p>
<p>Press ctrl-x, y, enter to save the changes</p>
<p>From the teminal: cd /etc</p>
<p>nano hosts</p>
<p>on the first line, before the entry “127.0.0.1  localhost” add one line for each of the development sites you&#8217;ve entered in the httpd-vhosts.conf file:</p>
<p style="padding-left: 30px;">127.0.0.1  local.test.dev</p>
<p>again, ctrl-x, y, enter to save changes</p>
<p>Finally, you need to set up the directory for your development sites. I&#8217;ve done this from the ubuntu desktop:</p>
<p>select Places/Home folder</p>
<p>File/Create Folder and name it “website” &#8211; this matches the “/home/jeff/website” we used in the httpd-vhosts.conf file.</p>
<p>In the new directory, create a new folder called “local.test.dev” (or whatever you named your development site.</p>
<p>In the local.test.dev folder create another folder called “public”.</p>
<p>This folder structure matches what we entered into the httpd-vhosts.conf file as the web root directory for our development site.</p>
<p>In the public folder, create a new document (right click, create new document / empty document) and name it index.php</p>
<p>double-click the new file and in the text editor enter:</p>
<p style="padding-left: 30px;">&lt;h1&gt;Hello – you&#8217;ve reached local.test.dev&lt;/h1&gt;</p>
<p>save the file</p>
<p>You might have apache server still running from earlier, so in the terminal type: /opt/lampp/lampp stop</p>
<p>next type: /opt/lampp/lampp start – this restarts the server and makes it read the new configuration files we&#8217;ve created.</p>
<p>Now go to your web browser and go to http://local.test.dev. If all has gone well, you should see the message you added to the index.php file.</p>
<p>The next thing I did was to download and install my favourite text editor and IDE and start playing around. I finally have a linux development environment running inside Ubuntu 9.04 which itself is running inside Vista! Hope this worked for you, and good luck!</p>
<div style='margin: 4px; float: none;'><center><p class='linktext'>Link: <input type='text' size = '50' class='linktextarea' onmouseover='this.focus()' onfocus='this.select()' onclick ='this.select()' value='&lt;a title=&quot;Setting up a linux web development environment on Vista&quot; href=&quot;http://blog.fluidcreativity.co.uk/setting-up-a-linux-web-development-environment-on-vista/&quot;&gt;Setting up a linux web development environment on Vista&lt;/a&gt;'></div></p></center>]]></content:encoded>
			<wfw:commentRss>http://blog.fluidcreativity.co.uk/setting-up-a-linux-web-development-environment-on-vista/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Getting Zend certified using Teach 2000, amazon and test exams</title>
		<link>http://blog.fluidcreativity.co.uk/getting-zend-certified-using-teach-2000-amazon-and-test-exams/</link>
		<comments>http://blog.fluidcreativity.co.uk/getting-zend-certified-using-teach-2000-amazon-and-test-exams/#comments</comments>
		<pubDate>Tue, 22 Sep 2009 14:21:01 +0000</pubDate>
		<dc:creator>Jeff Lloyd</dc:creator>
				<category><![CDATA[Fluid News]]></category>
		<category><![CDATA[Web Development]]></category>
		<category><![CDATA[NWVM]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[teach 2000]]></category>
		<category><![CDATA[training]]></category>
		<category><![CDATA[zend]]></category>
		<category><![CDATA[zend certification]]></category>

		<guid isPermaLink="false">http://blog.fluidcreativity.co.uk/?p=1670</guid>
		<description><![CDATA[I came to Fluid Creativity in January, through an iStudio placement with Northwest Vision and Media (NWVM). The placement ended in July and since then I’ve been taken on as a trainee developer, making this my first commercial developer job. I&#8217;m pleased to say that I&#8217;ve recently passed the Zend certification program, making me a [...]]]></description>
			<content:encoded><![CDATA[<p>I came to Fluid Creativity in January, through an iStudio placement with <a href="http://www.visionandmedia.co.uk/page/enter-the-istudio">Northwest Vision and Media</a> (NWVM). The placement ended in July and since then I’ve been taken on as a trainee developer, making this my first commercial developer job. I&#8217;m pleased to say that I&#8217;ve recently passed the <a href="http://www.zend.com/en/services/certification/">Zend certification program</a>, making me a Zend qualified engineer.<span id="more-1670"></span></p>
<p>I spent about four months preparing for the exam, in addition to reading (and re-reading) sections of the <a href="http://php.net">PHP manual</a>, I used three books to study from, <a href="Pro-PHP-Patterns-Frameworks-Testing">Pro PHP Patterns Frameworks Testing</a>, <a href="http://www.amazon.co.uk/PHP-Objects-Patterns-Practice-2nd/dp/1590599098/ref=pd_bxgy_b_img_b">PHP Objects Patterns Practice 2nd edition</a>, and the <a href="http://shop.zend.com/eu/zend-php5-certification-guide-pdf.html">Zend Certification handbook.<br />
</a></p>
<p>North West Vision and Media paid for me to attend two PHP courses at <a href="http://www.ntileeds.co.uk/category/course/zend/">NTI Leeds</a>;   Zend PHP  2: Higher Structures in March, and Zend PHP 5: Certification Training in July. The second course was particularly useful in getting used to the type of questions that would be in the exam. Basically, we spent three days going through hundreds of examples, discussing what pitfalls to look out for and why particular answers were true which was all  excellent preparation for the final exam.</p>
<p><strong>The preparation</strong></p>
<p>I used a free flashcard program called <a href="http://teach2000.memtrain.com/">Teach 2000</a> to write Questions &amp; Answers to test myself. It’s designed specifically for language vocabulary learning but used correctly and it&#8217;s a fantastic tool to help you learn PHP code.</p>
<p><strong> </strong><span style="text-decoration: underline;">Top recommendations for using Teach 2000 for Zend certification</span><strong><br />
</strong></p>
<ol>
<li>Limit a set of questions to a maximum of 40 – any more than that and it becomes a real chore to work through them</li>
<li>Set the test parameters to: selection=complete; ask=question/answer; order=random; type=flashcard quiz; repetition=repeat errors;</li>
<li>Allow yourself around 30seconds per question, but pressing the space bar will reveal the answer so you have to be honest whether you got it correct or wrong.</li>
<li>Using flashcard quiz option means you don’t have to type out the answer, just say it in your head.</li>
<li>Go through at least one question set each day – practice makes perfect!</li>
</ol>
<p>I wrote hundreds of questions in about a dozen question sets covering each of the major areas of the exam, and because I&#8217;m a really super nice guy you can download them all <a href="http://blog.fluidcreativity.co.uk/wp-content/uploads/php-teach-2000-questions.zip">here.</a></p>
<p><strong>Practise exams</strong></p>
<p>With a couple of months to go, I purchased a set of 10 practice exams from the Zend website. They’re cheap enough and well worth a purchase, but they&#8217;re not exactly easy to find, <a href="http://shop.zend.com/eu/php-certification/zend-php-certification-online-practice-testing.html">so here&#8217;s the link</a>. If you decide to get these practise exams, be aware of the following:</p>
<ul>
<li>The exams are done over the internet, so you need a clear couple of hours to begin with, until you get used to the format.</li>
<li>What you get is a license to sit 10 practice exams.</li>
<li> Once you’ve started an exam, you can’t save it and go back later.</li>
<li> Once the exam is finished, you can’t re-take it.</li>
<li> You don’t get told which questions you got right or wrong.</li>
<li> You get told your score for each of the major exam areas: Excellent / Passed / Fail – but not which questions you failed</li>
<li> The real exam is 90 minutes to answer 75 questions. The practice exams have the same constraint, but if you do run over 90 minutes you can continue to complete the exam and you’ll get two sets of results for questions answered within time, and those answered out of time.</li>
</ul>
<p><span style="text-decoration: underline;">Here&#8217;s my experience of the test exams</span></p>
<ul>
<li>Each exam I took I didn’t worry about the time constraints. I just took the time to copy out questions that I wasn’t sure about, and either tried out the code myself, or research the answer.</li>
<li> Each question I wasn’t sure of, I put into Teach2000 to go over later</li>
<li> The first exam took me around 2 hrs, but I had built up a good set of Q&amp;As to retest myself with later.</li>
<li> I suspect there’s a limited question pool since the same questions cropped up over the series of exams – this meant that I got quicker on each exam to the point that on the morning of the real exam, I went through practice test 9 in around 20 minutes!</li>
</ul>
<p><strong>The real exam</strong></p>
<p>Taking the exam, I was more nervous on the day than I had expected, but after a few minutes I settled down to it, so here are a few observations about taking the real exam.</p>
<ul>
<li> During the exam you can mark questions for review, and go over them at the end to change your answers if you want. I did a quick run through of all the questions in the exam, answering those that were easy straight off, and marking harder ones for review.</li>
<li>Some questions will be obvious and easy to answer, get those out of the way first.</li>
<li>Some questions concern correct code. If you’re not sure, sometimes they can be answered by looking at another question where the correct code structure is given because it’s used as an example.</li>
<li>It’s usually the case with multiple choice questions  that you can immediately rule out 2 or 3 answers, leaving a choice between only a couple of answers. If you’re really stuck, guess one, but at least you’ve narrowed it down!</li>
<li> Some multiple choice questions require multiple answers. Again, you can usually rule out one or two answers from being obviously wrong. Where more than one answer is required, the number of required answers is given so this helps – sometimes after ruling out the obvious, there are only the correct answers left!</li>
<li> A very few questions are so left of field that you’ll probably have no idea. Get over it, take a guess and move on. Don’t run out of time pondering over the really hard ones. There were maybe a couple of questions in my exam that were like this and 2 out of 75 doesn&#8217;t make a difference.</li>
<li> Watch your time – as I said before, make sure you’ve had a go at all the questions quite rapidly, then go over the harder ones again using the review.</li>
<li>The practice exams state that the questions are very similar in format to the real exam (which they are) and are slightly harder than the real exam. After sitting the real thing, I’d say the real exam questions are slightly harder than the practice exams, so be well prepared.</li>
<li>You get the result of the exam within a few minutes of finishing it. The computer will tell you if you’ve passed or failed. You don’t get a mark, you&#8217;ll just get a pass or fail on a computer printout before you leave.</li>
</ul>
<p><strong>The crushing victory</strong></p>
<p><img class="alignleft" style="margin: 10px;" src="http://www.zend.com/img/yellowpages/php5_zce_logo_new.gif" alt="" width="73" height="68" />It’s all a bit of a let-down after several months of late nights and weekends spent answering test questions that all you get is &#8220;pass&#8221; on a screen, but if you’re lucky enough to pass, it feels better the next day! You get to call yourself a Zend Certified Engineer and you get a shiny logo for your personal stationary. Of course, you&#8217;ll also be listed on the <a href="http://www.zend.com/store/education/certification/yellow-pages.php#show-ClientCandidateID=ZEND011510">Zend Yellow Pages</a>!</p>
<p>I know for a fact that there’s a heap of PHP developers out there who know more, have more experience, and are better programmers than me. Becoming a Zend Certified Engineer doesn’t mean you’re part of an elite. For me, it was more about being a measurable goal in my progress as a trainee developer. It forced me to get a wide overview of the PHP5 language and opened up whole areas that I’ll need to explore at my leisure over the coming months and years. Certification means I know and am aware of a specific core of PHP knowledge and is a good place to start from in my career as a PHP developer.</p>
<div style='margin: 4px; float: none;'><center><p class='linktext'>Link: <input type='text' size = '50' class='linktextarea' onmouseover='this.focus()' onfocus='this.select()' onclick ='this.select()' value='&lt;a title=&quot;Getting Zend certified using Teach 2000, amazon and test exams&quot; href=&quot;http://blog.fluidcreativity.co.uk/getting-zend-certified-using-teach-2000-amazon-and-test-exams/&quot;&gt;Getting Zend certified using Teach 2000, amazon and test exams&lt;/a&gt;'></div></p></center>]]></content:encoded>
			<wfw:commentRss>http://blog.fluidcreativity.co.uk/getting-zend-certified-using-teach-2000-amazon-and-test-exams/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>What&#8217;s the point of instruction manuals?</title>
		<link>http://blog.fluidcreativity.co.uk/whats-the-point-of-instruction-manuals/</link>
		<comments>http://blog.fluidcreativity.co.uk/whats-the-point-of-instruction-manuals/#comments</comments>
		<pubDate>Mon, 20 Apr 2009 12:22:48 +0000</pubDate>
		<dc:creator>Jeff Lloyd</dc:creator>
				<category><![CDATA[Fun @ Fluid]]></category>

		<guid isPermaLink="false">http://blog.fluidcreativity.co.uk/?p=818</guid>
		<description><![CDATA[
We were so impressed with these instructions which came from a manual of a recently purchased iPod FM transmitter, we&#8217;ve scanned and posted them on there for posterity and for the world to see!
Link: ]]></description>
			<content:encoded><![CDATA[<p><a href="http://blog.fluidcreativity.co.uk/wp-content/uploads/2009/04/ipod-instructions.jpg"><img class="alignnone size-full wp-image-817" title="ipod-instructions" src="http://blog.fluidcreativity.co.uk/wp-content/uploads/2009/04/ipod-instructions.jpg" alt="ipod-instructions" width="300" height="684" /></a></p>
<p>We were so impressed with these instructions which came from a manual of a recently purchased iPod FM transmitter, we&#8217;ve scanned and posted them on there for posterity and for the world to see!</p>
<div style='margin: 4px; float: none;'><center><p class='linktext'>Link: <input type='text' size = '50' class='linktextarea' onmouseover='this.focus()' onfocus='this.select()' onclick ='this.select()' value='&lt;a title=&quot;What&#8217;s the point of instruction manuals?&quot; href=&quot;http://blog.fluidcreativity.co.uk/whats-the-point-of-instruction-manuals/&quot;&gt;What&#8217;s the point of instruction manuals?&lt;/a&gt;'></div></p></center>]]></content:encoded>
			<wfw:commentRss>http://blog.fluidcreativity.co.uk/whats-the-point-of-instruction-manuals/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

