<?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>iridani.com &#187; dev</title>
	<atom:link href="http://iridani.com/tag/dev/feed/" rel="self" type="application/rss+xml" />
	<link>http://iridani.com</link>
	<description>dev://james.stansfield</description>
	<lastBuildDate>Mon, 26 Jul 2010 21:52:46 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Coding Horror: Top 25 Most Dangerous Programming Mistakes</title>
		<link>http://www.codinghorror.com/blog/2009/01/top-25-most-dangerous-programming-mistakes.html</link>
		<comments>http://www.codinghorror.com/blog/2009/01/top-25-most-dangerous-programming-mistakes.html#comments</comments>
		<pubDate>Sun, 28 Mar 2010 23:55:03 +0000</pubDate>
		<dc:creator>jqs</dc:creator>
				<category><![CDATA[delicious]]></category>
		<category><![CDATA[dev]]></category>

		<guid isPermaLink="false">http://delicious.com/url/3d73a7a3b60d3adfdb64eaef46c1d717#jqs</guid>
		<description><![CDATA[<img src="http://iridani.com/wp-content/icons/125X75/delicious.png" width="125" height="75" alt="" title="delicious" /><br/>]]></description>
			<content:encoded><![CDATA[<img src="http://iridani.com/wp-content/icons/125X75/delicious.png" width="125" height="75" alt="" title="delicious" /><br/>]]></content:encoded>
			<wfw:commentRss>http://www.codinghorror.com/blog/2009/01/top-25-most-dangerous-programming-mistakes.html/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>the big square</title>
		<link>http://iridani.com/2010/02/the-big-square/</link>
		<comments>http://iridani.com/2010/02/the-big-square/#comments</comments>
		<pubDate>Tue, 16 Feb 2010 00:55:06 +0000</pubDate>
		<dc:creator>jqs</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[comics]]></category>
		<category><![CDATA[dev]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[distraction]]></category>
		<category><![CDATA[News]]></category>
		<category><![CDATA[webcomic]]></category>

		<guid isPermaLink="false">http://iridani.com/?p=131</guid>
		<description><![CDATA[<img src="http://iridani.com/wp-content/icons/125X75/wordpress.png" width="125" height="75" alt="" title="Blog" /><br/>I&#8217;m starting on a new project that I hope to see off the ground in a few days. the big sqaure will be a webcomic of sorts. If a webcomic could be crossed with a Digg or Reddit that is.
The gist of it is: I can&#8217;t draw, but I&#8217;ve got tons of ideas. Serial and [...]]]></description>
			<content:encoded><![CDATA[<img src="http://iridani.com/wp-content/icons/125X75/wordpress.png" width="125" height="75" alt="" title="Blog" /><br/><p>I&#8217;m starting on a new project that I hope to see off the ground in a few days. <a title="the big square" href="http://thebigsquare.com" target="_blank">the big sqaure</a> will be a webcomic of sorts. If a webcomic could be crossed with a Digg or Reddit that is.</p>
<p>The gist of it is: I can&#8217;t draw, but I&#8217;ve got tons of ideas. Serial and otherwise. So, each week I&#8217;ll post an idea and an empty square. Anyone can draw what I&#8217;ve asked and submit it. Upon acceptance, the image will join any others gathered. Every visitor can then vote on which is the best depiction of my description. When I post the next square&#8217;s description, the winner of the previous week is set as the comic and will appear in the archive appropriately. All others will still be stored and available for perusal. Every piece of art remains owner by the artist, yadda yadda yadda.</p>
<p>I hope it will cause many different interpretations of what I describe. If not, it&#8217;ll divert my attention for awhile.</p>
<p>Expect an announcement and promotion once I finish creating the back-end to run it. Should be an easy dev project for an old horse like me.</p>
]]></content:encoded>
			<wfw:commentRss>http://iridani.com/2010/02/the-big-square/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Day One @ #phptek</title>
		<link>http://iridani.com/2009/05/day-one-phptek/</link>
		<comments>http://iridani.com/2009/05/day-one-phptek/#comments</comments>
		<pubDate>Thu, 21 May 2009 06:28:26 +0000</pubDate>
		<dc:creator>jqs</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[conference]]></category>
		<category><![CDATA[dev]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://iridani.com/?p=83</guid>
		<description><![CDATA[<img src="http://iridani.com/wp-content/icons/125X75/wordpress.png" width="125" height="75" alt="" title="Blog" /><br/>What was the single most important thing I learned today? Always bring your condom! Er, I mean, your keyboard condom1.
First official day of the conference and my new MacBook survived three spills, two coffee and one water and lived to tell the tale.
Man these php devs just don&#8217;t like Macs!

1.&#160;iSkin&#8617;
]]></description>
			<content:encoded><![CDATA[<img src="http://iridani.com/wp-content/icons/125X75/wordpress.png" width="125" height="75" alt="" title="Blog" /><br/><p>What was the single most important thing I learned today? Always bring your condom! Er, I mean, your keyboard condom<sup><a id="fn-83-1" href="#foot-83-1" onclick="new Effect.ScrollTo('foot-83-1', {offset:-140}); return false">1</a></sup>.</p>
<p>First official day of the conference and my new MacBook survived three spills, two coffee and one water and lived to tell the tale.</p>
<p>Man these php devs just don&#8217;t like Macs!<br />

<div class='footnotes'><span class="footnote" id="foot-83-1">1.&nbsp;<a href="http://www.iskin.com/product_kbrd_air.html">iSkin</a><a href="#fn-83-1" onclick="new Effect.ScrollTo('fn-83-1', {offset:-140}); return false">&#8617;</a></span></div>
]]></content:encoded>
			<wfw:commentRss>http://iridani.com/2009/05/day-one-phptek/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Attending #phptek &#8211; Which Talks&#8230;</title>
		<link>http://iridani.com/2009/04/attending-phptek-which-talks/</link>
		<comments>http://iridani.com/2009/04/attending-phptek-which-talks/#comments</comments>
		<pubDate>Sat, 25 Apr 2009 14:34:28 +0000</pubDate>
		<dc:creator>jqs</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[air]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[conference]]></category>
		<category><![CDATA[dev]]></category>
		<category><![CDATA[js]]></category>
		<category><![CDATA[microformats]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[oop]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[regex]]></category>
		<category><![CDATA[ria]]></category>
		<category><![CDATA[scalable]]></category>
		<category><![CDATA[security]]></category>
		<category><![CDATA[sql]]></category>
		<category><![CDATA[tokens]]></category>
		<category><![CDATA[web]]></category>
		<category><![CDATA[xml]]></category>

		<guid isPermaLink="false">http://iridani.com/?p=70</guid>
		<description><![CDATA[<img src="http://iridani.com/wp-content/icons/125X75/wordpress.png" width="125" height="75" alt="" title="Blog" /><br/>(See what I did there? When this tweets, the hashtag will be picked up!)
So in less than a month I&#8217;ll be attending php&#124;tek1 adn its high time I decided what talks I want to be seen at. Erm, I mean, which I want to attend&#8230;
Tutorial Day:
I&#8217;m torn bewteen MVC Development in PHP and Web Application [...]]]></description>
			<content:encoded><![CDATA[<img src="http://iridani.com/wp-content/icons/125X75/wordpress.png" width="125" height="75" alt="" title="Blog" /><br/><p>(See what I did there? When this tweets, the hashtag will be picked up!)</p>
<p>So in less than a month I&#8217;ll be attending php|tek<sup><a id="fn-70-1" href="#foot-70-1" onclick="new Effect.ScrollTo('foot-70-1', {offset:-140}); return false">1</a></sup> adn its high time I decided what talks I want to be seen at. Erm, I mean, which I want to attend&#8230;</p>
<p>Tutorial Day:</p>
<p>I&#8217;m torn bewteen <a class="talk clueTip" href="http://tek.mtacon.com/c/schedule/talk/ts1/0">MVC Development in PHP</a> and <a href="http://tek.mtacon.com/c/schedule/talk/ts1/1">Web Application Security Boot Camp</a> but in the end I think MVC will win out&#8230;</p>
<p><a href="http://tek.mtacon.com/c/schedule/talk/ts2/1">PHP Code Review</a> wins in the afternoon. And that evening I&#8217;ll be busy attending the ChiSox/Twins game.</p>
<p>Day 1:</p>
<p><a class="talk clueTip" href="http://tek.mtacon.com/c/schedule/talk/d1s2/2">Highly Scalable Web Applications</a></p>
<p><a class="talk clueTip" href="http://tek.mtacon.com/c/schedule/talk/d1s3/0">Streaming XML</a></p>
<p><a class="talk clueTip" href="http://tek.mtacon.com/c/schedule/talk/d1s4/0">MySQL Server Performance Tuning</a></p>
<p><a class="talk clueTip" href="http://tek.mtacon.com/c/schedule/talk/d1s5/0">SPL to the Rescue</a></p>
<p><a class="talk clueTip" href="http://tek.mtacon.com/c/schedule/talk/d1s6/0">Getting it Done</a></p>
<p><a class="talk clueTip" href="http://tek.mtacon.com/c/schedule/talk/d1s7/0">Security Centered Design</a></p>
<p>Day 2:</p>
<p><a class="talk clueTip" href="http://tek.mtacon.com/c/schedule/talk/d2s1/1">Exceptional PHP</a></p>
<p><a class="talk clueTip" href="http://tek.mtacon.com/c/schedule/talk/d2s2/0">Desktop RIAs with PHP, HTML and JS in AIR</a></p>
<p><a class="talk clueTip" href="http://tek.mtacon.com/c/schedule/talk/d2s3/1">Seven Steps to Better OOP Code</a></p>
<p><a class="talk clueTip" href="http://tek.mtacon.com/c/schedule/talk/d2s4/1">PHP Database Application Architecture for Scalability and Availability</a></p>
<p><a class="talk clueTip" href="http://tek.mtacon.com/c/schedule/talk/d2s5/1">Bend SQL to Your Will With EXPLAIN</a></p>
<p><a class="talk clueTip" href="http://tek.mtacon.com/c/schedule/talk/d2s6/1">Taking it All Offline with SQL Anywhere</a></p>
<p>Day 3:</p>
<p><a class="talk clueTip" href="http://tek.mtacon.com/c/schedule/talk/d3s1/2">Out with Regex, In with Tokens</a></p>
<p><a class="talk clueTip" href="http://tek.mtacon.com/c/schedule/talk/d3s2/0">Working with Microformats</a></p>
<p>It looks like I&#8217;m going to have a lot of fun and will learn a lot. I&#8217;m hoping some of my methods get justified as well by my peers.</p>
<p>Kudos again to my work for sending me on this trip, and to my wife for allowing it!<br />

<div class='footnotes'><span class="footnote" id="foot-70-1">1.&nbsp;<a href="http://tek.mtacon.com">php|tek</a><a href="#fn-70-1" onclick="new Effect.ScrollTo('fn-70-1', {offset:-140}); return false">&#8617;</a></span></div>
]]></content:encoded>
			<wfw:commentRss>http://iridani.com/2009/04/attending-phptek-which-talks/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Expect: php curl should play nice</title>
		<link>http://iridani.com/2009/04/expect-php-curl-should-play-nice/</link>
		<comments>http://iridani.com/2009/04/expect-php-curl-should-play-nice/#comments</comments>
		<pubDate>Sat, 25 Apr 2009 13:06:43 +0000</pubDate>
		<dc:creator>jqs</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[api]]></category>
		<category><![CDATA[curl]]></category>
		<category><![CDATA[dev]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[work]]></category>

		<guid isPermaLink="false">http://iridani.com/?p=56</guid>
		<description><![CDATA[<img src="http://iridani.com/wp-content/icons/125X75/wordpress.png" width="125" height="75" alt="" title="Blog" /><br/>Once again, my job has me writing mutli-threaded PHP1 scripts that use PHP&#8217;s CURL2 library to connect to remote servers. (I&#8217;m calling an API here!)  Without going into too much detail, the networking specifics changed between me and the api server, adding a new, or newly reconfigured, invisible proxy to the data path.
This proxy is [...]]]></description>
			<content:encoded><![CDATA[<img src="http://iridani.com/wp-content/icons/125X75/wordpress.png" width="125" height="75" alt="" title="Blog" /><br/><p>Once again, my job has me writing mutli-threaded PHP<sup><a id="fn-56-1" href="#foot-56-1" onclick="new Effect.ScrollTo('foot-56-1', {offset:-140}); return false">1</a></sup> scripts that use PHP&#8217;s CURL<sup><a id="fn-56-2" href="#foot-56-2" onclick="new Effect.ScrollTo('foot-56-2', {offset:-140}); return false">2</a></sup> library to connect to remote servers. (I&#8217;m calling an API here!)  Without going into too much detail, the networking specifics changed between me and the api server, adding a new, or newly reconfigured, invisible proxy to the data path.</p>
<p>This proxy is running Lighttpd, while light in name, is starting to throw around it&#8217;s weight and get in my way.</p>
<p>Warning! We are going to get technical!</p>
<p><span id="more-56"></span>Here is the output of curl when trying to access the api. (All ip addresses have been obfuscated to protect the innocent!)</p>
<p>[cc]</p>
<p>* About to connect() to theapi.com port 80 (#0)</p>
<p>*   Trying 42.42.42.42&#8230; * connected</p>
<p>* Connected to theapi.com (42.42.42.42) port 80 (#0)</p>
<p>> POST /ApiCommand HTTP/1.1</p>
<p>Host: theapi.com</p>
<p>Accept: */*</p>
<p>Content-Length: 1760</p>
<p>Content-Type: application/x-www-form-urlencoded</p>
<p>Expect: 100-continue</p>
<p>< HTTP/1.1 417 Expectation Failed</p>
<p>< Connection: close</p>
<p>< Content-Length: 0</p>
<p>< Date: Mon, 20 Apr 2009 14:16:26 GMT</p>
<p>< Server: lighttpd/1.4.1</p>
<p><</p>
<p>* Closing connection #0</p>
<p>[/cc]</p>
<p>Wow, that was short lived. The culprit here is that lighttpd doesn't handle the <em>Expect: 100-continue</em> properly. In fact it cacks on it entirely. What you get (if you aren&#8217;t looking at headers) is an empty response from curl. Not very fun to debug if you were expecting some kind of response from the api.</p>
<p>It has been suggested <sup><a id="fn-56-3" href="#foot-56-3" onclick="new Effect.ScrollTo('foot-56-3', {offset:-140}); return false">3</a></sup><sup><a id="fn-56-4" href="#foot-56-4" onclick="new Effect.ScrollTo('foot-56-4', {offset:-140}); return false">4</a></sup> that this bug will be fixed in version 1.5.x but that doesn&#8217;t help us right here, right now<sup><a id="fn-56-5" href="#foot-56-5" onclick="new Effect.ScrollTo('foot-56-5', {offset:-140}); return false">5</a></sup>. So what to do. Who will save me? The internet of course!</p>
<p><strong>gnegg</strong>, amongst others, has run into this problem before me and has a fix<sup><a id="fn-56-6" href="#foot-56-6" onclick="new Effect.ScrollTo('foot-56-6', {offset:-140}); return false">6</a></sup> that solves the problem easily. Just add a blank <em>Expect:</em> header to your curl call. That fixes the problem nice and quick:</p>
<p>[cc lang='php']curl_setopt($ch, CURLOPT_HTTPHEADER, array(&#8216;Expect:&#8217;));[/cc]</p>
<p>And that&#8217;s it, by implicitly setting the Expect: directive we bypass the default condition that CURL injects on every request.</p>
<p>Now I can&#8217;t say exactly what Expect: does, but I think it helps by chopping up data into smaller chunks, but that is a guess and I don&#8217;t feel like looking it up.</p>
<p><strong>Update: I&#8217;m so very wrong!</strong></p>
<p>Philip Hofstetter, who wrote the article on <em>gnegg.ch</em> sent me an email today clearing up my assumption about the Expect: 100-continue HTTP directive:</p>
<blockquote><p>I&#8217;m the author of the blog post on gnegg.ch you referred to and I</p>
<p>wanted to take the oportunity to explain what the idea behind Expect:</p>
<p>100-continue is:</p>
<p>The idea behind Expect: 100-continue is to give the server a chance to</p>
<p>make checks for the requests validity without the client actually</p>
<p>having to send all the data first.</p>
<p>So the clients sends the POST request just as if it would just post</p>
<p>the data, but it leaves the request body completely empty, but adds</p>
<p>the Expect: 100-continue.</p>
<p>The server can now check</p>
<p>- if maybe authentication is needed but not provided</p>
<p>- if the URL in question is even capable of accepting a POST request</p>
<p>- if the remote host is permitted to send the data</p>
<p>or what ever else that can be checked independently of the post body.</p>
<p>Now the server either sends back a fitting error code or it sends the</p>
<p>doe 100 telling the client that it&#8217;s ok to go ahead and resend the</p>
<p>request, but this time WITH the request body and WITHOUT the expect</p>
<p>header.</p>
<p>So the idea isn&#8217;t chopping up the data, it&#8217;s making it as sure as</p>
<p>possible to detect early failures without the client having to</p>
<p>transmit all the data first.</p>
<p>I hope that helps to explain what&#8217;s going on.</p></blockquote>
<p>I knew I should have just gone and looked it up! <strong>Thanks Philip!</strong><br />

<div class='footnotes'><span class="footnote" id="foot-56-1">1.&nbsp;<a href="http://php.net">php.net</a><a href="#fn-56-1" onclick="new Effect.ScrollTo('fn-56-1', {offset:-140}); return false">&#8617;</a></span><br /><span class="footnote" id="foot-56-2">2.&nbsp;<a href="http://php.net/manual/en/book.curl.php">php.net/curl</a><a href="#fn-56-2" onclick="new Effect.ScrollTo('fn-56-2', {offset:-140}); return false">&#8617;</a></span><br /><span class="footnote" id="foot-56-3">3.&nbsp;<a href="http://stackoverflow.com/questions/463144/php-http-post-fails-when-curl-data-1024">StackOverFlow.com</a><a href="#fn-56-3" onclick="new Effect.ScrollTo('fn-56-3', {offset:-140}); return false">&#8617;</a></span><br /><span class="footnote" id="foot-56-4">4.&nbsp;<a href="http://redmine.lighttpd.net/issues/show/1017">redmine.lighttpd.net</a><a href="#fn-56-4" onclick="new Effect.ScrollTo('fn-56-4', {offset:-140}); return false">&#8617;</a></span><br /><span class="footnote" id="foot-56-5">5.&nbsp;<a href="http://en.wikipedia.org/wiki/Jesus_Jones">Jesus Jones</a><a href="#fn-56-5" onclick="new Effect.ScrollTo('fn-56-5', {offset:-140}); return false">&#8617;</a></span><br /><span class="footnote" id="foot-56-6">6.&nbsp;<a href="http://www.gnegg.ch/2007/02/the-return-of-except-100-continue/">gnegg.ch</a><a href="#fn-56-6" onclick="new Effect.ScrollTo('fn-56-6', {offset:-140}); return false">&#8617;</a></span></div>
]]></content:encoded>
			<wfw:commentRss>http://iridani.com/2009/04/expect-php-curl-should-play-nice/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>php&#124;tek</title>
		<link>http://iridani.com/2009/04/phptek/</link>
		<comments>http://iridani.com/2009/04/phptek/#comments</comments>
		<pubDate>Wed, 15 Apr 2009 02:31:55 +0000</pubDate>
		<dc:creator>jqs</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[conference]]></category>
		<category><![CDATA[dev]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[php|architect]]></category>

		<guid isPermaLink="false">http://iridani.com/?p=49</guid>
		<description><![CDATA[<img src="http://iridani.com/wp-content/icons/125X75/wordpress.png" width="125" height="75" alt="" title="Blog" /><br/>I&#8217;ll be attending php&#124;tek 20091 in Chicago this May. If anyone is attending who knows me, we should make plans to meet up.
I&#8217;m excited for this conference. I can&#8217;t remember the last time I attended a programming conference, let alone one being paid for by my employer!

1.&#160;php&#124;tek&#8617;
]]></description>
			<content:encoded><![CDATA[<img src="http://iridani.com/wp-content/icons/125X75/wordpress.png" width="125" height="75" alt="" title="Blog" /><br/><p>I&#8217;ll be attending php|tek 2009<sup><a id="fn-49-1" href="#foot-49-1" onclick="new Effect.ScrollTo('foot-49-1', {offset:-140}); return false">1</a></sup> in Chicago this May. If anyone is attending who knows me, we should make plans to meet up.</p>
<p>I&#8217;m excited for this conference. I can&#8217;t remember the last time I attended a programming conference, let alone one being paid for by my employer!<br />

<div class='footnotes'><span class="footnote" id="foot-49-1">1.&nbsp;<a href="http://tek.mtacon.com/">php|tek</a><a href="#fn-49-1" onclick="new Effect.ScrollTo('fn-49-1', {offset:-140}); return false">&#8617;</a></span></div>
]]></content:encoded>
			<wfw:commentRss>http://iridani.com/2009/04/phptek/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>iPhone OS 2.0 Quirks</title>
		<link>http://iridani.com/2008/07/iphone-os-20-quirks/</link>
		<comments>http://iridani.com/2008/07/iphone-os-20-quirks/#comments</comments>
		<pubDate>Mon, 28 Jul 2008 21:03:49 +0000</pubDate>
		<dc:creator>jqs</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[app]]></category>
		<category><![CDATA[AppStore]]></category>
		<category><![CDATA[dev]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[iphone]]></category>
		<category><![CDATA[itunes]]></category>
		<category><![CDATA[quirks]]></category>

		<guid isPermaLink="false">http://iridani.com/?p=37</guid>
		<description><![CDATA[<img src="http://iridani.com/wp-content/icons/125X75/wordpress.png" width="125" height="75" alt="" title="Blog" /><br/>Okay, maybe some of these are more annoyances than quirks:
 

Springboard Application Placement Upon Update

This one gets me every time an application has an update. If I&#8217;ve gone through the trouble of taking an application (that I paid for) and drag it across six pages of apps so that it can reside in the #1 spot [...]]]></description>
			<content:encoded><![CDATA[<img src="http://iridani.com/wp-content/icons/125X75/wordpress.png" width="125" height="75" alt="" title="Blog" /><br/><p>Okay, maybe some of these are more annoyances than quirks:</p>
<p> </p>
<ul>
<li>Springboard Application Placement Upon Update</li>
</ul>
<div>This one gets me every time an application has an update. If I&#8217;ve gone through the trouble of taking an application (that I paid for) and drag it across six pages of apps so that it can reside in the #1 spot on my iPhone, why when upgrading does it jump to the end of the list again? I can understand that new apps get chucked to the end of the list, but couldn&#8217;t the OS merely turn off the old version (I assume it isn&#8217;t deleted until the new one gets downloaded, but I&#8217;m not betting the farm on it.), move it automagically somewhere and setup the new &#8216;downloading&#8217; app in the spot the previous version occupied?</div>
<div>And while we&#8217;re talking about upgrading apps, why does the App Store need to quit to the Springboard every time I tell it to download a new app? Can I queue these things and have them go all at once? I mean you can get all of the updates to installed apps in batch mode right?</div>
<ul>
<li>Developer Hardware</li>
</ul>
<div>So I&#8217;m a real honest to goodness, paid up, friend of Steve, iPhone developer. Full access to OS 2.1Beta&#8230; I haven&#8217;t produced anything yet as I&#8217;m too scared of the warning on the iPhone DEV site which states, that by installing the Beta iPhone software I may lock my iPhone <strong>permanently</strong> into developer hardware and it can&#8217;t be used as a phone again! What what what?</div>
<div>Are you kidding me? So if I really wanted to produce an iPhone app and wanted to <em>use</em> an iPhone, I need two of them? With Rogers requiring a contract to go along with every iPhone, perhaps my 1st gen iPhone becomes a developer box and a new one becomes my phone.</div>
<div>Personally I&#8217;m holding out that my new job picks up an iPhone 3G for me&#8230;</div>
]]></content:encoded>
			<wfw:commentRss>http://iridani.com/2008/07/iphone-os-20-quirks/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>refactormycode.com == Great Idea&#8230;</title>
		<link>http://iridani.com/2008/06/refactormycodecom-great-idea/</link>
		<comments>http://iridani.com/2008/06/refactormycodecom-great-idea/#comments</comments>
		<pubDate>Tue, 17 Jun 2008 11:45:32 +0000</pubDate>
		<dc:creator>jqs</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[api]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[dev]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://iridani.com/?p=30</guid>
		<description><![CDATA[<img src="http://iridani.com/wp-content/icons/125X75/wordpress.png" width="125" height="75" alt="" title="Blog" /><br/>I&#8217;m going to attempt to not spam this site with a bunch of non-development work stuff. I&#8217;ve other blogs for that&#8230; But in keeping with the vein of this website1, I&#8217;ve recently been pointed to a very cool website who&#8217;s basic premise is too simple to have not been thought of before now&#8230;
We&#8217;ve all seen [...]]]></description>
			<content:encoded><![CDATA[<img src="http://iridani.com/wp-content/icons/125X75/wordpress.png" width="125" height="75" alt="" title="Blog" /><br/><p>I&#8217;m going to attempt to not spam this site with a bunch of non-development work stuff. I&#8217;ve other blogs for that&#8230; But in keeping with the vein of this website<sup><a id="fn-30-1" href="#foot-30-1" onclick="new Effect.ScrollTo('foot-30-1', {offset:-140}); return false">1</a></sup>, I&#8217;ve recently been pointed to a very cool website who&#8217;s basic premise is too simple to have not been thought of before now&#8230;</p>
<p>We&#8217;ve all seen web clipboards and code repositories before<sup><a id="fn-30-2" href="#foot-30-2" onclick="new Effect.ScrollTo('foot-30-2', {offset:-140}); return false">2</a></sup>, and even I am guilty<sup><a id="fn-30-3" href="#foot-30-3" onclick="new Effect.ScrollTo('foot-30-3', {offset:-140}); return false">3</a></sup> of wanting to get in on the action. But all of these sites are simple repositories.</p>
<p>Marc-André Cournoyer<sup><a id="fn-30-4" href="#foot-30-4" onclick="new Effect.ScrollTo('foot-30-4', {offset:-140}); return false">4</a></sup> has a fresh take on the idea. His <strong>refactormycode.com</strong><sup><a id="fn-30-5" href="#foot-30-5" onclick="new Effect.ScrollTo('foot-30-5', {offset:-140}); return false">5</a></sup> site isn&#8217;t just a web clipboard, but rather it is a place to put your code up for community scrutiny.</p>
<p>The idea is that you can post a code snippet and ask for help to see if anyone can help you sort out a problem. This isn&#8217;t a wholesale help board for new programmers, but for people who are having problems envisioning code design changes, code cleanup problems, and even those who want the tightest code possible and are seeking improvement.</p>
<p>The website even has an API<sup><a id="fn-30-6" href="#foot-30-6" onclick="new Effect.ScrollTo('foot-30-6', {offset:-140}); return false">6</a></sup> for those who want to dig into the site that much more&#8230; (Maybe I&#8217;ll add a widget here for my refactorings&#8230;)</p>
<p>Good job Marc. Nicely executed.<br />

<div class='footnotes'><span class="footnote" id="foot-30-1">1.&nbsp;code code code<a href="#fn-30-1" onclick="new Effect.ScrollTo('fn-30-1', {offset:-140}); return false">&#8617;</a></span><br /><span class="footnote" id="foot-30-2">2.&nbsp;<a href="http://pastie.org">pastie.org</a><a href="#fn-30-2" onclick="new Effect.ScrollTo('fn-30-2', {offset:-140}); return false">&#8617;</a></span><br /><span class="footnote" id="foot-30-3">3.&nbsp;A new project will be released shortly&#8230; Keep watching this space! &#8212; <a href="http://c???x.iridani.com">c???x.iridani.com</a><a href="#fn-30-3" onclick="new Effect.ScrollTo('fn-30-3', {offset:-140}); return false">&#8617;</a></span><br /><span class="footnote" id="foot-30-4">4.&nbsp;<a href="http://macournoyer.com/">macournoyer.com</a><a href="#fn-30-4" onclick="new Effect.ScrollTo('fn-30-4', {offset:-140}); return false">&#8617;</a></span><br /><span class="footnote" id="foot-30-5">5.&nbsp;<a href="http://refactormycode.com">refactormycode.com</a><a href="#fn-30-5" onclick="new Effect.ScrollTo('fn-30-5', {offset:-140}); return false">&#8617;</a></span><br /><span class="footnote" id="foot-30-6">6.&nbsp;<a href="http://refactormycode.com/help/api">API</a><a href="#fn-30-6" onclick="new Effect.ScrollTo('fn-30-6', {offset:-140}); return false">&#8617;</a></span></div>
]]></content:encoded>
			<wfw:commentRss>http://iridani.com/2008/06/refactormycodecom-great-idea/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Welcome to the New Blog&#8230;</title>
		<link>http://iridani.com/2008/04/new-blog/</link>
		<comments>http://iridani.com/2008/04/new-blog/#comments</comments>
		<pubDate>Tue, 15 Apr 2008 20:17:08 +0000</pubDate>
		<dc:creator>jqs</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[apple]]></category>
		<category><![CDATA[dev]]></category>
		<category><![CDATA[facebook]]></category>
		<category><![CDATA[internet]]></category>
		<category><![CDATA[iphone]]></category>
		<category><![CDATA[News]]></category>
		<category><![CDATA[tmpl]]></category>
		<category><![CDATA[web]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://www.iridani.com/?p=21</guid>
		<description><![CDATA[<img src="http://iridani.com/wp-content/icons/125X75/wordpress.png" width="125" height="75" alt="" title="Blog" /><br/>A lot has happened since I put this blog on hiatus a couple of years ago. I&#8217;ve changed positions at my place of work, I&#8217;ve completed a bunch of interesting projects, my wife and I have welcomed our first child into our lives and I&#8217;ve been given my freedom!
That&#8217;s right, I&#8217;m a free agent at [...]]]></description>
			<content:encoded><![CDATA[<img src="http://iridani.com/wp-content/icons/125X75/wordpress.png" width="125" height="75" alt="" title="Blog" /><br/><p>A lot has happened since I put this blog on hiatus a couple of years ago. I&#8217;ve changed positions at my place of work, I&#8217;ve completed a bunch of interesting projects, my wife and I have welcomed our first child into our lives and I&#8217;ve been given my freedom!</p>
<p>That&#8217;s right, I&#8217;m a free agent at the moment and am in the process of scouting out my next opportunity. Until that time comes, I&#8217;ll keep everyone updated as to my status here.</p>
<p>In addition, now that I&#8217;ve got a little free time on my hands, it&#8217;s back to the developmental grindstone. I&#8217;ve not had opportunity in the last few years to get anything out of me that wasn&#8217;t tied to my employer of record and I&#8217;m near to burst with ideas. This website will become home to all of them.</p>
<p>Most notably I&#8217;ve become a <strong>WordPress</strong> fiend and have a bunch of plug-ins I&#8217;m writing as we speak. I&#8217;ve joined <strong>Facebook</strong> and have more than a few ideas for applications for their platform. I&#8217;ve made a few improvements to my template class now known as <strong>tmpl</strong> and will be bringing those online shortly. And lastly, but not least(ly), I&#8217;ve an <strong>iPhone</strong> and am geared up to write a few apps for it as well.</p>
]]></content:encoded>
			<wfw:commentRss>http://iridani.com/2008/04/new-blog/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
