<?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>Andygirvan.com &#187; tutorial</title>
	<atom:link href="http://andygirvan.com/tag/tutorial/feed/" rel="self" type="application/rss+xml" />
	<link>http://andygirvan.com</link>
	<description>London based Freelance Web &#38; iPhone Developer</description>
	<lastBuildDate>Mon, 09 Jan 2012 17:08:48 +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>Tools for building an iPhone app on a budget</title>
		<link>http://andygirvan.com/2011/06/tools-for-building-an-iphone-app-on-a-budget/</link>
		<comments>http://andygirvan.com/2011/06/tools-for-building-an-iphone-app-on-a-budget/#comments</comments>
		<pubDate>Fri, 10 Jun 2011 13:02:23 +0000</pubDate>
		<dc:creator>Andy G</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[advice]]></category>
		<category><![CDATA[cocos2d]]></category>
		<category><![CDATA[git]]></category>
		<category><![CDATA[github]]></category>
		<category><![CDATA[tutorial]]></category>

		<guid isPermaLink="false">http://andygirvan.com/?p=543</guid>
		<description><![CDATA[<p>Posted in <a href="http://andygirvan.com/tumblog/articles/">Articles</a></p>After going through the process of developing, releasing and maintaining Wicked Little Devil, I realised that I had collected a large amount of apps, websites and tutorials.]]></description>
			<content:encoded><![CDATA[<p>Posted in <a href="http://andygirvan.com/tumblog/articles/">Articles</a></p><p>After going through the process of developing, releasing and maintaining <a title="Game Release: Wicked Little Devil (iPhone)" href="http://andygirvan.com/2011/05/wicked-little-devil/">Wicked Little Devil</a>, I realised that I had collected a large amount of apps, websites and tutorials*. Here are some of the best I used:</p>
<p>*these are massively game-focused.</p>
<div class="line"><div></div></div>
<h2>Software</h2>
<h3><a href="http://cocos2d-iphone.org">Cocos2d for iPhone</a> (free)</h3>
<p>The <a href="http://www.cocos2d-iphone.org/" target="_blank">Cococs2d for iPhone</a> framework is well documented and has fantastic <a href="http://www.cocos2d-iphone.org/forum/" target="_blank">community support</a> if you get stuck. It is free to use and is fantastically flexible, demonstrated best by looking at the plethora of different types of <a href="http://www.cocos2d-iphone.org/games/" target="_blank">games that have been built using it</a>. It is also extremely optimized, for smooth app speeds.</p>
<p>As mentioned before, the community is the strongest aspect of this software &#8211; the forums are extremely polite and even allow you to advertise your completed games and get feedback and reviews.</p>
<h3><span style="font-size: 15px; font-weight: bold;"><a href="http://www.spritehelper.org/" target="_blank">SpriteHelper </a>($11.99 / £8.99) </span></h3>
<p><a href="http://www.spritehelper.org" target="_blank">SpriteHelper </a>is a Mac OS (sorry, Windows users!) app which allows you to edit sprite-sheets, textures and physics shapes. It does all the complicated, time intensive, work for you allowing you to focus on the more fun aspects of game development. It is compatible with Cocos2d-X, Cocos2d and Corona SDK. Sprite Helper also allows you to import your created sprite files into&#8230;</p>
<h3><a href="http://www.levelhelper.org/" target="_blank">LevelHelper </a>($16.99 / £9.99)</h3>
<p>The combination of <a href="http://www.levelhelper.org" target="_blank">LevelHelper </a>and <a href="http://www.spritehelper.org" target="_blank">SpriteHelper</a> means you can roll out a physics based game in a few lines of code. You can use sprite helper to import your sprites into a physics driven world simply by dragging and dropping. Once you&#8217;ve finished creating your level you can export it to a file that can be implemented into Cocos2d. There are some fantastic tutorial videos of SpriteHelper &amp; LevelHelper <a href="http://www.levelhelper.org/?page_id=338" target="_blank">available here</a>.</p>
<div class="line"><div></div></div>
<h2>Websites</h2>
<h3><a href="http://musicloops.com" target="_blank">Musicloops.com</a> (variable)</h3>
<p>A fantastic site for royalty-free music with full length previews. Most tracks are of a decent price and some are available in variants for a cheaper price.</p>
<h3><a href="http://graphicriver.net/" target="_blank">GraphicRiver.net</a> (variable)</h3>
<p>Similarly to the musicloops site, <a href="http://GraphicRiver.net" target="_blank">GraphicRiver</a> (part of the larger Envato suite of services) provides very cheap but well produced graphical assets. There are some <a href="http://graphicriver.net/searches?term=sprite&amp;type=files" target="_blank">fantastic sprite-sheets</a> available, which would be a treat if you threw them at SpriteHelper.</p>
<h3><a href="http://github.org" target="_blank">Github</a> (Free / Premium around £7-10 per month)</h3>
<p>Theres no point doing all the development work, only to drop your laptop, crash your hard drive or save over all the files. To make sure this doesn&#8217;t happen, use <a href="http://github" target="_blank">Github</a> ensure that your code is version controlled. The benefit of this, aside from backup, is that you can collaborate with other developers to bring your app close to completion. Free accounts mean you have to have public repositories, whereas premium allows you to make them private.</p>
<div class="line"><div></div></div>
<h2>Tutorials</h2>
<p>Here are a bunch of tutorials I found really helpful through my development of <a title="Game Release: Wicked Little Devil (iPhone)" href="http://andygirvan.com/2011/05/wicked-little-devil/">Wicked Little Devil</a></p>
<ul>
<li><a href="https://github.com/haqu/tweejump/" target="_blank">Public repository for TweeJump</a></li>
<li><a href="http://jpsarda.tumblr.com/post/6171831450/tiny-wings-hills-with-cocos2d" target="_blank">Tiny Wings hills with Cocos2d</a></li>
<li><a href="http://www.raywenderlich.com/1163/how-to-make-a-tile-based-game-with-cocos2d" target="_blank">How to make a tile based game with Cocos2d</a></li>
<li><a href="http://www.youtube.com/user/71squared" target="_blank">Playlist on YouTube for beginners guide to iPhone development</a></li>
<li><a href="http://www.cocos2d-iphone.org/wiki/doku.php/prog_guide:best_practices" target="_blank">Cocos2d best practices</a></li>
</ul>
<div class="line"><div></div></div>
<p>If you enjoyed this post, why not subscribe to <a href="http://andygirvan.com/feed/">my feed</a> or check me out on <a href="http://twitter.com/andygirvan">Twitter</a>.</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://andygirvan.com/2011/06/tools-for-building-an-iphone-app-on-a-budget/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Adding custom post types to WordPress 3</title>
		<link>http://andygirvan.com/2010/07/adding-custom-post-types-to-wordpress-3/</link>
		<comments>http://andygirvan.com/2010/07/adding-custom-post-types-to-wordpress-3/#comments</comments>
		<pubDate>Thu, 01 Jul 2010 12:47:22 +0000</pubDate>
		<dc:creator>Andy G</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[Tips]]></category>
		<category><![CDATA[Wordpress]]></category>
		<category><![CDATA[cms]]></category>
		<category><![CDATA[plugin]]></category>
		<category><![CDATA[tutorial]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://andygirvan.com/?p=69</guid>
		<description><![CDATA[<p>Posted in <a href="http://andygirvan.com/category/development/" title="Development">Development</a><a href="http://andygirvan.com/category/tips/" title="Tips">Tips</a><a href="http://andygirvan.com/category/development/wordpress-development/" title="Wordpress">Wordpress</a></p>Last night WordPress 3.0 was released to the general public. Having previewed it previously on this blog, nothing has really surprised me in terms of what has been updated – but it is still nice to go from release candidate to full version.]]></description>
			<content:encoded><![CDATA[<p>Posted in <a href="http://andygirvan.com/category/development/" title="Development">Development</a><a href="http://andygirvan.com/category/tips/" title="Tips">Tips</a><a href="http://andygirvan.com/category/development/wordpress-development/" title="Wordpress">Wordpress</a></p><p>In the latest version of the WordPress blogging platform, the developers have (<em>finally</em>) introduced <strong>Custom Post Types</strong>, allowing it to become more of a CMS without extensive use of plugins. Unfortunately, after installing the latest version, you&#8217;ll probably have noticed that there doesn&#8217;t immediatly appear to be any way to create your own. That&#8217;s because there is no UI to do this with &#8211; <em>doh</em>. The way to do this is to use the recently introducded method <strong>register_post_type().</strong><br />
</p>
<h2>The Example</h2>
<p>Lets say you are running a blog that will have podcasts as a content type every so often, but you don&#8217;t require a heavyweight plugin like <a href="http://wordpress.org/extend/plugins/podpress/" target="_blank">PodPress</a> &#8211; <strong>Custom Post Types </strong>are the perfect solution.<br />
</p>
<h2>The Code</h2>
<p>Take a look at the following code:<br />
<div class="box"><div class="icon icon-code left" style="background-image: url(http://andygirvan.com/wp-content/themes/fastblog/images/icons/code.png);">register_post_type(&#8216;podcast&#8217;, array(<br />
        &#8216;label&#8217; =&gt; __(&#8216;Podcasts&#8217;),<br />
        &#8216;singular_label&#8217; =&gt; __(&#8216;Podcast&#8217;),<br />
        &#8216;public&#8217; =&gt; true,<br />
        &#8216;show_ui&#8217; =&gt; true,<br />
        &#8216;hierarchical&#8217; =&gt; false,<br />
        &#8216;query_var&#8217; =&gt; false,<br />
        &#8216;supports&#8217; =&gt; array(&#8216;title&#8217;, &#8216;editor&#8217;, &#8216;author&#8217;)<br />
));</div></div><br />
Whack that straight in your theme&#8217;s <strong>functions.php </strong>file and voila &#8211; you&#8217;ll see the new Podcast custom post type right there listed underneath the Comments button. So what did this code do exactly?<br />
</p>
<h2>The Parameters</h2>
<p>As you can see, all we&#8217;re really doing is calling the new <strong>register_post_type()</strong> method and sending through some parameters:</p>
<ul>
<li><strong>Label </strong>is pretty straight forward, what do you want the custom post type to be displayed.</li>
<li><strong>Singular label </strong>is also intuitive, what do you call ONE of your post types.</li>
<li><strong>Public </strong>is a meta argument to determine whether your post type will be accessible via search, menu&#8217;s etc&#8230; (more about this on <a href="http://codex.wordpress.org/Function_Reference/register_post_type" target="_blank">wordpress docs</a>)</li>
<li><strong>Show UI </strong>- set to true to show the custom post type on the back end. False can be set to allow extra content to determine how the custom post type is displayed in the back end.</li>
<li><strong>Hierarchical </strong>is a parameter to determine whether each custom post can have or be a parent of another.</li>
<li><strong>Supports </strong>allows you to determine what content creation fields are used when creating or editing a custom post:
<ul>
<li> &#8216;title&#8217;</li>
<li> &#8216;editor&#8217; (content)</li>
<li> &#8216;author&#8217;</li>
<li> &#8216;thumbnail&#8217; (featured image) (current theme must also support  post-thumbnails)</li>
<li> &#8216;excerpt&#8217;</li>
<li> &#8216;trackbacks&#8217;</li>
<li> &#8216;custom-fields&#8217;</li>
<li> &#8216;comments&#8217; (also will see comment count balloon on edit  screen)</li>
<li> &#8216;revisions&#8217; (will store revisions)</li>
<li> &#8216;page-attributes&#8217; (template and menu order) (hierarchical must  be true)</li>
</ul>
</li>
</ul>
<p></p>
<h2>The Results</h2>
<p>Shown below: the new &#8220;Podcasts&#8221; custom post type. Now start filling that bad boy with some content!</p>
<p><a href="http://andygirvan.com/wp-content/uploads/2010/07/result.jpg"><img class="alignnone size-full wp-image-70" title="result" src="http://andygirvan.com/wp-content/uploads/2010/07/result.jpg" alt="" width="250" height="145" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://andygirvan.com/2010/07/adding-custom-post-types-to-wordpress-3/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
	</channel>
</rss>

