<?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>Sam Harman</title>
	<atom:link href="http://samharman.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://samharman.com</link>
	<description>Thoughts of a Mobile Applications Developer.</description>
	<lastBuildDate>Tue, 30 Apr 2013 21:16:33 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.5.1</generator>
		<item>
		<title>What is a Method in Objective-C Anyway?</title>
		<link>http://samharman.com/2013/03/objective-c-what-is-a-method/</link>
		<comments>http://samharman.com/2013/03/objective-c-what-is-a-method/#comments</comments>
		<pubDate>Tue, 12 Mar 2013 21:25:59 +0000</pubDate>
		<dc:creator>Sam</dc:creator>
				<category><![CDATA[Informative]]></category>
		<category><![CDATA[Apps]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[iOS]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[Tutorials]]></category>

		<guid isPermaLink="false">http://samharman.com/?p=281</guid>
		<description><![CDATA[You can think of this post as the first in a series of &#8216;The bits that nobody else explains very well&#8217;&#8230; An explanation &#8216;cheat-sheet&#8217; article if you will, for anyone who&#8217;s starting to dabble in iOS or Mac OS programming<span class="ellipsis">&#8230;</span><div class="read-more"><a href="http://samharman.com/2013/03/objective-c-what-is-a-method/">Read more &#8250;</a></div><!-- end of .read-more -->]]></description>
				<content:encoded><![CDATA[<p>You can think of this post as the first in a series of &#8216;The bits that nobody else explains very well&#8217;&#8230; An explanation &#8216;cheat-sheet&#8217; article if you will, for anyone who&#8217;s starting to dabble in iOS or Mac OS programming and wants to not only &#8216;know&#8217; how to program, but who wants to &#8216;understand&#8217; what they&#8217;re coding as well. Many tutorials will gloss over these basic explanations, dismissing them as second nature, or failing to understand how fundamentally important it is that their readers understand the concepts behind the code they are being taught.</p>
<p>To some more experienced developers, these explanations might seem too simplistic and in some cases, even &#8216;wrong&#8217; technically. That doesn&#8217;t matter here, what matters is that the fundamental concepts are understood. This article will be part of a series and if there&#8217;s a particular item you&#8217;d like me to cover just let me know in the comments section, or by heading to the contact form!  Now without further ado, lets talk about Methods in Objective-C.</p>
<p>&nbsp;</p>
<h2><b>Methods In Objective-C</b></h2>
<p>Right, now hang on a second&#8230; You know what a method is right? No&#8230; of course not, why would you even be reading this article if you did? So let me explain&#8230; Programming is essentially a set of instructions for a computer to carry out (<em>in this case a shiny, drool worthy, iPhone&#8230; but a computer nonetheless</em>). These instructions need to be wrapped in some sort of container in order for the code you write to make any sort of sense at all. Here&#8217;s an example I like to use, it&#8217;s called the &#8216;Making a cup of tea&#8217; example&#8230;</p>
<p><em></em>If you wanted a cup of tea, and someone else was in the room with you, what would you say? Well, let&#8217;s assume you&#8217;re uncharacteristically rude and dispense with the pleasantries, you would say &#8220;<strong>Make me a cup of tea</strong>&#8220;&#8230; What you wouldn&#8217;t say is, &#8220;<em>Take the kettle, fill the kettle with water, turn the kettle on, wait for the kettle to boil, take a mug, put a tea bag in it, once the kettle has boiled pour water from the kettle into the mug, take a spoon, stir the tea, remove the teabag, add milk, maybe sugar, put the milk away, put the spoon in the sink, bring me the cup</em>&#8221;</p>
<p>When you say to somebody &#8220;Make me a cup of tea&#8221; they understand the process to make a cup of tea, because it has already been explained to them in detail (<em>probably a long time ago, but that&#8217;s irrelevant</em>). When you ask somebody to &#8220;Make me a cup of tea&#8221; they know they need to carry out a set of instructions in order to fulfil that process and provide the output (In this case, a refreshing beverage!)</p>
<p>Methods to a computer are a way of containing these instructions, so you might decide to write the method &#8220;Make me a cup of tea&#8221; and within that method, you would write the code instructing the computer exactly how it should do that. The fantastic benefit of this is that now the computer knows how to &#8220;Make a cup of tea&#8221; you can call that method from within other methods, to perform that set of instructions. Essentially, once you&#8217;ve told the computer how to &#8220;Make a cup of tea&#8221; once, you need never tell it again.</p>
<p>Now, to dwell on this particular example just one moment longer&#8230; Remember that big long list of instructions that you wouldn&#8217;t say to another person if you wanted them to make you a cup of tea, &#8220;<em>fill the kettle with water, turn the kettle on, etc&#8230;&#8221;.</em> In the same way that you would write the method &#8220;Make me a cup of tea&#8221;, you would also write the method &#8220;Fill the kettle with water&#8221; which contained precise instructions for how exactly it would &#8216;Fill the kettle with water&#8217;. Within your &#8220;Make me a cup of tea&#8221; method, you would then simply call your &#8220;Fill the kettle with water&#8221; method as part of that process.<span style="text-decoration: underline;"><br />
</span></p>
<p>If you can understand this fundamental principle then you are one step closer to becoming an elite programmer! Seriously though, this may seem simple to the experienced programmers out there, but no one really explains this stuff very well and it&#8217;s important.</p>
<p>&nbsp;</p>
<h2><b>So what does a Method look like in code then?</b></h2>
<p>Well, I&#8217;m glad you asked&#8230; I just happen to have an example right here! Before I show it to you though, allow me to explain a little bit of jargon I might use from now on. A programming language is like any other language, it has lexicon (words) and syntax (rules for combining those words) and as with any other language, there are many people out there who will argue for many, many days (<a href="http://xkcd.com/386/">and nights&#8230; seriously</a>) about the correct use of programming syntax / lexicon. What I will use in these articles is examples that I consider to be &#8216;best practice&#8217;, I&#8217;m sure there will be people who disagree with my examples, but they&#8217;re not writing this article now are they!</p>
<p>So, a traditional objective-C method looks a bit like this&#8230;</p>
<div class="codecolorer-container objc default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="objc codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #002200;">-</span> <span style="color: #002200;">&#40;</span><a href="http://developer.apple.com/documentation/Cocoa/Reference/Foundation/Classes/NSString_Class/"><span style="color: #400080;">NSString</span></a><span style="color: #002200;">*</span><span style="color: #002200;">&#41;</span>getName <span style="color: #002200;">&#123;</span><br />
<br />
<a href="http://developer.apple.com/documentation/Cocoa/Reference/Foundation/Classes/NSString_Class/"><span style="color: #400080;">NSString</span></a> <span style="color: #002200;">*</span> name <span style="color: #002200;">=</span> <span style="color: #bf1d1a;">@</span><span style="color: #bf1d1a;">&quot;Jeff&quot;</span>;<br />
<br />
<span style="color: #a61390;">return</span> name;<br />
<br />
<span style="color: #002200;">&#125;</span></div></div>
<p>What on earth does this method do? Well&#8230; lets switch a few names around, and it should all become a bit clearer&#8230;</p>
<div class="codecolorer-container objc default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="objc codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #002200;">-</span> <span style="color: #002200;">&#40;</span>CupOfTea <span style="color: #002200;">*</span><span style="color: #002200;">&#41;</span>makeMeACupOfTea <span style="color: #002200;">&#123;</span><br />
<br />
CupOfTea <span style="color: #002200;">*</span> tea <span style="color: #002200;">=</span> milk <span style="color: #002200;">+</span> mug <span style="color: #002200;">+</span> water;<br />
<br />
<span style="color: #a61390;">return</span> tea;<br />
<br />
<span style="color: #002200;">&#125;</span></div></div>
<p>So let&#8217;s examine what we have here. The first line tells us two things about this method, firstly <strong><code>- (CupOfTea *)</code></strong> tells us the &#8216;output&#8217; of this method, or in english&#8230; what this method will give to whoever or whatever calls it. Secondly it tell us what the name of the method is, in this case<strong> <code>makeMeACupOfTea</code></strong>, now we can choose what we call our methods (exciting huh?) and don&#8217;t underestimate this process. As soon as you get any number of different methods in one place, it becomes very important for you &#8216;the programmer&#8217; to be able to quickly remember and know what each of your methods are called.</p>
<p>Right, so we know that this method is called <strong><code>makeMeACupOfTea</code></strong> and that it will output a <strong><code>CupOfTea *</code></strong>, Wonderful! Don&#8217;t worry about what the <strong><code>*</code> </strong>means right now, we&#8217;ll get to that in another article. So the rest of the method is within a pair of curly brackets (Yep, that is the technical term for them!) Everything that is within the <strong><code>{ }</code> </strong>is the &#8216;doing&#8217; code of that method. Here you will find the code that actually makes the cup of tea.</p>
<p>All we are doing in this functional code, is creating a new object (more on this in a future article) called <strong><code>tea</code></strong> of type <strong><code>CupOfTea</code></strong> which is (<em>if you recall</em>) the output of this method. Don&#8217;t worry about how we&#8217;re creating tea here, in this example it&#8217;s just a bit of pseudocode (<em>code which explains a purpose but is not actually functional or valid code</em>) to make my point. So to finish the method off, all we do is <strong><code>return tea;</code> </strong>Easy (When you know how!) So, now you know what my <strong><code>makeMeACupOfTea</code></strong> see if you can work out what the &#8216;real life&#8217; <strong><code>getName</code> </strong>method does? (A bit of googling will tell you what an <strong><code>NSString</code></strong> object is&#8230; <em>Well, you didn&#8217;t think I was going to do ALL the work for you , did you?<strong> </strong></em></p>
<p>&nbsp;</p>
<h2><b>Taking methods to the next level&#8230;</b></h2>
<p>So, hopefully now you understand what a method is, what it&#8217;s purpose is, and how to use them. There is one more thing&#8230; Inputs, or parameters as they&#8217;re more commonly known. So it&#8217;s all very well, we have these methods to return us lovely objects, but what if we want to use these objects, say in another method for example. Well, that&#8217;s where a parameter comes in&#8230; You can pass another object into your method as a parameter. Let&#8217;s go back to our old <strong><code>makeMeACupOfTea</code></strong> example to demonstrate this, so if we use a parameter to pass the method a <strong><code>TeaBag *</code></strong> the method would probably look something like this&#8230;</p>
<div class="codecolorer-container objc default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="objc codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #002200;">-</span> <span style="color: #002200;">&#40;</span>CupOfTea <span style="color: #002200;">*</span><span style="color: #002200;">&#41;</span>makeMeACupOfTeaWithThisTeabag<span style="color: #002200;">:</span><span style="color: #002200;">&#40;</span>Teabag <span style="color: #002200;">*</span><span style="color: #002200;">&#41;</span>myTeaBag <span style="color: #002200;">&#123;</span><br />
<br />
CupOfTea <span style="color: #002200;">*</span> tea <span style="color: #002200;">=</span> myTeaBag <span style="color: #002200;">+</span> water <span style="color: #002200;">+</span> milk;<br />
<br />
<span style="color: #a61390;">return</span> tea;<br />
<br />
<span style="color: #002200;">&#125;</span></div></div>
<p>So here you can see that we have extended our method, to pass into the method the teabag that we want the method to use, in order to make the tea (<em>at this point the<strong> <code>water + milk</code></strong> are still elements of pseudocode purely for explanation purposes</em>). So breaking down the method again, you can see we have a colon <strong><code>:</code></strong> in the method name, followed by the object type of the parameter in brackets, in this case <strong><code>(Teabag *)</code></strong> followed by the name of the parameter that you will use to reference the object you are passing into the parameter within the &#8216;doing&#8217; code (<em>the bit in-between the curly brackets if you remember</em>). So anytime you type <strong><code>myTeaBag</code></strong> within your method, the computer will know you are specifically referring to the <strong><code>myTeaBag</code></strong> that you have passed into the method as a parameter.</p>
<p>We can take this a step further, and actually pass in multiple parameters to a method. This is done like so&#8230;</p>
<div class="codecolorer-container objc default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="objc codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #002200;">-</span> <span style="color: #002200;">&#40;</span>CupOfTea <span style="color: #002200;">*</span><span style="color: #002200;">&#41;</span>makeMeACupOfTeaWithThisTeabag<span style="color: #002200;">:</span><span style="color: #002200;">&#40;</span>Teabag <span style="color: #002200;">*</span><span style="color: #002200;">&#41;</span>myTeaBag Water<span style="color: #002200;">:</span><span style="color: #002200;">&#40;</span>Water <span style="color: #002200;">*</span><span style="color: #002200;">&#41;</span>myWater Milk<span style="color: #002200;">:</span><span style="color: #002200;">&#40;</span>Milk <span style="color: #002200;">*</span><span style="color: #002200;">&#41;</span>myMilk <span style="color: #002200;">&#123;</span><br />
<br />
CupOfTea <span style="color: #002200;">*</span> tea <span style="color: #002200;">=</span> myTeaBag <span style="color: #002200;">+</span> myWater <span style="color: #002200;">+</span> myMilk;<br />
<br />
<span style="color: #a61390;">return</span> tea;<br />
<br />
<span style="color: #002200;">&#125;</span></div></div>
<p>So now what we&#8217;re doing, is telling the computer to make a <strong><code>CupOfTea</code></strong> with this teabag, this water, and this milk! The formatting is probably wrong in this blog post, but that&#8217;s never what this was about. I don&#8217;t care right now if you don&#8217;t know the &#8216;best practices&#8217; or if you are able to write code in the most efficient and optimal way as possible (<em>although that becomes important later on.</em>) Today I will be happy if you just understand methods a little bit more, and are slightly more comfortable in how to use them and what exactly they are doing.</p>
<p>Once you grasp the concept of methods, you&#8217;re one step closer to writing the next &#8216;Angry Birds&#8217;. Seriously though, it&#8217;s an important step into the world of programming. Even though this article has focused on Objective-C, the fundamental principles are the same in most programming languages, the lexicon and syntax will be different but the concept will be the same. This has been quite a long post, so my suggestion would be to go away, digest it, write some methods, and come back if you need any further guidance. Practice, makes perfect&#8230; Oh and remember: The computer is following instructions, it will only ever do what you tell it to do (<em>and it&#8217;s really very fussy about how it gets told!</em>)</p>
<p><em>This is the first of a series of articles, and is really the first time I&#8217;ve sat down to try to write a guide like this. I would appreciate any and all feedback, positive and negative! Just leave a comment below. Likewise if you want clarification on anything I&#8217;ve said in this article, let me know in the comments and I&#8217;ll update the article with more information on your point. For now, thanks for reading and happy coding!</em></p>
]]></content:encoded>
			<wfw:commentRss>http://samharman.com/2013/03/objective-c-what-is-a-method/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Thoughts on Android (from an iOS developer)</title>
		<link>http://samharman.com/2012/07/thoughts-on-android-from-an-ios-developer/</link>
		<comments>http://samharman.com/2012/07/thoughts-on-android-from-an-ios-developer/#comments</comments>
		<pubDate>Sat, 21 Jul 2012 08:30:59 +0000</pubDate>
		<dc:creator>Sam</dc:creator>
				<category><![CDATA[Thoughts]]></category>
		<category><![CDATA[Android]]></category>
		<category><![CDATA[Apps]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[iOS]]></category>

		<guid isPermaLink="false">http://samharman.com/?p=260</guid>
		<description><![CDATA[So, those who know me, will know me as an avid Apple fanboy through and through&#8230; But you know what? Okay, yeah they&#8217;re absolutely right. I love my Apple gear for its robustness, and its reliability. But recently, i&#8217;ve been<span class="ellipsis">&#8230;</span><div class="read-more"><a href="http://samharman.com/2012/07/thoughts-on-android-from-an-ios-developer/">Read more &#8250;</a></div><!-- end of .read-more -->]]></description>
				<content:encoded><![CDATA[<p>So, those who know me, will know me as an avid Apple fanboy through and through&#8230; But you know what? Okay, yeah they&#8217;re absolutely right. I love my Apple gear for its robustness, and its reliability. But recently, i&#8217;ve been becoming more and more frustrated with iOS. Specifically from a developer point of view, there are things I want to do, Apps i want to create that I just can&#8217;t because of Apples strict enforcement of the App store rules.</p>
<p>Now i&#8217;m aware that these rules supposedly lead to a lovely clean App store full of apps which all &#8216;just work&#8217; etc, but in reality there are a ton of Apps out there that are utterly useless but have been &#8216;approved&#8217; by Apple for sale. I&#8217;ll give you an example of an App I want on iOS, but can&#8217;t have (without jailbreaking of course!). An app that scans the air for all the WiFi signals in the area, tells me which channel / frequency is the best one to use for my wireless router for minimum interference. I also want to be able to monitor signal levels (in dB) around my house and make sure i get a strong signal everywhere. Basically that&#8217;s because i&#8217;m a <del>massive geek</del> really cool guy, but also just a little bit because Apple won&#8217;t let me!</p>
<div id="attachment_263" class="wp-caption alignright" style="width: 310px"><img class="size-medium wp-image-263 " title="Nexus 7" src="http://samharman.com/wp-content/uploads/2012/07/Google_Nexus_71-300x225.jpg" alt="Google Nexus 7 Tablet On Wooden Desk" width="300" height="225" /><p class="wp-caption-text">Google&#8217;s Nexus 7, a small tablet with some impressive specs. A quad core processor, 1 Gig of ram all for less than £200</p></div>
<p>Android on the other hand&#8230; Well there&#8217;s no problem with android. I could make an app which did that, stick it up on the Google play store and have it ready for download in a couple of days if i really wanted to! My problem with Android, it&#8217;s not with Google and it&#8217;s nothing to do with the Core OS, rather it&#8217;s the crap that manufacturers and mobile carriers love to smother over the top of a perfectly nice clean operating system. HTC&#8217;s Sense UI is a perfect example, in my eyes it&#8217;s ugly, it&#8217;s dressing up android as a consumer level OS, when in reality it&#8217;s screaming out to be the OS of choice for geeks around the world. In some ways, efforts like HTC&#8217;s Sense is to Android, what OS X is to Unix (but not in a good way). It delays updates, performance improvements, and more&#8230; All for a (so called) pretty UI which consumers are supposed to like.</p>
<p>But here&#8217;s the thing, Google have had their line of Nexus devices for a fair while now, and what they provide is the very core of Android, the &#8216;vanilla&#8217; kernel if you like. With no funky magical animated unicorn home screen backgrounds (although I&#8217;m sure you can enable that if you really must!) and finally with Jellybean, a system which is comparable (in my eyes) to iOS. Google have FINALLY sorted out the &#8216;Android Lag&#8217; between touching the screen and stuff actually happening, and what&#8217;s more they have introduced a 7&#8243; tablet, for under £200 that actually has some really nice specs. It really looks like a dream device for an App developer, which probably explains why i&#8217;m so very tempted to get my hands on one, and give Android development a go.</p>
<p>Couple this with the strange goings on at Apple of late, I&#8217;m talking about things like the sudden withdrawal of all machines from EPEAT only to have the decision reversed days later, in addition to the plain ugly <a href="http://www.youtube.com/watch?v=MW1gvpYxjvo" target="_blank">leaks of what is rumoured to be the next iPhone</a>. Apple appears to be faltering. I hate to say it, but i really think Apple is going to get some serious competition in the next year or two, from the likes of Google especially, but also Microsoft who appears to be trying to drag itself back into this century with PC+ and it&#8217;s Surface offering (supposedly a tablet, with no price or release date&#8230; We&#8217;ll see Microsoft, we&#8217;ll see!). Either way, it&#8217;s going to be an interesting couple of years, and it&#8217;s about time Apple got some serious competition&#8230; Now without further ado, i&#8217;m off to buy a Nexus 7, but don&#8217;t you think for one second that means i&#8217;m going to get rid of my iPad&#8230;</p>
<p>Let me know what you think, Android vs Apple&#8230; Will Microsoft even get a say in the tablet market, oh and does anybody remember the blackberries?</p>
]]></content:encoded>
			<wfw:commentRss>http://samharman.com/2012/07/thoughts-on-android-from-an-ios-developer/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>A Fresh Start</title>
		<link>http://samharman.com/2012/07/a-fresh-start/</link>
		<comments>http://samharman.com/2012/07/a-fresh-start/#comments</comments>
		<pubDate>Wed, 11 Jul 2012 20:20:26 +0000</pubDate>
		<dc:creator>Sam</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://samharman.com/?p=241</guid>
		<description><![CDATA[Welcome to the redesigned site, I hope you like it! The aim is to make it slightly more focused on mobile app development rather than my degree subject (Music Technology.) I am now &#8216;officially&#8217; an iOS applications developer, and have<span class="ellipsis">&#8230;</span><div class="read-more"><a href="http://samharman.com/2012/07/a-fresh-start/">Read more &#8250;</a></div><!-- end of .read-more -->]]></description>
				<content:encoded><![CDATA[<p>Welcome to the redesigned site, I hope you like it! The aim is to make it slightly more focused on mobile app development rather than my degree subject (Music Technology.) I am now &#8216;officially&#8217; an iOS applications developer, and have had the opportunity to work on apps for companies such as Vodafone, Cablevision and Comcast. I&#8217;m learning a lot, and hope to continue learning something new every single day.</p>
<p>In this blog, i will gradually be uploading tutorials for basic iOS development techniques, through to hopefully some more advanced topics like Core Data, and Concurrency programming. Now, I don&#8217;t profess to be the master of all knowledge when it comes to iOS development, far from it&#8230; (I&#8217;ve only been doing this a few years!) But i hope i can create some high quality material to act as a starting point for some of the finer (less widely covered) topics of iOS development.</p>
<p>In addition to this, i aim to use this blog as somewhere to collect thoughts, links, and articles to interesting developments in the technology industry. It&#8217;s not going to be your go-to site for the latest news&#8230; Thats pretty well covered by <a href="http://www.theverge.com/" target="_blank">The Verge</a>, <a href="http://www.engadget.com/" target="_blank">Engadget</a>, and <a href="http://www.technobuffalo.com/" target="_blank">TechnoBuffalo</a> and so on&#8230; My blog will be much more my views on relevant news stories etc&#8230;</p>
<p>Right, well that&#8217;s it for now. I hope you enjoy the new site (It&#8217;s still very much a work in-progress, so bare with me while i get the finer details sorted out) I&#8217;d love to hear what you think, feel free to leave a comment below, or send me a tweet (<a href="http://www.twitter.com/sammio2" target="_blank">@sammio2</a>).</p>
]]></content:encoded>
			<wfw:commentRss>http://samharman.com/2012/07/a-fresh-start/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Degree Results&#8230;</title>
		<link>http://samharman.com/2011/07/degree-results/</link>
		<comments>http://samharman.com/2011/07/degree-results/#comments</comments>
		<pubDate>Fri, 08 Jul 2011 11:21:40 +0000</pubDate>
		<dc:creator>Sam</dc:creator>
				<category><![CDATA[Informative]]></category>
		<category><![CDATA[Press & Media]]></category>
		<category><![CDATA[Audio]]></category>
		<category><![CDATA[Press]]></category>
		<category><![CDATA[programming]]></category>

		<guid isPermaLink="false">http://samharman.com/?p=222</guid>
		<description><![CDATA[Hello All, Just a very quick post, I am delighted to announce that i have graduated from Bournemouth University with a 1st Class BSc (Hons) Degree in Music and Audio Technology. My CV has been updated appropriately, and you can<span class="ellipsis">&#8230;</span><div class="read-more"><a href="http://samharman.com/2011/07/degree-results/">Read more &#8250;</a></div><!-- end of .read-more -->]]></description>
				<content:encoded><![CDATA[<p>Hello All,</p>
<p>Just a very quick post, I am delighted to announce that i have graduated from Bournemouth University with a <strong>1st Class BSc (Hons) Degree in Music and Audio Technology</strong>. My CV has been updated appropriately, and you can <a title="Curriculum Vitae" href="http://samharman.com/cv/">find my CV here</a>. Additionally, I was presented with the &#8216;Student of The Course&#8217; certificate for the three years of study. Additionally, Media interest had picked up on the Twinthesis Project, and it has been <a href="http://www.telegraph.co.uk/technology/twitter/8512806/Twitter-sweet-symphony-the-sound-of-Twitter.html">featured by The Telegraph</a>, and various local BBC Radio Stations, A feature has also been produced for BBC Radio 4&#8242;s Today programme and will be broadcast soon.</p>
<p>As always, i&#8217;d like to thank you for visiting my site, and i hope you enjoy some of the interesting and innovative projects you&#8217;ll find me working on. I am now actively looking for employment within the audio, software programming, social media, or education sector. So please <a title="Curriculum Vitae" href="http://samharman.com/cv/">download my CV here</a>.</p>
<p>Sam</p>
]]></content:encoded>
			<wfw:commentRss>http://samharman.com/2011/07/degree-results/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Welcome, from FODI 2011&#8230;</title>
		<link>http://samharman.com/2011/06/welcome-from-fodi-2011/</link>
		<comments>http://samharman.com/2011/06/welcome-from-fodi-2011/#comments</comments>
		<pubDate>Tue, 21 Jun 2011 16:00:32 +0000</pubDate>
		<dc:creator>Sam</dc:creator>
				<category><![CDATA[Informative]]></category>
		<category><![CDATA[Press & Media]]></category>
		<category><![CDATA[Audio]]></category>
		<category><![CDATA[Information]]></category>
		<category><![CDATA[iResponse]]></category>
		<category><![CDATA[Portfolio]]></category>
		<category><![CDATA[Press]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[Synthesis]]></category>
		<category><![CDATA[Twitter]]></category>

		<guid isPermaLink="false">http://samharman.com/?p=202</guid>
		<description><![CDATA[If you&#8217;re reading this, I&#8217;m assuming you&#8217;ve been directed here either by me, or by scanning my QR code at the Festival of Design and Innovation. In either case, Welcome. I&#8217;m glad you&#8217;d like to know a bit more about<span class="ellipsis">&#8230;</span><div class="read-more"><a href="http://samharman.com/2011/06/welcome-from-fodi-2011/">Read more &#8250;</a></div><!-- end of .read-more -->]]></description>
				<content:encoded><![CDATA[<div id="attachment_214" class="wp-caption alignleft" style="width: 235px"><a href="http://samharman.com/wp-content/uploads/2011/06/DSCF1206.jpg"><img class="size-medium wp-image-214 " title="iResponse at FODI 2011" alt="" src="http://samharman.com/wp-content/uploads/2011/06/DSCF1206-225x300.jpg" width="225" height="300" /></a><p class="wp-caption-text">iResponse at FODI 2011, Bournemouth University</p></div>
<p>If you&#8217;re reading this, I&#8217;m assuming you&#8217;ve been directed here either by me, or by scanning my QR code at the Festival of Design and Innovation. In either case, Welcome. I&#8217;m glad you&#8217;d like to know a bit more about me, and the projects i&#8217;m working on. Feel free to browse the site, you can find <a title="Curriculum Vitae" href="http://samharman.com/cv/">my CV</a> (I&#8217;m currently looking for employment!) and <a href="http://samharman.com/category/portfolio/">examples of my previous work</a>, etc.</p>
<p>The project I&#8217;ve been exhibiting at FODI 2011 is the &#8216;iResponse&#8217; iPhone application, more <a title="iResponse Application" href="http://samharman.com/2011/04/iresponse-application/">release information is available here</a>. Once FODI is complete, I will be uploading the promotional materials and examples demoed at the show for you to download and experiment with. Currently the application is still in development, but release is scheduled towards the end of this year (2011.)</p>
<p>Another project I&#8217;ve been working on, and has become quite popular in the media recently is <a title="Twinthesis : Twitter Powered Synthesis" href="http://samharman.com/2011/03/twinthesis-twitter-powered-synthesis/">&#8216;Twinthesis&#8217;</a>. This is a synthesiser which is powered entirely by data from Twitter in real-time. The synthesiser takes data from the 20 most recent tweets at any different time, and maps each character of a tweet to various tones, hums, and bleeps to create a unique sonification of that tweet. The synthesiser is built within the Max/MSP architecture and is<a title="Twinthesis : Twitter Powered Synthesis" href="http://samharman.com/2011/03/twinthesis-twitter-powered-synthesis/"> available to download here</a>.</p>
<p><em>That&#8217;s all for now, I hope you enjoy the site. Please feel free to <a title="Contact Me" href="http://samharman.com/contact-me/">contact me</a>, either by email, twitter (<a href="http://twitter.com/sammio2">@Sammio2</a>) or using the <a title="Contact Me" href="http://samharman.com/contact-me/">built in form here</a>. This site will be regularly updated with progress on my work and various <a title="Future Plans…" href="http://samharman.com/2011/04/future-plans/">project ideas</a> that I am starting and hoping to work on after graduation.</em></p>
]]></content:encoded>
			<wfw:commentRss>http://samharman.com/2011/06/welcome-from-fodi-2011/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Engadget Features Twinthesis</title>
		<link>http://samharman.com/2011/06/engadget-features-twinthesis/</link>
		<comments>http://samharman.com/2011/06/engadget-features-twinthesis/#comments</comments>
		<pubDate>Tue, 21 Jun 2011 15:43:17 +0000</pubDate>
		<dc:creator>Sam</dc:creator>
				<category><![CDATA[Press & Media]]></category>

		<guid isPermaLink="false">http://samharman.com/?p=212</guid>
		<description><![CDATA[Twinthesis has been featured by the German section of Engadget, very exciting: http://de.engadget.com/2011/03/16/twinthesis-aus-tweets-wird-musik-video/]]></description>
				<content:encoded><![CDATA[<p>Twinthesis has been featured by the German section of Engadget, very exciting: <a href="http://de.engadget.com/2011/03/16/twinthesis-aus-tweets-wird-musik-video/">http://de.engadget.com/2011/03/16/twinthesis-aus-tweets-wird-musik-video/</a></p>
]]></content:encoded>
			<wfw:commentRss>http://samharman.com/2011/06/engadget-features-twinthesis/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The Next Web features Twinthesis</title>
		<link>http://samharman.com/2011/06/the-next-web-features-twinthesis/</link>
		<comments>http://samharman.com/2011/06/the-next-web-features-twinthesis/#comments</comments>
		<pubDate>Tue, 21 Jun 2011 15:40:56 +0000</pubDate>
		<dc:creator>Sam</dc:creator>
				<category><![CDATA[Press & Media]]></category>

		<guid isPermaLink="false">http://samharman.com/?p=210</guid>
		<description><![CDATA[Twinthesis has been featured on The Next Web, take a look: http://thenextweb.com/shareables/2011/03/21/twinthesis-mac-app-explores-the-sounds-of-twitter/]]></description>
				<content:encoded><![CDATA[<p>Twinthesis has been featured on The Next Web, take a look: <a href="http://thenextweb.com/shareables/2011/03/21/twinthesis-mac-app-explores-the-sounds-of-twitter/">http://thenextweb.com/shareables/2011/03/21/twinthesis-mac-app-explores-the-sounds-of-twitter/</a></p>
]]></content:encoded>
			<wfw:commentRss>http://samharman.com/2011/06/the-next-web-features-twinthesis/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Synthtopia features Twinthesis</title>
		<link>http://samharman.com/2011/06/synthtopia-features-twinthesis/</link>
		<comments>http://samharman.com/2011/06/synthtopia-features-twinthesis/#comments</comments>
		<pubDate>Tue, 21 Jun 2011 15:28:25 +0000</pubDate>
		<dc:creator>Sam</dc:creator>
				<category><![CDATA[Press & Media]]></category>
		<category><![CDATA[Audio]]></category>
		<category><![CDATA[Experimental Music]]></category>
		<category><![CDATA[MaxMSP]]></category>
		<category><![CDATA[Media]]></category>
		<category><![CDATA[Press]]></category>
		<category><![CDATA[Sound]]></category>
		<category><![CDATA[Synthesis]]></category>
		<category><![CDATA[Twitter]]></category>

		<guid isPermaLink="false">http://samharman.com/?p=204</guid>
		<description><![CDATA[Twinthesis has been featured on Synthtopia, take a look here: http://www.synthtopia.com/content/2011/03/15/twinthesis/]]></description>
				<content:encoded><![CDATA[<p>Twinthesis has been featured on Synthtopia, take a look here: <a href="http://www.synthtopia.com/content/2011/03/15/twinthesis/">http://www.synthtopia.com/content/2011/03/15/twinthesis/</a></p>
]]></content:encoded>
			<wfw:commentRss>http://samharman.com/2011/06/synthtopia-features-twinthesis/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Press Release from Bournemouth University</title>
		<link>http://samharman.com/2011/06/press-release-from-bournemouth-university/</link>
		<comments>http://samharman.com/2011/06/press-release-from-bournemouth-university/#comments</comments>
		<pubDate>Fri, 17 Jun 2011 16:43:50 +0000</pubDate>
		<dc:creator>Sam</dc:creator>
				<category><![CDATA[Informative]]></category>
		<category><![CDATA[Press & Media]]></category>
		<category><![CDATA[Apple]]></category>
		<category><![CDATA[Apps]]></category>
		<category><![CDATA[Audio]]></category>
		<category><![CDATA[Information]]></category>
		<category><![CDATA[iResponse]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[Science]]></category>
		<category><![CDATA[VST Development]]></category>

		<guid isPermaLink="false">http://samharman.com/?p=194</guid>
		<description><![CDATA[UPDATE: Official Bournemouth Uni Website Updated: http://bit.ly/kp0ODy Further Information: Charles Elder, Press &#38; PR Manager (tel): 01202 961032   email: press@bournemouth.ac.uk 17 June 2011 &#160; How does your room &#8216;sound&#8217;? New app can help! The creator of the ‘Twinthesiser’ – the<span class="ellipsis">&#8230;</span><div class="read-more"><a href="http://samharman.com/2011/06/press-release-from-bournemouth-university/">Read more &#8250;</a></div><!-- end of .read-more -->]]></description>
				<content:encoded><![CDATA[<p><strong>UPDATE: Official Bournemouth Uni Website Updated: <a href="http://bit.ly/kp0ODy">http://bit.ly/kp0ODy</a></strong></p>
<p>Further Information: Charles Elder, Press &amp; PR Manager</p>
<p>(tel): 01202 961032   email: <a href="mailto:press@bournemouth.ac.uk" target="_blank">press@bournemouth.ac.uk</a></p>
<p>17 June 2011</p>
<p>&nbsp;</p>
<p><strong>How does your room &#8216;sound&#8217;? New app can help!</strong></p>
<p>The creator of the ‘Twinthesiser’ – the unique web-based software which turns posts made on Twitter into real sounds – will present his latest project as part of the 2011 Festival of Design and Innovation at Bournemouth University.</p>
<p>Sam Harman, who is just completing his BSc (Hons) in Music and Audio Technology, will demonstrate his new iPhone application as part of the Festival which opens for a private view on Thursday, 23 June before opening to the general public on Friday, 24 June.</p>
<p>Sam’s iPhone Impulse Response Application is designed to capture the acoustical characteristics of a room, (otherwise known as an impulse response) which can then be duplicated through a computer. “It’s really designed for musicians, audio technicians or acousticians but the application makes it easy for anyone to use,” Sam enthuses. “Previously it’s required a lot of microphones, cables, laptops, etc but now you can just do it all on your iPhone and then plug-in to your computer and use the data collected by the application to make any audio on your computer sound like it was being performed or recorded within the room or environment that you’ve captured.”</p>
<p>Earlier this year, Sam introduced the world to his ‘Twinthesiser’ which he designed to “explore the ‘sound’ of twitter, in an attempt to sonify the human randomness being generated on the service.”</p>
<p>Through the ‘Twinthesis’ software, Sam has assigned each character its own distinctive tone. The software then accesses a Twitter feed every 30 seconds or so, selecting the top 20 tweets at random and repeats it to produce a kind of rhythm or ‘symphony’ of high pitched bleeps and deeper humming sounds.</p>
<p>“The Twinthesisier can then go through the tweets a character at a time to produce a sort of melody,” says Sam. “In time I hope we could get to the stage where it could pull data off Twitter at more than 100 times every second and this would produce a sort of global symphony.&#8221;</p>
<p>“Theoretically the application could be configured to draw data from Facebook or Twitter or from any other source of random data,” Sam continues. “You could also apply the engine to groups of people so you could take the tweets from one country and compare them with the sound of tweets from another country.</p>
<p>“It could become a sort of worldwide controllable instrument, which I think is really cool,” Sam concludes. “There are limitless things you can do.”</p>
<p>“Sam&#8217;s work on Twinthesis along with the audio application he developed for the iPhone is a perfect example of the brilliant work that our students in Music and Audio Technology are able to deliver,” says Dr Alain Renaud (title). “His work, along with other students, blends creativity and complex technologies, to ultimately deliver products that have a commercial potential in the field of Creative Technologies.”</p>
<p>BU’s BSc (Hons) in Music and Audio Technology gives students an opportunity to apply electronic and computer technologies to create contemporary music and audio. Students from the degree will join other emerging designers and innovators from BU’s School of Design, Engineering &amp; Computing to display and demonstrate their creations at the 2011 Festival of Design &amp; Innovation.</p>
<p>Open free to the general public from Friday, 24 June to Monday, 27 June on the University’s Talbot Campus, the 19th annual Festival – sponsored by B&amp;Q, the UK’s leading home improvement retailer – will showcase over 170 designs and prototypes created by talented final year students completing undergraduate degrees in Product Design, Industrial Design, Design Engineering, Fashion &amp; Textiles</p>
<p>(from BU’s partner institution, Wiltshire College, Salisbury), Interior Design, Computer Aided Product Design, Sustainable Graphics &amp; Packaging (from BU’s partner institution, University College Yeovil) and Music and Audio Technology.</p>
<p>Further information on the 2011 Festival of Design and Innovation at BU &#8211; including opening times, exhibits and travel directions &#8211; are available on the Festival website: <a href="www.festival.bournemouth.ac.uk" target="_blank">www.festival.bournemouth.ac.uk</a></p>
<p>&nbsp;</p>
<p>Further information about the Twinthesis programme can be found at Sam Harman’s website &#8211; <a href="http://samharman.com/2011/03/twinthesis-twitter-powered-synthesis/" target="_blank">http://samharman.com/2011/03/twinthesis-twitter-powered-synthesis/</a></p>
<p>&nbsp;</p>
<p>To hear the Twinthesiser ‘in action, please visit &#8211; <a href="http://soundcloud.com/theharmonizer/twinthesis" target="_blank">http://soundcloud.com/theharmonizer/twinthesis</a></p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://samharman.com/2011/06/press-release-from-bournemouth-university/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Future Plans&#8230;</title>
		<link>http://samharman.com/2011/04/future-plans/</link>
		<comments>http://samharman.com/2011/04/future-plans/#comments</comments>
		<pubDate>Sun, 24 Apr 2011 21:43:42 +0000</pubDate>
		<dc:creator>Sam</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://samharman.com/?p=186</guid>
		<description><![CDATA[As i&#8217;ll be graduating from university later on this year, this is just an informal post about some projects I want to pursue once I have a little bit more time in my life. Throughout education in general, i&#8217;ve always thrown<span class="ellipsis">&#8230;</span><div class="read-more"><a href="http://samharman.com/2011/04/future-plans/">Read more &#8250;</a></div><!-- end of .read-more -->]]></description>
				<content:encoded><![CDATA[<p><a href="http://samharman.com/wp-content/uploads/2011/04/192719734_083df52314.jpeg"><img class="size-medium wp-image-189 alignright" title="Graduation Image" src="http://samharman.com/wp-content/uploads/2011/04/192719734_083df52314-199x300.jpg" alt="" width="199" height="300" /></a>As i&#8217;ll be graduating from university later on this year, this is just an informal post about some projects I want to pursue once I have a little bit more time in my life. Throughout education in general, i&#8217;ve always thrown myself 100% into anything i&#8217;m doing. At college, i was running the local radio station, in the orchestra, working as youth worker, and taking charge of all things technical for the dramatic society. At uni, i&#8217;ve been the student representative for the last two years, and taken charge of the design festival for my course at the end of the year. So all in all, i&#8217;m looking forward to having a bit of time to work on some projects of my own.</p>
<p>Firstly, i&#8217;d like to develop &#8216;<a title="Twinthesis : Twitter Powered Synthesis" href="http://samharman.com/2011/03/twinthesis-twitter-powered-synthesis/">Twinthesis</a>&#8216; further. This is a project i&#8217;m starting work on now, as i&#8217;m due to perform with it, at a creative music technology concert on the 14th May (More details on request!) I&#8217;d like to develop some form of graphics engine, to give the instrument a visualisation as well as a sonification process. Also, i&#8217;d like to implement emotion recognition, so the sound of the tweet differs depending on certain key words within the tweet. An iPhone / iPad app is the final vision for the product, maybe with location sensing, for collaborative performances.</p>
<p>Secondly, I would like to get myself up to speed with modern web development techniques. I am experienced in HTML / Flash development, but since college really haven&#8217;t had time, or the inclination to learn any of the new methods / languages / or techniques. I&#8217;d like to master CSS, and PhP development, as well as HTML 5. I think these would be very beneficial skills to have in the future.</p>
<p>Finally, I&#8217;ve started blogging for a new Tech blog. Going by the name of <a title="TechRant" href="http://techrant.co.uk/" target="_blank">TechRant</a>, it will be launched on May 1st of this year. Blogging and social media is always something i&#8217;ve been passionate about. I remember from the first internet connection i had (Dial-up speeds, oh yeah!) I was making my own websites, and sharing content. I think the resources that are available for sharing on the web today are vast, but are only the beginning. I think there&#8217;s a whole new wave of services on the horizon (streaming music, cloud based applications, etc). I intend to be blogging about it all, for many years to come. So make sure you check out <a title="TechRant" href="http://techrant.co.uk/" target="_blank">TechRant</a> on May 1st!</p>
<p>Well, that&#8217;s all for now really! Just an update on some of the projects i hope to embark on / complete after I graduate. This is just the beginning, watch this space&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://samharman.com/2011/04/future-plans/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
