<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>humandoing software</title>
    <link>http://humandoing.net</link>
    <language>en</language>
    <webMaster>daniel@humandoing.net (Daniel Wintschel)</webMaster>
    <copyright>Copyright 2001-2008</copyright>
    <ttl>60</ttl>
    <pubDate>Thu, 10 Jul 2008 03:13:15 GMT</pubDate>
    <description>better software for everyone.</description>
    <item>
      <title>Quick / Simple Analysis of the Super Awesome iPhone Plan</title>
      <link>http://humandoing.net/past/2008/7/10/quick_simple_analysis_of_the/</link>
      <pubDate>Thu, 10 Jul 2008 02:58:00 GMT</pubDate>
      <guid>http://humandoing.net/past/2008/7/10/quick_simple_analysis_of_the/</guid>
      <author>daniel@humandoing.net (Daniel Wintschel)</author>
      <description>&lt;p&gt;Just for kicks. The &amp;#8220;base&amp;#8221; &lt;a href="http://www.rogers.com/web/content/wireless-products/iphone_voice_data_packages"&gt;iPhone plan in Canada&lt;/a&gt; (by our favorite company &lt;a href="http://www.rogers.ca"&gt;Rogers Wireless&lt;/a&gt;) is advertised at $60/month. This plan manages to offer what I like to call &amp;#8220;No Value Whatsoever&amp;#8221; &amp;#8211; whereas Rogers believes it offers their customers &amp;#8220;flexibility&amp;#8221; and &amp;#8220;special value bundles&amp;#8221;. I don&amp;#8217;t know how Yoga relates to this, and unless Rogers hired a marketing person who believes that &amp;#8220;special value bundles&amp;#8221; is synonymous with &amp;#8220;getting stabbed in the eye and kicked in the face&amp;#8221; &amp;#8211; I think that someone has a very perplexing idea as to the meaning of the word &amp;#8220;value&amp;#8221;.&lt;/p&gt;&lt;p&gt;As if it weren&amp;#8217;t bad enough, let&amp;#8217;s see what the actual cost is if you want your phone to be &lt;em&gt;usable&lt;/em&gt;. By &lt;em&gt;usable&lt;/em&gt; I mean have a half decent number of text messages, Call Display and a moderate 6GB of data (now advertised at $30/month from Rogers if you sign up before August 31st). So now what&amp;#8217;s the cost of those 150 minutes plus a half decent amount of data?&lt;/p&gt;&lt;pre&gt;&lt;br/&gt;$ 60.00 - Basic Voice Plan&lt;br/&gt;$ 30.00 - 6GB of Data&lt;br/&gt;$ 15.00 - iPhone "value pack" to get call display and some text messages&lt;br/&gt;$  6.95 - Standard System Access Fee&lt;br/&gt;$  0.50 - 911 Fee&lt;br/&gt;$  5.62 - GST&lt;br/&gt;&amp;mdash;&amp;mdash;&amp;mdash;&amp;mdash;&amp;mdash;&amp;mdash;&amp;mdash;&amp;mdash;&amp;mdash;&amp;mdash;&amp;mdash;&amp;mdash;&amp;mdash;&lt;br/&gt;$118.07 per month.&lt;br/&gt;&lt;/pre&gt;&lt;p&gt;This might be off by a few cents, because I don&amp;#8217;t know if they charge &lt;span class="caps"&gt;GST&lt;/span&gt; on the System Access Fee and 911 Fee. But as far as I&amp;#8217;m concerned, and for all intents and purposes, the real cost of actually having an iPhone on the basic plan with the features that actually make it &lt;em&gt;usable&lt;/em&gt; for what it&amp;#8217;s &lt;em&gt;designed&lt;/em&gt; to be is almost &lt;strong&gt;&lt;em&gt;&lt;span class="caps"&gt;DOUBLE&lt;/span&gt;&lt;/em&gt;&lt;/strong&gt; the advertised price set out by Rogers.&lt;/p&gt;&lt;p&gt;I don&amp;#8217;t know what you call that, but I call it lying, cheating your customers and downright scummy business.&lt;/p&gt;</description>
      <category domain="http://humandoing.net/past/tags/business">business</category>
      <category domain="http://humandoing.net/past/tags/rants">rants</category>
    </item>
    <item>
      <title>Open Letter to Rogers Wireless</title>
      <link>http://humandoing.net/past/2008/7/9/open_letter_to_rogers_wireless/</link>
      <pubDate>Wed, 09 Jul 2008 10:13:00 GMT</pubDate>
      <guid>http://humandoing.net/past/2008/7/9/open_letter_to_rogers_wireless/</guid>
      <author>daniel@humandoing.net (Daniel Wintschel)</author>
      <description>&lt;p&gt;I wanted to write to you to share my growing concern over the excessively expensive price plans provided by Rogers to their cellular customers. This is something I&amp;#8217;ve been upset (even angry) about for a number of months, but the recent release of the iPhone plans has pushed me to the point where I have to make myself heard.&lt;/p&gt;&lt;p&gt;I can only hope and pray that you will listen to myself, and the literal thousands of others who have grown extremely and excessively tired of what I would call the price gouging of your faithful customers.&lt;/p&gt;&lt;p&gt;When it came time for me to get a new cell phone (August 2007), I specifically chose Rogers because I knew it was inevitable that you would be the exclusive provider of the iPhone in Canada. My wife and I now both have a &amp;#8221;$25/month&amp;#8221; cell phone plan with Rogers, and this is where my frustration begins. Personally, I don&amp;#8217;t know how it is legal to advertise a &amp;#8221;$25/month&amp;#8221; cell phone plan, when after you add the features needed to make the phone usable (I don&amp;#8217;t believe a cell phone is any use without voicemail, call display, call waiting and call forwarding, along with several hundred text messages) &amp;#8211; plus add a bunch of special System Access Fees and 911 Fees and Random Other Fees &amp;#8211; our two &amp;#8221;$25/month&amp;#8221; plans total over $100/month, &lt;span class="caps"&gt;WITHOUT&lt;/span&gt; going over our minutes. How is this legitimate? How does this have any semblance of reason at all? While I lived in Singapore, I had a cell phone plan with 200 minutes, unlimited incoming text and 1000 outgoing text, voice mail, call display and call forwarding (plus the phone was free) &amp;#8211; for &lt;span class="caps"&gt;SGD&lt;/span&gt; $18.90 / month (about $14 Canadian dollars).&lt;/p&gt;&lt;p&gt;The reason I am writing this now, is because in addition to being frustrated to the point of being near furious with my existing phone plans, your recent addition of the iPhone, and the voice/data plans associated to them are downright laughable.&lt;/p&gt;&lt;p style="float:center"&gt;&lt;img src="/files/value_pack.png" alt="" /&gt;&lt;/p&gt;&lt;p style="text-align:center;"&gt;&lt;em&gt;Oh, it&amp;#8217;s a value pack, alright&lt;/em&gt;&lt;/p&gt;&lt;p&gt;Then, the idea that you can advertise a &amp;#8220;Value Pack&amp;#8221; &amp;#8211; which basically includes Call Display and a few text messages, for &lt;strong&gt;&lt;span class="caps"&gt;FIFTEEN DOLLARS A MONTH&lt;/span&gt;&lt;/strong&gt; &amp;#8211; is verging on absurd. There aren&amp;#8217;t even words in the English language to describe how much &amp;#8220;Value&amp;#8221; that package does &lt;span class="caps"&gt;NOT&lt;/span&gt; deliver. Actually, if you have the time and generosity to reply, I would love to hear how you can describe this as a &amp;#8220;Value Pack&amp;#8221; at all. It seems to me that this package should cost about $5/month. Rogers, however, is charging 300% of that. Then there is the interesting idea that your base plans give us &amp;#8220;Bonus Text Messages&amp;#8221;. Oh Yay! Seventy-five &amp;#8220;Bonus Text Messages&amp;#8221; with my $60/month voice plan that&amp;#8217;s going to cost me ~$70.82/month after all my special fees are added.&lt;/p&gt;&lt;p style="float:center"&gt;&lt;img src="/files/bonus_text_messages.png" alt="" /&gt;&lt;/p&gt;&lt;p style="text-align:center;"&gt;&lt;em&gt;Would you like some &amp;#8216;bonus&amp;#8217; text messages with that kick in the face?&lt;/em&gt;&lt;/p&gt;&lt;p&gt;I&amp;#8217;m also quite confused and perturbed as to how you offer Visual Voicemail as standard with an iPhone (as it should be) &amp;#8211; but don&amp;#8217;t offer Call Display as part of the base package. How does it make sense that I can watch my phone ring, have no idea who&amp;#8217;s calling, wait for the call to go to voicemail, &lt;span class="caps"&gt;NOT&lt;/span&gt; know who&amp;#8217;s calling unless I subscribe to some $15/month &amp;#8220;Value Pack&amp;#8221;, or purchase Call Display for &lt;strong&gt;$7/month&lt;/strong&gt;, but &lt;em&gt;after&lt;/em&gt; the person leaves me a voicemail, I can see on screen who called me. Does that make &lt;em&gt;any sense at all&lt;/em&gt;? To &lt;em&gt;anybody&lt;/em&gt;?&lt;/p&gt;&lt;p&gt;I can&amp;#8217;t even describe how much of a marketing debacle the launch of the iPhone has been for Rogers. To have a &amp;#8220;something special is coming July 11&amp;#8221; banner on your web site, for days, along with no plan information is one of the biggest marketing blunders I&amp;#8217;ve ever seen. The iPhone was essentially a product of infinite value, handed to you by Apple. I believe that the iPhone could have actually been a turning point for Rogers. A turning point where your company decided that actually caring for and listening to customers was more important than corporate greed. You could have advertised that phone 38 ways from Wednesday, and had customers lined up out the doors for miles, handing you hundreds and thousands of dollars, millions of dollars, in three year contracts to get their hands on it &amp;#8211; and you could have offered us decent prices, decent plans, and a semblance of fairness. But instead, Rogers took their monopoly, completely botched the largest marketing opportunity their company has seen in the past decade, &lt;span class="caps"&gt;AND&lt;/span&gt; decided to kick their customers in the teeth all in one foul swoop.&lt;/p&gt;&lt;p&gt;I am sick and tired of being gouged on my cell phone plans and random service charges. I am so sick and tired of customer support that can&amp;#8217;t answer my questions. I&amp;#8217;m sick and tired of trying to get my Call Forwarding to work, and finally getting through to a technical support person telling me &amp;#8220;Oh, sorry, our $3/month call forwarding is &lt;em&gt;broken&lt;/em&gt; right now, I have to set you up with our $2/month call forwarding.&amp;#8221; (I wish I could say that &lt;em&gt;wasn&amp;#8217;t&lt;/em&gt; a true story).&lt;/p&gt;&lt;p&gt;Please, for the love of all things holy and good in this world, make a change. Make a difference. Do something for your customers. For once. Please. Prove to us that you actually listen, that you actually care, and that the voice of the customers can actually make a difference. Prove me wrong.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Get rid of the crazy &amp;#8220;System Access Fee&amp;#8221;. &lt;/li&gt;&lt;li&gt;Give us fair rates for our iPhones. &lt;/li&gt;&lt;li&gt;Stop pretending that $15/month constitutes an &amp;#8220;iPhone Value Pack&amp;#8221;. There is no value to be found in that package at all.&lt;/li&gt;&lt;li&gt;Give us fair rates for unlimited data, for all phones, not just iPhones.&lt;/li&gt;&lt;li&gt;Start modeling your business after other companies who care for and listen to their customers.&lt;/li&gt;&lt;li&gt;Start modeling your business after other companies who care for and listen to their customers.&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;That&amp;#8217;s when I&amp;#8217;ll sign a 3 year contract. That&amp;#8217;s when I&amp;#8217;ll line up at 5am, and wait 83 hours if I have to, to get my iPhone.&lt;/p&gt;&lt;p&gt;Please. Listen to us. Prove me wrong.&lt;/p&gt;</description>
      <category domain="http://humandoing.net/past/tags/apple">apple</category>
      <category domain="http://humandoing.net/past/tags/business">business</category>
      <category domain="http://humandoing.net/past/tags/rants">rants</category>
    </item>
    <item>
      <title>On Estimating - What Kind of Risk Do You Prefer?</title>
      <link>http://humandoing.net/past/2008/7/8/on_estimating_what_kind_of/</link>
      <pubDate>Tue, 08 Jul 2008 00:13:00 GMT</pubDate>
      <guid>http://humandoing.net/past/2008/7/8/on_estimating_what_kind_of/</guid>
      <author>daniel@humandoing.net (Daniel Wintschel)</author>
      <description>&lt;p&gt;Estimating development time of software is one of my least favorite things to do. Usually, I&amp;#8217;m pretty good at it, but that doesn&amp;#8217;t change the fact that it&amp;#8217;s&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Time consuming&lt;/li&gt;&lt;li&gt;Often grossly inaccurate&lt;/li&gt;&lt;li&gt;Usually done while flying by the seat of your pants, with a marginal (at best) understanding of the functionality that you need to estimate.&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;I&amp;#8217;ve always been a pessimistic estimator, and it&amp;#8217;s something that people I&amp;#8217;ve worked with for a long time understand and appreciate (even if they make fun of me for it, at times).&lt;/p&gt;&lt;p&gt;Some people might think it&amp;#8217;s crazy to be a pessimistic estimator, because any estimate that you give to a client that&amp;#8217;s padded by 50 or 100% is potentially going to be high. It might be a &lt;em&gt;lot&lt;/em&gt; higher than some other shop who might totally low-ball an estimate just to land a contract.&lt;/p&gt;&lt;p&gt;In my opinion, in my way of doing business, &lt;strong&gt;the risk of a dissatisfied customer from a blown budget due to a low-ball estimate is &lt;em&gt;significantly&lt;/em&gt; greater than the risk of losing a few contracts because of pessimistic estimates&lt;/strong&gt;.&lt;/p&gt;&lt;p&gt;I would rather estimate high and exceed expectations by coming in well under budget; even if it means that I lose some work along the way because someone felt my estimates were too high.&lt;/p&gt;</description>
      <category domain="http://humandoing.net/past/tags/business">business</category>
      <category domain="http://humandoing.net/past/tags/entrepreneurial">entrepreneurial</category>
      <category domain="http://humandoing.net/past/tags/management">management</category>
      <category domain="http://humandoing.net/past/tags/softwaredevelopment">softwaredevelopment</category>
    </item>
    <item>
      <title>JavaScript Menu Appearing Behind Flash Object</title>
      <link>http://humandoing.net/past/2008/6/27/javascript_menu_appearing_behind_flash/</link>
      <pubDate>Thu, 26 Jun 2008 18:27:00 GMT</pubDate>
      <guid>http://humandoing.net/past/2008/6/27/javascript_menu_appearing_behind_flash/</guid>
      <author>daniel@humandoing.net (Daniel Wintschel)</author>
      <description>&lt;p&gt;Yes. It&amp;#8217;s 1:26 am, and I&amp;#8217;m working on stuff. Really, I&amp;#8217;d like to be in bed. Asleep. And I&amp;#8217;d like to stay there for three days.&lt;/p&gt;&lt;p&gt;But alas, instead, if you are having problems with dropdown JavaScript menus appearing &lt;span class="caps"&gt;BEHIND&lt;/span&gt; a Flash object, try adding this to the parameters you&amp;#8217;re passing to the Flash object:&lt;/p&gt;&lt;pre&gt;&lt;code&gt;wmode="transparent" &lt;br/&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Or if you&amp;#8217;re using &lt;a href="http://code.google.com/p/swfobject/"&gt;SWFObject&lt;/a&gt;, you can do something like this instead:&lt;/p&gt;&lt;pre&gt;&lt;code&gt;var so = new SWFObject("crappy.swf", "crappy_swf", "100%", "100%", "9", "#ffffff");&lt;br/&gt;so.addParam("wmode", "transparent");&lt;br/&gt;so.write("flash");&lt;br/&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Maybe that will save you some headaches. It saved me some.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;span class="caps"&gt;UPDATE&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;Apparently it might be better to use&lt;/p&gt;&lt;pre&gt;&lt;code&gt;wmode="opaque" &lt;br/&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Apparently it&amp;#8217;s less &lt;span class="caps"&gt;CPU&lt;/span&gt; intensive, and it seems to do the same job (that&amp;#8217;s how it worked for me, anyway). I believe the differences are as follows:&lt;/p&gt;&lt;p&gt;Opaque makes Flash behave like any other page element, allowing you to easily float content over it using JavaScript and &lt;span class="caps"&gt;DHTML&lt;/span&gt;.&lt;/p&gt;&lt;p&gt;Transparent makes the page background underneath the Flash video appear through any transparent areas of the Flash video.&lt;/p&gt;</description>
      <category domain="http://humandoing.net/past/tags/javascript">javascript</category>
      <category domain="http://humandoing.net/past/tags/softwaredevelopment">softwaredevelopment</category>
      <category domain="http://humandoing.net/past/tags/tipsandcodeandstuff">tipsandcodeandstuff</category>
    </item>
    <item>
      <title>Email From Bill Gates</title>
      <link>http://humandoing.net/past/2008/6/25/email_from_bill_gates/</link>
      <pubDate>Wed, 25 Jun 2008 03:19:00 GMT</pubDate>
      <guid>http://humandoing.net/past/2008/6/25/email_from_bill_gates/</guid>
      <author>daniel@humandoing.net (Daniel Wintschel)</author>
      <description>&lt;p&gt;There is an awesome article over at seattlepi.com containing the text of &lt;a href="http://blog.seattlepi.nwsource.com/microsoft/archives/141821.asp"&gt;an email written by Mr. Gates&lt;/a&gt; regarding his experience trying to download and install &lt;a href="http://en.wikipedia.org/wiki/Windows_Movie_Maker"&gt;MovieMaker&lt;/a&gt; on his computer. The email really cracked me up, and I think it&amp;#8217;s worth a read.&lt;/p&gt;&lt;p&gt;It&amp;#8217;s probably also worth noting, that instead of all that rig-a-ma-roll, one could just &lt;a href="http://apple.com/getamac"&gt;buy a Mac&lt;/a&gt; (which happens to include iLife, which includes iMovie). The Surgeon General agrees that my strategy would keep your blood pressure a lot lower, &lt;em&gt;and&lt;/em&gt; increase your life expectancy by about 10 years.&lt;/p&gt;</description>
      <category domain="http://humandoing.net/past/tags/apple">apple</category>
      <category domain="http://humandoing.net/past/tags/funny">funny</category>
      <category domain="http://humandoing.net/past/tags/lifeingeneral">lifeingeneral</category>
    </item>
    <item>
      <title>Ultra Premium... Indeed.</title>
      <link>http://humandoing.net/past/2008/6/17/ultra_premium_indeed/</link>
      <pubDate>Tue, 17 Jun 2008 01:50:00 GMT</pubDate>
      <guid>http://humandoing.net/past/2008/6/17/ultra_premium_indeed/</guid>
      <author>daniel@humandoing.net (Daniel Wintschel)</author>
      <description>&lt;p&gt;I got a good laugh yesterday at the Amazon reviews page for the Denon &lt;a href="http://usa.denon.com/ProductDetails/3429.asp"&gt;Ultra Premium Link Cable&lt;/a&gt; (aka &amp;#8211; 1.5 meter &lt;span class="caps"&gt;CAT5&lt;/span&gt;) &amp;#8211; selling for the &lt;span class="caps"&gt;MSRP&lt;/span&gt; of $499. That&amp;#8217;s right, $499.&lt;/p&gt;&lt;p&gt;If you need something to laugh at on this rather grey-looking Tuesday, I highly recommend the amazingly insightful &lt;a href="http://www.amazon.com/gp/product/B000I1X6PM/ref=cm_cr_pr_product_top"&gt;reviews over at Amazon&lt;/a&gt;, including what this gentleman had to say:&lt;/p&gt;&lt;blockquote&gt;&lt;p&gt;After I took delivery of my $500 Denon &lt;span class="caps"&gt;AKDL1&lt;/span&gt; Cat-5 uber-cable, Al Gore was mysteriously drawn to my home, where he pronounced that Global Warming had been suspended in my vicinity.&lt;/p&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&lt;p&gt;Yes, I had perfect weather: no flooding, no tornadoes, the exact amount of rain necessary, and he pronounced sea levels exactly right and that they were not going to rise within five miles of my house.&lt;/p&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&lt;p&gt;Additionally, my cars began achieving 200 mpg and I didn&amp;#8217;t even need gasoline. I was able to put three grams of cat litter into the tank and drive forever.&lt;/p&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&lt;p&gt;What&amp;#8217;s more, the atmosphere inside my home became 93% oxygen and virtually no carbon dioxide. In fact, I now exhale oxygen.&lt;/p&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&lt;p&gt;One heck of a cable.&lt;/p&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&lt;p&gt;Didn&amp;#8217;t notice any improvement in audio quality though.&lt;/p&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&lt;p&gt;The $800 Apple iCable is clearly superior.&lt;/p&gt;&lt;/blockquote&gt;</description>
      <category domain="http://humandoing.net/past/tags/funny">funny</category>
    </item>
    <item>
      <title>Why Kiva is Cool</title>
      <link>http://humandoing.net/past/2008/5/15/why_kiva_is_cool/</link>
      <pubDate>Thu, 15 May 2008 02:54:00 GMT</pubDate>
      <guid>http://humandoing.net/past/2008/5/15/why_kiva_is_cool/</guid>
      <author>daniel@humandoing.net (Daniel Wintschel)</author>
      <description>&lt;p&gt;If any of you read &lt;a href="http://www.inc.com"&gt;Inc.com&lt;/a&gt; you might have already seen this, but for those of you who don&amp;#8217;t &amp;#8211; read on.&lt;/p&gt;&lt;p&gt;One of the reasons I&amp;#8217;m publishing this is to encourage people to lend money to entrepreneurs around the world using &lt;a href="http://www.kiva.org"&gt;Kiva&lt;/a&gt;. A second reason is that this is an awesome story out of a country that was probably my favorite place in the entire world to visit.&lt;/p&gt;&lt;p&gt;Cambodia is a war-torn country, and the people still seem to live in daily fear that at any moment the &lt;a href="http://en.wikipedia.org/wiki/Khmer_Rouge"&gt;Khmer Rouge&lt;/a&gt; could return to destroy and oppress once again. So seeing this glimmer of hope from an &lt;a href="http://www.inc.com/articles/2008/05/kiva.html"&gt;entrepreneur in Cambodia&lt;/a&gt; really seemed to make my day. And if the fact that this family is able to make $400 per month in their business seems like peanuts to you, remember that most of the population lives off of about $350 per &lt;em&gt;year&lt;/em&gt;.&lt;/p&gt;</description>
      <category domain="http://humandoing.net/past/tags/entrepreneurial">entrepreneurial</category>
      <category domain="http://humandoing.net/past/tags/lifeingeneral">lifeingeneral</category>
    </item>
    <item>
      <title>CodeIgniter .htaccess file not working on Mac OS X</title>
      <link>http://humandoing.net/past/2008/5/7/codeigniter_htaccess_file_not_working/</link>
      <pubDate>Wed, 07 May 2008 02:11:00 GMT</pubDate>
      <guid>http://humandoing.net/past/2008/5/7/codeigniter_htaccess_file_not_working/</guid>
      <author>daniel@humandoing.net (Daniel Wintschel)</author>
      <description>&lt;p&gt;If you&amp;#8217;re using CodeIgniter on Mac &lt;span class="caps"&gt;OS X&lt;/span&gt;, and you have a &lt;code&gt;.htaccess&lt;/code&gt; file that looks &lt;em&gt;something&lt;/em&gt; like this:&lt;/p&gt;&lt;pre&gt;&lt;code&gt;RewriteEngine on&lt;br/&gt;RewriteCond %{REQUEST_FILENAME} !-d&lt;br/&gt;RewriteCond %{REQUEST_FILENAME} !-f&lt;br/&gt;RewriteRule ^(.*)$ index.php?/$1 [L]&lt;br/&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;If you&amp;#8217;re finding that it doesn&amp;#8217;t seem to be working, and you&amp;#8217;re getting 404&amp;#8217;s when trying to access any controller other than the front controller, you might want to check on your main &lt;code&gt;httpd.conf&lt;/code&gt; file to make sure that you don&amp;#8217;t have an &lt;code&gt;AllowOverride None&lt;/code&gt; that is preventing your &lt;code&gt;.htaccess&lt;/code&gt; directives from being executed.&lt;/p&gt;&lt;p&gt;The main apache configuration file on Leopard is here:&lt;/p&gt;&lt;pre&gt;&lt;code&gt;/private/etc/apache2/httpd.conf&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Hopefully this saves someone a couple of hours and a couple of Tylenol.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Your License To Code PHP Has Been Revoked</title>
      <link>http://humandoing.net/past/2008/4/9/your_license_to_code_php/</link>
      <pubDate>Wed, 09 Apr 2008 08:03:00 GMT</pubDate>
      <guid>http://humandoing.net/past/2008/4/9/your_license_to_code_php/</guid>
      <author>daniel@humandoing.net (Daniel Wintschel)</author>
      <description>&lt;p&gt;It&amp;#8217;s a typical story. Dan on a rescue mission, fixing a mess that some clown(s) left behind. &lt;span class="caps"&gt;PHP&lt;/span&gt;. No framework to speak of, riddled with &lt;span class="caps"&gt;SQL&lt;/span&gt; injection holes, a &lt;span class="caps"&gt;TABLE&lt;/span&gt;-based layout &amp;#8211; and it doesn&amp;#8217;t get any better from there.&lt;/p&gt;&lt;p&gt;For the love of all things holy, why do people have to do stuff like this:&lt;/p&gt;&lt;pre&gt;&lt;code&gt;$sql = "SELECT user_id,user_status FROM users WHERE user_name='$username' AND user_password='$p'";&lt;br/&gt;$r = mysql_fetch_assoc(mysql_query($sql));&lt;br/&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;For the record, &lt;code&gt;$username&lt;/code&gt; and &lt;code&gt;$p&lt;/code&gt; were just grabbed right out of &lt;code&gt;$_POST&lt;/code&gt;.&lt;/p&gt;&lt;p&gt;If you spent 30 seconds to write even a crappy inefficient function to actually do something intelligent, not only would you not have code that&amp;#8217;s riddled with &lt;span class="caps"&gt;SQL&lt;/span&gt; injection vulnerabilities (did I mention that this snippet of joy came out of a 3112 line file without a &lt;span class="caps"&gt;SINGLE&lt;/span&gt; comment?), but it might actually make your life easier because your code won&amp;#8217;t suck so much &amp;#8211; and you can stop repeating yourself.&lt;/p&gt;&lt;p&gt;I&amp;#8217;m no 1337 &lt;span class="caps"&gt;PHP&lt;/span&gt; h4&amp;#215;0r, but how about &amp;#8211; oh, I don&amp;#8217;t know &amp;#8211; something like this:&lt;/p&gt;&lt;pre&gt;&lt;code&gt;function fetch_associative_array_safely( $array ){&lt;br/&gt;  $sql = $array[0];&lt;br/&gt;  foreach ($array as $index =&amp;gt; $value) {&lt;br/&gt;    $sql = str_replace( "?".$index, addslashes($value), $sql );&lt;br/&gt;  }&lt;br/&gt;  return mysql_fetch_assoc( mysql_query( $sql ) );&lt;br/&gt;}&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;And just execute that bad boy like so:&lt;/p&gt;&lt;pre&gt;&lt;code&gt;$r = fetch_associative_array_safely( &lt;br/&gt;      array( "SELECT user_id, user_status FROM users WHERE user_name='?1' AND user_password='?2'", &lt;br/&gt;             $username, $p) );&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;It&amp;#8217;s not overly elegant, beautiful or efficient. But I don&amp;#8217;t think that really matters. It helps me to not repeat myself, and by golly &amp;#8211; at least someone can&amp;#8217;t drop tables from my database anymore. It&amp;#8217;s a bit Rails-esque, at least as far the the &lt;code&gt;conditions&lt;/code&gt; portion of &lt;code&gt;ActiveRecord::Base.find(...)&lt;/code&gt;.&lt;/p&gt;&lt;p&gt;What do you think? I haven&amp;#8217;t done any &lt;em&gt;significant&lt;/em&gt; PHP coding in years.&lt;/p&gt;</description>
      <category domain="http://humandoing.net/past/tags/pain">pain</category>
      <category domain="http://humandoing.net/past/tags/php">php</category>
      <category domain="http://humandoing.net/past/tags/question">question</category>
      <category domain="http://humandoing.net/past/tags/rants">rants</category>
      <category domain="http://humandoing.net/past/tags/softwaredevelopment">softwaredevelopment</category>
    </item>
    <item>
      <title>Firefly</title>
      <link>http://humandoing.net/past/2008/4/4/firefly/</link>
      <pubDate>Fri, 04 Apr 2008 01:19:00 GMT</pubDate>
      <guid>http://humandoing.net/past/2008/4/4/firefly/</guid>
      <author>daniel@humandoing.net (Daniel Wintschel)</author>
      <description>&lt;p&gt;I wanted to make a totally off-of-normal-topics entry regarding what I consider to be the greatest television show of all time.&lt;/p&gt;&lt;p&gt;It just so happens there is a very aptly timed &lt;a href="http://xkcd.com/406/"&gt;xkcd&lt;/a&gt; sort of on the same topic (at least the &amp;#8220;I can kill you with my brain&amp;#8221; part).&lt;/p&gt;&lt;p&gt;Carly and I have been watching the first (only) season on &lt;span class="caps"&gt;DVD&lt;/span&gt; again, and each and every episode has me bursting forth with some form of &amp;#8220;MAN! This is the best TV show &lt;span class="caps"&gt;EVER&lt;/span&gt;!&amp;#8221; or another.&lt;/p&gt;&lt;p&gt;It continues to amaze me that Fox pulled this off the air, I&amp;#8217;m pretty sure that &lt;span class="caps"&gt;THAT&lt;/span&gt; was a crime against humanity.&lt;/p&gt;&lt;p&gt;Sigh.&lt;/p&gt;</description>
      <category domain="http://humandoing.net/past/tags/lifeingeneral">lifeingeneral</category>
      <category domain="http://humandoing.net/past/tags/thoughts">thoughts</category>
    </item>
  </channel>
</rss>
