<?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>/dev/caffeine &#187; work</title>
	<atom:link href="http://devcaffeine.com/categories/work/feed/" rel="self" type="application/rss+xml" />
	<link>http://devcaffeine.com</link>
	<description>anything worth taking seriously is worth making fun of</description>
	<lastBuildDate>Thu, 24 Sep 2009 20:50:49 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Integration testing SSL with Cucumber</title>
		<link>http://devcaffeine.com/2009/02/16/integration-testing-ssl-with-cucumber/</link>
		<comments>http://devcaffeine.com/2009/02/16/integration-testing-ssl-with-cucumber/#comments</comments>
		<pubDate>Mon, 16 Feb 2009 18:50:27 +0000</pubDate>
		<dc:creator>cflipse</dc:creator>
				<category><![CDATA[programming]]></category>
		<category><![CDATA[work]]></category>
		<category><![CDATA[cucumber]]></category>
		<category><![CDATA[rails]]></category>
		<category><![CDATA[ssl]]></category>

		<guid isPermaLink="false">http://devcaffeine.com/?p=81</guid>
		<description><![CDATA[Cucumber, for those who aren&#8217;t up to speed on the latest in testing hotness, is an integration testing framework for Ruby.  While it&#8217;s not strictly limited to integration testing Rails applications, that&#8217;s the context i use it in most of the time.
I saw a question on the rspec list recently asking about how you [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://github.com/aslakhellesoy/cucumber/wikis">Cucumber</a>, for those who aren&#8217;t up to speed on the latest in testing hotness, is an integration testing framework for Ruby.  While it&#8217;s not strictly limited to integration testing Rails applications, that&#8217;s the context i use it in most of the time.</p>
<p>I saw a question on the rspec list recently asking about how you test an SSL required page within cucumber, and I realized that I&#8217;ve had that, and even more cert-related chaos, figured out at $WORK, and that I should probably talk a little bit about it.</p>
<p>Simple scenario is that you&#8217;ve got some controller on your site that is supposed to only be accessible via https, and you want to make sure it behaves correctly in cucumber.  In your standard deployment scenario, mongrel never really sees anything about SSL; that&#8217;s all handled by Apache.  Apache will set some headers for you, which rails can check to determine if you&#8217;re using SSL.  Since you&#8217;re not testing with Apache at this testing level, you just need to set the relevant HTTP headers.</p>
<blockquote><p>
Given I am using HTTPS<br />
When I visit /payments<br />
Then I should see the payments page</p>
<p>Given I am not using HTTPS<br />
When I visit /payments<br />
Then I should see an SSL error page
</p></blockquote>
<p>If I&#8217;m using <a href="http://gitrdoc.com/brynary/webrat/tree/master/">webrat</a> (which is <i>highly</i> recommended here) this becomes as simple as setting a header value.  In recent versions of webrat, that boils down to:</p>

<div class="wp_syntax"><div class="code"><pre class="ruby" style="font-family:monospace;">Given <span style="color:#006600; font-weight:bold;">/</span>I am using HTTPS<span style="color:#006600; font-weight:bold;">/</span> <span style="color:#9966CC; font-weight:bold;">do</span>
  header<span style="color:#006600; font-weight:bold;">&#40;</span><span style="color:#996600;">&quot;HTTPS&quot;</span>, <span style="color:#996600;">&quot;on&quot;</span><span style="color:#006600; font-weight:bold;">&#41;</span>
<span style="color:#9966CC; font-weight:bold;">end</span>
Given <span style="color:#006600; font-weight:bold;">/</span>I am <span style="color:#9966CC; font-weight:bold;">not</span> using HTTPS<span style="color:#006600; font-weight:bold;">/</span> <span style="color:#9966CC; font-weight:bold;">do</span>
  <span style="color:#008000; font-style:italic;"># this space left intentionally blank</span>
<span style="color:#9966CC; font-weight:bold;">end</span></pre></div></div>

<p>If you&#8217;re NOT using webrat, but still at the rails integration test level,  the call is a bit uglier</p>

<div class="wp_syntax"><div class="code"><pre class="ruby" style="font-family:monospace;">  get <span style="color:#ff3333; font-weight:bold;">:show</span>, <span style="color:#006600; font-weight:bold;">&#123;</span> <span style="color:#ff3333; font-weight:bold;">:id</span> <span style="color:#006600; font-weight:bold;">=&gt;</span> <span style="color:#006666;">1234</span> <span style="color:#006600; font-weight:bold;">&#125;</span>, <span style="color:#006600; font-weight:bold;">&#123;</span> <span style="color:#ff3333; font-weight:bold;">:https</span> <span style="color:#006600; font-weight:bold;">=&gt;</span> <span style="color:#996600;">'on'</span> <span style="color:#006600; font-weight:bold;">&#125;</span></pre></div></div>

<p>The <code>get</code> method at the integration test level actually takes a third argument, which is the HTTP headers set on that request.  At the functional / controller example level, the same method <i>might</i> work &#8212; I don&#8217;t know, I havn&#8217;t actually tested this at that level, instead I&#8217;ve just stubbed the <code>https?</code> method as needed.</p>
<p>Now, for bonus points.  At $WORK, I exist in one of those ideal closed environments where x509 authentication actually stands a <i>chance</i> of working.  That is, everyone gets a client certificate, which they send to us with the HTTPS request.  We check against an external service, see that the cert is good, and viola, we can pre-populate with all sorts of juicy user information.  Pipe dream on the internet, but it works well on an intranet. (having worked with this stuff, it&#8217;s no surprise to me at <i>all</i> that x509 client certs havn&#8217;t even managed to catch on with <i>banks</i> much less the general public &#8230;)</p>
<p>Apache takes care of checking the certificate, making sure it&#8217;s valid and well formed, and that it&#8217;s not in any CRL, and that it&#8217;s trusted.  Makes my life easier, at the Rails level, we just have to check against the external service and we&#8217;re off to the races.  And, happily, apache will pass things on in the headers.</p>
<blockquote><p>
Given I use the client certificate for &#8220;Joe&#8221;<br />
Then when I visit /administration<br />
I should be let in
</p></blockquote>

<div class="wp_syntax"><div class="code"><pre class="ruby" style="font-family:monospace;">Given <span style="color:#006600; font-weight:bold;">/</span>I use the client certificate <span style="color:#9966CC; font-weight:bold;">for</span> <span style="color:#996600;">&quot;(.*)&quot;</span><span style="color:#006600; font-weight:bold;">/</span> <span style="color:#9966CC; font-weight:bold;">do</span> <span style="color:#006600; font-weight:bold;">|</span>cert_user<span style="color:#006600; font-weight:bold;">|</span>
  <span style="color:#008000; font-style:italic;">#lookup or generate stub certificate information</span>
  header<span style="color:#006600; font-weight:bold;">&#40;</span><span style="color:#996600;">&quot;X_CLIENT_CERT&quot;</span>, certificate.<span style="color:#9900CC;">certificate</span><span style="color:#006600; font-weight:bold;">&#41;</span>
  header<span style="color:#006600; font-weight:bold;">&#40;</span><span style="color:#996600;">&quot;X_CLIENT_DN&quot;</span>, certificate.<span style="color:#9900CC;">dn</span><span style="color:#006600; font-weight:bold;">&#41;</span>
  header<span style="color:#006600; font-weight:bold;">&#40;</span><span style="color:#996600;">&quot;HTTPS&quot;</span>, <span style="color:#996600;">&quot;on&quot;</span><span style="color:#006600; font-weight:bold;">&#41;</span>
&nbsp;
  DirectoryService.<span style="color:#9900CC;">instance</span>.<span style="color:#9900CC;">stub</span>!<span style="color:#006600; font-weight:bold;">&#40;</span><span style="color:#ff3333; font-weight:bold;">:lookup</span><span style="color:#006600; font-weight:bold;">&#41;</span>.<span style="color:#9900CC;">with</span><span style="color:#006600; font-weight:bold;">&#40;</span>certificate.<span style="color:#9900CC;">dn</span><span style="color:#006600; font-weight:bold;">&#41;</span>.<span style="color:#9900CC;">and_return</span> certificate.<span style="color:#9900CC;">remote_xml</span>
<span style="color:#9966CC; font-weight:bold;">end</span></pre></div></div>

<p>I&#8217;m hand-waving around some of the stubbing that would have to go on here, as far as generating dummy information goes, but the basic idea should be sound.  In this case, I&#8217;m stubbing the entire <code>DiectoryService.lookup</code> method for a particular DN, which I set in the headers, and returning &#8220;remote_xml&#8221; which is a stand in for the XML document that the remote system returns.  This lets me cut out the remote system, which wouldn&#8217;t appreciate being hit for all sorts of trash data every time the tests run, while still exercising most of the relevant internal code.</p>
<p>The general idea of an integration test is to see all of the pieces of the system working together.  At this point, Cucumber is exercising everything in the stack below Apache. Since certificates and x509 client certificates are largely dealt with <i>by</i> apache, we have to stub those ins and outs to work through the rest of the system.  The system is otherwise left unstubbed, and we check those integration points during manual testing.</p>
]]></content:encoded>
			<wfw:commentRss>http://devcaffeine.com/2009/02/16/integration-testing-ssl-with-cucumber/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Printing error in IE</title>
		<link>http://devcaffeine.com/2007/02/22/printing-error-in-ie/</link>
		<comments>http://devcaffeine.com/2007/02/22/printing-error-in-ie/#comments</comments>
		<pubDate>Thu, 22 Feb 2007 14:51:30 +0000</pubDate>
		<dc:creator>cflipse</dc:creator>
				<category><![CDATA[web]]></category>
		<category><![CDATA[work]]></category>

		<guid isPermaLink="false">http://devcaffeine.com/2007/02/22/printing-error-in-ie/</guid>
		<description><![CDATA[So &#8230; that was fun.
Bug report gets filed about the application at work.  It seems that there&#8217;s an error that crops up when you print from IE.  The error, of course, being the characteristically unhelpful dialog of garbage that IE likes to throw at you.  After a bit of digging, it got [...]]]></description>
			<content:encoded><![CDATA[<p>So &#8230; <i>that</i> was fun.</p>
<p>Bug report gets filed about the application at work.  It seems that there&#8217;s an error that crops up when you print from IE.  The error, of course, being the characteristically unhelpful dialog of garbage that IE likes to throw at you.  After a bit of digging, it got even better.  I was <i>hoping</i> I&#8217;d be able to respond with something technically snotty, like &#8220;Do you have your printer installed?&#8221; </p>
<p>But, I managed to reproduce the bug.  Even better, I managed to narrow down it&#8217;s occurance.  It turned out that when you were logged in, the error would occur, but <b>only</b> if you were logged in.  Now that&#8217;s strange, since we&#8217;re using application level (cookie based) authentication &#8212; IE wouldn&#8217;t know anything about your logged in state.  Everything works fine in Firefox (of course, the browser with good diagnostic tools doesn&#8217;t show the problem &#8230;)</p>
<p>So, in stumbling around trying to find some clue as to what the problem is, I came across <a href="http://meyerweb.com/eric/thoughts/2005/08/29/reserved-id-values/">this</a> &#8230; It seems that <code>id="tags"</code> ends up conflicting with some builtin function in IE that&#8217;s used in printing.  Sure enough, we had a field with <code>&lt;input name="tags" id="tags" type="text"&gt;</code> that was wrapped inside an <code>if logged_in?</code> check. Renamed the field, and printing now works like it&#8217;s supposed to.</p>
<p>So, what could have been really long and painful was short circuited by a lucky find in my net searches.  No thanks to IE, it&#8217;s non-reserved reserved fields and opaque error messages.  Have I mentioned lately how much I hate IE?</p>
]]></content:encoded>
			<wfw:commentRss>http://devcaffeine.com/2007/02/22/printing-error-in-ie/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Oracle and rails 1.2.1</title>
		<link>http://devcaffeine.com/2007/02/08/rails-12-database-indexes/</link>
		<comments>http://devcaffeine.com/2007/02/08/rails-12-database-indexes/#comments</comments>
		<pubDate>Thu, 08 Feb 2007 23:09:53 +0000</pubDate>
		<dc:creator>cflipse</dc:creator>
				<category><![CDATA[programming]]></category>
		<category><![CDATA[work]]></category>
		<category><![CDATA[oracle]]></category>
		<category><![CDATA[rails]]></category>

		<guid isPermaLink="false">http://devcaffeine.com/2007/02/08/rails-12-database-indexes/</guid>
		<description><![CDATA[Grrr &#8230; So, in the course of updating to rails 1.2, it seems that the automagically generated names for database indexes were changed.  Went from &#8220;#{table}_#{columns}_index&#8221; to &#8220;index_#{table}_on_#{columns}&#8221; &#8230; an annoying little change that bumps me up against some sort of Oracle column name length ceiling.  And has the effect of probably breaking [...]]]></description>
			<content:encoded><![CDATA[<p>Grrr &#8230; So, in the course of updating to rails 1.2, it seems that the automagically generated names for database indexes were changed.  Went from &#8220;#{table}_#{columns}_index&#8221; to &#8220;index_#{table}_on_#{columns}&#8221; &#8230; an annoying little change that bumps me up against some sort of Oracle column name length ceiling.  And has the effect of probably breaking down migrations.</p>
<p>So, I&#8217;m gonna jump into the migrations and patch the existing add_index calls to specify a :name => value for all of the existing indexes, so that migrations will actually <i>work</i> and leave me with a database that matches the one in production &#8230;. </p>
<p>Figuring out why I suddenly couldn&#8217;t build my test database was not exactly the way I meant to spend the last hour &#8230;.</p>
<p><b>Update</b></p>
<p>Changeset 4768 is responsible for all this.  Apparently, to allow reverse parsing of the indexes from the index name.  Not alltogether a bad goal, but it still breaks down migrations &#8230;  (thanks to <a href=http://blog.twifkak.com/articles/2007/02/08/using-rails-migrations-add-remove_index-upgrading-to-1-2">Devin</a> for find this one)</p>
<p>And, I discovered another problem last night.  Seems that all of my text fields have a default value of &#8220;empy_clob()&#8221;  &#8230; not the function, but <i>that actual string</i>.  Sort of trashes one&#8217;s assumptions about unset fields.  Apparently (thanks Roy) this has been worked out in <a href="http://dev.rubyonrails.org/ticket/7344">ticket 7344</a> and already applied to Edge.  Some sort of thing that only applies to Oracle, because, of course, nobody tests Rails on Oracle, it&#8217;s all MySQL.  And I can&#8217;t really look into the patch attached to the ticket, because I keep getting Trac errors.  Shaping up to have been a lovely adventure &#8230;</p>
<p><b>update</b><br />
Finally got through to the site, and worked out a monkey patch to fix this.  For those of you who might be running with oracle, and can&#8217;t upgrade to Edge (gee, wonder why not) the patch is below.   This is a temporary thing, given that the ticket is closed, and will hopefully be fixed in 1.2.2 &#8230;<br />
[ruby]<br />
class ActiveRecord::ConnectionAdapters::OracleColumn<br />
  attr_writer :default<br />
end if defined? ActiveRecord::ConnectionAdapters::OracleColumn</p>
<p>class ActiveRecord::ConnectionAdapters::OracleAdapter<br />
  def quote(value, column = nil) #:nodoc:<br />
    if value &#038;&#038; column &#038;&#038; [:text, :binary].include?(column.type)<br />
      %Q{empty_#{ column.sql_type.downcase rescue &#8216;blob&#8217; }()}<br />
    else<br />
       super<br />
    end<br />
  end</p>
<p>  alias columns_orig columns<br />
  def columns(*a)<br />
    columns_orig(*a).each do |col|<br />
      col.default = nil if col.default =~ /^(null|empty_[bc]lob())$/i<br />
    end<br />
  end<br />
end if defined? ActiveRecord::ConnectionAdapters::OracleAdapter<br />
[/ruby]</p>
<p>This appears to do the trick &#8230; a dump of the test schema no longer defaults all of our text columns to &#8220;empty_clob()&#8221; and tests are again passing  &#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://devcaffeine.com/2007/02/08/rails-12-database-indexes/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>A breather, of sorts</title>
		<link>http://devcaffeine.com/2007/01/29/a-breather-of-sorts/</link>
		<comments>http://devcaffeine.com/2007/01/29/a-breather-of-sorts/#comments</comments>
		<pubDate>Mon, 29 Jan 2007 17:47:50 +0000</pubDate>
		<dc:creator>cflipse</dc:creator>
				<category><![CDATA[life]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[work]]></category>

		<guid isPermaLink="false">http://devcaffeine.com/2007/01/29/a-breather-of-sorts/</guid>
		<description><![CDATA[So, after a marathon at work, we deployed our first delivery of the appilcation I&#8217;ve been working on since July.  It&#8217;s an enterprise application, on a private intranet, so no links.  However, it&#8217;s fair to say that we&#8217;ll be getting hits from a wide variety of sources.  It should be good to [...]]]></description>
			<content:encoded><![CDATA[<p>So, after a marathon at work, we deployed our first delivery of the appilcation I&#8217;ve been working on since July.  It&#8217;s an enterprise application, on a private intranet, so no links.  However, it&#8217;s fair to say that we&#8217;ll be getting hits from a wide variety of sources.  It should be good to see how well it holds up.</p>
<p>Right now, it&#8217;s deployed using the standard-mongrel-rails-stack &#8482;, using 2 mongrel servers, all on one box.  Seems to be holding up very well.  As a note, moving your session store off the disc and into the database (ARSeession) does wonderful things for performance.  Down side:  It appears that a Text field in oracle is capped out at 4096b.  Which puts an upper limit on an individual session size.  Not necessarily a bad thing, but it&#8217;s likely to bite us in the butt at some point.</p>
<p>To top off the deployment exctiement, I&#8217;m buying a house.  Closing comes in on Wednesday.  We&#8217;ve already been through and plotted everything out.  New appliances are ordered and on their way, buying up lighting fixtures, picking out paint colors &#8230; it&#8217;s pretty much all done but the installation, which is scheduled for Friday.</p>
<p>So, after about a month, I finally get a chance to breath.  So, what am I doing?  Refocusing on Dark Sun stuff.  Lots to do there, including actually following through on the site.  At least <em>that</em> one will be public &#8230; <img src='http://devcaffeine.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://devcaffeine.com/2007/01/29/a-breather-of-sorts/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>demo fallout</title>
		<link>http://devcaffeine.com/2006/09/01/demo/</link>
		<comments>http://devcaffeine.com/2006/09/01/demo/#comments</comments>
		<pubDate>Fri, 01 Sep 2006 14:02:44 +0000</pubDate>
		<dc:creator>cflipse</dc:creator>
				<category><![CDATA[work]]></category>

		<guid isPermaLink="false">http://blog.devcaffeine.com/2006/09/01/demo/</guid>
		<description><![CDATA[Well, the demo a couple of days ago went smashingly.  This was the good sort of &#8220;stunning him speechless&#8221;.  Now, we get a bit of rest, though apparently we&#8217;re in for a wave of new mini-demos, now that the control gate has passed and we&#8217;re on the path.  Looks like we&#8217;ll need [...]]]></description>
			<content:encoded><![CDATA[<p>Well, the demo a couple of days ago went smashingly.  This was the good sort of &#8220;stunning him speechless&#8221;.  Now, we get a bit of rest, though apparently we&#8217;re in for a wave of new mini-demos, now that the control gate has passed and we&#8217;re on the path.  Looks like we&#8217;ll need to throw a branch into the svn repository&#8230; <img src='http://devcaffeine.com/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://devcaffeine.com/2006/09/01/demo/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>moment of truth</title>
		<link>http://devcaffeine.com/2006/08/30/moment-of-truth/</link>
		<comments>http://devcaffeine.com/2006/08/30/moment-of-truth/#comments</comments>
		<pubDate>Wed, 30 Aug 2006 17:30:55 +0000</pubDate>
		<dc:creator>cflipse</dc:creator>
				<category><![CDATA[programming]]></category>
		<category><![CDATA[work]]></category>

		<guid isPermaLink="false">http://blog.devcaffeine.com/2006/08/30/moment-of-truth/</guid>
		<description><![CDATA[Well, after about two months of solid work, with one other developer and a UI/graphics guy, we&#8217;ve managed to produce a webapp redesign for work.  The system is basically a really big CMS, where the data gets fed to the database through some backend processing, and the producer side users are building the contents [...]]]></description>
			<content:encoded><![CDATA[<p>Well, after about two months of solid work, with one other developer and a UI/graphics guy, we&#8217;ve managed to produce a webapp redesign for work.  The system is basically a really big CMS, where the data gets fed to the database through some backend processing, and the producer side users are building the contents of various pages from those building blocks.  It&#8217;s sort of like building up the pages of a newspaper site.  At least, that&#8217;s the idea.</p>
<p>We demo today, which will basically determine whether or not we get to keep running with this little experement.  At the moment it&#8217;s a <i>very</i> functional proof of concept.  Covers all the basics, but &#8230; well, I wouldn&#8217;t call it robust just yet.  Early demos have gone well, but this is the important one.</p>
<p>In all, I&#8217;d have to say that I&#8217;ve picked up a <i>lot</i> of Ruby on Rails knowledge, so it&#8217;s been a good experience in that respect, regardless of outcome.</p>
<p>I&#8217;m sure the demo will go well, but some of the guys havn&#8217;t gotten much sleep last night.  Not much point in loosing sleep, what will be will be.  And really, the demo <i>will</i> go well.  Whether or not we get to take this beyond a proof-of-concept is, sadly, a matter of politics, and just a little bit out of my sphere of control.  Hence, no sense worrying about it.</p>
]]></content:encoded>
			<wfw:commentRss>http://devcaffeine.com/2006/08/30/moment-of-truth/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>busy, busy</title>
		<link>http://devcaffeine.com/2006/08/17/busy-busy/</link>
		<comments>http://devcaffeine.com/2006/08/17/busy-busy/#comments</comments>
		<pubDate>Thu, 17 Aug 2006 15:59:39 +0000</pubDate>
		<dc:creator>cflipse</dc:creator>
				<category><![CDATA[darksun]]></category>
		<category><![CDATA[work]]></category>

		<guid isPermaLink="false">http://blog.devcaffeine.com/2006/08/17/busy-busy/</guid>
		<description><![CDATA[I&#8217;ve never been terribly good about writing to this thing, but this summer has been somewhat bad, especially if you consider how much time I&#8217;ve been spending immersed in new technology &#8230; 
In the last two months at work, I&#8217;d have to guess that I&#8217;ve picked up a pretty strong working knowledge of Rails &#8230; [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve never been terribly good about writing to this thing, but this summer has been somewhat bad, especially if you consider how much time I&#8217;ve been spending immersed in new technology &#8230; </p>
<p>In the last two months at work, I&#8217;d have to guess that I&#8217;ve picked up a pretty strong working knowledge of Rails &#8230; still have hiccups, of course, but I&#8217;ve gotten a rather snazzy javascripty app put together for doing &#8220;news&#8221; page layout.  It&#8217;ll never see the light of the &#8216;net, since the thing is intended to live on a private network, but it&#8217;s been a good workout, both of my Javascript skills, and my developing ruby muscles.  So, yeah, really should be talking more about my experiences picking up that new langauge and platform.  Whole thing is due for a set of demos over the next couple of weeks.  The low pressure, &#8220;determine if we&#8217;re gonna keep funding the project&#8221; type of demo.</p>
<p>As for side projects, I&#8217;ve got a rewrite of athas.org in the works, which is going to be rails based.  Really, I just need a couple of days without distraction.  Once I get the &#8220;releases&#8221; section worked out and done, the rest is a cakewalk.   Of course, those distraction free days have been kind of mythical.  I&#8217;ll have a couple of days for it next week, I suppose &#8212; my girlfriend is getting knee surgury, and I&#8217;m taking some time off work (wonderful timing with the demos and all, but it&#8217;s been scheduled for a while).</p>
<p>And on the same lines, I&#8217;ve got an article due for <a href="http://paizo.com/dragon">Dragon</a> magazine at the end of the month that I&#8217;m struggling with.  It&#8217;s taking shape, but the constraints aren&#8217;t exactly what I&#8217;d call natural for the setting.</p>
<p>Other than that, my time has been tied up with the usual &#8220;summer&#8221; things &#8212; weddings, weekend trips, a bbq or two at the park &#8230; not much time for keeping up a blog.  On the plus side, it also means that I havn&#8217;t had much time for keeping up with World of Warcraft &#8230; I think it might be safe to say that <i>that</i> particular distraction has finally let me go.</p>
]]></content:encoded>
			<wfw:commentRss>http://devcaffeine.com/2006/08/17/busy-busy/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>getting started</title>
		<link>http://devcaffeine.com/2006/07/03/getting-started/</link>
		<comments>http://devcaffeine.com/2006/07/03/getting-started/#comments</comments>
		<pubDate>Mon, 03 Jul 2006 19:00:29 +0000</pubDate>
		<dc:creator>cflipse</dc:creator>
				<category><![CDATA[programming]]></category>
		<category><![CDATA[work]]></category>

		<guid isPermaLink="false">http://blog.devcaffeine.com/2006/07/03/getting-started/</guid>
		<description><![CDATA[First day at new project today.
Of course, I&#8217;m mired in various bureacratic setup issues &#8230; you know, little things like system accounts and network access.
Promises to be interesting though.  My project manager has just come back from some kind of conference on agile development, and she seems to be quite fired up.  My [...]]]></description>
			<content:encoded><![CDATA[<p>First day at new project today.</p>
<p>Of course, I&#8217;m mired in various bureacratic setup issues &#8230; you know, little things like system accounts and network access.</p>
<p>Promises to be interesting though.  My project manager has just come back from some kind of conference on agile development, and she seems to be quite fired up.  My network access issues look to be somewhat mitigated by the fact that she wants to give pair programming a good try &#8230; so, it turns out that I won&#8217;t actually need my accounts and such right away.  I&#8217;ve never really done pair programming before, but it should be an interesting experience&#8230;  The other developer I&#8217;m pairing with knows what he&#8217;s talking about, as far as the depths of Ruby go, so at least <i>I</i> will get something out of it &#8230; <img src='http://devcaffeine.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://devcaffeine.com/2006/07/03/getting-started/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Job on Rails</title>
		<link>http://devcaffeine.com/2006/06/01/job-on-rails/</link>
		<comments>http://devcaffeine.com/2006/06/01/job-on-rails/#comments</comments>
		<pubDate>Thu, 01 Jun 2006 14:43:16 +0000</pubDate>
		<dc:creator>cflipse</dc:creator>
				<category><![CDATA[work]]></category>

		<guid isPermaLink="false">http://devcaffeine.com/2006/06/01/job-on-rails/</guid>
		<description><![CDATA[So, it looks like I&#8217;ve decided on a new position.
Not without some trepidation, of course.  The bad is that I&#8217;m looking at what could easily be a painful commute through traffic.  Though there are supposedly enough ways to the campus, and I&#8217;ll have enough schedule flexibility, that traffic really shouldn&#8217;t be a worry. [...]]]></description>
			<content:encoded><![CDATA[<p>So, it looks like I&#8217;ve decided on a new position.</p>
<p>Not without some trepidation, of course.  The bad is that I&#8217;m looking at what could easily be a painful commute through traffic.  Though there are supposedly enough ways to the campus, and I&#8217;ll have enough schedule flexibility, that traffic really shouldn&#8217;t be a worry.  Still, I have this irrational fear of Nothern VA traffic.  I like <i>driving</i>, not stop and go.</p>
<p>The other fear that I have is that I&#8217;ll find out that I really just can&#8217;t stand working in a vault.  I&#8217;m very much a product of a connected world.  Lacking quick and easy access to the internet is like lacking access my temporal lobe.</p>
<p>But, the good:  I&#8217;ll be working on a project in Ruby on Rails.  In the community I&#8217;m working in, that&#8217;s pretty big.  &#8220;Early adopter&#8221; means that they managed to get Windows 2000 on desktops in 2005, so this is pretty big.  I&#8217;ll get to work on a Unix system (yay!) and the project is relatively green-field &#8212; it&#8217;s a total redesign of a rather cumbersome enterprisey system that can&#8217;t be upgraded.  I sort-of know one of the guys I&#8217;ll be working with.  Enough to know for certain that he knows Ruby <i>really</i> well.  Whereas I&#8217;ve just sort of dabbled with it.  I&#8217;ll be learning a lot on that front.  To top it all off, the intention of the program is not only one that I can agree with, but one that I think will actually <i>do</i> something useful.  </p>
<p>So &#8230; new working environment, opportunity to learn something, and the chance to do something good out of it?  I&#8217;ll deal with the drive.</p>
]]></content:encoded>
			<wfw:commentRss>http://devcaffeine.com/2006/06/01/job-on-rails/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
