<?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/"
	
	xmlns:georss="http://www.georss.org/georss"
	xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#"
	>

<channel>
	<title>Richard Warrender</title>
	<atom:link href="https://richardwarrender.com/feed/" rel="self" type="application/rss+xml" />
	<link>https://richardwarrender.com/</link>
	<description>Creative Thinking, Clear Engineering</description>
	<lastBuildDate>Thu, 19 Feb 2026 20:06:12 +0000</lastBuildDate>
	<language>en-GB</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.2.9</generator>
<site xmlns="com-wordpress:feed-additions:1">219281189</site>	<item>
		<title>Use AI to Build or Be Built by AI</title>
		<link>https://richardwarrender.com/2026/02/use-ai-to-build-or-be-built-by-ai/</link>
					<comments>https://richardwarrender.com/2026/02/use-ai-to-build-or-be-built-by-ai/#respond</comments>
		
		<dc:creator><![CDATA[Richard Warrender]]></dc:creator>
		<pubDate>Thu, 19 Feb 2026 19:57:42 +0000</pubDate>
				<category><![CDATA[Artificial Intelligence]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Swift]]></category>
		<category><![CDATA[Thoughts]]></category>
		<category><![CDATA[AI]]></category>
		<category><![CDATA[electronics]]></category>
		<category><![CDATA[Music]]></category>
		<guid isPermaLink="false">https://richardwarrender.com/?p=22375</guid>

					<description><![CDATA[I’ve noticed there are two kinds of people using AI. You’ve got to work out which one you are as it will make big differences to your life in the long term. A couple of months ago I found myself standing on a stage, blinded by lights. I plugged in my new Takamine guitar and [&#8230;]]]></description>
		
					<wfw:commentRss>https://richardwarrender.com/2026/02/use-ai-to-build-or-be-built-by-ai/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">22375</post-id>	</item>
		<item>
		<title>The Curse of Writing with AI</title>
		<link>https://richardwarrender.com/2025/12/the-curse-of-writing-with-ai/</link>
					<comments>https://richardwarrender.com/2025/12/the-curse-of-writing-with-ai/#respond</comments>
		
		<dc:creator><![CDATA[Richard Warrender]]></dc:creator>
		<pubDate>Mon, 08 Dec 2025 01:34:17 +0000</pubDate>
				<category><![CDATA[Artificial Intelligence]]></category>
		<category><![CDATA[Thoughts]]></category>
		<category><![CDATA[AI]]></category>
		<category><![CDATA[ChatGPT]]></category>
		<category><![CDATA[Writing]]></category>
		<guid isPermaLink="false">https://richardwarrender.com/?p=22280</guid>

					<description><![CDATA[I used AI to speed up my writing, only to find it made everything harder. Endless suggestions and rewrites left me burnt out, teaching me an unexpected truth about creativity and the risks of relying too heavily on smart tools.]]></description>
		
					<wfw:commentRss>https://richardwarrender.com/2025/12/the-curse-of-writing-with-ai/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">22280</post-id>	</item>
		<item>
		<title>Seven Years later: What I Learned from Building an AI Chatbot &#8211; Part 1</title>
		<link>https://richardwarrender.com/2024/07/building-ai-chatbot-learnings-part-1/</link>
					<comments>https://richardwarrender.com/2024/07/building-ai-chatbot-learnings-part-1/#respond</comments>
		
		<dc:creator><![CDATA[Richard Warrender]]></dc:creator>
		<pubDate>Thu, 04 Jul 2024 17:24:38 +0000</pubDate>
				<category><![CDATA[Artificial Intelligence]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Swift]]></category>
		<category><![CDATA[Thoughts]]></category>
		<category><![CDATA[AI]]></category>
		<category><![CDATA[machine learning]]></category>
		<category><![CDATA[Natural Language Processing]]></category>
		<category><![CDATA[programming]]></category>
		<guid isPermaLink="false">https://richardwarrender.com/?p=21335</guid>

					<description><![CDATA[Seven&#160;years ago, I embarked on an ambitious attempt to build a rudimentary rule-based AI chatbot. Frustrated by the limitations of Apple’s Siri and motivated by exciting updates to Apple’s Natural Language Processing APIs, I dreamed of building something that could understand complex queries, construct mental models of objects, and seamlessly interact with users using just [&#8230;]]]></description>
		
					<wfw:commentRss>https://richardwarrender.com/2024/07/building-ai-chatbot-learnings-part-1/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">21335</post-id>	</item>
		<item>
		<title>AI Restoration, Ethics and an Unfinished Beatles Song</title>
		<link>https://richardwarrender.com/2023/11/ai-restoration-ethics-and-an-unfinished-beatles-song/</link>
					<comments>https://richardwarrender.com/2023/11/ai-restoration-ethics-and-an-unfinished-beatles-song/#respond</comments>
		
		<dc:creator><![CDATA[Richard Warrender]]></dc:creator>
		<pubDate>Mon, 06 Nov 2023 20:59:08 +0000</pubDate>
				<category><![CDATA[Artificial Intelligence]]></category>
		<category><![CDATA[Thoughts]]></category>
		<category><![CDATA[AI]]></category>
		<category><![CDATA[ethics]]></category>
		<category><![CDATA[The Beatles]]></category>
		<guid isPermaLink="false">https://richardwarrender.com/?p=16761</guid>

					<description><![CDATA[Imagine a song nearly 50 years in the making, waiting for technology to advance, to finally free a lost voice trapped inside a long-lost tape recording! John Lennon recorded some rough ideas for a hit song on tape for his friend, Paul McCartney but, tragically, he’d never get to record it properly as his life [&#8230;]]]></description>
		
					<wfw:commentRss>https://richardwarrender.com/2023/11/ai-restoration-ethics-and-an-unfinished-beatles-song/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">16761</post-id>	</item>
		<item>
		<title>Using ChatGPT to Chase Your Dreams and Goals</title>
		<link>https://richardwarrender.com/2023/08/using-chatgpt-to-chase-your-dreams-and-goals/</link>
					<comments>https://richardwarrender.com/2023/08/using-chatgpt-to-chase-your-dreams-and-goals/#comments</comments>
		
		<dc:creator><![CDATA[Richard Warrender]]></dc:creator>
		<pubDate>Thu, 10 Aug 2023 16:16:58 +0000</pubDate>
				<category><![CDATA[Artificial Intelligence]]></category>
		<category><![CDATA[Thoughts]]></category>
		<category><![CDATA[AI]]></category>
		<category><![CDATA[ChatGPT]]></category>
		<guid isPermaLink="false">https://richardwarrender.com/?p=16442</guid>

					<description><![CDATA[For a long time, I’ve been interested in continually fostering a growth mindset. It’s a powerful belief that you can change your situation in life; that you aren’t fixed in terms of what life gives you. Instead, you can change it, learn new skills, and make your life dramatically better! Compare this to a fixed [&#8230;]]]></description>
		
					<wfw:commentRss>https://richardwarrender.com/2023/08/using-chatgpt-to-chase-your-dreams-and-goals/feed/</wfw:commentRss>
			<slash:comments>2</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">16442</post-id>	</item>
		<item>
		<title>Vision Pro: How it converted me on VR in 5 minutes</title>
		<link>https://richardwarrender.com/2023/06/vision-pro-how-it-converted-me-on-vr-in-5-minutes/</link>
					<comments>https://richardwarrender.com/2023/06/vision-pro-how-it-converted-me-on-vr-in-5-minutes/#respond</comments>
		
		<dc:creator><![CDATA[Richard Warrender]]></dc:creator>
		<pubDate>Fri, 16 Jun 2023 15:33:46 +0000</pubDate>
				<category><![CDATA[Events]]></category>
		<category><![CDATA[Thoughts]]></category>
		<category><![CDATA[visionOS]]></category>
		<category><![CDATA[3D Camera]]></category>
		<category><![CDATA[AR]]></category>
		<category><![CDATA[NSLondon]]></category>
		<category><![CDATA[Tim Cook]]></category>
		<category><![CDATA[Vision Pro]]></category>
		<category><![CDATA[VR]]></category>
		<category><![CDATA[wwdc]]></category>
		<guid isPermaLink="false">https://richardwarrender.com/?p=16211</guid>

					<description><![CDATA[To me, VR and AR had always been somewhat of a cheesy gimmick. What would possibly have changed my mind in just 5 minutes? I found myself eagerly watching the big screen at NSLondon, an exclusive nomadic developer gathering with only 60 coveted spots free that often vanish within minutes of the waitlist opening. Did [&#8230;]]]></description>
		
					<wfw:commentRss>https://richardwarrender.com/2023/06/vision-pro-how-it-converted-me-on-vr-in-5-minutes/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">16211</post-id>	</item>
		<item>
		<title>Wrangling AI: How I Turned ChatGPT into My Creative Sidekick for Garden Design</title>
		<link>https://richardwarrender.com/2023/06/wrangling-ai-creative-chatgpt-sidekick-garden-design/</link>
					<comments>https://richardwarrender.com/2023/06/wrangling-ai-creative-chatgpt-sidekick-garden-design/#comments</comments>
		
		<dc:creator><![CDATA[Richard Warrender]]></dc:creator>
		<pubDate>Thu, 01 Jun 2023 21:19:52 +0000</pubDate>
				<category><![CDATA[Artificial Intelligence]]></category>
		<category><![CDATA[Thoughts]]></category>
		<category><![CDATA[AI]]></category>
		<category><![CDATA[AIContext]]></category>
		<category><![CDATA[ChatGPT]]></category>
		<category><![CDATA[Conversational AI]]></category>
		<category><![CDATA[Generative AI]]></category>
		<category><![CDATA[Motorcycle of the Mind]]></category>
		<category><![CDATA[Star Trek]]></category>
		<category><![CDATA[walkthrough]]></category>
		<guid isPermaLink="false">https://richardwarrender.com/?p=16015</guid>

					<description><![CDATA[“Are you crazy, nobody uses ChatGPT like that, you know that right?” Mark said as we sat in the pub. I took a sip of cold crisp beer, slightly puzzled. I thought about how I’d been using generative AI to change my life recently. How I had used it to build a zen-like focus-point around [&#8230;]]]></description>
		
					<wfw:commentRss>https://richardwarrender.com/2023/06/wrangling-ai-creative-chatgpt-sidekick-garden-design/feed/</wfw:commentRss>
			<slash:comments>3</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">16015</post-id>	</item>
		<item>
		<title>AI Thoughts: Computer Vision, ChatGPT and Captain Kirk</title>
		<link>https://richardwarrender.com/2023/05/ai-thoughts-computer-vision-chatgpt-and-captain-kirk/</link>
					<comments>https://richardwarrender.com/2023/05/ai-thoughts-computer-vision-chatgpt-and-captain-kirk/#respond</comments>
		
		<dc:creator><![CDATA[Richard Warrender]]></dc:creator>
		<pubDate>Tue, 23 May 2023 13:26:47 +0000</pubDate>
				<category><![CDATA[Artificial Intelligence]]></category>
		<category><![CDATA[Events]]></category>
		<category><![CDATA[Thoughts]]></category>
		<category><![CDATA[AI]]></category>
		<category><![CDATA[AIContext]]></category>
		<category><![CDATA[ChatGPT]]></category>
		<category><![CDATA[DataScience]]></category>
		<category><![CDATA[DeepLearning]]></category>
		<category><![CDATA[machine learning]]></category>
		<category><![CDATA[NaturalLanguageProcessing]]></category>
		<category><![CDATA[Star Trek]]></category>
		<guid isPermaLink="false">https://richardwarrender.com/?p=15891</guid>

					<description><![CDATA[A few weeks ago, I had the pleasure of attending a compelling lecture on computer vision at The Royal Society in London. Professor Andrew Zisserman showcased an innovative approach to building models, much like how a child learns &#8211; by cross-referencing visual, audio, and text data. However that is an oversimplified summary, the actual process [&#8230;]]]></description>
		
					<wfw:commentRss>https://richardwarrender.com/2023/05/ai-thoughts-computer-vision-chatgpt-and-captain-kirk/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">15891</post-id>	</item>
		<item>
		<title>Framed in an interview!</title>
		<link>https://richardwarrender.com/2023/03/framed-in-an-interview/</link>
					<comments>https://richardwarrender.com/2023/03/framed-in-an-interview/#respond</comments>
		
		<dc:creator><![CDATA[Richard Warrender]]></dc:creator>
		<pubDate>Mon, 20 Mar 2023 15:28:24 +0000</pubDate>
				<category><![CDATA[Cocoa]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Thoughts]]></category>
		<category><![CDATA[UIKit]]></category>
		<guid isPermaLink="false">https://richardwarrender.com/?p=15068</guid>

					<description><![CDATA[Recently I have been interviewing and it is eye opening to be the other side of the interview table/Zoom chat! Having been an iOS developer for 14+ years, I think there are things you learn very early on in your career that you never question or need to revisit it again and it can catch [&#8230;]]]></description>
		
					<wfw:commentRss>https://richardwarrender.com/2023/03/framed-in-an-interview/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">15068</post-id>	</item>
		<item>
		<title>New Mac App &#8211; Text Calculator is live</title>
		<link>https://richardwarrender.com/2021/01/mac-app-text-calculator-live/</link>
					<comments>https://richardwarrender.com/2021/01/mac-app-text-calculator-live/#respond</comments>
		
		<dc:creator><![CDATA[Richard Warrender]]></dc:creator>
		<pubDate>Sun, 10 Jan 2021 14:25:06 +0000</pubDate>
				<category><![CDATA[Apps]]></category>
		<category><![CDATA[Artificial Intelligence]]></category>
		<category><![CDATA[Mac OS X]]></category>
		<category><![CDATA[AI]]></category>
		<category><![CDATA[app]]></category>
		<category><![CDATA[calculations]]></category>
		<category><![CDATA[launch]]></category>
		<category><![CDATA[macOS]]></category>
		<category><![CDATA[maths]]></category>
		<category><![CDATA[sums]]></category>
		<category><![CDATA[text]]></category>
		<category><![CDATA[touch bar]]></category>
		<guid isPermaLink="false">https://richardwarrender.com/?p=5287</guid>

					<description><![CDATA[2020 was a hectic year and somehow I didn&#8217;t manage to post on my blog, however I was hard at work finishing some of my side projects. One such side project has now been approved and is live in the Mac App Store &#8211; Text Calculator. Do you ever find yourself typing sums and calculations [&#8230;]]]></description>
		
					<wfw:commentRss>https://richardwarrender.com/2021/01/mac-app-text-calculator-live/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">5287</post-id>	</item>
		<item>
		<title>A guide to learning how to 3D Print</title>
		<link>https://richardwarrender.com/2019/09/learning-how-to-3d-print/</link>
					<comments>https://richardwarrender.com/2019/09/learning-how-to-3d-print/#comments</comments>
		
		<dc:creator><![CDATA[Richard Warrender]]></dc:creator>
		<pubDate>Sun, 29 Sep 2019 15:19:22 +0000</pubDate>
				<category><![CDATA[3D Printing]]></category>
		<category><![CDATA[Hardware]]></category>
		<category><![CDATA[layer]]></category>
		<category><![CDATA[PETG]]></category>
		<category><![CDATA[pla]]></category>
		<category><![CDATA[Prusa]]></category>
		<guid isPermaLink="false">https://richardwarrender.com/?p=1296</guid>

					<description><![CDATA[One of the latest trends that does not show any sign of fizzling out yet is 3D printing. The technology isn&#8217;t mainstream enough for everyone to have a 3D printer but I&#8217;ve had many interested people when talking about the things I&#8217;ve printed. Surprisingly squirting melted plastic through a hot-end and getting a good print [&#8230;]]]></description>
		
					<wfw:commentRss>https://richardwarrender.com/2019/09/learning-how-to-3d-print/feed/</wfw:commentRss>
			<slash:comments>3</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">1296</post-id>	</item>
		<item>
		<title>Making a Psion Series 3a/c/mx USB power cable</title>
		<link>https://richardwarrender.com/2019/04/psion-series-3a-usb-power-cable/</link>
					<comments>https://richardwarrender.com/2019/04/psion-series-3a-usb-power-cable/#comments</comments>
		
		<dc:creator><![CDATA[Richard Warrender]]></dc:creator>
		<pubDate>Wed, 24 Apr 2019 18:21:01 +0000</pubDate>
				<category><![CDATA[Hardware]]></category>
		<category><![CDATA[Psion Palmtop]]></category>
		<category><![CDATA[cable]]></category>
		<category><![CDATA[power]]></category>
		<category><![CDATA[Psion]]></category>
		<category><![CDATA[Series 3a]]></category>
		<category><![CDATA[USB]]></category>
		<guid isPermaLink="false">https://richardwarrender.com/?p=1123</guid>

					<description><![CDATA[After my previous success recovering data from my old Psion Series 3a palmtop, I decided I needed to bring some of the cables into the 21st century. While batteries usually last weeks with the Psion, using it on my desk was frustrating as it powered down after 5 minutes to save battery power. Therefore I [&#8230;]]]></description>
		
					<wfw:commentRss>https://richardwarrender.com/2019/04/psion-series-3a-usb-power-cable/feed/</wfw:commentRss>
			<slash:comments>4</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">1123</post-id>	</item>
		<item>
		<title>Psion Fever &#8211; Breaching a digital data island</title>
		<link>https://richardwarrender.com/2019/03/psion-fever-breaching-a-digital-data-island/</link>
					<comments>https://richardwarrender.com/2019/03/psion-fever-breaching-a-digital-data-island/#comments</comments>
		
		<dc:creator><![CDATA[Richard Warrender]]></dc:creator>
		<pubDate>Sat, 23 Mar 2019 18:10:43 +0000</pubDate>
				<category><![CDATA[Hardware]]></category>
		<category><![CDATA[Psion Palmtop]]></category>
		<category><![CDATA[Psion]]></category>
		<category><![CDATA[RS232]]></category>
		<category><![CDATA[Serial]]></category>
		<category><![CDATA[Series 3a]]></category>
		<guid isPermaLink="false">https://richardwarrender.com/?p=1113</guid>

					<description><![CDATA[I recently decided to dig out my old Psion 3a palmtop from a storage box at home and I’ve been somewhat obsessed with it lately. When deciding to chuck something away, the tidy- living guru Marie Condo asks &#8220;Does it spark joy?&#8221;. So I looked at my 25-year-old obsolete Psion and thought yes&#8230; Yes it [&#8230;]]]></description>
		
					<wfw:commentRss>https://richardwarrender.com/2019/03/psion-fever-breaching-a-digital-data-island/feed/</wfw:commentRss>
			<slash:comments>6</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">1113</post-id>	</item>
		<item>
		<title>Can software influence your emotions?</title>
		<link>https://richardwarrender.com/2018/11/can-software-influence-your-emotions/</link>
					<comments>https://richardwarrender.com/2018/11/can-software-influence-your-emotions/#respond</comments>
		
		<dc:creator><![CDATA[Richard Warrender]]></dc:creator>
		<pubDate>Wed, 14 Nov 2018 09:24:45 +0000</pubDate>
				<category><![CDATA[Artificial Intelligence]]></category>
		<category><![CDATA[Thoughts]]></category>
		<guid isPermaLink="false">https://richardwarrender.com/?p=1091</guid>

					<description><![CDATA[By the end of this article I want to convince you that your emotions can be influenced by software. To do that I&#8217;d like you to imagine a progress bar. Yes, the humble loading bar or progress-done indicator as it is also known. They have many variations. Some even have fancy animations so they feel [&#8230;]]]></description>
		
					<wfw:commentRss>https://richardwarrender.com/2018/11/can-software-influence-your-emotions/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">1091</post-id>	</item>
		<item>
		<title>Time is an odd concept</title>
		<link>https://richardwarrender.com/2017/09/time-is-an-odd-concept/</link>
					<comments>https://richardwarrender.com/2017/09/time-is-an-odd-concept/#respond</comments>
		
		<dc:creator><![CDATA[Richard Warrender]]></dc:creator>
		<pubDate>Sun, 03 Sep 2017 19:09:53 +0000</pubDate>
				<category><![CDATA[Artificial Intelligence]]></category>
		<category><![CDATA[Thoughts]]></category>
		<category><![CDATA[AI]]></category>
		<category><![CDATA[TED]]></category>
		<guid isPermaLink="false">https://richardwarrender.com/?p=1075</guid>

					<description><![CDATA[Time is an odd concept. It&#8217;s suppose to be linear but sometimes you can watch the clock and 5 minutes seems like an hour. At other times you can look up from your desk after what barely seems like 5 minutes and find the night settling in. It&#8217;s been 8 months since my last blog [&#8230;]]]></description>
		
					<wfw:commentRss>https://richardwarrender.com/2017/09/time-is-an-odd-concept/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">1075</post-id>	</item>
		<item>
		<title>Machine Learning and AI with Prof. Brian Cox</title>
		<link>https://richardwarrender.com/2017/02/machine-learning-ai-talk/</link>
					<comments>https://richardwarrender.com/2017/02/machine-learning-ai-talk/#comments</comments>
		
		<dc:creator><![CDATA[Richard Warrender]]></dc:creator>
		<pubDate>Wed, 22 Feb 2017 23:10:22 +0000</pubDate>
				<category><![CDATA[Artificial Intelligence]]></category>
		<category><![CDATA[Events]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Brian Cox]]></category>
		<category><![CDATA[machine learning]]></category>
		<category><![CDATA[Panel Discussion]]></category>
		<category><![CDATA[Robotics]]></category>
		<category><![CDATA[The Royal Society]]></category>
		<guid isPermaLink="false">https://richardwarrender.com/?p=1066</guid>

					<description><![CDATA[Last month I attended an interesting discussion panel on machine learning and artificial intelligence held by The Royal Society. This was presented by the ever warm and friendly Professor Brian Cox, everyone&#8217;s favourite TV astronomer. The video is online now and very gentle on technical details so worth a watch even if you know nothing [&#8230;]]]></description>
		
					<wfw:commentRss>https://richardwarrender.com/2017/02/machine-learning-ai-talk/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">1066</post-id>	</item>
		<item>
		<title>5 essential tips for using blocks effectively</title>
		<link>https://richardwarrender.com/2016/12/5-essential-tips-for-using-blocks/</link>
					<comments>https://richardwarrender.com/2016/12/5-essential-tips-for-using-blocks/#respond</comments>
		
		<dc:creator><![CDATA[Richard Warrender]]></dc:creator>
		<pubDate>Sat, 31 Dec 2016 17:43:53 +0000</pubDate>
				<category><![CDATA[GCD]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[apple]]></category>
		<category><![CDATA[blocks]]></category>
		<category><![CDATA[C]]></category>
		<category><![CDATA[gcd]]></category>
		<category><![CDATA[iOS]]></category>
		<category><![CDATA[Mac OS X]]></category>
		<category><![CDATA[Objective-C]]></category>
		<guid isPermaLink="false">https://richardwarrender.com/?p=1025</guid>

					<description><![CDATA[Objective-C Blocks are very powerful but often under-used or badly abused! Continuing on from my previous post on how to declare a block, here is a quick-fire list of 5 experience-earned tips that every developer should know. 1. typedef a block If you find yourself using a particular block syntax a lot or perhaps you [&#8230;]]]></description>
		
					<wfw:commentRss>https://richardwarrender.com/2016/12/5-essential-tips-for-using-blocks/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">1025</post-id>	</item>
		<item>
		<title>How to declare a block</title>
		<link>https://richardwarrender.com/2016/10/how-to-declare-block/</link>
					<comments>https://richardwarrender.com/2016/10/how-to-declare-block/#respond</comments>
		
		<dc:creator><![CDATA[Richard Warrender]]></dc:creator>
		<pubDate>Mon, 10 Oct 2016 11:30:08 +0000</pubDate>
				<category><![CDATA[GCD]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[apple]]></category>
		<category><![CDATA[blocks]]></category>
		<category><![CDATA[C]]></category>
		<category><![CDATA[gcd]]></category>
		<category><![CDATA[iOS]]></category>
		<category><![CDATA[Mac OS X]]></category>
		<category><![CDATA[Objective-C]]></category>
		<guid isPermaLink="false">https://richardwarrender.com/?p=1020</guid>

					<description><![CDATA[Are you really sure on how to declare a block? How about all 4 variations? On iOS and macOS, it can be easy to forget Objective-C block syntax as it isn&#8217;t the most intuitive, especially now Swift is becoming the main language of new projects. Remembering the syntax is actually just a short click away [&#8230;]]]></description>
		
					<wfw:commentRss>https://richardwarrender.com/2016/10/how-to-declare-block/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">1020</post-id>	</item>
		<item>
		<title>Encrypt data using AES and 256-bit keys</title>
		<link>https://richardwarrender.com/2016/04/encrypt-data-using-aes-and-256-bit-keys/</link>
					<comments>https://richardwarrender.com/2016/04/encrypt-data-using-aes-and-256-bit-keys/#comments</comments>
		
		<dc:creator><![CDATA[Richard Warrender]]></dc:creator>
		<pubDate>Wed, 27 Apr 2016 19:06:29 +0000</pubDate>
				<category><![CDATA[Encryption]]></category>
		<category><![CDATA[Objective-C]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[AES]]></category>
		<category><![CDATA[AES-256]]></category>
		<category><![CDATA[C]]></category>
		<category><![CDATA[CommonCrypto]]></category>
		<category><![CDATA[encryption]]></category>
		<category><![CDATA[iOS]]></category>
		<category><![CDATA[Mac OS X]]></category>
		<category><![CDATA[openssl]]></category>
		<category><![CDATA[programming]]></category>
		<guid isPermaLink="false">https://richardwarrender.com/?p=936</guid>

					<description><![CDATA[AES stands for Advanced Encryption Standard and is an industry-standard algorithm for encrypting data symmetrically which even the US government has approved for SECRET documents. If you don&#8217;t know what symmetrical encryption is, it means that you use the same key or password to encrypt the data as you do to unencrypt it. So you [&#8230;]]]></description>
		
					<wfw:commentRss>https://richardwarrender.com/2016/04/encrypt-data-using-aes-and-256-bit-keys/feed/</wfw:commentRss>
			<slash:comments>14</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">936</post-id>	</item>
		<item>
		<title>Quick way of cleaning HTML for iOS apps</title>
		<link>https://richardwarrender.com/2016/04/quick-way-of-cleaning-html-ios/</link>
					<comments>https://richardwarrender.com/2016/04/quick-way-of-cleaning-html-ios/#respond</comments>
		
		<dc:creator><![CDATA[Richard Warrender]]></dc:creator>
		<pubDate>Tue, 05 Apr 2016 19:59:15 +0000</pubDate>
				<category><![CDATA[Objective-C]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[C]]></category>
		<category><![CDATA[Cocoa]]></category>
		<category><![CDATA[Cocoa Touch]]></category>
		<category><![CDATA[DOM]]></category>
		<category><![CDATA[HTML]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[web]]></category>
		<guid isPermaLink="false">https://richardwarrender.com/?p=918</guid>

					<description><![CDATA[For some reason HTML is always dirty, it&#8217;s usually full of Analytics tags, JavaScript or contains nested HTML tags. This is usually fine for displaying in browsers but at some point an iOS app will need to display HTML content and usually when it does, you need it to display clean HTML or only a [&#8230;]]]></description>
		
					<wfw:commentRss>https://richardwarrender.com/2016/04/quick-way-of-cleaning-html-ios/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">918</post-id>	</item>
		<item>
		<title>How to build a Ghostbuster Proton Pack</title>
		<link>https://richardwarrender.com/2016/02/how-to-build-a-ghostbuster-proton-pack/</link>
					<comments>https://richardwarrender.com/2016/02/how-to-build-a-ghostbuster-proton-pack/#respond</comments>
		
		<dc:creator><![CDATA[Richard Warrender]]></dc:creator>
		<pubDate>Wed, 10 Feb 2016 18:51:06 +0000</pubDate>
				<category><![CDATA[Hardware]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[arduino]]></category>
		<category><![CDATA[C]]></category>
		<category><![CDATA[electronics]]></category>
		<category><![CDATA[led]]></category>
		<category><![CDATA[programming]]></category>
		<guid isPermaLink="false">https://richardwarrender.com/?p=863</guid>

					<description><![CDATA[I built a Ghostbuster proton pack for a fancy dress party recently. It took about 3 or 4 evenings to build and involved Arduinos, lots of hot glue and over 92 LEDs! This is the build log.]]></description>
		
					<wfw:commentRss>https://richardwarrender.com/2016/02/how-to-build-a-ghostbuster-proton-pack/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">863</post-id>	</item>
		<item>
		<title>Beautifully-formatted Times and Numbers</title>
		<link>https://richardwarrender.com/2015/06/beautifully-formatted-times-and-numbers/</link>
					<comments>https://richardwarrender.com/2015/06/beautifully-formatted-times-and-numbers/#respond</comments>
		
		<dc:creator><![CDATA[Richard Warrender]]></dc:creator>
		<pubDate>Tue, 16 Jun 2015 19:22:21 +0000</pubDate>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[Swift]]></category>
		<category><![CDATA[UIKit]]></category>
		<category><![CDATA[CoreText]]></category>
		<category><![CDATA[fonts]]></category>
		<category><![CDATA[ipad]]></category>
		<category><![CDATA[iphone]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[uikit]]></category>
		<guid isPermaLink="false">https://richardwarrender.com/?p=838</guid>

					<description><![CDATA[Not all font instances are created equally! In iOS text is mostly displayed using proportional fonts, meaning each character width is trimmed and varies depending on each character. This makes the text easier to read and feel more natural and you&#8217;ll notice this on characters such as &#8216;i&#8217; which will often be the thinnest character [&#8230;]]]></description>
		
					<wfw:commentRss>https://richardwarrender.com/2015/06/beautifully-formatted-times-and-numbers/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">838</post-id>	</item>
		<item>
		<title>Eve of Apple&#8217;s World Wide Developer Conference 2015</title>
		<link>https://richardwarrender.com/2015/06/eve-of-apple-wwdc-2015/</link>
					<comments>https://richardwarrender.com/2015/06/eve-of-apple-wwdc-2015/#respond</comments>
		
		<dc:creator><![CDATA[Richard Warrender]]></dc:creator>
		<pubDate>Sun, 07 Jun 2015 17:46:43 +0000</pubDate>
				<category><![CDATA[Events]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[apple]]></category>
		<category><![CDATA[wwdc]]></category>
		<guid isPermaLink="false">http://richardwarrender.com/?p=814</guid>

					<description><![CDATA[WWDC 2015 has come round again and I&#8217;m lucky enough to be in San Francisco attending again! So what&#8217;s the tradition? Well I&#8217;ve just scoffed down a huge pile of pancakes down at Mel&#8217;s Dinner and just picked up my badge and legendary WWDC &#8217;15&#8217; jacket. You know the&#160;developers are in town as these jackets [&#8230;]]]></description>
		
					<wfw:commentRss>https://richardwarrender.com/2015/06/eve-of-apple-wwdc-2015/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">814</post-id>	</item>
		<item>
		<title>When an App is a victim of it&#8217;s own success</title>
		<link>https://richardwarrender.com/2015/01/windsock-app-future/</link>
					<comments>https://richardwarrender.com/2015/01/windsock-app-future/#respond</comments>
		
		<dc:creator><![CDATA[Richard Warrender]]></dc:creator>
		<pubDate>Thu, 29 Jan 2015 18:56:57 +0000</pubDate>
				<category><![CDATA[Apps]]></category>
		<category><![CDATA[iPhone]]></category>
		<guid isPermaLink="false">http://richardwarrender.com/?p=795</guid>

					<description><![CDATA[Firstly Windsock has been in the store for nearly three long years and was originally developed to work on iOS 5 which is an incredibly long time for an app! I worked hard building it so that I could save time finding the best location to fly my model plane from after work and originally [&#8230;]]]></description>
		
					<wfw:commentRss>https://richardwarrender.com/2015/01/windsock-app-future/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">795</post-id>	</item>
		<item>
		<title>Facebook&#8217;s London Mobile Forum 2.0</title>
		<link>https://richardwarrender.com/2014/04/london-mobile-forum-2-0/</link>
					<comments>https://richardwarrender.com/2014/04/london-mobile-forum-2-0/#respond</comments>
		
		<dc:creator><![CDATA[Richard Warrender]]></dc:creator>
		<pubDate>Mon, 14 Apr 2014 20:38:47 +0000</pubDate>
				<category><![CDATA[Core Animation]]></category>
		<category><![CDATA[Events]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[UIKit]]></category>
		<category><![CDATA[animation]]></category>
		<category><![CDATA[event]]></category>
		<category><![CDATA[facebook]]></category>
		<category><![CDATA[interactions]]></category>
		<category><![CDATA[iOS 7]]></category>
		<category><![CDATA[London]]></category>
		<category><![CDATA[Objective-C]]></category>
		<category><![CDATA[physics]]></category>
		<guid isPermaLink="false">http://richardwarrender.com/?p=758</guid>

					<description><![CDATA[Last week I was fortunate to attend Facebook&#8217;s London Mobile Forum 2.0. This gathering of top London mobile developers and designers was a great chance to swap ideas and listen to a number of talks by Facebook, Big Nerd Ranch, Yammer, Bloom and Mozilla to name a few. The event was tiny with only 60 [&#8230;]]]></description>
		
					<wfw:commentRss>https://richardwarrender.com/2014/04/london-mobile-forum-2-0/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">758</post-id>	</item>
		<item>
		<title>Windsock 2.0 App Walkthrough</title>
		<link>https://richardwarrender.com/2014/02/windsock-2-0-app-walkthrough/</link>
					<comments>https://richardwarrender.com/2014/02/windsock-2-0-app-walkthrough/#respond</comments>
		
		<dc:creator><![CDATA[Richard Warrender]]></dc:creator>
		<pubDate>Sat, 01 Feb 2014 15:54:35 +0000</pubDate>
				<category><![CDATA[Apps]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[app store]]></category>
		<category><![CDATA[apple]]></category>
		<category><![CDATA[iOS 7]]></category>
		<category><![CDATA[iphone]]></category>
		<category><![CDATA[walkthrough]]></category>
		<category><![CDATA[windsock]]></category>
		<guid isPermaLink="false">http://richardwarrender.com/?p=699</guid>

					<description><![CDATA[Windsock is an advanced weather app for fliers of RC planes, helicopters and drones. I&#8217;ve been busy on bug fixes with Air Drop and some new features such as adding in magnetic declination info for sites. Here&#8217;s a app walkthrough of Windsock 2.0.1. Windsock is available to download from the App Store now. Let me [&#8230;]]]></description>
		
					<wfw:commentRss>https://richardwarrender.com/2014/02/windsock-2-0-app-walkthrough/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">699</post-id>	</item>
		<item>
		<title>Advanced Weather App for RC Planes &#8211; Windsock 2.0</title>
		<link>https://richardwarrender.com/2014/01/advanced-weather-app-rc-planes/</link>
					<comments>https://richardwarrender.com/2014/01/advanced-weather-app-rc-planes/#comments</comments>
		
		<dc:creator><![CDATA[Richard Warrender]]></dc:creator>
		<pubDate>Wed, 22 Jan 2014 19:49:18 +0000</pubDate>
				<category><![CDATA[Apps]]></category>
		<category><![CDATA[iPhone]]></category>
		<guid isPermaLink="false">http://richardwarrender.com/?p=665</guid>

					<description><![CDATA[My app Windsock 2.0 has hit the App Store. It&#8217;s an advanced weather app for flyers of RC planes, helicopters and drones, optimised for iOS 7 with a slick new minimal design. Windsock solves that problem of having a few flying sites you like to fly at and not knowing what the weather will be just [&#8230;]]]></description>
		
					<wfw:commentRss>https://richardwarrender.com/2014/01/advanced-weather-app-rc-planes/feed/</wfw:commentRss>
			<slash:comments>2</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">665</post-id>	</item>
		<item>
		<title>5 Time-saving Objective-C tips every developer should know</title>
		<link>https://richardwarrender.com/2013/03/5-time-saving-objective-c-tips/</link>
					<comments>https://richardwarrender.com/2013/03/5-time-saving-objective-c-tips/#comments</comments>
		
		<dc:creator><![CDATA[Richard Warrender]]></dc:creator>
		<pubDate>Tue, 19 Mar 2013 18:18:03 +0000</pubDate>
				<category><![CDATA[Cocoa]]></category>
		<category><![CDATA[Objective-C]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[UIKit]]></category>
		<category><![CDATA[consts]]></category>
		<category><![CDATA[enums]]></category>
		<category><![CDATA[git]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[tips]]></category>
		<guid isPermaLink="false">http://richardwarrender.com/?p=623</guid>

					<description><![CDATA[Here&#8217;s a quick fire list of 5 time-saving Objective-C tips that every developer should know. Perfect for making time for that extra coffee! 1. Enum shorthand Enums at their simplest are labelled sets of integers. Where an inexperienced programmer might use a number to represent the download state of an image lets say, e.g. 0 [&#8230;]]]></description>
		
					<wfw:commentRss>https://richardwarrender.com/2013/03/5-time-saving-objective-c-tips/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">623</post-id>	</item>
		<item>
		<title>Bluetooth 4.0 LE &#8211; The Bluetooth Renaissance</title>
		<link>https://richardwarrender.com/2013/02/bluetooth-4-0-le-renaissance/</link>
					<comments>https://richardwarrender.com/2013/02/bluetooth-4-0-le-renaissance/#respond</comments>
		
		<dc:creator><![CDATA[Richard Warrender]]></dc:creator>
		<pubDate>Mon, 11 Feb 2013 14:50:35 +0000</pubDate>
				<category><![CDATA[Hardware]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[apple]]></category>
		<category><![CDATA[BLE]]></category>
		<category><![CDATA[Bluetooth]]></category>
		<category><![CDATA[Bluetooth 4.0 LE]]></category>
		<category><![CDATA[ipad]]></category>
		<category><![CDATA[iphone]]></category>
		<guid isPermaLink="false">http://richardwarrender.com/?p=591</guid>

					<description><![CDATA[Sometimes a technology comes along that seems like such a good idea you wonder why it was never created in the beginning. For me, Bluetooth was one of those technologies. It&#8217;s been around since the late nineties and was incredibly powerful, especially for PDAs and phones but has always been overshadowed by the complimentary WiFi [&#8230;]]]></description>
		
					<wfw:commentRss>https://richardwarrender.com/2013/02/bluetooth-4-0-le-renaissance/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">591</post-id>	</item>
		<item>
		<title>Retro Yeti Escape Game for iPhone and iPod Touch</title>
		<link>https://richardwarrender.com/2012/12/retro-yeti-escape-game-for-ios/</link>
					<comments>https://richardwarrender.com/2012/12/retro-yeti-escape-game-for-ios/#respond</comments>
		
		<dc:creator><![CDATA[Richard Warrender]]></dc:creator>
		<pubDate>Fri, 14 Dec 2012 17:52:08 +0000</pubDate>
				<category><![CDATA[Apps]]></category>
		<category><![CDATA[Games]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[8bit]]></category>
		<category><![CDATA[cocos2d]]></category>
		<category><![CDATA[games]]></category>
		<category><![CDATA[iOS]]></category>
		<category><![CDATA[iphone]]></category>
		<category><![CDATA[retro]]></category>
		<category><![CDATA[Vivid Reflection]]></category>
		<category><![CDATA[Yeti Escape]]></category>
		<guid isPermaLink="false">http://richardwarrender.com/?p=573</guid>

					<description><![CDATA[I&#8217;ve just finished developing Yeti Escape for Vivid Reflection, my iOS development company. Yeti Escape is a new Christmas-themed retro game for iOS. The story: Present-hungry yetis have escaped from the North Pole and threaten to ruin Christmas. Pixel Santa must save the day by throwing spare presents at them. Can he still make his [&#8230;]]]></description>
		
					<wfw:commentRss>https://richardwarrender.com/2012/12/retro-yeti-escape-game-for-ios/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">573</post-id>	</item>
		<item>
		<title>Apple WWDC 2012 Session Videos Live</title>
		<link>https://richardwarrender.com/2012/06/apple-wwdc-2012/</link>
					<comments>https://richardwarrender.com/2012/06/apple-wwdc-2012/#respond</comments>
		
		<dc:creator><![CDATA[Richard Warrender]]></dc:creator>
		<pubDate>Wed, 20 Jun 2012 12:11:49 +0000</pubDate>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[apple]]></category>
		<category><![CDATA[iOS 6]]></category>
		<category><![CDATA[ipad]]></category>
		<category><![CDATA[iphone]]></category>
		<category><![CDATA[osx]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[wwdc]]></category>
		<guid isPermaLink="false">http://richardwarrender.com/?p=518</guid>

					<description><![CDATA[This is a heads up for anyone who does iPad or iPhone development; Apple have made available their awesome WWDC 2012 sessions videos to developers! iOS 6 features such as Passkit, maps and Facebook looks interesting as does the new Game Center functionality such as &#8220;Challenges&#8221; along with a whole host of new APIs and [&#8230;]]]></description>
		
					<wfw:commentRss>https://richardwarrender.com/2012/06/apple-wwdc-2012/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">518</post-id>	</item>
		<item>
		<title>iPhone App: Windsock takes off</title>
		<link>https://richardwarrender.com/2012/05/iphone-app-windsock-takes-off/</link>
					<comments>https://richardwarrender.com/2012/05/iphone-app-windsock-takes-off/#respond</comments>
		
		<dc:creator><![CDATA[Richard Warrender]]></dc:creator>
		<pubDate>Mon, 28 May 2012 23:34:02 +0000</pubDate>
				<category><![CDATA[Apps]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[app store]]></category>
		<category><![CDATA[icloud]]></category>
		<category><![CDATA[iphone]]></category>
		<guid isPermaLink="false">http://richardwarrender.com/?p=461</guid>

					<description><![CDATA[Windsock, my latest iPhone app is live in the App Store. It&#8217;s a clean, easy-to-use app that lets you check the wind forecast remotely and up to 4 days in advance. I built it because a hobby of mine is remote control plane flying but often there are days when the wind is too strong [&#8230;]]]></description>
		
					<wfw:commentRss>https://richardwarrender.com/2012/05/iphone-app-windsock-takes-off/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">461</post-id>	</item>
		<item>
		<title>&#8216;Cut the Rope&#8217; HTML5 JavaScript Preloader</title>
		<link>https://richardwarrender.com/2012/02/cut-the-rope-html5-javascript-preloader/</link>
					<comments>https://richardwarrender.com/2012/02/cut-the-rope-html5-javascript-preloader/#comments</comments>
		
		<dc:creator><![CDATA[Richard Warrender]]></dc:creator>
		<pubDate>Wed, 29 Feb 2012 16:35:32 +0000</pubDate>
				<category><![CDATA[Apps]]></category>
		<category><![CDATA[HTML5]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[canvas]]></category>
		<category><![CDATA[Cut the Rope]]></category>
		<category><![CDATA[games]]></category>
		<category><![CDATA[github]]></category>
		<category><![CDATA[graphics]]></category>
		<category><![CDATA[html5]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[MIT]]></category>
		<category><![CDATA[Pixel Lab]]></category>
		<category><![CDATA[pre loaders]]></category>
		<category><![CDATA[sprites]]></category>
		<category><![CDATA[web]]></category>
		<category><![CDATA[web app]]></category>
		<guid isPermaLink="false">http://richardwarrender.com/?p=433</guid>

					<description><![CDATA[Developers from the popular iPhone game Cut the Rope and a crack team of HTML5 gurus from PixelLab, have developed an awesome JavaScript version that runs inside most modern web browsers using JavaScript and a number of powerful HTML5 features such as canvas and media APIs. You can find out how they did it from [&#8230;]]]></description>
		
					<wfw:commentRss>https://richardwarrender.com/2012/02/cut-the-rope-html5-javascript-preloader/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">433</post-id>	</item>
		<item>
		<title>How to call a block after a delay</title>
		<link>https://richardwarrender.com/2012/02/how-to-call-block-after-delay/</link>
					<comments>https://richardwarrender.com/2012/02/how-to-call-block-after-delay/#comments</comments>
		
		<dc:creator><![CDATA[Richard Warrender]]></dc:creator>
		<pubDate>Wed, 22 Feb 2012 22:00:46 +0000</pubDate>
				<category><![CDATA[GCD]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[apple]]></category>
		<category><![CDATA[blocks]]></category>
		<category><![CDATA[C]]></category>
		<category><![CDATA[gcd]]></category>
		<category><![CDATA[ipad]]></category>
		<category><![CDATA[iphone]]></category>
		<category><![CDATA[Objective-C]]></category>
		<category><![CDATA[osx]]></category>
		<guid isPermaLink="false">http://richardwarrender.com/?p=412</guid>

					<description><![CDATA[On iOS and on OS X you sometimes need the User Interface to update after a short delay. The old way of doing it was calling the performSelector:withObject:afterDelay: selector on any NSObject subclass but that requires defining a new method in your class and you can only pass one object as a parameter. Instead, you [&#8230;]]]></description>
		
					<wfw:commentRss>https://richardwarrender.com/2012/02/how-to-call-block-after-delay/feed/</wfw:commentRss>
			<slash:comments>5</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">412</post-id>	</item>
		<item>
		<title>Core Animation stops animation on app relaunch</title>
		<link>https://richardwarrender.com/2011/09/core-animation-stops-ani-on-app-relaunch/</link>
					<comments>https://richardwarrender.com/2011/09/core-animation-stops-ani-on-app-relaunch/#comments</comments>
		
		<dc:creator><![CDATA[Richard Warrender]]></dc:creator>
		<pubDate>Mon, 19 Sep 2011 12:31:44 +0000</pubDate>
				<category><![CDATA[Core Animation]]></category>
		<category><![CDATA[Objective-C]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Swift]]></category>
		<category><![CDATA[UIKit]]></category>
		<category><![CDATA[Cocoa Touch]]></category>
		<category><![CDATA[Core Animaton]]></category>
		<category><![CDATA[iphone]]></category>
		<category><![CDATA[multitasking]]></category>
		<category><![CDATA[programming]]></category>
		<guid isPermaLink="false">http://richardwarrender.com/?p=385</guid>

					<description><![CDATA[On one of my projects I discovered a bug in a never-ending animation I had set up. Whenever the app was suspended (such as when you multitask and open another app), on relaunching the app the animation was frozen. After some investigating, I discovered that with Core Animation you need to set a flag on [&#8230;]]]></description>
		
					<wfw:commentRss>https://richardwarrender.com/2011/09/core-animation-stops-ani-on-app-relaunch/feed/</wfw:commentRss>
			<slash:comments>3</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">385</post-id>	</item>
		<item>
		<title>Reverting your library from a beta of iTunes</title>
		<link>https://richardwarrender.com/2011/09/reverting-itunes-beta-library/</link>
					<comments>https://richardwarrender.com/2011/09/reverting-itunes-beta-library/#comments</comments>
		
		<dc:creator><![CDATA[Richard Warrender]]></dc:creator>
		<pubDate>Wed, 14 Sep 2011 18:58:23 +0000</pubDate>
				<category><![CDATA[Apps]]></category>
		<category><![CDATA[Mac OS X]]></category>
		<category><![CDATA[apple]]></category>
		<category><![CDATA[ipad]]></category>
		<category><![CDATA[iphone]]></category>
		<category><![CDATA[itunes]]></category>
		<category><![CDATA[troubleshoot]]></category>
		<guid isPermaLink="false">http://richardwarrender.com/?p=377</guid>

					<description><![CDATA[As an iPhone and iPad developer, Apple often present you with beta versions to install which sometimes require you to also install a beta version of iTunes. Of course the contents of these beta versions are under strict non-disclosure agreements but the process of rolling back isn&#8217;t so I&#8217;ll quickly explain how to do it&#8230; [&#8230;]]]></description>
		
					<wfw:commentRss>https://richardwarrender.com/2011/09/reverting-itunes-beta-library/feed/</wfw:commentRss>
			<slash:comments>2</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">377</post-id>	</item>
		<item>
		<title>WWDC Update: 5 key points for iPhone apps</title>
		<link>https://richardwarrender.com/2011/07/wwdc-update-5-key-points-for-iphone-apps/</link>
					<comments>https://richardwarrender.com/2011/07/wwdc-update-5-key-points-for-iphone-apps/#respond</comments>
		
		<dc:creator><![CDATA[Richard Warrender]]></dc:creator>
		<pubDate>Tue, 05 Jul 2011 17:22:21 +0000</pubDate>
				<category><![CDATA[Apps]]></category>
		<category><![CDATA[Cocoa]]></category>
		<category><![CDATA[Events]]></category>
		<category><![CDATA[iPad]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[Mac OS X]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[apple]]></category>
		<category><![CDATA[Cocoa Touch]]></category>
		<category><![CDATA[gamecenter]]></category>
		<category><![CDATA[icloud]]></category>
		<category><![CDATA[ios5]]></category>
		<category><![CDATA[iphone]]></category>
		<category><![CDATA[lion]]></category>
		<category><![CDATA[notifications]]></category>
		<category><![CDATA[osx]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[twitter]]></category>
		<guid isPermaLink="false">http://richardwarrender.com/?p=364</guid>

					<description><![CDATA[It’s now been just over 3 weeks since the torrent of information unleashed at Apple’s World Wide Developer Conference refreshingly drenched the brains of designers, developers and engineers. I’ve resisted blogging about the public announcements to fully let the impact soak in and gage everyone’s reactions but now feels like a good time to talk [&#8230;]]]></description>
		
					<wfw:commentRss>https://richardwarrender.com/2011/07/wwdc-update-5-key-points-for-iphone-apps/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">364</post-id>	</item>
		<item>
		<title>The eve of Apple&#8217;s World Wide Developer Conference 2011</title>
		<link>https://richardwarrender.com/2011/06/the-eve-of-apples-world-wide-developer-conference-2011/</link>
					<comments>https://richardwarrender.com/2011/06/the-eve-of-apples-world-wide-developer-conference-2011/#respond</comments>
		
		<dc:creator><![CDATA[Richard Warrender]]></dc:creator>
		<pubDate>Mon, 06 Jun 2011 04:02:23 +0000</pubDate>
				<category><![CDATA[Events]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[apple]]></category>
		<category><![CDATA[wwdc]]></category>
		<guid isPermaLink="false">http://richardwarrender.com/?p=356</guid>

					<description><![CDATA[I&#8217;m writing this in a hotel room from a block adjacent from the Moscone West Conference center, here in San Francisco, CA. The atmosphere is incredibly lively and for many developers it&#8217;s as close to the developer-version of Christmas you can get. Ha ok I know that sounds a bit over the top but there [&#8230;]]]></description>
		
					<wfw:commentRss>https://richardwarrender.com/2011/06/the-eve-of-apples-world-wide-developer-conference-2011/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">356</post-id>	</item>
		<item>
		<title>Calculating UNIX file permissions</title>
		<link>https://richardwarrender.com/2011/06/calculating-unix-file-permissions/</link>
					<comments>https://richardwarrender.com/2011/06/calculating-unix-file-permissions/#comments</comments>
		
		<dc:creator><![CDATA[Richard Warrender]]></dc:creator>
		<pubDate>Fri, 03 Jun 2011 00:45:23 +0000</pubDate>
				<category><![CDATA[Apps]]></category>
		<category><![CDATA[Cocoa]]></category>
		<category><![CDATA[Mac OS X]]></category>
		<category><![CDATA[Objective-C]]></category>
		<category><![CDATA[bitwise]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[osx]]></category>
		<category><![CDATA[unix]]></category>
		<guid isPermaLink="false">http://richardwarrender.com/?p=340</guid>

					<description><![CDATA[A few years ago I wrote a simple but handy Mac app that calculates unix file permissions using a matrix of check boxes. I wrote it because I wanted to better understand how those octal values get calculated and to expand my experience of writing Mac apps. I was also learning some crazy assembly code [&#8230;]]]></description>
		
					<wfw:commentRss>https://richardwarrender.com/2011/06/calculating-unix-file-permissions/feed/</wfw:commentRss>
			<slash:comments>3</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">340</post-id>	</item>
		<item>
		<title>Jet-fuelled HTML5 in 3D</title>
		<link>https://richardwarrender.com/2011/05/jet-fuelled-html5-in-3d/</link>
					<comments>https://richardwarrender.com/2011/05/jet-fuelled-html5-in-3d/#respond</comments>
		
		<dc:creator><![CDATA[Richard Warrender]]></dc:creator>
		<pubDate>Tue, 24 May 2011 18:04:40 +0000</pubDate>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[Web]]></category>
		<guid isPermaLink="false">http://richardwarrender.com/?p=319</guid>

					<description><![CDATA[Using the power of WebGL and some JavaScript Chris Milk, the US music video producer and some smart friends of his at Google have created some impressive visuals that play in real-time within a web browser without needing any plugins. These stunning graphics use the next round of HTML5 features that are sweeping across browsers [&#8230;]]]></description>
		
					<wfw:commentRss>https://richardwarrender.com/2011/05/jet-fuelled-html5-in-3d/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">319</post-id>	</item>
		<item>
		<title>Impressive JavaScript PC Emulator</title>
		<link>https://richardwarrender.com/2011/05/impressive-js-pc-emulator/</link>
					<comments>https://richardwarrender.com/2011/05/impressive-js-pc-emulator/#respond</comments>
		
		<dc:creator><![CDATA[Richard Warrender]]></dc:creator>
		<pubDate>Fri, 20 May 2011 08:25:14 +0000</pubDate>
				<category><![CDATA[HTML5]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Unix]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[busybox]]></category>
		<category><![CDATA[html5]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[typed arrays]]></category>
		<category><![CDATA[webgl]]></category>
		<guid isPermaLink="false">http://richardwarrender.com/?p=310</guid>

					<description><![CDATA[Fabrice Bellard has written an impressive PC emulator that actually emulates a PC with a 32 bit x86 compatible CPU. This is some really imaginative use of pure JavaScript which I&#8217;m sure no-one would have every dreamed of as it allows you to run a virtual instance of Linux inside a browser window! It currently [&#8230;]]]></description>
		
					<wfw:commentRss>https://richardwarrender.com/2011/05/impressive-js-pc-emulator/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">310</post-id>	</item>
		<item>
		<title>Export Symphony CMS Blueprint metadata</title>
		<link>https://richardwarrender.com/2011/03/symphony-blueprint-metadata/</link>
					<comments>https://richardwarrender.com/2011/03/symphony-blueprint-metadata/#respond</comments>
		
		<dc:creator><![CDATA[Richard Warrender]]></dc:creator>
		<pubDate>Wed, 23 Mar 2011 19:16:42 +0000</pubDate>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[pages]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[sections]]></category>
		<category><![CDATA[symphony]]></category>
		<guid isPermaLink="false">http://richardwarrender.com/?p=298</guid>

					<description><![CDATA[Symphony is a powerful CMS system that is used by many of the world&#8217;s most recognisable brands. It&#8217;s a great system that lets the developer focus on XHTML and data they are creating rather than much of the back-end code. It does have it&#8217;s flaws though and one of them is that it&#8217;s very easy [&#8230;]]]></description>
		
					<wfw:commentRss>https://richardwarrender.com/2011/03/symphony-blueprint-metadata/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">298</post-id>	</item>
		<item>
		<title>Email yourself a log file</title>
		<link>https://richardwarrender.com/2011/01/email-yourself-a-log-file/</link>
					<comments>https://richardwarrender.com/2011/01/email-yourself-a-log-file/#respond</comments>
		
		<dc:creator><![CDATA[Richard Warrender]]></dc:creator>
		<pubDate>Fri, 28 Jan 2011 23:33:06 +0000</pubDate>
				<category><![CDATA[Unix]]></category>
		<category><![CDATA[Web]]></category>
		<guid isPermaLink="false">http://richardwarrender.com/?p=283</guid>

					<description><![CDATA[If you ever find yourself deep within the console of a remote Unix/Linux server, locked down by a thousand firewalls and in quick need of saving a log file for later analysis then your best friend could be the mail command! Just type the following, replacing me@example.com with your email address, naturally ;-) cat secret.log [&#8230;]]]></description>
		
					<wfw:commentRss>https://richardwarrender.com/2011/01/email-yourself-a-log-file/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">283</post-id>	</item>
		<item>
		<title>Pub Darts now with Facebook Support</title>
		<link>https://richardwarrender.com/2010/11/pub-darts-now-with-facebook/</link>
					<comments>https://richardwarrender.com/2010/11/pub-darts-now-with-facebook/#comments</comments>
		
		<dc:creator><![CDATA[Richard Warrender]]></dc:creator>
		<pubDate>Mon, 15 Nov 2010 22:01:32 +0000</pubDate>
				<category><![CDATA[Apps]]></category>
		<category><![CDATA[Games]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[app store]]></category>
		<category><![CDATA[apple]]></category>
		<category><![CDATA[boss mode]]></category>
		<category><![CDATA[bug fix]]></category>
		<category><![CDATA[dartboard]]></category>
		<category><![CDATA[darts]]></category>
		<category><![CDATA[facebook]]></category>
		<category><![CDATA[iOS 4]]></category>
		<category><![CDATA[iphone]]></category>
		<category><![CDATA[pub darts]]></category>
		<guid isPermaLink="false">http://richardwarrender.com/?p=254</guid>

					<description><![CDATA[Hey, just to let you know Pub Darts 1.2 is now up in the App Store. The biggest feature this new version supports is Facebook integration. Yes thats right&#8230; you can now log in and pull a &#8220;friend&#8217;s&#8221; profile picture straight onto the dartboard ready to let off some steam. Mmm, now if only you [&#8230;]]]></description>
		
					<wfw:commentRss>https://richardwarrender.com/2010/11/pub-darts-now-with-facebook/feed/</wfw:commentRss>
			<slash:comments>2</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">254</post-id>	</item>
		<item>
		<title>Core Data Objects in Wrong Sections</title>
		<link>https://richardwarrender.com/2010/10/core-data-objects-in-wrong-sections/</link>
					<comments>https://richardwarrender.com/2010/10/core-data-objects-in-wrong-sections/#comments</comments>
		
		<dc:creator><![CDATA[Richard Warrender]]></dc:creator>
		<pubDate>Mon, 18 Oct 2010 17:55:49 +0000</pubDate>
				<category><![CDATA[Apps]]></category>
		<category><![CDATA[Cocoa]]></category>
		<category><![CDATA[Core Data]]></category>
		<category><![CDATA[Objective-C]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Swift]]></category>
		<category><![CDATA[Cocoa Touch]]></category>
		<category><![CDATA[iOS 4]]></category>
		<category><![CDATA[ipad]]></category>
		<category><![CDATA[iphone]]></category>
		<category><![CDATA[key-paths]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[sorting]]></category>
		<guid isPermaLink="false">http://richardwarrender.com/?p=213</guid>

					<description><![CDATA[NSFetchedResultsController is a really handy class. Use one of the default Core Data templates in Xcode and you&#8217;ll very quickly have a nice list of managed objects in a table view.&#160;With a few more lines of code you can get the NSFetchedResultsController to group your objects by sections. You do this by specifying a key-path [&#8230;]]]></description>
		
					<wfw:commentRss>https://richardwarrender.com/2010/10/core-data-objects-in-wrong-sections/feed/</wfw:commentRss>
			<slash:comments>22</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">213</post-id>	</item>
		<item>
		<title>Quick Spreadsheet to plist Technique</title>
		<link>https://richardwarrender.com/2010/09/spreadsheet-to-plist/</link>
					<comments>https://richardwarrender.com/2010/09/spreadsheet-to-plist/#comments</comments>
		
		<dc:creator><![CDATA[Richard Warrender]]></dc:creator>
		<pubDate>Tue, 21 Sep 2010 18:14:50 +0000</pubDate>
				<category><![CDATA[Cocoa]]></category>
		<category><![CDATA[Core Data]]></category>
		<category><![CDATA[Objective-C]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Unix]]></category>
		<category><![CDATA[csv]]></category>
		<category><![CDATA[iphone]]></category>
		<category><![CDATA[osx]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[plist]]></category>
		<category><![CDATA[terminal]]></category>
		<guid isPermaLink="false">http://richardwarrender.com/?p=187</guid>

					<description><![CDATA[Imagine you have a huge list of names in a spreadsheet and you&#8217;d like to get this data into an Apple plist file to use in your iPhone/Mac app or import into a Core Data model. Such a long list of data would take forever to cut and paste so here is a really quick [&#8230;]]]></description>
		
					<wfw:commentRss>https://richardwarrender.com/2010/09/spreadsheet-to-plist/feed/</wfw:commentRss>
			<slash:comments>5</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">187</post-id>	</item>
		<item>
		<title>Get emailed when uploads complete</title>
		<link>https://richardwarrender.com/2010/09/get-mailed-when-uploads-complete/</link>
					<comments>https://richardwarrender.com/2010/09/get-mailed-when-uploads-complete/#respond</comments>
		
		<dc:creator><![CDATA[Richard Warrender]]></dc:creator>
		<pubDate>Fri, 17 Sep 2010 18:51:37 +0000</pubDate>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[Unix]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[download]]></category>
		<category><![CDATA[email]]></category>
		<category><![CDATA[unix]]></category>
		<category><![CDATA[upload]]></category>
		<category><![CDATA[web]]></category>
		<guid isPermaLink="false">http://richardwarrender.com/?p=170</guid>

					<description><![CDATA[Sometimes I have to send a client a really large file or app that&#8217;s too large to post to Basecamp. The solution is to upload to a web server over night and email the client a link when it&#8217;s done. Not wanting to tie my laptop down overnight here is a great solution that emails [&#8230;]]]></description>
		
					<wfw:commentRss>https://richardwarrender.com/2010/09/get-mailed-when-uploads-complete/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">170</post-id>	</item>
		<item>
		<title>Custom fonts on iPad and iPhone</title>
		<link>https://richardwarrender.com/2010/08/custom-fonts-on-ipad-and-iphone/</link>
					<comments>https://richardwarrender.com/2010/08/custom-fonts-on-ipad-and-iphone/#comments</comments>
		
		<dc:creator><![CDATA[Richard Warrender]]></dc:creator>
		<pubDate>Wed, 18 Aug 2010 20:48:54 +0000</pubDate>
				<category><![CDATA[Cocoa]]></category>
		<category><![CDATA[Objective-C]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Swift]]></category>
		<category><![CDATA[UIKit]]></category>
		<category><![CDATA[fonts]]></category>
		<category><![CDATA[iOS 4]]></category>
		<category><![CDATA[ipad]]></category>
		<category><![CDATA[iphone]]></category>
		<category><![CDATA[uikit]]></category>
		<guid isPermaLink="false">http://richardwarrender.com/?p=147</guid>

					<description><![CDATA[Just incase you didn&#8217;t realise, with iOS 3.2 (iPad) and above you can load in custom fonts and use them with a standard UIFont object. There are a few catches&#8230;&#160;The font must be in the following format: &#8211; OpenType Format (OTF) TrueType Format (TTF) Once you&#8217;ve dragged your chosen font file into an Xcode project, [&#8230;]]]></description>
		
					<wfw:commentRss>https://richardwarrender.com/2010/08/custom-fonts-on-ipad-and-iphone/feed/</wfw:commentRss>
			<slash:comments>8</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">147</post-id>	</item>
		<item>
		<title>Re-ordering Core Data Objects on iOS4</title>
		<link>https://richardwarrender.com/2010/08/re-ordering-core-data-objects-on-ios4/</link>
					<comments>https://richardwarrender.com/2010/08/re-ordering-core-data-objects-on-ios4/#respond</comments>
		
		<dc:creator><![CDATA[Richard Warrender]]></dc:creator>
		<pubDate>Tue, 17 Aug 2010 06:59:00 +0000</pubDate>
				<category><![CDATA[Cocoa]]></category>
		<category><![CDATA[Core Data]]></category>
		<category><![CDATA[Objective-C]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Cocoa Touch]]></category>
		<category><![CDATA[iOS 4]]></category>
		<category><![CDATA[iphone]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[UI]]></category>
		<guid isPermaLink="false">http://richardwarrender.com/?p=139</guid>

					<description><![CDATA[The Core Data framework on the iPhone is incredibly powerful. It&#8217;s also incredibly efficient and part of that is because a collection of objects only have the order that you implicitly give them. For example you typically might give an Event object a timestamp and when you pull out all the events you might sort [&#8230;]]]></description>
		
					<wfw:commentRss>https://richardwarrender.com/2010/08/re-ordering-core-data-objects-on-ios4/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">139</post-id>	</item>
		<item>
		<title>Pub Darts now with Instructions!</title>
		<link>https://richardwarrender.com/2010/07/pub-darts-now-with-instructions/</link>
					<comments>https://richardwarrender.com/2010/07/pub-darts-now-with-instructions/#respond</comments>
		
		<dc:creator><![CDATA[Richard Warrender]]></dc:creator>
		<pubDate>Thu, 29 Jul 2010 20:35:25 +0000</pubDate>
				<category><![CDATA[Apps]]></category>
		<category><![CDATA[Games]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[app store]]></category>
		<category><![CDATA[bug fix]]></category>
		<category><![CDATA[casual]]></category>
		<category><![CDATA[darts]]></category>
		<category><![CDATA[icon]]></category>
		<category><![CDATA[instructions]]></category>
		<category><![CDATA[ios4]]></category>
		<category><![CDATA[iphone]]></category>
		<category><![CDATA[iphone 4]]></category>
		<category><![CDATA[itunes]]></category>
		<category><![CDATA[pub]]></category>
		<category><![CDATA[update]]></category>
		<guid isPermaLink="false">http://richardwarrender.com/?p=119</guid>

					<description><![CDATA[When I first launched Pub Darts last March, I got many great positive messages from people who love throwing darts at their boss’s picture! I also got much negative feedback from people who found the throwing mechanism difficult or not as intuitive as I thought it was. Therefore adding instructions to version 1.1 was very [&#8230;]]]></description>
		
					<wfw:commentRss>https://richardwarrender.com/2010/07/pub-darts-now-with-instructions/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">119</post-id>	</item>
		<item>
		<title>Take Audi iPad Magazine for a Drive</title>
		<link>https://richardwarrender.com/2010/07/take-audi-ipad-magazine-for-a-drive/</link>
					<comments>https://richardwarrender.com/2010/07/take-audi-ipad-magazine-for-a-drive/#respond</comments>
		
		<dc:creator><![CDATA[Richard Warrender]]></dc:creator>
		<pubDate>Fri, 23 Jul 2010 18:53:34 +0000</pubDate>
				<category><![CDATA[Apps]]></category>
		<category><![CDATA[iPad]]></category>
		<category><![CDATA[app store]]></category>
		<category><![CDATA[audi]]></category>
		<category><![CDATA[audi magazine]]></category>
		<category><![CDATA[downloads]]></category>
		<category><![CDATA[ipad]]></category>
		<category><![CDATA[itunes]]></category>
		<guid isPermaLink="false">http://richardwarrender.com/blog/?p=5</guid>

					<description><![CDATA[It&#8217;s such a good feeling when something you&#8217;ve worked so hard on gets unleashed onto the App Store. It&#8217;s even more of a great feeling when you find out your app has already broken into the Top 50 chart of most-downloaded free apps. Achieving more than 15,000 downloads in the first two weeks, I&#8217;m immensely [&#8230;]]]></description>
		
					<wfw:commentRss>https://richardwarrender.com/2010/07/take-audi-ipad-magazine-for-a-drive/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">5</post-id>	</item>
		<item>
		<title>iPhone App: Throw Darts at your Boss</title>
		<link>https://richardwarrender.com/2009/03/iphone-app-throw-darts-at-your-boss/</link>
					<comments>https://richardwarrender.com/2009/03/iphone-app-throw-darts-at-your-boss/#respond</comments>
		
		<dc:creator><![CDATA[Richard Warrender]]></dc:creator>
		<pubDate>Tue, 31 Mar 2009 17:50:09 +0000</pubDate>
				<category><![CDATA[Apps]]></category>
		<category><![CDATA[Games]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[app store]]></category>
		<category><![CDATA[beer]]></category>
		<category><![CDATA[boss mode]]></category>
		<category><![CDATA[casual]]></category>
		<category><![CDATA[dartboard]]></category>
		<category><![CDATA[darts]]></category>
		<category><![CDATA[game]]></category>
		<category><![CDATA[iphone]]></category>
		<category><![CDATA[itunes]]></category>
		<category><![CDATA[pub]]></category>
		<guid isPermaLink="false">http://richardwarrender.com/?p=55</guid>

					<description><![CDATA[Hooray. My iPhone game, Pub Darts is in the App Store. It&#8217;s a slick dartboard game with the added bonus of being able snap your boss/greedy banker and throw darts at their image. Just don&#8217;t let them catch you ;-) Buy it now for only £1.19 ($1.99). For a short time only it&#8217;s now £0.69! Grab [&#8230;]]]></description>
		
					<wfw:commentRss>https://richardwarrender.com/2009/03/iphone-app-throw-darts-at-your-boss/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">55</post-id>	</item>
		<item>
		<title>Installing Xdebug on Mac OS X</title>
		<link>https://richardwarrender.com/2008/02/installing-xdebug-on-mac-os-x/</link>
					<comments>https://richardwarrender.com/2008/02/installing-xdebug-on-mac-os-x/#comments</comments>
		
		<dc:creator><![CDATA[Richard Warrender]]></dc:creator>
		<pubDate>Sat, 02 Feb 2008 18:16:25 +0000</pubDate>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[debug]]></category>
		<category><![CDATA[guide]]></category>
		<category><![CDATA[mac]]></category>
		<category><![CDATA[osx]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[xdebug]]></category>
		<guid isPermaLink="false">http://richardwarrender.com/?p=32</guid>

					<description><![CDATA[Xdebug is an incredibly powerful PHP extension that helps you debug scripts by providing a lot of valuable debugging information. It saves you from having to write your own debugging function for catching errors, at least during the development stage of a web application and certainly provides a lot more information than the standard PHP [&#8230;]]]></description>
		
					<wfw:commentRss>https://richardwarrender.com/2008/02/installing-xdebug-on-mac-os-x/feed/</wfw:commentRss>
			<slash:comments>6</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">32</post-id>	</item>
		<item>
		<title>Problem with PHP mail() and Additional Headers</title>
		<link>https://richardwarrender.com/2007/09/problem-with-php-mail-and-additional-headers/</link>
					<comments>https://richardwarrender.com/2007/09/problem-with-php-mail-and-additional-headers/#comments</comments>
		
		<dc:creator><![CDATA[Richard Warrender]]></dc:creator>
		<pubDate>Fri, 28 Sep 2007 19:47:48 +0000</pubDate>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[email headers]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[mail]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[sendmail]]></category>
		<guid isPermaLink="false">http://richardwarrender.com/?p=48</guid>

					<description><![CDATA[With the PHP mail() function, you can specify additional headers for the emails that you send. This is a very powerful feature, which lets you do things such as add addresses to blind carbon copy or specify which email address the email is coming from. It’s great but the PHP manual says this about additional [&#8230;]]]></description>
		
					<wfw:commentRss>https://richardwarrender.com/2007/09/problem-with-php-mail-and-additional-headers/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">48</post-id>	</item>
		<item>
		<title>The Secret to cURL in PHP on Windows&#8230;</title>
		<link>https://richardwarrender.com/2007/05/the-secret-to-curl-in-php-on-windows/</link>
					<comments>https://richardwarrender.com/2007/05/the-secret-to-curl-in-php-on-windows/#comments</comments>
		
		<dc:creator><![CDATA[Richard Warrender]]></dc:creator>
		<pubDate>Mon, 14 May 2007 10:48:37 +0000</pubDate>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[curl]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[windows]]></category>
		<guid isPermaLink="false">http://richardwarrender.com/?p=43</guid>

					<description><![CDATA[cURL is a great library created by Daniel Stenberg, that allows you to connect and communicate to many different types of servers using many different types of protocols. In particular, it’s used heavily in PHP to communicate to Payment Gateways and fetch XML feeds from other sites whilst being ‘transparent’ to web page visitors. The [&#8230;]]]></description>
		
					<wfw:commentRss>https://richardwarrender.com/2007/05/the-secret-to-curl-in-php-on-windows/feed/</wfw:commentRss>
			<slash:comments>45</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">43</post-id>	</item>
		<item>
		<title>Validating Credit Card Numbers</title>
		<link>https://richardwarrender.com/2006/12/validating-card-numbers/</link>
					<comments>https://richardwarrender.com/2006/12/validating-card-numbers/#respond</comments>
		
		<dc:creator><![CDATA[Richard Warrender]]></dc:creator>
		<pubDate>Sat, 16 Dec 2006 22:11:59 +0000</pubDate>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[algorithm]]></category>
		<category><![CDATA[e-commerce]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[validation]]></category>
		<guid isPermaLink="false">http://richardwarrender.com/?p=160</guid>

					<description><![CDATA[Lately, I’ve been working on an e–commerce website and discovered a handy algorithm for validating card numbers. The Luhn algorithm (also known as mod 10) is a checksum formula and is used to protect against accidental errors rather than malicious attacks. The algorithm is particularly useful for checking to see if the card number ‘looks’ [&#8230;]]]></description>
		
					<wfw:commentRss>https://richardwarrender.com/2006/12/validating-card-numbers/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">160</post-id>	</item>
	</channel>
</rss>

<!--
Performance optimized by W3 Total Cache. Learn more: https://www.boldgrid.com/w3-total-cache/?utm_source=w3tc&utm_medium=footer_comment&utm_campaign=free_plugin

Page Caching using Disk: Enhanced 
Lazy Loading (feed)
Minified using Disk
Database Caching using Memcached

Served from: richardwarrender.com @ 2026-06-08 20:18:37 by W3 Total Cache
-->