<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet href="http://feeds.feedburner.com/~d/styles/rss2full.xsl" type="text/xsl" media="screen"?><?xml-stylesheet href="http://feeds.feedburner.com/~d/styles/itemcontent.css" type="text/css" media="screen"?><rss 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:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>Coder Daddy</title>
	
	<link>http://cdbdesign.net</link>
	<description>Thoughts on software, daddyhood, and randomnesses</description>
	<pubDate>Mon, 20 Oct 2008 07:58:55 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.6.2</generator>
	<language>en</language>
			<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" href="http://feeds.feedburner.com/CoderDaddy" type="application/rss+xml" /><item>
		<title>Politics, balancing rocks, and a blogger confessional</title>
		<link>http://feeds.feedburner.com/~r/CoderDaddy/~3/426191045/</link>
		<comments>http://cdbdesign.net/2008/10/20/politics-balancing-rocks-and-blogger-confessional/#comments</comments>
		<pubDate>Mon, 20 Oct 2008 07:57:02 +0000</pubDate>
		<dc:creator>cameron</dc:creator>
		
		<category><![CDATA[General]]></category>

		<category><![CDATA[Web Technology]]></category>

		<category><![CDATA[interesting]]></category>

		<category><![CDATA[podcasts]]></category>

		<category><![CDATA[politics]]></category>

		<guid isPermaLink="false">http://cdbdesign.net/?p=52</guid>
		<description><![CDATA[&#8220;It&#8217;s been two weeks since my last weekly roundup.&#8221; That feels like a confession&#8230;.(and maybe a misnomer)&#8230;I&#8217;ll have to get over my own hangups about the kind of blogger I should be, and just go with the flow of what works for me. It&#8217;s been a busy couple weeks with (a) people visiting, and (b) [...]]]></description>
			<content:encoded><![CDATA[<p>&#8220;It&#8217;s been two weeks since my last weekly roundup.&#8221; That feels like a confession&#8230;.(and maybe a misnomer)&#8230;I&#8217;ll have to get over my own hangups about the kind of blogger I should be, and just go with the flow of what works for me. It&#8217;s been a busy couple weeks with (a) people visiting, and (b) my first trip away from home since Gaelen was born (two words: &#8220;Missed Him&#8221;, three words: &#8220;Hugely Missed Him&#8221;).</p>
<p>The trip itself was a <a href="http://www.zazengo.com/">Zazengo</a> team retreat though, super productive, and more thoughts will come out in this blog over the next weeks, specifically about Facebook Apps (hint, hint).</p>
<p><strong>Politics are my thing, temporarily</strong></p>
<p>Politics are not usually &#8220;my thing&#8221;. Which is to say I&#8217;m totally interested in what&#8217;s going on in politics, but I don&#8217;t tend to avidly follow stuff myself. I live by the the &#8220;if it&#8217;s important I&#8217;ll hear about it&#8221; approach, and it  tends to work well enough for me. But I&#8217;ve found a few interesting things this week in the political sphere myself, as you know, there&#8217;s kinda a big election going on.</p>
<p>First off, endorsing Obama is clearly the new black. From <a href="http://www.nytimes.com/2008/10/20/us/politics/20campaign.html?_r=1&amp;hp&amp;oref=slogin">Colin Powell</a>, to the <a href="http://www.newyorker.com/talk/comment/2008/10/13/081013taco_talk_editors">New Yorker</a>, to the <a href="http://www.chicagotribune.com/news/opinion/chi-chicago-tribune-endorsement,0,1371034.story?track=email-alert-breakingnews">Chicago Tribune</a> everybody is jumping on board the winning ship. That last endorsement is especially interesting in my mind as it has been almost 100 years since the Trib has endorsed any candidate at all! I still don&#8217;t quite get the concept of the media taking sides. It happened in Canada recently too, and that time with a <a href="http://www.reuters.com/article/usDollarRpt/idUSN1035850720081010">national newspaper</a>!</p>
<p>It was pretty fun to watch <a href="http://www.youtube.com/watch?v=iRSmQqw65Pg">McCain</a> and <a href="http://www.youtube.com/watch?v=v5SWQJWm6Tg">Obama</a> roast each other - the most candid that I&#8217;ve seen either of them. Maybe candid isn&#8217;t the right word, but there&#8217;s something nice about seeing them having fun. McCain won points for me here, for seeming less stiff and awkward than normal, and maybe almost funnier in general, though the best overall line was Obama&#8217;s &#8220;My greatest strength would be my <em>humility</em>. My greatest weakness is that it&#8217;s possible I am too <em>awesome</em>&#8221; I want that on a T-shirt!!</p>
<p>A question for you - where are you viewing your polling data? I&#8217;ve been directed to <a href="http://www.fivethirtyeight.com/">538</a> by some friends, and <a href="http://www.electoral-vote.com/">Electoral Vote</a> by some others. Interesting to see the differences at a glance.</p>
<p><strong>Sites I liked:</strong> <a href="http://zuiprezi.com"></a></p>
<p><a href="http://zuiprezi.com">Zuiprezi</a> blew me away when I <a href="http://zuiprezi.com/prezi/1064/view/#8">first came across a presentation</a> done using it. Such a fun way of showing presenting information. It could be used as a very personal &#8220;Explore Me&#8221; tool, or it could be used to do up more interesting screencasts. So many things it could be used for.</p>
<p><a href="http://productplanner.com/">Product Planner</a> seems interesting at a glance, though its hard to tell if there&#8217;s much actual useful content behind it, or if it&#8217;s just a way of putting boxes and arrows together in a web app, instead of OmniGraffle. I&#8217;m going to try it out this week to see what it feels like in a real world use case. It&#8217;s by the guys who did <a href="http://crazyegg.com/">Crazy Egg</a>, which again, seems great in theory, but we&#8217;re trying to use it right now, and its giving us a couple headaches.</p>
<p><strong>Listen and Learn</strong></p>
<p>You can see what we missed at the Future of Web Apps conference by <a href="http://events.carsonified.com/fowa/2008/london/content">watching video of everything</a>. I&#8217;m interested especially in the Facebook Connect, and Open Source Social Networking stack stuff.</p>
<p>I added a couple new podcasts to my listening list. First was the <a href="http://pivotallabs.com/talks">tech talks at Pivotal Labs</a>. So far I&#8217;ve only half listened to the one on scrum, and have learnt a few things from it. Second is the <a href="http://www.npr.org/rss/podcast/podcast_detail.php?siteId=94411890">Planet Money podcast</a> from NPR. Haven&#8217;t listened to it yet, just subscribed, but looks to be pretty interesting, especially right now of course.</p>
<p><strong>And then some more:</strong></p>
<ul>
<li>I&#8217;ve got to try <a href="http://www.37signals.com/svn/posts/1319-this-is-the-guy-who-taught-me-how-to-balance">balancing rocks</a> the next time I&#8217;m in Vancouver or Maine. Looks like it would be a really centering, focusing, calming exercise if it works. Or I guess a horribly frustrating one if it doesn&#8217;t, we&#8217;ll have to aim for the former, haha.</li>
<li>This <a href="http://gmailblog.blogspot.com/2008/10/new-in-labs-advanced-imap-controls.html">new Gmail Labs project</a> let me get rid of those damn All Mail folders that were basically duplicating everything on my local IMAP database sync&#8217;ed to gmail. Super useful immediately!</li>
</ul>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~f/CoderDaddy?a=CxhPM"><img src="http://feeds.feedburner.com/~f/CoderDaddy?i=CxhPM" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/CoderDaddy?a=y3ztm"><img src="http://feeds.feedburner.com/~f/CoderDaddy?i=y3ztm" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/CoderDaddy?a=kAu3M"><img src="http://feeds.feedburner.com/~f/CoderDaddy?i=kAu3M" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/CoderDaddy?a=qq73m"><img src="http://feeds.feedburner.com/~f/CoderDaddy?i=qq73m" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/CoderDaddy/~4/426191045" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://cdbdesign.net/2008/10/20/politics-balancing-rocks-and-blogger-confessional/feed/</wfw:commentRss>
		<feedburner:origLink>http://cdbdesign.net/2008/10/20/politics-balancing-rocks-and-blogger-confessional/</feedburner:origLink></item>
		<item>
		<title>Overcoming user entrenchment is getting harder and harder</title>
		<link>http://feeds.feedburner.com/~r/CoderDaddy/~3/412856234/</link>
		<comments>http://cdbdesign.net/2008/10/06/overcoming-user-entrenchment-is-getting-harder-and-harder/#comments</comments>
		<pubDate>Mon, 06 Oct 2008 14:40:19 +0000</pubDate>
		<dc:creator>cameron</dc:creator>
		
		<category><![CDATA[General]]></category>

		<category><![CDATA[Web Technology]]></category>

		<category><![CDATA[engagement]]></category>

		<category><![CDATA[web-trends]]></category>

		<guid isPermaLink="false">http://cdbdesign.net/?p=49</guid>
		<description><![CDATA[I&#8217;ve been looking at some new &#8220;hot&#8221; sites out there recently and to be honest haven&#8217;t been that sold. There is a lot of stuff that seems to be trying to solve the same problems we already have tools for, but in just a slightly different way.
I&#8217;m sorry, but the bottom line for me is [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been looking at some <a href="http://www.twine.com/">new</a> &#8220;<a href="http://buzzfeed.com/">hot</a>&#8221; sites out there recently and to be honest haven&#8217;t been that sold. There is a lot of stuff that seems to be trying to solve the same problems we already have tools for, but in just a slightly different way.</p>
<p>I&#8217;m sorry, but the bottom line for me is that once I find a way that works for me, whether it&#8217;s managing my friends list (<a href="http://facebook.com">Facebook</a>),  my rss feeds (<a href="http://reader.google.com">Google Reader</a>), or my photos (<a href="http://www.flickr.com/photos/cameronbooth/">Flickr</a>), I find it pretty hard to move onto something else. Not only do I have a history of data embedded in those places, but I have personal habits around using them quickly and effectively for my needs.</p>
<p>Does that mean they work perfectly and do everything I need them to do? Not at all. I&#8217;m sure given a few minutes I could come up with huge lists of features that I would love to see on the sites that I frequent. But the bottom line is I can live with them for now, and unless you&#8217;re going to show me something that is way better than what I&#8217;m doing right now, I&#8217;m not gonna go for it. I&#8217;m entrenched in my ways. Stubborn.</p>
<p>And the scary part is that I&#8217;m probably more forgiving that most of the people I know. The ones whose day job doesn&#8217;t require keeping up to date on this stuff (read: most of the world)</p>
<p><em>Which means its going to be hard for a new site to get my attention</em>. It&#8217;s going to have to either solve some other problem in my life that I haven&#8217;t yet found a &#8220;tool&#8221; to manage. Or it&#8217;s going to have to solve an existing problem for me in a wholly new way. Or at best, it can hope to integrate well into what I already have, just adding a new layer on the top.*</p>
<p><strong>Here&#8217;s to hoping those kind of sites will start appearing.</strong></p>
<p>* Note: <a href="http://www.feedly.com">Feedly</a> is a good example of the integration approach. They&#8217;ve added a nice layer of presentation over Google Reader, while being completely syncronized with my Google Reader account. So I gave them a try for a few weeks now. And yet it still wasn&#8217;t enough, while nice looking, their fancy interface was actually getting in my way. I&#8217;m going back to Google Reader. Stubborn me!</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~f/CoderDaddy?a=OCctM"><img src="http://feeds.feedburner.com/~f/CoderDaddy?i=OCctM" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/CoderDaddy?a=CDsEm"><img src="http://feeds.feedburner.com/~f/CoderDaddy?i=CDsEm" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/CoderDaddy?a=jlMbM"><img src="http://feeds.feedburner.com/~f/CoderDaddy?i=jlMbM" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/CoderDaddy?a=0ROCm"><img src="http://feeds.feedburner.com/~f/CoderDaddy?i=0ROCm" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/CoderDaddy/~4/412856234" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://cdbdesign.net/2008/10/06/overcoming-user-entrenchment-is-getting-harder-and-harder/feed/</wfw:commentRss>
		<feedburner:origLink>http://cdbdesign.net/2008/10/06/overcoming-user-entrenchment-is-getting-harder-and-harder/</feedburner:origLink></item>
		<item>
		<title>Weekly review of what’s caught my eye</title>
		<link>http://feeds.feedburner.com/~r/CoderDaddy/~3/412453426/</link>
		<comments>http://cdbdesign.net/2008/10/06/weekly-review-of-whats-caught-my-eye/#comments</comments>
		<pubDate>Mon, 06 Oct 2008 04:13:41 +0000</pubDate>
		<dc:creator>cameron</dc:creator>
		
		<category><![CDATA[Coding]]></category>

		<category><![CDATA[Ruby]]></category>

		<category><![CDATA[Web Technology]]></category>

		<category><![CDATA[data-structures]]></category>

		<category><![CDATA[iphone]]></category>

		<category><![CDATA[listening]]></category>

		<category><![CDATA[rails]]></category>

		<category><![CDATA[sql]]></category>

		<guid isPermaLink="false">http://cdbdesign.net/?p=34</guid>
		<description><![CDATA[Here&#8217;s the first post of what will hopefully be a weekly roundup of things that interest me. It&#8217;s inspired by an attempt to blog more to achieve some mental clarity.
So, here&#8217;s what&#8217;s been on my mind this week, in loose order of importance:
Data Structures, nice ways to work with trees in SQL
I&#8217;ve been mentally wrangling [...]]]></description>
			<content:encoded><![CDATA[<p>Here&#8217;s the first post of what will hopefully be a weekly roundup of things that interest me. It&#8217;s inspired by an attempt to <a href="http://cdbdesign.net/2008/10/05/blogging-for-mental-clarity/">blog more to achieve some mental clarity</a>.</p>
<p>So, here&#8217;s what&#8217;s been on my mind this week, in loose order of importance:</p>
<p><strong>Data Structures, nice ways to work with trees in SQL</strong></p>
<p>I&#8217;ve been mentally wrangling with something that is coming up in <a href="http://www.zazengo.com/users/cameron">Zazengo</a> soon, finding a nice clean way to store a tree structure in a database and be able to traverse it to any depth in a fast and efficient manner.</p>
<p>I did a bit of research at first, and came up with a description of the <a href="http://dev.mysql.com/tech-resources/articles/hierarchical-data.html">adjacent list and nested set models</a> on the MySQL site. The nested set concept was new to me, and very interesting. Wondering if there were any other options, I <a href="http://stackoverflow.com/questions/169817/is-it-possible-to-query-a-tree-structure-table-in-mysql-in-a-single-query-to-an">asked a question on StackOverflow</a>, and got a few great responses (thanks everybody!!), but unfortunately nothing much too new, (though <a href="http://stackoverflow.com/questions/169817/is-it-possible-to-query-a-tree-structure-table-in-mysql-in-a-single-query-to-an#169876">Daniel Beardsley&#8217;s suggestion to go with some denormalization</a> is something I&#8217;m thinking about).</p>
<p>So if I&#8217;m to trust the StackOverflow community, which I&#8217;m doing more and more every day, I guess that&#8217;s telling me that these are the best options out there. Now to think about implementation. We have some unique needs that leave me wondering if the Nested Set woudl work for me (we&#8217;re not quite a standard tree).  One thing I&#8217;ve seen is a rails plugin called <a href="http://opensource.symetrie.com/trac/better_nested_set">Better Nested Set</a>. My first gut feeling looking that up is that it seems relatively outdated, but sometime soon I&#8217;ll explore it more and let you know.</p>
<p><strong>Ilya Grigorik - once again he beats me to it - on load testing from real usage data</strong></p>
<p>Yet again, Ilya Grigorik scratched an itch of mine when he <a href="http://www.igvita.com/2008/09/30/load-testing-with-log-replay/">posted about load testing</a>, and even put together some <a href="http://github.com/igrigorik/autoperf/tree/master/">cool code to help out</a>. How does he always hit the exact topic that&#8217;s been on my mind in a full and comprehensive posting, right as I&#8217;m thinking about it? Somehow we&#8217;re very in sync&#8230;.but he&#8217;s just a bit ahead. One thing in the comments caught my eye, <a href="http://www.pylot.org/gettingstarted.html">Pylot</a> is another load testing tool that I&#8217;m going to test out a bit, see how it feels.</p>
<p><strong>iPhone development, here I come!</strong></p>
<p>Apple lifted the NDA on their SDK for the iPhone, (well kinda)! This means that finally some <a href="http://furbo.org/2008/09/19/lights-off/">great</a> <a href="http://furbo.org/2008/10/01/redacted/">blog</a> <a href="http://www.cimgf.com/2008/10/01/cocoa-touch-tutorial-iphone-application-example/">postings</a> and <a href="http://iphonedevcentral.org/">screencasts</a> are coming out on how to build apps for the iPhone. Works well for me, I dove into a tiny bit of iPhone dev a couple weeks ago, and was looking for this kind of thing. Looks like now I&#8217;ve got a great way to get started with a bit more help!</p>
<p><strong>StackOverflow.com, Jeff Atwood, Joel Spolsky</strong></p>
<p>I came across <a href="http://stackoverflow.com/users/14873/cdb">StackOverflow</a> via twitter some time recently, and from there have found myself <a href="http://blog.stackoverflow.com/index.php?feed=podcast">listening to the podcast</a> almost incessantly. <a href="http://joelonsoftware.com">Joel</a> and <a href="http://codinghorror.com">Jeff</a> are smart guys, and it&#8217;s been really fun to get an insight into their development and overall process in launching the site. Worth the listen for sure. I&#8217;m now all caught up with the recent episodes, and like it so much I&#8217;m going to go back and start at the beginning!!<a href="http://www.codinghorror.com/blog/archives/001171.html"></a></p>
<p><strong>Other miscellany:</strong></p>
<ul>
<li><a href="http://paulbarry.com/articles/2008/08/30/concerned-with-skinny-controller-skinny-model">This is a nice way to simplify your ruby code</a>, by grouping related elements of a large class definition into multiple files. The comments show that it&#8217;s a bit of a contentious approach, but it appeals to me, and I can think of more than a few places I could use it today.</li>
<li>I commented over here on this <a href="http://pivots.pivotallabs.com/users/stevend/blog/articles/517-standup-09-26-2008-proxy-target-vs-load-target">posting about using association extensions in rails</a>. Haven&#8217;t heard any replies to it, anybody?</li>
<li>Named scopes just keep getting better. I found some <a href="http://www.pathf.com/blogs/2008/06/more-named-scope-awesomeness/">pretty interesting usage examples</a> of it in a search context - worth further exploration for sure.</li>
<li>This is old news now I&#8217;m sure, but hey, this is my first in this blog series, right! Yay, there are now<a href="http://ryandaigle.com/articles/2008/9/7/what-s-new-in-edge-rails-mailer-layouts"> mailer layouts</a> in Rails.</li>
<li><a href="http://twitter.com/Veronica/statuses/944584695">Veronica Belmont twittered</a> that <a href="http://buzzfeed.com">Buzzfeed.com</a> is worth checking out. I signed up and immediately didn&#8217;t know what to do. They need an &#8220;About Us&#8221; page, I don&#8217;t have time to figure it out!</li>
<li><a href="http://twitter.com/noradio/statuses/946566622">Marcel Molina on twitter</a> says <a href="http://readernaut.com/">Readernaut.com</a> is also worth looking at. I took a quick look, and my gut feeling was&#8230;.maybe. I don&#8217;t know if it&#8217;s because I&#8217;m working too much, or have a new baby, but organizing my reading habits isn&#8217;t something I need right now.</li>
</ul>
<p><a href="http://www.codinghorror.com/blog/archives/001171.html"></a></p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~f/CoderDaddy?a=tTtaM"><img src="http://feeds.feedburner.com/~f/CoderDaddy?i=tTtaM" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/CoderDaddy?a=tKCTm"><img src="http://feeds.feedburner.com/~f/CoderDaddy?i=tKCTm" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/CoderDaddy?a=TtuQM"><img src="http://feeds.feedburner.com/~f/CoderDaddy?i=TtuQM" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/CoderDaddy?a=BotTm"><img src="http://feeds.feedburner.com/~f/CoderDaddy?i=BotTm" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/CoderDaddy/~4/412453426" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://cdbdesign.net/2008/10/06/weekly-review-of-whats-caught-my-eye/feed/</wfw:commentRss>
		<feedburner:origLink>http://cdbdesign.net/2008/10/06/weekly-review-of-whats-caught-my-eye/</feedburner:origLink></item>
		<item>
		<title>Blogging for mental clarity</title>
		<link>http://feeds.feedburner.com/~r/CoderDaddy/~3/412453427/</link>
		<comments>http://cdbdesign.net/2008/10/05/blogging-for-mental-clarity/#comments</comments>
		<pubDate>Mon, 06 Oct 2008 03:38:41 +0000</pubDate>
		<dc:creator>cameron</dc:creator>
		
		<category><![CDATA[General]]></category>

		<category><![CDATA[blogging]]></category>

		<category><![CDATA[gtd]]></category>

		<category><![CDATA[personal]]></category>

		<guid isPermaLink="false">http://cdbdesign.net/?p=42</guid>
		<description><![CDATA[I read a great post this week that inspired me to blog more. Why? To reduce my sense of information overload. Yeah, not the first thing you would think of, but I have to say, Michael Gilbert&#8217;s argument makes a lot of sense to me. It merges with some of the &#8220;Getting Things Done&#8221; (GTD) [...]]]></description>
			<content:encoded><![CDATA[<p>I read a great post this week that inspired me to blog more. Why? To reduce my sense of information overload. Yeah, not the first thing you would think of, but I have to say, <a href="http://news.gilbert.org/BecomeBlogger">Michael Gilbert&#8217;s argument </a>makes a lot of sense to me. It merges with some of the &#8220;<a href="http://www.43folders.com/2004/09/08/getting-started-with-getting-things-done">Getting Things Done</a>&#8221; (GTD) approach I attempt to live my life by (relatively unsuccessfully, but I keep trying).</p>
<p>The part of GTD that I resonate most with is this. By making a point to dump information out of my head and onto paper on a regular basis, I can avoid it hanging around in my synapses, keeping me up at night, it lets me stop having to think about it.</p>
<p>So why blog? How will that help?</p>
<p>Well, all week long I make notes of things. I <a href="http://twitter.com/cbooth/favourites">favourite items on twitter</a> that I like. I <a href="http://ma.gnolia.com/people/cdb/activity">bookmark pages I come across</a> that I want to remember. And I read countless blog postings, <a href="http://www.google.com/reader/shared/13961661574347368546">starring, sharing and tagging</a> the ones that I want to remember.</p>
<p>But where does all that information go? It feeds into Google, Magnolia, Twitter, and other places&#8230;..and then it sits there, untouched.Yep, keeping me up at night.</p>
<p>It turns out, putting it there is only the first step in the process. GTD theory would call that the Capture step. But the Process step is missing, and it&#8217;s been bugging me for a long time. I&#8217;ve always known I should do something with that information one day, but never done anything about it.</p>
<p>Enter blogging. By doing a weekly review of all the stuff I&#8217;ve noted, I can filter it further, and ultimately extract the reasons for noting those things in the first place.</p>
<p>So starting in just a few minutes, I&#8217;m going to attempt to do a weekly review of my digital inbox. Stay tuned!</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~f/CoderDaddy?a=xtw1M"><img src="http://feeds.feedburner.com/~f/CoderDaddy?i=xtw1M" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/CoderDaddy?a=Wk5qm"><img src="http://feeds.feedburner.com/~f/CoderDaddy?i=Wk5qm" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/CoderDaddy?a=MNeQM"><img src="http://feeds.feedburner.com/~f/CoderDaddy?i=MNeQM" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/CoderDaddy?a=MwAXm"><img src="http://feeds.feedburner.com/~f/CoderDaddy?i=MwAXm" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/CoderDaddy/~4/412453427" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://cdbdesign.net/2008/10/05/blogging-for-mental-clarity/feed/</wfw:commentRss>
		<feedburner:origLink>http://cdbdesign.net/2008/10/05/blogging-for-mental-clarity/</feedburner:origLink></item>
		<item>
		<title>Dipping my toes in the XMPP/Jabber stream</title>
		<link>http://feeds.feedburner.com/~r/CoderDaddy/~3/412453428/</link>
		<comments>http://cdbdesign.net/2008/10/03/dipping-my-toes-in-the-xmppjabber-stream/#comments</comments>
		<pubDate>Fri, 03 Oct 2008 04:56:55 +0000</pubDate>
		<dc:creator>cameron</dc:creator>
		
		<category><![CDATA[Coding]]></category>

		<category><![CDATA[Ruby]]></category>

		<category><![CDATA[im]]></category>

		<category><![CDATA[jabber]]></category>

		<category><![CDATA[xmpp]]></category>

		<guid isPermaLink="false">http://cdbdesign.net/?p=30</guid>
		<description><![CDATA[I&#8217;ve been thinking about integration of Zazengo with IM for a while now, but it has yet to become high enough priority on our roadmap for me to dive into it during the day.
But the night is for those experiments, right? I just dipped my toes in IM over ruby a bit tonight and wanted [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been thinking about integration of <a href="http://www.zazengo.com">Zazengo</a> with IM for a while now, but it has yet to become high enough priority on our roadmap for me to dive into it during the day.</p>
<p>But the night is for those experiments, right? I just dipped my toes in IM over ruby a bit tonight and wanted to post it here, mostly for posterity as I&#8217;ll likely be a while before I&#8217;m back in these waters.</p>
<p>The exploration started as I fired up my newsreader and the first item was <a href="http://blog.fiveruns.com/2008/10/2/brian-dainton-on-exploring-xmpp-in-ruby">this talk by Brian Dainton</a>. After a quick download of his <a href="http://www.slideshare.net/bdainton/a-change-in-protocol-exploring-xmpp-in-ruby-presentation">presentation files</a> (yes, for some reason I hate reading things in the slideshare visualizer, I prefer the download) I thought I&#8217;d check out <a href="http://github.com/blaine/xmpp4r-simple/tree/master">XMPP4R-Simple</a> (aka Jabber::Simple) and play with it. A bit more googling found<a href="http://barkingiguana.com/2008/05/28/xmpp4r-simple-makes-xmpp-in-ruby-uhh-simple"> this short blog post</a> by Barking Iguana. Much of what follows is simply a shorter version of his post.</p>
<p>I opened irb, and started with this:</p>

<div class="wp_syntax"><div class="code"><pre class="ruby ruby" style="font-family:monospace;"><span style="color:#CC0066; font-weight:bold;">require</span> <span style="color:#996600;">'rubygems'</span>
<span style="color:#CC0066; font-weight:bold;">require</span> <span style="color:#996600;">'xmpp4r-simple'</span>
&nbsp;
im = <span style="color:#6666ff; font-weight:bold;">Jabber::Simple</span>.<span style="color:#9900CC;">new</span><span style="color:#006600; font-weight:bold;">&#40;</span><span style="color:#996600;">'another_jabber_user@gmail.com'</span>, <span style="color:#996600;">'password'</span><span style="color:#006600; font-weight:bold;">&#41;</span></pre></div></div>

<p>A bit of playing around to learn how it worked got me started, and I ended up with this simple chat client:</p>

<div class="wp_syntax"><div class="code"><pre class="ruby ruby" style="font-family:monospace;"><span style="color:#CC0066; font-weight:bold;">loop</span> <span style="color:#9966CC; font-weight:bold;">do</span>
  im.<span style="color:#9900CC;">received_messages</span>.<span style="color:#9900CC;">each</span> <span style="color:#9966CC; font-weight:bold;">do</span> |msg|
    im.<span style="color:#9900CC;">deliver</span><span style="color:#006600; font-weight:bold;">&#40;</span>msg.<span style="color:#9900CC;">from</span>.<span style="color:#9900CC;">strip</span>.<span style="color:#9900CC;">to_s</span>, <span style="color:#996600;">&quot;#{msg.body.reverse} &amp;lt;----&quot;</span><span style="color:#006600; font-weight:bold;">&#41;</span>
    im.<span style="color:#9900CC;">deliver</span><span style="color:#006600; font-weight:bold;">&#40;</span>msg.<span style="color:#9900CC;">from</span>.<span style="color:#9900CC;">strip</span>.<span style="color:#9900CC;">to_s</span>, <span style="color:#996600;">'Yes, I am a ruby bot that Cameron is playing with'</span><span style="color:#006600; font-weight:bold;">&#41;</span>;
  <span style="color:#9966CC; font-weight:bold;">end</span>
  <span style="color:#CC0066; font-weight:bold;">sleep</span> <span style="color:#006666;">3</span>
<span style="color:#9966CC; font-weight:bold;">end</span></pre></div></div>

<p>Pretty basic, but it works. I opened up iChat and started IM&#8217;ing myself and its pretty fun! Now if anybody IMs me, they get back their message, reversed, and then a little note that it&#8217;s me playing around in case they&#8217;re wondering.</p>
<p>What would next steps be in order to really start working with this in a meaningful manner? Well the stuff that&#8217;s top of my mind is:</p>
<ul>
<li>Integrate this more nicely with my rails app itself. Could be as a plugin, or perhaps a gem.</li>
<li>Let our users &#8220;verify&#8221; their IM by giving me us IM username, then use this client to send out a verification code to their IM which they&#8217;re intended to reply to with CONFIRM, or else perhaps paste it in the web form or something. The integration with rails could be direct (include the ActiveRecord models directly), or it could be via an internal API, which would be more scalable I think, but more work.</li>
<li>Robustify (yes, I know that&#8217;s a made up word) the client itself a bunch. Handle errors, log things nicely, basically deal with things going wrong.</li>
<li>Daemonize the client and get it set up on the server with some failsafe stuff like process monitoring, etc.</li>
<li>Load test to get a sense of what we can support.</li>
</ul>
<p>That&#8217;s all I can think of for now. It was a fun little exploration and I&#8217;m looking forward to getting into it in more depth at some point.</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~f/CoderDaddy?a=EOusM"><img src="http://feeds.feedburner.com/~f/CoderDaddy?i=EOusM" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/CoderDaddy?a=Qrn9m"><img src="http://feeds.feedburner.com/~f/CoderDaddy?i=Qrn9m" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/CoderDaddy?a=b2bcM"><img src="http://feeds.feedburner.com/~f/CoderDaddy?i=b2bcM" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/CoderDaddy?a=hDgjm"><img src="http://feeds.feedburner.com/~f/CoderDaddy?i=hDgjm" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/CoderDaddy/~4/412453428" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://cdbdesign.net/2008/10/03/dipping-my-toes-in-the-xmppjabber-stream/feed/</wfw:commentRss>
		<feedburner:origLink>http://cdbdesign.net/2008/10/03/dipping-my-toes-in-the-xmppjabber-stream/</feedburner:origLink></item>
		<item>
		<title>Strange JSON issue in Contacts gem</title>
		<link>http://feeds.feedburner.com/~r/CoderDaddy/~3/412453429/</link>
		<comments>http://cdbdesign.net/2008/10/01/strange-json-issue-in-contacts-gem/#comments</comments>
		<pubDate>Wed, 01 Oct 2008 04:10:13 +0000</pubDate>
		<dc:creator>cameron</dc:creator>
		
		<category><![CDATA[Coding]]></category>

		<category><![CDATA[Ruby]]></category>

		<category><![CDATA[bugs]]></category>

		<category><![CDATA[contacts]]></category>

		<guid isPermaLink="false">http://cdbdesign.net/?p=21</guid>
		<description><![CDATA[I&#8217;ve been using the contacts gem for a while now. It lets you pass in a username/password for a yahoo/gmail/hotmail or plaxo account, and after some under the hood lookups, it returns you a list of that user&#8217;s contacts. Pretty useful for things like an &#8220;invite your friends&#8221; system.
But the other day, when I tried [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been using the contacts gem for a while now. It lets you pass in a username/password for a yahoo/gmail/hotmail or plaxo account, and after some under the hood lookups, it returns you a list of that user&#8217;s contacts. Pretty useful for things like an &#8220;invite your friends&#8221; system.</p>
<p>But the other day, when I tried to work with the open_flash_chart plugin (which provides a pretty basic, and somewhat buggy interface to the Open Flash Chart library), I was getting some strange JSON output.</p>
<p>The plugin basically builds up an object for you that describes the chart you want, and then uses xxx.to_json to send it to the browser.</p>
<p>But the json I was getting out wasn&#8217;t the same as the examples were showing. My json objects were looking like this:</p>

<div class="wp_syntax"><div class="code"><pre class="javascript javascript" style="font-family:monospace;"><span style="color: #009900;">&#123;</span><span style="color: #3366CC;">&quot;json_class&quot;</span><span style="color: #339933;">:</span><span style="color: #3366CC;">&quot;Bar&quot;</span><span style="color: #339933;">,</span><span style="color: #3366CC;">&quot;type&quot;</span><span style="color: #339933;">:</span><span style="color: #3366CC;">&quot;bar&quot;</span><span style="color: #009900;">&#125;</span></pre></div></div>

<p>instead of this:</p>

<div class="wp_syntax"><div class="code"><pre class="javascript javascript" style="font-family:monospace;"><span style="color: #009900;">&#123;</span><span style="color: #3366CC;">&quot;line&quot;</span><span style="color: #339933;">:</span> <span style="color: #3366CC;">&quot;a line&quot;</span><span style="color: #339933;">,</span> <span style="color: #3366CC;">&quot;type&quot;</span><span style="color: #339933;">:</span> <span style="color: #3366CC;">&quot;bar&quot;</span><span style="color: #009900;">&#125;</span></pre></div></div>

<p>After a bunch of debugging, I finally found it was something the contacts gem was doing, using JSON.parse from the JSON gem instead of using the decode method in ActiveSupport::JSON.</p>
<p>So just in case anybody else hits this, here&#8217;s the fix I applied:</p>

<div class="wp_syntax"><div class="code"><pre class="diff diff" style="font-family:monospace;">--- a/vendor/gems/contacts-1.0.12/lib/contacts/gmail.rb
<span style="color: #888822;">+++ b/vendor/gems/contacts-1.0.12/lib/contacts/gmail.rb</span>
<span style="color: #440088;">@@ -<span style="">1</span>,<span style="">5</span> +<span style="">1</span>,<span style="">3</span> @@</span>
<span style="color: #991111;">-require &quot;json/add/rails&quot;</span>
<span style="color: #991111;">-</span>
 class Contacts
   class Gmail &amp;lt; Base
     URL                 = &quot;https://mail.google.com/mail/&quot;
<span style="color: #440088;">@@ -<span style="">55</span>,<span style="">7</span> +<span style="">53</span>,<span style="">7</span> @@ class Contacts</span>
       data.gsub!<span style="">&#40;</span>/\t/, ' '<span style="">&#41;</span> # tabs in the note field cause errors with JSON.parse
       data.gsub!<span style="">&#40;</span>/<span style="">&#91;</span>\t\x00-\x1F<span style="">&#93;</span>/, &quot; &quot;<span style="">&#41;</span> # strip control characters
&nbsp;
<span style="color: #991111;">-      @contacts = JSON.parse<span style="">&#40;</span>data<span style="">&#41;</span><span style="">&#91;</span>'Body'<span style="">&#93;</span><span style="">&#91;</span>'Contacts'<span style="">&#93;</span> || <span style="">&#123;</span><span style="">&#125;</span></span>
<span style="color: #00b000;">+      @contacts = ActiveSupport::JSON.decode<span style="">&#40;</span>data<span style="">&#41;</span><span style="">&#91;</span>'Body'<span style="">&#93;</span><span style="">&#91;</span>'Contacts'<span style="">&#93;</span> || <span style="">&#123;</span><span style="">&#125;</span></span>
&nbsp;
       # Determine in which format to return the data.</pre></div></div>

<p>It may be better to do something like this:</p>

<div class="wp_syntax"><div class="code"><pre class="ruby ruby" style="font-family:monospace;"><span style="color:#9966CC; font-weight:bold;">if</span> <span style="color:#9966CC; font-weight:bold;">defined</span>?<span style="color:#006600; font-weight:bold;">&#40;</span><span style="color:#6666ff; font-weight:bold;">ActiveSupport::JSON</span><span style="color:#006600; font-weight:bold;">&#41;</span>
  <span style="color:#008000; font-style:italic;">#... Use ActiveSupport::JSON.decode</span>
<span style="color:#9966CC; font-weight:bold;">else</span>
  <span style="color:#008000; font-style:italic;">#.... require the json/add/rails and use JSON.parse</span>
<span style="color:#9966CC; font-weight:bold;">end</span></pre></div></div>

<p>but since I know I&#8217;m within rails, and this is vendored, I&#8217;m not too worried.</p>
<p>So there you go google, archive away for the next guy or gal who hits this!</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~f/CoderDaddy?a=DCFZM"><img src="http://feeds.feedburner.com/~f/CoderDaddy?i=DCFZM" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/CoderDaddy?a=2dA6m"><img src="http://feeds.feedburner.com/~f/CoderDaddy?i=2dA6m" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/CoderDaddy?a=eFbwM"><img src="http://feeds.feedburner.com/~f/CoderDaddy?i=eFbwM" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/CoderDaddy?a=8gl7m"><img src="http://feeds.feedburner.com/~f/CoderDaddy?i=8gl7m" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/CoderDaddy/~4/412453429" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://cdbdesign.net/2008/10/01/strange-json-issue-in-contacts-gem/feed/</wfw:commentRss>
		<feedburner:origLink>http://cdbdesign.net/2008/10/01/strange-json-issue-in-contacts-gem/</feedburner:origLink></item>
		<item>
		<title>Three ruby social network tools loosely analyzed</title>
		<link>http://feeds.feedburner.com/~r/CoderDaddy/~3/412453430/</link>
		<comments>http://cdbdesign.net/2008/09/26/three-ruby-social-network-tools-loosely-analyzed/#comments</comments>
		<pubDate>Fri, 26 Sep 2008 14:28:04 +0000</pubDate>
		<dc:creator>cameron</dc:creator>
		
		<category><![CDATA[Coding]]></category>

		<category><![CDATA[Ruby]]></category>

		<category><![CDATA[opensource]]></category>

		<category><![CDATA[plugins]]></category>

		<category><![CDATA[rails]]></category>

		<category><![CDATA[socialnetworks]]></category>

		<guid isPermaLink="false">http://cdbdesign.net/?p=16</guid>
		<description><![CDATA[At Zazengo, we&#8217;ve push activity newsfeeds to our users, you know, the &#8220;Johnny posted a new discussion, Jane added a new project&#8221; kind of thing that is common on most social network platforms these days. Well, for quite a while now I&#8217;ve never been super happy with our implementation of them, mostly at the data [...]]]></description>
			<content:encoded><![CDATA[<p>At <a href="http://www.zazengo.com/users/cameron">Zazengo</a>, we&#8217;ve push activity newsfeeds to our users, you know, the &#8220;Johnny posted a new discussion, Jane added a new project&#8221; kind of thing that is common on most social network platforms these days. Well, for quite a while now I&#8217;ve never been super happy with our implementation of them, mostly at the data level.</p>
<p>So I decided why not check out what a few other people are doing, and it seemed the simplest place to start was to look at some open sourced social network tools. Here&#8217;s a few short notes on my impression.</p>
<p><a href="http://lovdbyless.com/"><strong>LovdByLess</strong></a> - for pure visuals, this is by far the most advanced of the three I looked at. The presentation is nice, the install went smoothly, and overall I was pretty impressed. What impressed me most I didn&#8217;t realize until I had installed all the others - the simplicity of their data model, 14 DB tables, as opposed to 36 and 45. Of course that is probably a reflection of just doing less in terms of functionality, but that is usually a good thing.</p>
<p>LovdByLess is a complete rails application that you basically take and then customize to your hearts content. This makes the code much simpler than CommunityEngine, but it would also make it harder to update when new versions are released.</p>
<p>Overall I was impressed by LovdByLess. It was a nice looking way to start off a social network application, a good framework to begin with.</p>
<p><a href="http://www.communityengine.org/"><strong>CommunityEngine</strong></a> - I rank this as my second choice of the three, if I were looking to start a social network tool right now. It&#8217;s installed as a plugin and it uses rails engines to inject models, views, and controllers into your application. This lets it integrate well with any existing code you may have, but the engines aspect seems to add complexity which I have to admit I don&#8217;t love. I don&#8217;t have any real experience using engines though, so I reserve judgement somewhat.</p>
<p>The end user interface was simple and decent looking. I got lost a few times, so it could use a bit of usability help. But it seemed fairly functional. Overall it felt a bit less finished that LovdByLess though, a few tests were failing right out of the box if I remember correctly even. Still, a pretty nice effort.</p>
<p><a href="http://beonebody.com/"><strong>One Body</strong></a> - Right from the start this one was a bit odd. The code is hosted up on github, but he has a pricing model for its usage. I guess you should check the license if you&#8217;re interested in using it, to be sure you&#8217;re doing the right thing.</p>
<p>It was designed to work with churches, and since I&#8217;m not a churchgoer by any stretch, some of the functionality threw me off a bit (ministries? prayer requests?), but I&#8217;m sure if you really wanted to you could rip some of that stuff out.</p>
<p>Of the three, it felt the least complete, but also the most focused in terms of target audience. I wish him well with them.</p>
<p><strong>Others</strong> - I was curious about a few others, and even tried to install a few, but I wasn&#8217;t in the mood to debug other people&#8217;s applications, or try to find docs for outdated plugins, etc. I was excited when I read about <a href="http://portal.insoshi.com/">Insoshi</a>, but when it just wouldn&#8217;t run for me I think due to a hastily installed port of Sphinx, I just didn&#8217;t have the time to debug. Maybe I&#8217;ll check it out some other time.</p>
<p><strong>But what about the newsfeeds?</strong></p>
<p>That&#8217;s where I started this post, right? So to round it off nicely, I learned some useful stuff from looking at their newsfeeds, but also got the slight sense of validation of seeing other people doing things in a similar fashion to you. I liked the structure in LovdByLess the most,  they&#8217;ve gone the simple route of having a table for feeds (user has_one :feed), and then a table for feed items (feed has_many :feed_items), which uses basic polymorphism to link to the object that the feed item is about. Simple but seems to work well. Only danger is if you&#8217;re displaying a huge number of newsfeed items, the object loading could generate a tonne of SQL queries, but for that kind of thing caching can probably work just fine.</p>
<p>That&#8217;s it for now, off to the day job!</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~f/CoderDaddy?a=xYn8M"><img src="http://feeds.feedburner.com/~f/CoderDaddy?i=xYn8M" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/CoderDaddy?a=B5x7m"><img src="http://feeds.feedburner.com/~f/CoderDaddy?i=B5x7m" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/CoderDaddy?a=Mh3rM"><img src="http://feeds.feedburner.com/~f/CoderDaddy?i=Mh3rM" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/CoderDaddy?a=GFAzm"><img src="http://feeds.feedburner.com/~f/CoderDaddy?i=GFAzm" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/CoderDaddy/~4/412453430" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://cdbdesign.net/2008/09/26/three-ruby-social-network-tools-loosely-analyzed/feed/</wfw:commentRss>
		<feedburner:origLink>http://cdbdesign.net/2008/09/26/three-ruby-social-network-tools-loosely-analyzed/</feedburner:origLink></item>
		<item>
		<title>My first gem, a rubygem that is, a little how to</title>
		<link>http://feeds.feedburner.com/~r/CoderDaddy/~3/412453431/</link>
		<comments>http://cdbdesign.net/2008/09/24/my-first-gem-a-rubygem-that-is-a-little-how-to/#comments</comments>
		<pubDate>Wed, 24 Sep 2008 05:55:57 +0000</pubDate>
		<dc:creator>cameron</dc:creator>
		
		<category><![CDATA[Ruby]]></category>

		<category><![CDATA[howto]]></category>

		<category><![CDATA[rubygems]]></category>

		<guid isPermaLink="false">http://cdbdesign.net/?p=11</guid>
		<description><![CDATA[I just published my first ruby gem. It&#8217;s not really working yet, but for me just publishing a gem was a new thing so I thought I&#8217;d share just a bit. I&#8217;ll tell you more about the gem itself in a day or two.
The basic process was super simple. First, I installed Hoe, read a [...]]]></description>
			<content:encoded><![CDATA[<p>I just published my first ruby gem. It&#8217;s not really working yet, but for me just publishing a gem was a new thing so I thought I&#8217;d share just a bit. I&#8217;ll tell you more about the gem itself in a day or two.</p>
<p>The basic process was super simple. First, I installed <a href="http://seattlerb.rubyforge.org/hoe/">Hoe</a>, read a bit about it on Geoffrey Grossenbach&#8217;s <a href="http://nubyonrails.com/articles/tutorial-publishing-rubygems-with-hoe">blog post</a>, and then ran &#8217;sow my_gem_name&#8217; and it was created.</p>
<p>I fiddled a bit to get a gemspec file that I liked, based first off running &#8216;rake debug_gem&#8217;, and then comparing that example with <a href="http://github.com/mojombo/grit/tree/master%2Fgrit.gemspec?raw=true">this one here</a>, (linked to from the <a href="http://gems.github.com/">github gems explanation page</a>).</p>
<p>Then I added a few files, in my case a capistrano recipe and a rake task files. I had to update the Manifest.txt file using &#8216;rake check_manifest&#8217; and use it&#8217;s diff output to figure out what needed adjusting. Then I remembered I had to update the files listing inside the gemspec as well.</p>
<p>And finally I published it to my github account, again, following the instructions on that github explanation page. With a bit of patience, it worked, and I installed my gem. I&#8217;ll tell you about the gem itself soon, but overall it was pretty simple, which was awesome!</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~f/CoderDaddy?a=PGzlM"><img src="http://feeds.feedburner.com/~f/CoderDaddy?i=PGzlM" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/CoderDaddy?a=aPqtm"><img src="http://feeds.feedburner.com/~f/CoderDaddy?i=aPqtm" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/CoderDaddy?a=BtLWM"><img src="http://feeds.feedburner.com/~f/CoderDaddy?i=BtLWM" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/CoderDaddy?a=xWjIm"><img src="http://feeds.feedburner.com/~f/CoderDaddy?i=xWjIm" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/CoderDaddy/~4/412453431" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://cdbdesign.net/2008/09/24/my-first-gem-a-rubygem-that-is-a-little-how-to/feed/</wfw:commentRss>
		<feedburner:origLink>http://cdbdesign.net/2008/09/24/my-first-gem-a-rubygem-that-is-a-little-how-to/</feedburner:origLink></item>
		<item>
		<title>Nothing like a garage fire….</title>
		<link>http://feeds.feedburner.com/~r/CoderDaddy/~3/412453432/</link>
		<comments>http://cdbdesign.net/2008/09/23/nothing-like-a-garage-fire/#comments</comments>
		<pubDate>Tue, 23 Sep 2008 06:02:34 +0000</pubDate>
		<dc:creator>cameron</dc:creator>
		
		<category><![CDATA[General]]></category>

		<category><![CDATA[Ruby]]></category>

		<category><![CDATA[personal]]></category>

		<guid isPermaLink="false">http://cdbdesign.net/?p=7</guid>
		<description><![CDATA[&#8230; to make you leave your computer.
I had plans to write a post up about how I was modifying the mongrel_cluster gem to allow for a rolling restart of mongrels, and I was partway into getting it to work when I smelled smoke.
After a bit of running around I realized that the neighbours garage was [...]]]></description>
			<content:encoded><![CDATA[<p>&#8230; to make you leave your computer.</p>
<p>I had plans to write a post up about how I was modifying the mongrel_cluster gem to allow for a rolling restart of mongrels, and I was partway into getting it to work when I smelled smoke.</p>
<p>After a bit of running around I realized that the neighbours garage was on fire, and the flames were spurting out of the roof and just starting to touch my deck, which is connected to the building extension my lovely office is in. So that was interesting. I heard sirens - clearly somebody had called 911 already. A quick run upstairs got Margot out of bed and dressed in case it got worse, and then, well I just watched. The firemen were there in full force, I&#8217;d guess about 15 of them from two different trucks, and they were breaking into the garage door, pulling my garbage cans out of the way, and spraying tonnes of water into things, and in the course of minutes it was all out, though I have to admit, I was surprised how much water it took, that was one stubborn fire!</p>
<p>In the end, everybody is fine, nobody was hurt, but my neighbour&#8217;s car was, well, a bit melted (on the fire side). Turns out they had garbage cans inside the garage against the wall that somehow had caught fire. The police officer who stuck around after the fire brigade took off said he was marking it down as &#8220;suspicious&#8221;, but there was no real way they would know the cause, and it wasn&#8217;t really worth investigating any further.</p>
<p>So, as Alec Baldwin said in the fun film State and Main, &#8220;<a href="http://www.imdb.com/title/tt0120202/quotes">um, that happened</a>&#8220;. And you&#8217;ll get my coding post tomorrow instead.</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~f/CoderDaddy?a=75wMM"><img src="http://feeds.feedburner.com/~f/CoderDaddy?i=75wMM" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/CoderDaddy?a=wRZPm"><img src="http://feeds.feedburner.com/~f/CoderDaddy?i=wRZPm" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/CoderDaddy?a=kQKpM"><img src="http://feeds.feedburner.com/~f/CoderDaddy?i=kQKpM" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/CoderDaddy?a=TcC3m"><img src="http://feeds.feedburner.com/~f/CoderDaddy?i=TcC3m" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/CoderDaddy/~4/412453432" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://cdbdesign.net/2008/09/23/nothing-like-a-garage-fire/feed/</wfw:commentRss>
		<feedburner:origLink>http://cdbdesign.net/2008/09/23/nothing-like-a-garage-fire/</feedburner:origLink></item>
		<item>
		<title>And we’re off…..another blog is born</title>
		<link>http://feeds.feedburner.com/~r/CoderDaddy/~3/412453433/</link>
		<comments>http://cdbdesign.net/2008/09/22/and-were-offanother-blog-is-born/#comments</comments>
		<pubDate>Mon, 22 Sep 2008 07:08:46 +0000</pubDate>
		<dc:creator>cameron</dc:creator>
		
		<category><![CDATA[General]]></category>

		<category><![CDATA[blogging]]></category>

		<category><![CDATA[personal]]></category>

		<guid isPermaLink="false">http://cdbdesign.net/?p=4</guid>
		<description><![CDATA[I&#8217;ve been putting off starting a blog for months now. I&#8217;ve blogged in the past, but never been able to keep much of a schedule, but this time feels different. I&#8217;ve got many reasons to post this time, but first and foremost is that I&#8217;m now a father.
Why does that matter? Well, in some strange [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been putting off starting a blog for months now. I&#8217;ve blogged in the past, but never been able to keep much of a schedule, but this time feels different. I&#8217;ve got many reasons to post this time, but first and foremost is that I&#8217;m now a father.</p>
<p>Why does that matter? Well, in some strange way, it means I have to start taking my life seriously. Or more importantly, my career. I&#8217;m now a &#8220;bread-winner&#8221; in the true sense of the word, as I have a &#8220;dependant&#8221; (yep, another term to get used to), who right now is not very capable of feeding himself, unless there was a cute fund that is, he&#8217;d be all over that if it existed.</p>
<p>But I ramble. It&#8217;s late, I have a three week old son. And I want to better my life and career in order to better his.</p>
<p>The plan is to write mostly about the stuff I&#8217;m interested in at work. So tech, ruby, rails, social networking, usability, databases, javascript, html, css, etc. But I&#8217;m guessing I&#8217;ll occasionally drift into softer topics like family and fatherhood too. And I&#8217;ve always thought of myself as a bit of a renaissance man, so perhaps you&#8217;ll get some fly fishing posts. Or cycling. Or camping. Or astronomy. Or chess. Or film. Or photography. We&#8217;ll see. I&#8217;m not going to define the path for this other than to say there will be one, and I&#8217;ll find it as I go.</p>
<p>Wish me luck!</p>
<p>Cameron <em>(Chicago, 2008, 2am on a Sunday night)</em></p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~f/CoderDaddy?a=741FM"><img src="http://feeds.feedburner.com/~f/CoderDaddy?i=741FM" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/CoderDaddy?a=3pBpm"><img src="http://feeds.feedburner.com/~f/CoderDaddy?i=3pBpm" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/CoderDaddy?a=LGAaM"><img src="http://feeds.feedburner.com/~f/CoderDaddy?i=LGAaM" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/CoderDaddy?a=TDaam"><img src="http://feeds.feedburner.com/~f/CoderDaddy?i=TDaam" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/CoderDaddy/~4/412453433" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://cdbdesign.net/2008/09/22/and-were-offanother-blog-is-born/feed/</wfw:commentRss>
		<feedburner:origLink>http://cdbdesign.net/2008/09/22/and-were-offanother-blog-is-born/</feedburner:origLink></item>
	</channel>
</rss>
