<?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>Ben Argo</title>
	<atom:link href="http://benargo.com/feed" rel="self" type="application/rss+xml" />
	<link>http://benargo.com</link>
	<description>Web Developer</description>
	<lastBuildDate>Mon, 30 Jan 2012 18:44:43 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Week 27 in PAL</title>
		<link>http://benargo.com/uni/pal/week-27</link>
		<comments>http://benargo.com/uni/pal/week-27#comments</comments>
		<pubDate>Mon, 30 Jan 2012 17:00:05 +0000</pubDate>
		<dc:creator>Ben</dc:creator>
				<category><![CDATA[PAL]]></category>

		<guid isPermaLink="false">http://benargo.com/?p=103</guid>
		<description><![CDATA[This week in PAL we looked in detail at CSS. We ran over the basics with a CSS document structure, in particular the three key areas: Selectors Attributes Values CSS section h3 &#123; font-family: sans-serif; &#125; We talked about the &#8230; <a href="http://benargo.com/uni/pal/week-27">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>This week in PAL we looked in detail at CSS. We ran over the basics with a CSS document structure, in particular the three key areas:</p>
<ul>
<li>Selectors</li>
<li>Attributes</li>
<li>Values</li>
</ul>
<h3>CSS</h3>
<div class="codecolorer-container css default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="css codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">section h3 <span style="color: #00AA00;">&#123;</span> <span style="color: #000000; font-weight: bold;">font-family</span><span style="color: #00AA00;">:</span> <span style="color: #993333;">sans-serif</span><span style="color: #00AA00;">;</span> <span style="color: #00AA00;">&#125;</span></div></div>
<p>We talked about the methods which you can use to include CSS documents.</p>
<h3>HTML</h3>
<div class="codecolorer-container html4strict default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="html4strict codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #009900;">&lt;<a href="http://december.com/html/4/element/link.html"><span style="color: #000000; font-weight: bold;">link</span></a> <span style="color: #000066;">rel</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;stylesheet&quot;</span> <span style="color: #000066;">href</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;./path/to/file.css&quot;</span> <span style="color: #66cc66;">/</span>&gt;</span></div></div>
<h3>CSS</h3>
<div class="codecolorer-container css default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="css codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #a1a100;">@import url(&quot;./path/to/file.css&quot;);</span></div></div>
<p>To conclude we held a quick test on CSS selectors. The questions and answers are included in the attached PowerPoint.</p>
<h2>Resources Used</h2>
<ul>
<li><a href="http://2011.ittwpal.co.uk/resources/Week27.ppt" target="_blank">PowerPoint presentation</a></li>
</ul>
<div class="simple_likebuttons_container_small">
      <div class="simple_likebuttons_googleplus">
        <g:plusone size="medium" count="false" href="http://benargo.com/uni/pal/week-27"></g:plusone>
      </div>
    
      <div class="simple_likebuttons_twitter simple_likebuttons_twitter_s">
        <a href="https://twitter.com/share" class="twitter-share-button" data-count="none" data-url="http://benargo.com/uni/pal/week-27" data-lang="en">Tweet</a>
      </div>
    
      <div class="simple_likebuttons_facebook">
        <div id="fb-root"></div>
        <script>(function(d, s, id) {
          var js, fjs = d.getElementsByTagName(s)[0];
          if (d.getElementById(id)) {return;}
          js = d.createElement(s); js.id = id;
          js.src = "//connect.facebook.net/en_US/all.js#xfbml=1";
          fjs.parentNode.insertBefore(js, fjs);
        }(document, "script", "facebook-jssdk"));</script>
        <div class="fb-like" data-href="http://benargo.com/uni/pal/week-27" data-send="false" data-layout="button_count" data-show-faces="false" data-width="90"></div>
      </div>
    </div>]]></content:encoded>
			<wfw:commentRss>http://benargo.com/uni/pal/week-27/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>O2&#8242;s Data Scandal</title>
		<link>http://benargo.com/interests/o2-data-scandal</link>
		<comments>http://benargo.com/interests/o2-data-scandal#comments</comments>
		<pubDate>Wed, 25 Jan 2012 17:10:22 +0000</pubDate>
		<dc:creator>Ben</dc:creator>
				<category><![CDATA[Interests]]></category>
		<category><![CDATA[Data]]></category>
		<category><![CDATA[Mobile]]></category>
		<category><![CDATA[O2]]></category>
		<category><![CDATA[Privacy]]></category>

		<guid isPermaLink="false">http://benargo.com/?p=59</guid>
		<description><![CDATA[If you are running on O2 or another network that uses O2&#8242;s infrastructure (namely Tesco Mobile and giffgaff), it is likely that your mobile phone number has been transmitted to every website you have visited over the past 15 days. The Information &#8230; <a href="http://benargo.com/interests/o2-data-scandal">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>If you are running on O2 or another network that uses O2&#8242;s infrastructure (namely Tesco Mobile and giffgaff), it is likely that your mobile phone number has been transmitted to every website you have visited over the past 15 days. The <a title="Information Commissioner's Office" href="http://www.ico.gov.uk/">Information Commissioner&#8217;s Office</a> said it is considering whether to investigate further, although a spokesman said there was no immediate breach of the <a title="Data Protection Act 1998" href="http://www.legislation.gov.uk/ukpga/1998/29/contents">Data Protection Act</a>. This is because the DPA does not class mobile phone numbers as personally identifiable information.</p>
<p>However, if you have received telemarketing text messages or calls over the last 15 days that you believe may have been caused by your mobile phone number being released, there may be grounds on which you can either cancel your contract or claim compensation.</p>
<p><em>NB: Please do not take this advice as a legal footing, I am not a lawyer. Please check with your solicitor to see if you have valid legal grounds before entering a dispute with O2.</em></p>
<p>There is an European Union directive, <a href="http://eur-lex.europa.eu/LexUriServ/LexUriServ.do?uri=CELEX:32002L0058:EN:HTML">2002/58/EC</a>, that instructs under Article 13 &#8220;Member States shall take appropriate measures to ensure that, free of charge, unsolicited communications for purposes of direct marketing&#8230; are not allowed either without the consent of the subscribers concerned or in respect of subscribers who do not wish to receive these communications&#8230;&#8221;</p>
<p>By &#8220;communications,&#8221; this implies emails, text (SMS) messages and telephone calls. This directive means that there should be some form of legal context within the Data Protection Act on which you can claim compensation, based on what the UK government did to implement this directive. If you manage to find the clause in the DPA which covers this, please let me know.</p>
<p>&nbsp;</p>
<div class="simple_likebuttons_container_small">
      <div class="simple_likebuttons_googleplus">
        <g:plusone size="medium" count="false" href="http://benargo.com/interests/o2-data-scandal"></g:plusone>
      </div>
    
      <div class="simple_likebuttons_twitter simple_likebuttons_twitter_s">
        <a href="https://twitter.com/share" class="twitter-share-button" data-count="none" data-url="http://benargo.com/interests/o2-data-scandal" data-lang="en">Tweet</a>
      </div>
    
      <div class="simple_likebuttons_facebook">
        <div id="fb-root"></div>
        <script>(function(d, s, id) {
          var js, fjs = d.getElementsByTagName(s)[0];
          if (d.getElementById(id)) {return;}
          js = d.createElement(s); js.id = id;
          js.src = "//connect.facebook.net/en_US/all.js#xfbml=1";
          fjs.parentNode.insertBefore(js, fjs);
        }(document, "script", "facebook-jssdk"));</script>
        <div class="fb-like" data-href="http://benargo.com/interests/o2-data-scandal" data-send="false" data-layout="button_count" data-show-faces="false" data-width="90"></div>
      </div>
    </div>]]></content:encoded>
			<wfw:commentRss>http://benargo.com/interests/o2-data-scandal/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Google Weather + Character Encodings</title>
		<link>http://benargo.com/uni/google-weather-character-encodings</link>
		<comments>http://benargo.com/uni/google-weather-character-encodings#comments</comments>
		<pubDate>Tue, 24 Jan 2012 18:55:19 +0000</pubDate>
		<dc:creator>Ben</dc:creator>
				<category><![CDATA[University]]></category>
		<category><![CDATA[API]]></category>
		<category><![CDATA[DSA]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Solution]]></category>
		<category><![CDATA[Weather]]></category>
		<category><![CDATA[XML]]></category>

		<guid isPermaLink="false">http://benargo.com/?p=42</guid>
		<description><![CDATA[I&#8217;m building an application for my &#8220;Data, Schemas &#38; Applications&#8221; module at university, which manipulates data from Google to display the weather for given locations. Google&#8217;s weather API is fairly simple to understand, and is run through a REST base &#8230; <a href="http://benargo.com/uni/google-weather-character-encodings">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m building an application for my &#8220;Data, Schemas &amp; Applications&#8221; module at university, which manipulates data from Google to display the weather for given locations. Google&#8217;s weather API is fairly simple to understand, and is run through a REST base service and does not require the use of an API key.</p>
<p>You can use PHP to download a copy of the weather data for your chosen city, and subsequently process it to output the weather in whatever way you choose. Prakash has provided a function which can be used on the University campus for loading files through the proxy. It looks like the following:</p>
<div class="codecolorer-container php default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="php codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #000000; font-weight: bold;">function</span> get_file<span style="color: #009900;">&#40;</span><span style="color: #000088;">$uri</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
<br />
<span style="color: #666666; font-style: italic;">/*********************************************************<br />
* @function: get_file<br />
* @author: Chris Wallace<br />
* @created: 30 November 2009<br />
* @updated: 20 January 2012<br />
* @source: http://www.cems.uwe.ac.uk/~pchatter/php/dsa/dsa_utility.phps<br />
*<br />
* This function will get any file through the UWE proxy.<br />
*<br />
* It has been adapted so that if we<br />
* are running on our local testing server, we do not<br />
* need to use this function, as Ben's private server<br />
* does not have proxy requirements.<br />
*********************************************************/</span><br />
<br />
<span style="color: #666666; font-style: italic;">// Conditional: Do we need to use the proxy?</span><br />
<span style="color: #b1b100;">if</span><span style="color: #009900;">&#40;</span><a href="http://www.php.net/substr"><span style="color: #990000;">substr</span></a><span style="color: #009900;">&#40;</span><span style="color: #000088;">$_SERVER</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'HTTP_HOST'</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">4</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">==</span> <span style="color: #0000ff;">'cems.uwe.ac.uk'</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span> <span style="color: #666666; font-style: italic;">// Conditional @value: Yes</span><br />
<br />
<span style="color: #666666; font-style: italic;">// Create a context for the PHP file_get_contents function</span><br />
<span style="color: #000088;">$context</span> <span style="color: #339933;">=</span> <a href="http://www.php.net/stream_context_create"><span style="color: #990000;">stream_context_create</span></a><span style="color: #009900;">&#40;</span><a href="http://www.php.net/array"><span style="color: #990000;">array</span></a><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'http'</span><span style="color: #339933;">=&gt;</span> <a href="http://www.php.net/array"><span style="color: #990000;">array</span></a><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'proxy'</span><span style="color: #339933;">=&gt;</span><span style="color: #0000ff;">'proxysg.uwe.ac.uk:8080'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'header'</span><span style="color: #339933;">=&gt;</span><span style="color: #0000ff;">'Cache-Control: no-cache'</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
<br />
<span style="color: #666666; font-style: italic;">// Get the contents of the requested URI</span><br />
<span style="color: #000088;">$contents</span> <span style="color: #339933;">=</span> <a href="http://www.php.net/file_get_contents"><span style="color: #990000;">file_get_contents</span></a><span style="color: #009900;">&#40;</span><span style="color: #000088;">$uri</span><span style="color: #339933;">,</span> <span style="color: #009900; font-weight: bold;">false</span><span style="color: #339933;">,</span> <span style="color: #000088;">$context</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
<br />
<span style="color: #009900;">&#125;</span> <span style="color: #b1b100;">else</span> <span style="color: #009900;">&#123;</span> <span style="color: #666666; font-style: italic;">// Conditional @value: No</span><br />
<br />
<span style="color: #666666; font-style: italic;">// Get the contents of the requres URI without use of the proxy</span><br />
<span style="color: #000088;">$contents</span> <span style="color: #339933;">=</span> <a href="http://www.php.net/file_get_contents"><span style="color: #990000;">file_get_contents</span></a><span style="color: #009900;">&#40;</span><span style="color: #000088;">$uri</span><span style="color: #339933;">,</span> <span style="color: #009900; font-weight: bold;">false</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
<br />
<span style="color: #009900;">&#125;</span> <span style="color: #666666; font-style: italic;">// End Conditional</span><br />
<br />
<span style="color: #666666; font-style: italic;">// And return the contents of the file</span><br />
<span style="color: #b1b100;">return</span> <span style="color: #000088;">$contents</span><span style="color: #339933;">;</span><br />
<br />
<span style="color: #009900;">&#125;</span></div></div>
<p>We later use that function to get a SimpleXML instance of the Google Weather XML file. However, there&#8217;s an issue with using Google&#8217;s API and PHP&#8217;s SimpleXML class, and that is one of character encodings. Every text file generated by computers uses some kind of character encoding, and it&#8217;s used by computers to interpret what certain bytes should be rendered as. Common character sets used in everyday situations include:</p>
<ul>
<li><a href="http://en.wikipedia.org/wiki/ASCII" target="_blank">ASCII</a> &#8211; American Standard Code for Information Interchange</a></li>
<li><a href="http://en.wikipedia.org/wiki/UTF-8" target="_blank">UTF-8</a> &#8211; UCS Transformation Format, the most common format used on the World Wide Web.</li>
<li><a href="http://en.wikipedia.org/wiki/ISO/IEC_8859-1" target="_blank">ISO/IEC 8859-1</a> &#8211; more commonly known as Latin1, a common choice for storing data in MySQL databases.</li>
</ul>
<p>As it turns out, Google API returns XML documents encoded in an encoding called &#8220;<a href="http://en.wikipedia.org/wiki/GB_18030" target="_blank">GB_18030</a>,&#8221; which is a Chinese government standard, and includes a lot of Latin characters (commonly used in English, French, Italian and other European languages), as well as Chinese, Japanese and other east-Asian characters, thereby allowing the API to work in those countries.</p>
<p>However, PHP&#8217;s SimpleXML class expects us to load a file in UTF-8. Because of that, we need to convert our returned XML file into UTF-8; which, <a href="http://stackoverflow.com/questions/2899274/php-simplexml-why-does-simplexml-load-string-fail-to-parse-google-weather" target="_blank">as it turns out</a>, is fairly simple.</p>
<p>PHP has a module called &#8220;<a href="http://www.php.net/manual/en/book.iconv.php" target="_blank">iconv</a>.&#8221; This module is able to convert an object or a string&#8217;s character encoding. Through the following code we can easily switch the character encoding of Google&#8217;s XML file to UTF-8.</p>
<div class="codecolorer-container php default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="php codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #666666; font-style: italic;">// We created the get_file function earlier, so we'll use that here.</span><br />
<span style="color: #000088;">$file</span> <span style="color: #339933;">=</span> get_file<span style="color: #009900;">&#40;</span><span style="color: #000088;">$this</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">weather</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
<br />
<span style="color: #666666; font-style: italic;">// The following line converts the XML file, $file, from &quot;GB18030&quot; to &quot;utf-8&quot;.</span><br />
<span style="color: #666666; font-style: italic;">// Bear in mind that the information portrayed below is case-sensitive.</span><br />
<span style="color: #000088;">$xml</span> <span style="color: #339933;">=</span> <a href="http://www.php.net/iconv"><span style="color: #990000;">iconv</span></a><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;GB18030&quot;</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">&quot;utf-8&quot;</span><span style="color: #339933;">,</span> <span style="color: #000088;">$file</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
<br />
<span style="color: #666666; font-style: italic;">// Finally we return an SimpleXML object of the re-encoded XML file.</span><br />
<span style="color: #666666; font-style: italic;">// The @ symbol before the function simplexml_load_string makes sure that</span><br />
<span style="color: #666666; font-style: italic;">// &nbsp; if we were given an invalid XML file, it will now throw an error.</span><br />
<span style="color: #000088;">$xml</span> <span style="color: #339933;">=</span> <span style="color: #339933;">@</span><a href="http://www.php.net/simplexml_load_string"><span style="color: #990000;">simplexml_load_string</span></a><span style="color: #009900;">&#40;</span><span style="color: #000088;">$xml</span><span style="color: #339933;">,</span> <span style="color: #009900; font-weight: bold;">NULL</span><span style="color: #339933;">,</span> LIBXML_NOCDATA<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></div></div>
<p>I hope this explains the issue and the solution in as simple form as possible. However, if you have any questions on how this works, please post them in the comments section below.</p>
<div class="simple_likebuttons_container_small">
      <div class="simple_likebuttons_googleplus">
        <g:plusone size="medium" count="false" href="http://benargo.com/uni/google-weather-character-encodings"></g:plusone>
      </div>
    
      <div class="simple_likebuttons_twitter simple_likebuttons_twitter_s">
        <a href="https://twitter.com/share" class="twitter-share-button" data-count="none" data-url="http://benargo.com/uni/google-weather-character-encodings" data-lang="en">Tweet</a>
      </div>
    
      <div class="simple_likebuttons_facebook">
        <div id="fb-root"></div>
        <script>(function(d, s, id) {
          var js, fjs = d.getElementsByTagName(s)[0];
          if (d.getElementById(id)) {return;}
          js = d.createElement(s); js.id = id;
          js.src = "//connect.facebook.net/en_US/all.js#xfbml=1";
          fjs.parentNode.insertBefore(js, fjs);
        }(document, "script", "facebook-jssdk"));</script>
        <div class="fb-like" data-href="http://benargo.com/uni/google-weather-character-encodings" data-send="false" data-layout="button_count" data-show-faces="false" data-width="90"></div>
      </div>
    </div>]]></content:encoded>
			<wfw:commentRss>http://benargo.com/uni/google-weather-character-encodings/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Week 26 in PAL</title>
		<link>http://benargo.com/uni/pal/week-26</link>
		<comments>http://benargo.com/uni/pal/week-26#comments</comments>
		<pubDate>Mon, 23 Jan 2012 17:00:56 +0000</pubDate>
		<dc:creator>Ben</dc:creator>
				<category><![CDATA[PAL]]></category>

		<guid isPermaLink="false">http://benargo.com/?p=73</guid>
		<description><![CDATA[This week in PAL, after a quick overview of what the term details, we looked (in detail) at semester 2&#8242;s assignment brief. The assignment is mostly about creating a website to your own drawn-up specifications. Luckily you&#8217;re able to base &#8230; <a href="http://benargo.com/uni/pal/week-26">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>This week in PAL, after a quick overview of what the term details, we looked (in detail) at semester 2&#8242;s assignment brief. The assignment is mostly about creating a website to your own drawn-up specifications. Luckily you&#8217;re able to base it on an interesting band, whereas I was stuck with David Bowie last year.</p>
<p>Attached files:</p>
<ul>
<li><a href="http://2011.ittwpal.co.uk/resources/Week26.ppt" target="_blank">PowerPoint presentation</a></li>
<li><a href="http://2011.ittwpal.co.uk/resources/assignment2.pdf" target="_blank">Assignment 2 brief</a></li>
</ul>
<div class="simple_likebuttons_container_small">
      <div class="simple_likebuttons_googleplus">
        <g:plusone size="medium" count="false" href="http://benargo.com/uni/pal/week-26"></g:plusone>
      </div>
    
      <div class="simple_likebuttons_twitter simple_likebuttons_twitter_s">
        <a href="https://twitter.com/share" class="twitter-share-button" data-count="none" data-url="http://benargo.com/uni/pal/week-26" data-lang="en">Tweet</a>
      </div>
    
      <div class="simple_likebuttons_facebook">
        <div id="fb-root"></div>
        <script>(function(d, s, id) {
          var js, fjs = d.getElementsByTagName(s)[0];
          if (d.getElementById(id)) {return;}
          js = d.createElement(s); js.id = id;
          js.src = "//connect.facebook.net/en_US/all.js#xfbml=1";
          fjs.parentNode.insertBefore(js, fjs);
        }(document, "script", "facebook-jssdk"));</script>
        <div class="fb-like" data-href="http://benargo.com/uni/pal/week-26" data-send="false" data-layout="button_count" data-show-faces="false" data-width="90"></div>
      </div>
    </div>]]></content:encoded>
			<wfw:commentRss>http://benargo.com/uni/pal/week-26/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Reverting Themes</title>
		<link>http://benargo.com/news/reverting-themes</link>
		<comments>http://benargo.com/news/reverting-themes#comments</comments>
		<pubDate>Sat, 21 Jan 2012 07:00:58 +0000</pubDate>
		<dc:creator>Ben</dc:creator>
				<category><![CDATA[News]]></category>
		<category><![CDATA[Site Updates]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://beta.benargo.com/blog/?p=20</guid>
		<description><![CDATA[Well, over recent months I&#8217;ve noticed that the WordPress theme I hastily made to fit the general style of my site hasn&#8217;t really worked. Therefore, since I really want to get back into blogging properly, and I haven&#8217;t the time &#8230; <a href="http://benargo.com/news/reverting-themes">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Well, over recent months I&#8217;ve noticed that the WordPress theme I hastily made to fit the general style of my site hasn&#8217;t really worked. Therefore, since I really want to get back into blogging properly, and I haven&#8217;t the time (what with coursework assignments and the hunt for a placement) to build a new WordPress theme, I&#8217;ve reverted to the default one until the summer.</p>
<p>After all, surely the blog should be a method of communication more than a demonstration of my WordPress theme building skills (which is something I want to learn). The content I post is far more valuable than the PHP, HTML and CSS that forms the backbone of the design.</p>
<p>To conclude, please forgive me for allowing the blog to differ from the rest of my website, but I guarantee the increase in posts will be worth it.</p>
<div class="simple_likebuttons_container_small">
      <div class="simple_likebuttons_googleplus">
        <g:plusone size="medium" count="false" href="http://benargo.com/news/reverting-themes"></g:plusone>
      </div>
    
      <div class="simple_likebuttons_twitter simple_likebuttons_twitter_s">
        <a href="https://twitter.com/share" class="twitter-share-button" data-count="none" data-url="http://benargo.com/news/reverting-themes" data-lang="en">Tweet</a>
      </div>
    
      <div class="simple_likebuttons_facebook">
        <div id="fb-root"></div>
        <script>(function(d, s, id) {
          var js, fjs = d.getElementsByTagName(s)[0];
          if (d.getElementById(id)) {return;}
          js = d.createElement(s); js.id = id;
          js.src = "//connect.facebook.net/en_US/all.js#xfbml=1";
          fjs.parentNode.insertBefore(js, fjs);
        }(document, "script", "facebook-jssdk"));</script>
        <div class="fb-like" data-href="http://benargo.com/news/reverting-themes" data-send="false" data-layout="button_count" data-show-faces="false" data-width="90"></div>
      </div>
    </div>]]></content:encoded>
			<wfw:commentRss>http://benargo.com/news/reverting-themes/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Sam Boyd&#8217;s Custom-Made Surfboards</title>
		<link>http://benargo.com/portfolio/sam-boyd</link>
		<comments>http://benargo.com/portfolio/sam-boyd#comments</comments>
		<pubDate>Thu, 08 Dec 2011 14:00:50 +0000</pubDate>
		<dc:creator>Ben</dc:creator>
				<category><![CDATA[Portfolio]]></category>
		<category><![CDATA[CSS3]]></category>
		<category><![CDATA[HTML5]]></category>
		<category><![CDATA[jQuery]]></category>

		<guid isPermaLink="false">http://beta.benargo.com/?p=25</guid>
		<description><![CDATA[This static website, created for my &#8216;Web Design Principles&#8217; module, demonstrates the importance of working to client specifications. Based on a composite image that had been previously created, the task was to transform that image into a full-featured website. See &#8230; <a href="http://benargo.com/portfolio/sam-boyd">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><a title="Sam Boyd's Custom Made Surfboards" href="http://projects.benargo.com/samboyd/"><img class="aligncenter size-large wp-image-28" title="Sam Boyd's Custom Made Surfboards" src="http://static.benargo.com/wp-content/2012/01/sam-boyd-1024x570.png" alt="Website screenshot" width="584" height="325" /></a></p>
<p>This static website, created for my &#8216;Web Design Principles&#8217; module, demonstrates the importance of working to client specifications. Based on a composite image that had been previously created, the task was to transform that image into a full-featured website.</p>
<p style="text-align: right;"><a href="http://projects.benargo.com/samboyd/">See the full site&#8230;</a></p>
<div class="simple_likebuttons_container_small">
      <div class="simple_likebuttons_googleplus">
        <g:plusone size="medium" count="false" href="http://benargo.com/portfolio/sam-boyd"></g:plusone>
      </div>
    
      <div class="simple_likebuttons_twitter simple_likebuttons_twitter_s">
        <a href="https://twitter.com/share" class="twitter-share-button" data-count="none" data-url="http://benargo.com/portfolio/sam-boyd" data-lang="en">Tweet</a>
      </div>
    
      <div class="simple_likebuttons_facebook">
        <div id="fb-root"></div>
        <script>(function(d, s, id) {
          var js, fjs = d.getElementsByTagName(s)[0];
          if (d.getElementById(id)) {return;}
          js = d.createElement(s); js.id = id;
          js.src = "//connect.facebook.net/en_US/all.js#xfbml=1";
          fjs.parentNode.insertBefore(js, fjs);
        }(document, "script", "facebook-jssdk"));</script>
        <div class="fb-like" data-href="http://benargo.com/portfolio/sam-boyd" data-send="false" data-layout="button_count" data-show-faces="false" data-width="90"></div>
      </div>
    </div>]]></content:encoded>
			<wfw:commentRss>http://benargo.com/portfolio/sam-boyd/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Week 19 in PAL</title>
		<link>http://benargo.com/uni/pal/week-19</link>
		<comments>http://benargo.com/uni/pal/week-19#comments</comments>
		<pubDate>Mon, 28 Nov 2011 17:00:54 +0000</pubDate>
		<dc:creator>Ben</dc:creator>
				<category><![CDATA[PAL]]></category>

		<guid isPermaLink="false">http://benargo.com/?p=94</guid>
		<description><![CDATA[This is the final week for assignment work. Remember that the assignment is due in this Thursday (1st December) at 2pm. Because of the rush at the project room I suggest you hand it in the day before. The assignment requires that your &#8230; <a href="http://benargo.com/uni/pal/week-19">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>This is the final week for assignment work. Remember that the assignment is due in this <em>Thursday</em> (1st December) at <em>2pm</em>. Because of the rush at the project room I suggest you hand it in the day before.</p>
<p>The assignment requires that your work is published in the correct folder with a specific file name, I have put together a little application that can test whether you have published your assignment correctly. You can find it here: <a href="http://www.cems.uwe.ac.uk/~b2-argo/ittwpal/charity-check.php">http://www.cems.uwe.ac.uk/~b2-argo/ittwpal/charity-check.php</a>. Please use the application well and<a href="http://2011.ittwpal.co.uk/contact.php?to=ben">report any problems to Ben.</a></p>
<p>I have published my report from last year for you to download and view <a href="https://dl.dropbox.com/s/lkplbap2gtx5p25/Report.docx?dl=1">on Dropbox.</a> Please do not copy it though, and reference it if you use any content or structure from it.</p>
<div class="simple_likebuttons_container_small">
      <div class="simple_likebuttons_googleplus">
        <g:plusone size="medium" count="false" href="http://benargo.com/uni/pal/week-19"></g:plusone>
      </div>
    
      <div class="simple_likebuttons_twitter simple_likebuttons_twitter_s">
        <a href="https://twitter.com/share" class="twitter-share-button" data-count="none" data-url="http://benargo.com/uni/pal/week-19" data-lang="en">Tweet</a>
      </div>
    
      <div class="simple_likebuttons_facebook">
        <div id="fb-root"></div>
        <script>(function(d, s, id) {
          var js, fjs = d.getElementsByTagName(s)[0];
          if (d.getElementById(id)) {return;}
          js = d.createElement(s); js.id = id;
          js.src = "//connect.facebook.net/en_US/all.js#xfbml=1";
          fjs.parentNode.insertBefore(js, fjs);
        }(document, "script", "facebook-jssdk"));</script>
        <div class="fb-like" data-href="http://benargo.com/uni/pal/week-19" data-send="false" data-layout="button_count" data-show-faces="false" data-width="90"></div>
      </div>
    </div>]]></content:encoded>
			<wfw:commentRss>http://benargo.com/uni/pal/week-19/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Week 18 in PAL</title>
		<link>http://benargo.com/uni/pal/week-18</link>
		<comments>http://benargo.com/uni/pal/week-18#comments</comments>
		<pubDate>Mon, 21 Nov 2011 17:00:32 +0000</pubDate>
		<dc:creator>Ben</dc:creator>
				<category><![CDATA[PAL]]></category>

		<guid isPermaLink="false">http://benargo.com/?p=91</guid>
		<description><![CDATA[In this week&#8217;s sessions I mostly let you get along with your work – but the main issue most people seemed to have had was with validation. In the second session on Tuesday (apologies for not covering this in the &#8230; <a href="http://benargo.com/uni/pal/week-18">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>In this week&#8217;s sessions I mostly let you get along with your work – but the main issue most people seemed to have had was with validation. In the second session on Tuesday (apologies for not covering this in the others) I showed you some useful tips and advice regarding form validation.</p>
<h2>Proper, fancy from-scratch JavaScript validation</h2>
<p>A tutorial I have found most helpful regarding good validation is actually from Apple. This was taken down for no discernible reason, but fortunately <a href="http://web.archive.org/web/20110604234648/http://developer.apple.com/internet/webcontent/validation.html">it&#8217;s been archived.</a></p>
<p>This is the solution I <a href="http://www.cems.uwe.ac.uk/~as2-jegtnes/year1/ittwassignment/charity.htm">ended up going for</a> - and some of you should be able to implement it too without too much hassle. For the Audio and Music Tech students, JavaScript has a C-like syntax, so it shouldn&#8217;t be too difficult to grasp the syntax. Looking through the Javascript validation practical you went to should help too. <img src='http://wp.benargo.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<h2>Simple jQuery validation</h2>
<p>However, if you&#8217;re a bit behind and you don&#8217;t think you&#8217;ll be able to complete a proper form validation in time, you might want to go for this solution. Done is better than perfect!</p>
<p>jQuery validation requires very little work from your side. All you need to do is effectively include the Javascript library jQuery (for more info on jQuery see <a href="http://2011.ittwpal.co.uk/week7.php">Ben&#8217;s round-up from Week 7</a>) and the jQuery Validation plug-in to your service, name your form elements appropriately and you&#8217;re sorted. <a href="http://jegtnes.com/uni/pal/jquery_validation.html">Here&#8217;s an example</a> (hosted on a blank page so only the relevant code is included).</p>
<h2>Other relevant notes</h2>
<p>The assignment deadline is now fairly close – we&#8217;re all very busy people now. The next session (and the last before the assignment deadline) will just be a pure coursework-session where I help you out as usual.</p>
<div class="simple_likebuttons_container_small">
      <div class="simple_likebuttons_googleplus">
        <g:plusone size="medium" count="false" href="http://benargo.com/uni/pal/week-18"></g:plusone>
      </div>
    
      <div class="simple_likebuttons_twitter simple_likebuttons_twitter_s">
        <a href="https://twitter.com/share" class="twitter-share-button" data-count="none" data-url="http://benargo.com/uni/pal/week-18" data-lang="en">Tweet</a>
      </div>
    
      <div class="simple_likebuttons_facebook">
        <div id="fb-root"></div>
        <script>(function(d, s, id) {
          var js, fjs = d.getElementsByTagName(s)[0];
          if (d.getElementById(id)) {return;}
          js = d.createElement(s); js.id = id;
          js.src = "//connect.facebook.net/en_US/all.js#xfbml=1";
          fjs.parentNode.insertBefore(js, fjs);
        }(document, "script", "facebook-jssdk"));</script>
        <div class="fb-like" data-href="http://benargo.com/uni/pal/week-18" data-send="false" data-layout="button_count" data-show-faces="false" data-width="90"></div>
      </div>
    </div>]]></content:encoded>
			<wfw:commentRss>http://benargo.com/uni/pal/week-18/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Week 15 in PAL</title>
		<link>http://benargo.com/uni/pal/week-15</link>
		<comments>http://benargo.com/uni/pal/week-15#comments</comments>
		<pubDate>Mon, 07 Nov 2011 17:00:48 +0000</pubDate>
		<dc:creator>Ben</dc:creator>
				<category><![CDATA[PAL]]></category>

		<guid isPermaLink="false">http://benargo.com/?p=88</guid>
		<description><![CDATA[You should now be coming along okay with your charity websites. In this session, we aim to look at something called jQuery, which is a JavaScript framework created with the vision of allowing users to &#8220;write less, do more.&#8221; It &#8230; <a href="http://benargo.com/uni/pal/week-15">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>You should now be coming along okay with your charity websites. In this session, we aim to look at something called jQuery, which is a JavaScript framework created with the vision of allowing users to &#8220;write less, do more.&#8221; It is now fairly common among the web world, with key users including <a href="http://www.direct.gov.uk/" target="_blank">Directgov</a>, the <a href="http://www.bbc.co.uk/" target="_blank">BBC</a> and<a href="http://www.uwe.ac.uk/" target="_blank">UWE</a>.</p>
<p>We will cover basic jQuery syntax, since whilst its quite like normal JavaScript (actually it is normal JavaScript), it has some handlers that are different from the basic syntax.</p>
<p>jQuery is based around the dollar ($) symbol. You use it to target elements within a page, and then interact with them. jQuery is fully CSS3 compatible, which means that you can apply jQuery to anything you can target with CSS3.</p>
<p>The jQuery library includes a massive set of functions, which you can use to make common interactions such as animation, adding or removing CSS classes, changing the content inside, e.t.c. really easy. Full details of all the available functions are available on <a href="http://api.jquery.com/" target="_blank">jQuery&#8217;s official API</a>. If you ever need to look up a function to use within it, the easiest thing to do is just Google for &#8220;jquery {thing}&#8221;.</p>
<p>In addition, there are also a number of additional plugins available. These are bits of pre-written jQuery code that you can plug into your website to increase its functionality. UWE is perfectly happy for you to use these plugins within your own projects, provided you properly reference them. The one we will be looking at today is the <a href="http://docs.jquery.com/Plugins/Validation" target="_blank">jQuery Validation</a> plugin.</p>
<h2>Useful Websites</h2>
<ul>
<li><a href="http://www.jquery.com/" target="_blank">jQuery Official Website</a></li>
<li><a href="http://2011.ittwpal.co.uk/download.php?url=jquery.min.js">Latest Version to Download &amp; Use</a></li>
<li><a href="http://api.jquery.com/" target="_blank">jQuery API (list of functions</a></li>
<li><a href="http://docs.jquery.com/Plugins/Validation" target="_blank">jQuery Validation Plugin</a></li>
<li><a href="http://www.youtube.com/watch?v=XwId1ZHTaCU" target="_blank">A funny video about jQuery</a></li>
</ul>
<div class="simple_likebuttons_container_small">
      <div class="simple_likebuttons_googleplus">
        <g:plusone size="medium" count="false" href="http://benargo.com/uni/pal/week-15"></g:plusone>
      </div>
    
      <div class="simple_likebuttons_twitter simple_likebuttons_twitter_s">
        <a href="https://twitter.com/share" class="twitter-share-button" data-count="none" data-url="http://benargo.com/uni/pal/week-15" data-lang="en">Tweet</a>
      </div>
    
      <div class="simple_likebuttons_facebook">
        <div id="fb-root"></div>
        <script>(function(d, s, id) {
          var js, fjs = d.getElementsByTagName(s)[0];
          if (d.getElementById(id)) {return;}
          js = d.createElement(s); js.id = id;
          js.src = "//connect.facebook.net/en_US/all.js#xfbml=1";
          fjs.parentNode.insertBefore(js, fjs);
        }(document, "script", "facebook-jssdk"));</script>
        <div class="fb-like" data-href="http://benargo.com/uni/pal/week-15" data-send="false" data-layout="button_count" data-show-faces="false" data-width="90"></div>
      </div>
    </div>]]></content:encoded>
			<wfw:commentRss>http://benargo.com/uni/pal/week-15/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Week 14 in PAL</title>
		<link>http://benargo.com/uni/pal/week-14</link>
		<comments>http://benargo.com/uni/pal/week-14#comments</comments>
		<pubDate>Mon, 31 Oct 2011 17:00:34 +0000</pubDate>
		<dc:creator>Ben</dc:creator>
				<category><![CDATA[PAL]]></category>

		<guid isPermaLink="false">http://benargo.com/?p=86</guid>
		<description><![CDATA[Week 6 is all about semantics. We will be looking at structuring HTML code up using the new HTML 5 elements. I have included a code example for you to look at. Take the code and update it to make it more &#8230; <a href="http://benargo.com/uni/pal/week-14">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Week 6 is all about semantics. We will be looking at structuring HTML code up using the new HTML 5 elements. I have included a <a href="http://2011.ittwpal.co.uk/resources/week6-code-example.html" target="_blank">code example</a> for you to look at. Take the code and update it to make it more semantic.</p>
<div class="simple_likebuttons_container_small">
      <div class="simple_likebuttons_googleplus">
        <g:plusone size="medium" count="false" href="http://benargo.com/uni/pal/week-14"></g:plusone>
      </div>
    
      <div class="simple_likebuttons_twitter simple_likebuttons_twitter_s">
        <a href="https://twitter.com/share" class="twitter-share-button" data-count="none" data-url="http://benargo.com/uni/pal/week-14" data-lang="en">Tweet</a>
      </div>
    
      <div class="simple_likebuttons_facebook">
        <div id="fb-root"></div>
        <script>(function(d, s, id) {
          var js, fjs = d.getElementsByTagName(s)[0];
          if (d.getElementById(id)) {return;}
          js = d.createElement(s); js.id = id;
          js.src = "//connect.facebook.net/en_US/all.js#xfbml=1";
          fjs.parentNode.insertBefore(js, fjs);
        }(document, "script", "facebook-jssdk"));</script>
        <div class="fb-like" data-href="http://benargo.com/uni/pal/week-14" data-send="false" data-layout="button_count" data-show-faces="false" data-width="90"></div>
      </div>
    </div>]]></content:encoded>
			<wfw:commentRss>http://benargo.com/uni/pal/week-14/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

