<?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>John Paul Ashenfelter</title>
	<atom:link href="http://www.ashenfelter.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.ashenfelter.com</link>
	<description>Blogs are for geeks. Guilty!</description>
	<lastBuildDate>Thu, 15 Apr 2010 13:06:28 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Protip: Using 37Signals Launchpad with Fluid on OSX</title>
		<link>http://www.ashenfelter.com/2010/04/15/protip-using-37signals-launchpad-with-fluid-on-osx/</link>
		<comments>http://www.ashenfelter.com/2010/04/15/protip-using-37signals-launchpad-with-fluid-on-osx/#comments</comments>
		<pubDate>Thu, 15 Apr 2010 13:05:38 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[productivity]]></category>
		<category><![CDATA[tech]]></category>
		<category><![CDATA[osx]]></category>
		<category><![CDATA[protip]]></category>

		<guid isPermaLink="false">http://www.ashenfelter.com/?p=31</guid>
		<description><![CDATA[Since 37Signals introduced their single sign-on solution aka Launchpad, it takes a little more effort to create a Fluidyapplication for Campfire, Basecamp, and all the rest of the tools since authentication happens on one site (launchpad.37signals.com) and your application is on another site (eg. bacon.campfirenow.com). But the fix is easy: Create your Fluid App as [...]]]></description>
			<content:encoded><![CDATA[<p>Since 37Signals introduced their single sign-on solution aka Launchpad, it takes a little more effort to create a Fluidyapplication for Campfire, Basecamp, and all the rest of the tools since authentication happens on one site (launchpad.37signals.com) and your application is on another site (eg. bacon.campfirenow.com). But the fix is easy:</p>
<ol>
<li>Create your Fluid App as normal</li>
<li>Go to Preferences &gt; Advanced</li>
<li>Add *launchpad.37signals.com* to the list of allowed sites</li>
</ol>
<p>For extra credit, you can add the related URL paths for any of the other 37signals webapps so you can use the menubar you get on their sites when you&#8217;ve authenticated with launchpad.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ashenfelter.com/2010/04/15/protip-using-37signals-launchpad-with-fluid-on-osx/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ruby Nation 2010, Day 1</title>
		<link>http://www.ashenfelter.com/2010/04/10/ruby-nation-2010-day-1/</link>
		<comments>http://www.ashenfelter.com/2010/04/10/ruby-nation-2010-day-1/#comments</comments>
		<pubDate>Sat, 10 Apr 2010 13:11:27 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[ruby]]></category>

		<guid isPermaLink="false">http://www.ashenfelter.com/?p=26</guid>
		<description><![CDATA[I&#8217;ll be honest &#8212; I love RubyNation. I&#8217;ve been to it for the past 3 years, ever since I first started programming in Ruby on a regular basis. I&#8217;ve been to many conferences and I have to compliment the team on putting together yet another great program for 2010. It&#8217;s worth getting up at 5am [...]]]></description>
			<content:encoded><![CDATA[<div id="_mcePaste">I&#8217;ll be honest &#8212; I love RubyNation. I&#8217;ve been to it for the past 3 years, ever since I first started programming in Ruby on a regular basis. I&#8217;ve been to many conferences and I have to compliment the team on putting together yet another great program for 2010. It&#8217;s worth getting up at 5am and driving 2 hours plus the DC commute to hear what the high-quality lineup of speakers has to say and to connect with the Virginia/DC-area Ruby community.</div>
<div id="_mcePaste">Day 1 of RubyNation did not disappoint. Here&#8217;s a quick overview of the sessions I went to today:</div>
<div id="_mcePaste">Glenn Vandenburg started the day in a single session track basically explaining what&#8217;s wrong with enterprise programming and why Ruby fits in well. This is probably the 20th time I&#8217;ve seen Glenn give a talk over the past 7 years on a wide variety of topics, moving from Java to Ruby to Agile and everywhere in between. Some tidbits:</div>
<div id="_mcePaste">* Companies want to get good results with average (or worse) programmers</div>
<div id="_mcePaste">* Enterprise architecture protects against medidocre workers</div>
<div id="_mcePaste">* Software creationalism &#8212; business focus focuses on cost of building initial app vs cost of maintaining over time</div>
<div id="_mcePaste">* Paying for something gives perception (illusion) of value. &#8220;I bought Oracle and saved $300k instead of using MySQL for free</div>
<div id="_mcePaste">* What enterprise needs is not what it wants &#8212; need code to be adaptable over time.</div>
<div id="_mcePaste">One key point was that big companies optimize to improve their metrics, so if you use the wrong metrics, you&#8217;re optimizing the wrong way.</div>
<div id="_mcePaste">* Good metric of code quality is cost of new feature over time</div>
<div id="_mcePaste">I think the right place for this talk is JavaOne or somewhere it&#8217;s not preaching to the choir &#8212; I&#8217;m pretty sure everyone in the audience agreed but Glenn did a great job kicking off the conference and reminding us why many of us came to Ruby from Java and other languages.</div>
<div id="_mcePaste">Big takeaway &#8212; still a lot of room for Ruby in the enterprise.</div>
<div id="_mcePaste">requote dave thomas &#8212; ruby is glue that doesn&#8217;t set</div>
<div id="_mcePaste">Greg Pollack followed Glenn with a talk about &#8220;Decoding Yehuda&#8221; which is really about some of the key refactoring patterns that were used to build Rails 3. Lots of good meat in there for Ruby programmers *and* now that Rails source is a lot more readable, Rails developers can more easily understand their code.</div>
<div id="_mcePaste">Five major techniques</div>
<div id="_mcePaste">* Method compilation:</div>
<div id="_mcePaste">I skipped the next block to hang up &#8212; not too interested about innards of JRuby (Russ Olsen&#8217;s talk) or formal workflow systems (David Bock) thought I generally enjoy both speakers.</div>
<div id="_mcePaste">The highlight of the day for me was the next talk &#8212; Joe Damato and Aman Gupta explaining the details of Ruby garbage collection. Yeah &#8212; sounds exciting I know &#8212; but they gave a very clear overview of how Ruby allocates memory, how the garbage is collected, and how the different defaults of MRI and REE affect your app. The closed with an intro to memprof.com, sort of a NewRelic-y website for analyzing the memory profile of your rails stack. Definitely check that out.</div>
<div id="_mcePaste">Jim Weirich followed lunch with his SOLID Ruby talk, entertaining as he always is. Didn&#8217;t learn a lot that&#8217;s new personally, but was an entertaining romp through the fundamentals of Liskov Substitution, Single Dependency Principle, etc.</div>
<div id="_mcePaste">I started to fade in the afternoon thanks to my 5am wakeup call to get up to DC, so I started to pay less attention to the talks. There weren&#8217;t a lot of lightening talks during the block &#8212; Bryan Lyles skipped TATFT to suggest using DTerm, which is a free keystroke-combo terminal/command line utility. Nick Sieger&#8217;s talk about what&#8217;s going on in the Java-based Rails stack was useful for those of us with Java clients. Finally, Dave Thomas closed the day with one of his &#8220;Ruby Sucks!&#8221; talks, which is a lot of fun, but that he&#8217;s done at a number of conferences. Metrostar hosted the RubyBQ to end the evening and an early bedtime ended my first day.</div>
<div id="_mcePaste">Overall, I thought the day was worthwhile. It certainly wasn&#8217;t FutureRuby or JSConf or something similarly mindblowing, but it was a a good opportunity to network with the local Ruby crew, learn a few things (ruby garbage collection, WTF?) I wouldn&#8217;t have normally looked at, and get fired up about Ruby.</div>
<div id="_mcePaste">Mission accomplished.</div>
<p>I&#8217;ll be honest &#8212; I love RubyNation. I&#8217;ve been to it for the past 3 years, ever since I first started programming in Ruby on a regular basis. I&#8217;ve been to many conferences and I have to compliment the team on putting together yet another great program for 2010. It&#8217;s worth getting up at 5am and driving 2 hours plus the DC commute to hear what the high-quality lineup of speakers has to say and to connect with the Virginia/DC-area Ruby community.<br />
Day 1 of RubyNation did not disappoint. Here&#8217;s a quick overview of the sessions I went to today: Glenn Vandenburg started the day in a single session track basically explaining what&#8217;s wrong with enterprise programming and why Ruby fits in well. This is probably the 20th time I&#8217;ve seen Glenn give a talk over the past 7 years on a wide variety of topics, moving from Java to Ruby to Agile and everywhere in between. Some tidbits:<br />
* Companies want to get good results with average (or worse) programmers* Enterprise architecture protects against medidocre workers* Software creationalism &#8212; business focus focuses on cost of building initial app vs cost of maintaining over time* Paying for something gives perception (illusion) of value. &#8220;I bought Oracle and saved $300k instead of using MySQL for free* What enterprise needs is not what it wants &#8212; need code to be adaptable over time.<br />
One key point was that big companies optimize to improve their metrics, so if you use the wrong metrics, you&#8217;re optimizing the wrong way.<br />
* Good metric of code quality is cost of new feature over time<br />
I think the right place for this talk is JavaOne or somewhere it&#8217;s not preaching to the choir &#8212; I&#8217;m pretty sure everyone in the audience agreed but Glenn did a great job kicking off the conference and reminding us why many of us came to Ruby from Java and other languages.<br />
Big takeaway &#8212; still a lot of room for Ruby in the enterprise. requote dave thomas &#8212; ruby is glue that doesn&#8217;t set<br />
Greg Pollack followed Glenn with a talk about &#8220;Decoding Yehuda&#8221; which is really about some of the key refactoring patterns that were used to build Rails 3. Lots of good meat in there for Ruby programmers *and* now that Rails source is a lot more readable, Rails developers can more easily understand their code.<br />
Five major techniques<br />
* Method compilation:<br />
I skipped the next block to hang up &#8212; not too interested about innards of JRuby (Russ Olsen&#8217;s talk) or formal workflow systems (David Bock) thought I generally enjoy both speakers.<br />
The highlight of the day for me was the next talk &#8212; Joe Damato and Aman Gupta explaining the details of Ruby garbage collection. Yeah &#8212; sounds exciting I know &#8212; but they gave a very clear overview of how Ruby allocates memory, how the garbage is collected, and how the different defaults of MRI and REE affect your app. The closed with an intro to memprof.com, sort of a NewRelic-y website for analyzing the memory profile of your rails stack. Definitely check that out.<br />
Jim Weirich followed lunch with his SOLID Ruby talk, entertaining as he always is. Didn&#8217;t learn a lot that&#8217;s new personally, but was an entertaining romp through the fundamentals of Liskov Substitution, Single Dependency Principle, etc.<br />
I started to fade in the afternoon thanks to my 5am wakeup call to get up to DC, so I started to pay less attention to the talks. There weren&#8217;t a lot of lightening talks during the block &#8212; Bryan Lyles skipped TATFT to suggest using DTerm, which is a free keystroke-combo terminal/command line utility. Nick Sieger&#8217;s talk about what&#8217;s going on in the Java-based Rails stack was useful for those of us with Java clients. Finally, Dave Thomas closed the day with one of his &#8220;Ruby Sucks!&#8221; talks, which is a lot of fun, but that he&#8217;s done at a number of conferences. Metrostar hosted the RubyBQ to end the evening and an early bedtime ended my first day.<br />
Overall, I thought the day was worthwhile. It certainly wasn&#8217;t FutureRuby or JSConf or something similarly mindblowing, but it was a a good opportunity to network with the local Ruby crew, learn a few things (ruby garbage collection, WTF?) I wouldn&#8217;t have normally looked at, and get fired up about Ruby.<br />
Mission accomplished.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ashenfelter.com/2010/04/10/ruby-nation-2010-day-1/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Marketing? Who, me? Seriously?</title>
		<link>http://www.ashenfelter.com/2010/02/19/marketing-who-me-seriously/</link>
		<comments>http://www.ashenfelter.com/2010/02/19/marketing-who-me-seriously/#comments</comments>
		<pubDate>Fri, 19 Feb 2010 17:09:12 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[business]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://www.ashenfelter.com/?p=19</guid>
		<description><![CDATA[Yes. Me. Seriously. I&#8217;m beginning to work with clients on advertising and marketing campaigns. While I do like the data analysis and technical side of this, the idea of being a marketer is kind of new. Plus I&#8217;m mentally adapted to assuming marketers are sleazebags. Apparently we all aren&#8217;t sleazebags. Yet. A good start for [...]]]></description>
			<content:encoded><![CDATA[<p>Yes. Me. Seriously.</p>
<p>I&#8217;m beginning to work with clients on advertising and marketing campaigns. While I do like the data analysis and technical side of this, the idea of being a marketer is kind of new. Plus I&#8217;m mentally adapted to assuming marketers are sleazebags.</p>
<p>Apparently we all aren&#8217;t sleazebags. Yet.</p>
<p>A good start for WordPress bloggers is http://www.upstartblogger.com/blog-to-success-with-stats-tracking</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ashenfelter.com/2010/02/19/marketing-who-me-seriously/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Permissions for WordPress on Joyent Accelerator</title>
		<link>http://www.ashenfelter.com/2010/02/18/permissions-for-wordpress-on-joyent-accelerator/</link>
		<comments>http://www.ashenfelter.com/2010/02/18/permissions-for-wordpress-on-joyent-accelerator/#comments</comments>
		<pubDate>Thu, 18 Feb 2010 19:55:35 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[blog]]></category>
		<category><![CDATA[tech]]></category>
		<category><![CDATA[apache]]></category>
		<category><![CDATA[joyent]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://www.ashenfelter.com/?p=12</guid>
		<description><![CDATA[John Paul fixed his problem with WordPress uploads, upgrades, and theme installations by ensuring that the WP files were owned by the same user running Apache -- chown -R www:www in this case.]]></description>
			<content:encoded><![CDATA[<p>I installed WordPress on my Joyent accelerator by following the <a href="http://wiki.joyent.com/accelerators:kb:install-wordpress">wiki instructions</a> but since they&#8217;re a bit older, ran into a couple of problems that required some after-the-fact tweaking.</p>
<p>Basically, if you want to use the sexy new WP capabilities for automatically upgrading, directly uploading themes, etc you want to ensure that the process running WP can access the files. I had uploaded WP as a user, so my list files were owned by ashenfelter.com:ashenfelter.com while new files created by WP plugins (eg sitemap.xml)  were owned by www:www. Solution?</p>
<p>web/public &gt;sudo chown -R www:www .</p>
<p>As dozens if not hundreds of posts on the WP forums/etc warn &#8212; please DO NOT try to solve this kind of problem by chmod 777 unless you like being hacked.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ashenfelter.com/2010/02/18/permissions-for-wordpress-on-joyent-accelerator/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WordPress and Joyent, Sitting in a Tree</title>
		<link>http://www.ashenfelter.com/2010/02/18/wordpress-and-joyent-sitting-in-a-tree/</link>
		<comments>http://www.ashenfelter.com/2010/02/18/wordpress-and-joyent-sitting-in-a-tree/#comments</comments>
		<pubDate>Thu, 18 Feb 2010 19:46:45 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[blog]]></category>
		<category><![CDATA[tech]]></category>
		<category><![CDATA[joyent]]></category>
		<category><![CDATA[virtual machine]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://www.ashenfelter.com/?p=10</guid>
		<description><![CDATA[Setting up Wordpress on a Joyent shared accelerator leads to #fail performance-wise, but a long-owned, never used dedicated Joyent accelerator saves the day.]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ll be honest upfront that I have a love/hate relationship with Joyent.</p>
<p>One the plus side, I have 3 lifetime accounts &#8212; yes, lifetime. When TextDrive, the original company, was bootstrapping themselves, they took the unusual step of offering several rounds of VC (venture capital) lifetime hosting accounts. Breakeven point compared to monthly hosting was about 16months as I remember so considering I&#8217;m on year 5(?) I think I&#8217;m pretty ahead of the game.</p>
<p>For those that care, I have the equivalent of two Shared Accelerator accounts and one Dedicated (M) Sized Accelerator. Since Joyent bought TextDrive, everything has migrated from FreeBSD to their Solaris based virtual machines (sort of like Xen on Linux). I finally migrated my FreeBSD boxes onto their Shared Solaris machines this month and restarted my long dormant WordPress blog.</p>
<p>Install on the Shared Accelerator was a <strong>breeze</strong>! The VirtualMin control panel has an install script for WordPress 2.8.5 which then could autoupdate itself to 2.9.x. The only problem is that WordPress on Shared Joyent Accelerators is so slow as to be unusable. Seems like there&#8217;s plenty in the forums about it. And by unusable I mean 5-15s (SECONDS!) to render a simple WP post. Admin side could take well over 30-60s. I installed WP-SuperCache and basically had no real improvement. #fail.</p>
<p>Fortunately I had the Dedicated Accelerator. Turns out WP actually runs pretty well on that machine. It&#8217;s dedicated space, so it *should* run faster, but my Shared FreeBSD server ran circles around the equivalent Solaris server as well. Chalk it up to shared hosting and it&#8217;s resource sharing versus dedicated resources for virtual machines.</p>
<p>Of course I had to manually install everything and then fight a bit with permissions to get everything working. Seems like PHP hasn&#8217;t changed *that* much in the years I&#8217;ve been avoiding it! But you&#8217;re looking at the final result &#8212; my personal ashenfelter.com site <strong>and</strong> my corporate transitionpoint.com site both running WordPress on a Solaris virtual machine.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ashenfelter.com/2010/02/18/wordpress-and-joyent-sitting-in-a-tree/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Reintroducing&#8230;. John Paul Ashenfelter</title>
		<link>http://www.ashenfelter.com/2010/02/12/site-in-transition/</link>
		<comments>http://www.ashenfelter.com/2010/02/12/site-in-transition/#comments</comments>
		<pubDate>Fri, 12 Feb 2010 12:00:53 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[blog]]></category>

		<guid isPermaLink="false">http://www.ashenfelter.com/?p=3</guid>
		<description><![CDATA[Hi, my name is John Paul Ashenfelter. I build web applications. I run Transitionpoint, which wants to build your next web application.]]></description>
			<content:encoded><![CDATA[<p>Hi, my name is John Paul Ashenfelter.</p>
<p>I build web applications. I also run <a title="Transitionpoint" href="http://www.transitionpoint.com" target="_blank">Transitionpoint</a> &#8212; perhaps we could build your next web application?</p>
<p>Nearly all of my new work over the past 3 years has been Ruby on Rails, but I use anything that helps me build better applications with less time and effort. I&#8217;ve done a lot of work with ColdFusion and still work on some busy and profitable CFML sites. I also have used a number of open source tools like Drupal and WordPress.</p>
<p>I&#8217;m neurotically focused on automation, testing, and agile development techniques.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ashenfelter.com/2010/02/12/site-in-transition/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>
