<?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>ARLOdesign&#174; &#187; BLOG &#187; Meta</title>
	<atom:link href="http://arlodesign.com/blog/category/meta/feed/" rel="self" type="application/rss+xml" />
	<link>http://arlodesign.com/blog</link>
	<description>Arlo's idle ramblings.</description>
	<lastBuildDate>Fri, 19 Nov 2010 20:10:28 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>Why I&#8217;m Building My Own Site</title>
		<link>http://arlodesign.com/blog/2008/07/13/why-im-building-my-own-site/</link>
		<comments>http://arlodesign.com/blog/2008/07/13/why-im-building-my-own-site/#comments</comments>
		<pubDate>Mon, 14 Jul 2008 01:43:17 +0000</pubDate>
		<dc:creator>Arlo</dc:creator>
				<category><![CDATA[Meta]]></category>
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://arlodesign.com/blog/?p=26</guid>
		<description><![CDATA[I should preface this post by saying that this will be the first of many very nerdy posts. This site isn&#8217;t completely done because I&#8217;m building it from scratch using CodeIgniter. By programming the site myself, I can make exactly what I want and hopefully apply it to future projects. I will be documenting some [...]]]></description>
			<content:encoded><![CDATA[<p>I should preface this post by saying that this will be the first of many <em>very</em> nerdy posts. This site isn&#8217;t completely done because I&#8217;m building it from scratch using <a href="http://www.codeigniter.com/">CodeIgniter</a>. By programming the site myself, I can make exactly what I want and hopefully apply it to future projects. I will be documenting some of my bigger <em>A-HA!</em> moments here on the blog. You have been warned.</p>
<p>I want to hone my skills as a programmer, but the truth is: every off-the-shelf CMS out there tends to be overkill for what I want to do or is too blog-centric. In the case of my portfolio, I want a CMS that presents me with a place to put my description and a place to put files, and be done with it. Another CMS would require me to shoehorn how I want my portfolio to appear into a template that I have to fill out, and then that content becomes harder to reuse later. That&#8217;s why I have  a <tt>portfolio</tt> controller and a <tt>portfolio</tt> model in CodeIgniter, as well as separate <tt>portfolio</tt> and <tt>files</tt> tables in the database. I could completely redesign the portfolio section a year from now and not worry about having to change any of the content.</p>
<p>This weekend, I found myself needing to bend CodeIgniter to my will. That I was actually able to showed me how much I like its malleability over other frameworks.</p>
<p>I created a new <tt>pages</tt> database for all of that static content that every site has, like the <a href="/about/">About ARLOdesign&reg;</a> page. I created a <tt>page</tt> controller, put the code to pull the appropriate page in the <tt>index</tt> function,  and then made a route:</p>
<p><code>$route['about'] = 'page/index/about';</code></p>
<p>That worked dandy, but it got me thinking: What if I add a new page? Does that mean I have to add a new route every time? I can&#8217;t expect another user who might want to use my application to edit their own routes; that&#8217;d be silly. Shouldn&#8217;t everything be a page unless I specifically create a controller to do something special? Wouldn&#8217;t it make more sense if:</p>
<ol>
<li>CodeIgniter checks to see if a controller exists.</li>
<li>If a controller doesn&#8217;t exist, send the request to the <tt>page</tt> controller.</li>
<li>If the requested page doesn&#8217;t exist, send a 404 message.</li>
</ol>
<p>It took awhile, but I ultimately came up with the solution.</p>
<p>Obviously, CodeIgniter has to see if a controller exists: it&#8217;s in the Router.php library. I found <a href="http://codeigniter.com/forums/viewthread/82501/P15/#415663">this post</a>. Now I have MY_Router.php sending requests to the <tt>page</tt> controller with:</p>
<p><code>return array('page', 'index', $segments[0]);</code></p>
<p>Problem solved, right? Except for one caveat: I wanted a <em>custom</em> 404 page, and I wanted that page content to also be editable from the <tt>pages</tt> database table. Now it gets fun. It was easy to have <tt>page</tt> controller return the 404 page if the database query returned zero results, but what about the <tt>portfolio</tt> controller? I can&#8217;t just redirect the user to a 404 page because the URL in the browser would change, preventing the user from saying, &#8220;Oh, there&#8217;s a typo&#8221; or something.</p>
<p>Ultimately, the answer was to create MY_Exceptions.php and extend the <tt>show_404</tt> function. I copied my code from the <tt>page</tt> controller and loaded the 404 page. Sure, there&#8217;s probably a better way than having to copy and paste code like that, but it seemed like a great, quick hack to accomplish what I needed. It also required an even uglier hack to actually display the views, invoking the output class manually. It worked, but <a href="http://codeigniter.com/forums/viewthread/85067/">I think it can be improved</a>. <strong>UPDATE:</strong> <a href="http://codeigniter.com/forums/viewthread/85067/#428663">It became a library.</a></p>
<p>The point of all this: I learned more about how my site will operate than I did before. I learned some new skills, and I have more to be proud of on this site than just the content. That&#8217;s pretty damn satisfying. That&#8217;s why I&#8217;m building my own site: because when it&#8217;s exactly what I want it to be, it means I learned a lot on the way.</p>
<p>FYI: The blog is running in WordPress, but that&#8217;s temporary. I seriously plan to replace it, as WordPress really is more than I need.</p>
]]></content:encoded>
			<wfw:commentRss>http://arlodesign.com/blog/2008/07/13/why-im-building-my-own-site/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The Site Finishes Kindergarten</title>
		<link>http://arlodesign.com/blog/2008/06/15/the-site-finishes-kindergarten/</link>
		<comments>http://arlodesign.com/blog/2008/06/15/the-site-finishes-kindergarten/#comments</comments>
		<pubDate>Mon, 16 Jun 2008 02:56:08 +0000</pubDate>
		<dc:creator>Arlo</dc:creator>
				<category><![CDATA[Meta]]></category>

		<guid isPermaLink="false">http://arlodesign.com/blog/?p=13</guid>
		<description><![CDATA[I&#8217;m anxious to start writing about things other than updating you on the development of the site. However, some major hurdles have been overcome, and I can finally take that strikethrough off of the Portfolio link. Descriptions need to be written. Pieces still need to be photographed. My code needs more error checking. I liken [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m anxious to start writing about things <strong>other</strong> than updating you on the development of the site. However, some major hurdles have been overcome, and I can finally take that strikethrough off of the Portfolio link. Descriptions need to be written. Pieces still need to be photographed. My code needs more error checking. I liken the site right now to a student finishing Kindergarten &#8212; it can count to ten and use words to express feelings but still occasionally wets the bed. </p>
<p>A seasoned programmer would have had this done months ago, I know. Considering that I&#8217;ve built websites with database backends before, my wife also figured I would have had this done months ago. However, I&#8217;m a novice at best. This time, I wanted to to it <em>right</em>. I have PHP.net, jQuery.com, the CodeIgniter user guide and forums, and Google all open on any given Sunday.</p>
<p>The truth is, writing code is a leisure activity for me. Some people do crossword puzzles; I write MySQL queries. When real heavy lifting needs to be done, I leave it to <a href="http://grailinteractive.com">the professionals</a>.</p>
<p>More to come soon. And this week, I might even write about something else. How novel.</p>
]]></content:encoded>
			<wfw:commentRss>http://arlodesign.com/blog/2008/06/15/the-site-finishes-kindergarten/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>I &#9829; the Future</title>
		<link>http://arlodesign.com/blog/2008/05/04/i-the-future/</link>
		<comments>http://arlodesign.com/blog/2008/05/04/i-the-future/#comments</comments>
		<pubDate>Mon, 05 May 2008 02:40:35 +0000</pubDate>
		<dc:creator>Arlo</dc:creator>
				<category><![CDATA[Meta]]></category>

		<guid isPermaLink="false">http://arlodesign.com/blog/?p=10</guid>
		<description><![CDATA[There&#8217;s a lot of crossed out links over there on the left. I&#8217;m sure it is with great sadness that you have clicked those links, only to find yourself back where you started. Rest assured those links are getting populated. And they&#8217;re gonna be fancy. In the meantime, those of you who have arrived looking [...]]]></description>
			<content:encoded><![CDATA[<p>There&#8217;s a lot of crossed out links over there on the left. I&#8217;m sure it is with great sadness that you have clicked those links, only to find yourself back where you started.</p>
<p>Rest assured those links are getting populated. And they&#8217;re gonna be <em>fancy</em>.</p>
<p>In the meantime, those of you who have arrived looking for some information about me and what I can do, here&#8217;s <a href="/files/resume_ARLOdesign.pdf">my resume</a> and <a href='/files/samples_ARLOdesign.pdf'>some samples of my work</a> (both are PDFs):</p>
<p><a href='/files/samples_ARLOdesign.pdf'><img src="http://arlodesign.com/blog/wp-content/uploads/2008/05/samples_arlodesign-1-534x534.jpg" alt="Work Samples" title="ARLOdesign Samples" width="534" height="534" class="alignnone size-medium wp-image-11" /></a></p>
<p>Thanks for your patience, and pardon our dust, and blah-blah-blah. Trust me: by the end of this month, this site will be <em>resplendent</em>.</p>
]]></content:encoded>
			<wfw:commentRss>http://arlodesign.com/blog/2008/05/04/i-the-future/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>A Messy, Painful Birth</title>
		<link>http://arlodesign.com/blog/2008/05/01/birth/</link>
		<comments>http://arlodesign.com/blog/2008/05/01/birth/#comments</comments>
		<pubDate>Thu, 01 May 2008 23:04:04 +0000</pubDate>
		<dc:creator>Arlo</dc:creator>
				<category><![CDATA[Meta]]></category>

		<guid isPermaLink="false">http://localhost/blog/?p=9</guid>
		<description><![CDATA[Perhaps that&#8217;s the wrong note on which to kick off my new website, but it&#8217;s the truth. At least I have nowhere to go but up. I committed to the May 1 Reboot. I didn&#8217;t get as far as I would like. The sidebar is a mess and the portfolio section isn&#8217;t done. At least [...]]]></description>
			<content:encoded><![CDATA[<p>Perhaps that&#8217;s the wrong note on which to kick off my new website, but it&#8217;s the truth. At least I have nowhere to go but up.</p>
<p>I committed to the <a href="http://www.may1reboot.com/2008/">May 1 Reboot</a>. I didn&#8217;t get as far as I would like. The sidebar is a mess and the portfolio section isn&#8217;t done.</p>
<p>At least my new design is here for the world to see, though. I&#8217;ve only seen a few actual ugly babies in my life. Mostly, they&#8217;re adorable. Next thing you know, they&#8217;re adults. They grow up so fast, y&#8217;know.</p>
<p>I had originally titled this post &#8220;Fail.&#8221; But as I wrote, I realized that this isn&#8217;t a failure after all. Babies enter this world covered in goo and confused, so perhaps launching this new site in such an incomplete state really is the most appropriate way to go about it. Like most parents, I&#8217;m not sure what direction this is going to go in. My <a href="http://likeyoureallycare.arlodesign.com/">last blog</a> went in directions I never dreamed of. The new ARLOdesign, just now opening its eyes, may not know everything it needs to know yet about navigating the world, but at least it has ten fingers and ten toes.</p>
<p>To the few of you who have stopped by to peer through the glass and see the little blue knit cap wrapped around this new site&#8217;s bald little head, welcome. It&#8217;s great to be alive.</p>
<p>(This site has so far only been tested in Safari and Firefox 2. I&#8217;ve glanced at it in IE7 and seems okay, but I&#8217;m pretty sure IE6 is a total mess. Don&#8217;t worry&mdash;it&#8217;s all on the list.)</p>
]]></content:encoded>
			<wfw:commentRss>http://arlodesign.com/blog/2008/05/01/birth/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

