<?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>Wisps &#38; Snippets</title>
	<atom:link href="http://decielo.com/feed" rel="self" type="application/rss+xml" />
	<link>http://decielo.com</link>
	<description>Decielo Design &#38; Development Blog</description>
	<lastBuildDate>Wed, 02 May 2012 07:01:48 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>May 2012: Don&#8217;t Break the Chain Goal Calendar</title>
		<link>http://decielo.com/articles/403/may-2012-dont-break-the-chain-goal-calendar</link>
		<comments>http://decielo.com/articles/403/may-2012-dont-break-the-chain-goal-calendar#comments</comments>
		<pubDate>Wed, 02 May 2012 06:58:47 +0000</pubDate>
		<dc:creator>brookr</dc:creator>
				<category><![CDATA[Building Our Business]]></category>

		<guid isPermaLink="false">http://decielo.com/?p=403</guid>
		<description><![CDATA[Ready to kick ass on your goals in May? Keep the daily rhythm going with the May chained goals calendar. Fill it out, fold it up, and get shit done. You can see what it looks like in this photo. Go go go!]]></description>
			<content:encoded><![CDATA[<p>Ready to kick ass on your goals in May? Keep the daily rhythm going with the <a href="http://decielo.com/wp-content/uploads/2012/05/2012-05-chained_goals.pdf">May chained goals calendar</a>. Fill it out, fold it up, and get shit done.</p>
<p>You can see what it looks like <a href="http://decielo.com/articles/366/tracking-goals-march-2012">in this photo</a>.</p>
<p>Go go go!</p>
]]></content:encoded>
			<wfw:commentRss>http://decielo.com/articles/403/may-2012-dont-break-the-chain-goal-calendar/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>No, You Don&#8217;t Want to Sell to Consumers</title>
		<link>http://decielo.com/articles/391/no-you-dont-want-to-sell-to-consumers</link>
		<comments>http://decielo.com/articles/391/no-you-dont-want-to-sell-to-consumers#comments</comments>
		<pubDate>Thu, 05 Apr 2012 06:27:15 +0000</pubDate>
		<dc:creator>brookr</dc:creator>
				<category><![CDATA[Bootstrapping]]></category>

		<guid isPermaLink="false">http://decielo.com/?p=391</guid>
		<description><![CDATA[A colleague recently sent me an email concluding an ongoing discussion we were having about product pricing. I was attempting to communicate the importance of value-based pricing, but did not succeed. His final decisions was motivated by some of the following (reworded) sentiments: &#8220;We&#8217;d rather keep selling to consumers than figure out selling to businesses.&#8221; [...]]]></description>
			<content:encoded><![CDATA[<p><em>A colleague recently sent me an email concluding an ongoing discussion we were having about product pricing. I was attempting to communicate the importance of value-based pricing, but did not succeed. His final decisions was motivated by some of the following (reworded) sentiments: </p>
<ul>
<li><strong>&#8220;We&#8217;d rather keep selling to consumers than figure out selling to businesses.&#8221;</strong></li>
<li><strong>&#8220;If we get high volume of users, we can funnel more traffic to premium products.&#8221; </strong></li>
<li><strong>&#8220;New business customers will cost a lot of marketing effort.&#8221;</strong></li>
</ul>
<p>My dashed-off reply seemed worthy of sharing when I reviewed it. Here it is:<br />
</em></p>
<p>Hi [REDACTED]—</p>
<p>Since you&#8217;ve seemed open to hearing my opinions, I&#8217;ll offer a few more. ;]</p>
<p>Read this article if you didn&#8217;t get the chance yet:</p>
<p>http://blog.asmartbear.com/higher-pricing.html</p>
<p>Especially relevant here is the concept of attracting the kinds of customers that you want to be able to sell to later. Customers who join for free will continue to expect you to offer services for free. Freemium services around the web have conversions-to-paid of 1-2% (for the good ones!), which means you need to support A LOT of free users before you get the conversions needed to pay the bills.</p>
<p>Marketing to consumers is exponentially harder than marketing to businesses. If you can tell a business that you can save them $X or help them earn $Y faster, then they would be foolish to not pay you just a bit less than X or Y.</p>
<p>With consumers, you are operating against powerful forces of apathy and unconcern. It&#8217;s the kind of thing that massive marketing firms try to crack with million dollar war chests. They take their best shots by trying to make brands look cool or sexy. Do you have a marketing strategy strong enough to sway these forces in the numbers required to fill your freemium funnel? It takes big guns.</p>
<p>What steps did you take to measure or estimate the cost of acquiring a new business customer vs acquiring a new paying consumer customer?</p>
<p>Let me know if you&#8217;d like me to run a workshop for your team on pricing. ;] Maybe this is what we should do the next bootstrappers meetup on. It really is crucial to successful bootstrapping&#8230;</p>
<p>—brook</p>
]]></content:encoded>
			<wfw:commentRss>http://decielo.com/articles/391/no-you-dont-want-to-sell-to-consumers/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Haml by Default in a New Rails 3.2 App</title>
		<link>http://decielo.com/articles/377/haml-by-default-in-a-new-rails-3-2-app</link>
		<comments>http://decielo.com/articles/377/haml-by-default-in-a-new-rails-3-2-app#comments</comments>
		<pubDate>Tue, 06 Mar 2012 23:41:39 +0000</pubDate>
		<dc:creator>brookr</dc:creator>
				<category><![CDATA[Ruby on Rails]]></category>

		<guid isPermaLink="false">http://decielo.com/?p=377</guid>
		<description><![CDATA[(UPDATE: Daniel Kehoe, the maintainer of the RailsApps repo, graciously accepted my contribution. I&#8217;ve updated the links to point to the master project.) The really short version Generate a new rails app based on a simple template that sets up Haml out of the box (and some other nice optional features). rails new ProjectName -m https://raw.github.com/RailsApps/rails3-application-templates/master/rails3-haml-html5-template.rb [...]]]></description>
			<content:encoded><![CDATA[<p>(<strong>UPDATE:</strong> Daniel Kehoe, the maintainer of the RailsApps repo, graciously accepted my contribution. I&#8217;ve updated the links to point to the master project.)</p>
<h2>The really short version</h2>
<p>Generate a new rails app based on a simple template that sets up <a href="http://railsapps.github.com/rails-haml.html">Haml</a> out of the box (and some other nice optional features).</p>
<pre style="font: normal normal normal 12px/18px Consolas, Monaco, monospace;">rails new ProjectName -m https://raw.github.com/RailsApps/rails3-application-templates/master/rails3-haml-html5-template.rb</pre>
<h2>The lazy one works the hardest</h2>
<p>I&#8217;m spinning up a new Rails app, and went looking for a shortcut to make Rails use Haml automatically for the html templates. Well, you know what they say about lazy people working hard. Sure enough, I couldn&#8217;t find a fast answer, but did find some tools to make sure I have a ready-to-roll shortcut for next time. I&#8217;m happy to share it with you now!</p>
<h2>No built-in default to Haml</h2>
<p>Rails 3.1 got CoffeeScript to beautify the .js files and Sass to tame stylesheet wasteland by default, but the html templates are left in the dark ages of angled brackets and irrelevant whitespace. The paucity of good google results and a few StackOverflow questions and answers made it clear that Rails doesn&#8217;t have a built in way to generate a new app with default Haml view templates. Convert the application layout by hand? Eww! Manually add the haml-rails gem? Not in 2012, no sir!</p>
<p>Luckily, my goal is accomplished easily enough with a little one-time elbow grease up front.</p>
<h2>Rails app templates</h2>
<p>Rails has <a href="https://github.com/rails/rails/commit/e8cc4b116c460c524961a07da92da3f323854c15">long had ways</a> of creating apps based on templates. Various methods of using these templates have sprung up, but there is one that appears to canonical for new Rails projects.  <a href="https://github.com/RailsApps/rails3-application-templates">This handful of starter templates</a> based on the inclusion of hand-picked, standardized &#8220;recipes&#8221; jumpstarts some great standard app patterns. But these offer more than what I&#8217;m looking for at the moment.</p>
<p>The new project I want to create will start as a simple static page, and grow from there. I don&#8217;t want to make decisions about user authentication or test suites or NoSQL stores yet. I just want a nice clean Rails app, that uses Haml. Ok, fine, I also want it to use twitter-bootstrap-sass.</p>
<p>Easy enough! My desired options are a subset of the more complicated recipes, so I can <a href="https://github.com/RailsApps/rails3-application-templates/blob/master/rails3-haml-html5-template.rb">create my own based on what&#8217;s been done</a> before. Away we go with the modern dev cycle: Fork, tweak, test, push, verify, pull request. Good times.</p>
<p>This new recipe, just like the other recipes, gives the user-selectable options (Haml or ERB? Which CSS framework? Other minor niceties), but allows me to keep my app simple for now.</p>
<p>To use it, just run the `rails new&#8230;` command above. But do I really want to remember that long command if this is what I want to start with every time?</p>
<h2>Power to the .railsrc</h2>
<p>Thanks to a little hidden feature of Rails 3.2, we can make a template like this the default whenever the `rails new &#8230;` command is run. Just add the relevant switches and options to a .railsrc file in your home directory.</p>
<pre># ~/.railsrc
-m https://raw.github.com/RailsApps/rails3-application-templates/master/rails3-haml-html5-template.rb</pre>
<p>Now, the template (and any other options you might want to throw in  [see `rails --help` for the full list]) will be applied every time I run `rails new ProjectName`.</p>
<p>Sweet, now I get to be lazy at last!</p>
<h2>Now show me yours</h2>
<p>What would you want to see in your default starter Rails app template?</p>
]]></content:encoded>
			<wfw:commentRss>http://decielo.com/articles/377/haml-by-default-in-a-new-rails-3-2-app/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Tracking Goals: March 2012</title>
		<link>http://decielo.com/articles/366/tracking-goals-march-2012</link>
		<comments>http://decielo.com/articles/366/tracking-goals-march-2012#comments</comments>
		<pubDate>Tue, 06 Mar 2012 01:20:34 +0000</pubDate>
		<dc:creator>brookr</dc:creator>
				<category><![CDATA[Building Our Business]]></category>

		<guid isPermaLink="false">http://decielo.com/?p=366</guid>
		<description><![CDATA[&#160; I&#8217;m not a productivity guru. I don&#8217;t follow the GTD system. I can&#8217;t really pomodoro. I lose track of my paper lists. But this keeps me focused on what I need to do, every day: &#8220;Don&#8217;t Break The Chain&#8221; Goal Tracker It works for me. It might work for you. Give it a try, [...]]]></description>
			<content:encoded><![CDATA[<div id="attachment_368" class="wp-caption alignleft" style="width: 378px"><a href="http://decielo.com/wp-content/uploads/2012/03/2012-03-chained_goals.jpg"><img class="wp-image-368 " title="2012-03-chained_goals" src="http://decielo.com/wp-content/uploads/2012/03/2012-03-chained_goals-1024x768.jpg" alt="" width="368" height="277" /></a><p class="wp-caption-text">Bring it on, March!</p></div>
<p>&nbsp;</p>
<p>I&#8217;m not a productivity guru.<br />
I don&#8217;t follow the GTD system.<br />
I can&#8217;t really pomodoro.<br />
I lose track of my paper lists.</p>
<p>But this keeps me focused on what I need to do, every day:<br />
<a href="http://decielo.com/wp-content/uploads/2012/03/2012-03-chained_goals.pdf">&#8220;Don&#8217;t Break The Chain&#8221; Goal Tracker</a></p>
<p>It works for me. It might work for you. Give it a try, and let me know.</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://decielo.com/articles/366/tracking-goals-march-2012/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>WordPress on Pow: Rack-powered WP</title>
		<link>http://decielo.com/articles/361/wordpress-on-pow-rack-powered-wp</link>
		<comments>http://decielo.com/articles/361/wordpress-on-pow-rack-powered-wp#comments</comments>
		<pubDate>Thu, 01 Mar 2012 18:05:22 +0000</pubDate>
		<dc:creator>brookr</dc:creator>
				<category><![CDATA[Freelancing]]></category>
		<category><![CDATA[WordPress on Heroku]]></category>

		<guid isPermaLink="false">http://decielo.com/?p=361</guid>
		<description><![CDATA[So, you got WordPress running on Heroku already? Congrats! But what if you are primarily a Rails developer like me, and use only Pow for local app serving needs? Have no fear, there is a way to run WordPress as a Rack app, so Pow can serve it up for you. Having a local installation [...]]]></description>
			<content:encoded><![CDATA[<div>So, you got <a title="WordPress on Heroku: Up and Running!" href="http://decielo.com/articles/350/wordpress-on-heroku-up-and-running">WordPress running on Heroku</a> already? Congrats! But what if you are primarily a Rails developer like me, and use only Pow for local app serving needs? Have no fear, there is a way to run WordPress as a Rack app, so Pow can serve it up for you.</div>
<div></div>
<div>Having a local installation is key when running WP on Heroku because, alas, Heroku&#8217;s php doesn&#8217;t have zlib compiled. This means you need to do all plugin installations and updates from your local environment, and deploy the changes.</div>
<div></div>
<div>To make WP work with Pow, we need to set it up as a Rack app. To do this, we can leverage the handy rack-legacy gem to parse the PHP content from within the ruby/rack environment.</div>
<div></div>
<div>Here&#8217;s the steps I took to get this working.</div>
<div>
<ol>
<li>You need a rack-up file to turn WP into a Rack app.</li>
<ul>
<li>I found one <a href="http://stuff-things.net/2011/05/16/legacy-development-with-pow/">here</a>, and then modified it a bit (following along with the comments on the original one).</li>
<li><a href="https://gist.github.com/2396356">Here&#8217;s my config.ru</a> with all modifications needed for WordPres.:</li>
</ul>
<li>My OS X php didn&#8217;t want to play with Pow:</li>
<ul>
<li>The PHP version shipped with OS X doesn&#8217;t have php-cgi installed, which this approach relies on</li>
<li>The app was returning blank pages or screens with no content</li>
<li>Remember to do &#8220;touch temp/restart.txt&#8221; after any/all changes to your config.ru file</li>
<li>Also remember you can check the pow logs with Mac OS X app: Console (look under ~/Library/Logs, Pow)</li>
<li>Somewhere it was suggested that you can symlink the php binary to php-cgi…That did not work for me</li>
<li>I tried using <a title="Using homebrew to build php" href="http://notfornoone.com/2010/07/install-php53-homebrew-snow-leopard/">this set of steps</a> to do another php build via homebrew:</li>
</ul>
<ol>
<ul>
<li>It downloaded some stuff, took a long time, and hit an error:</li>
<li>&#8220;Undefined symbols for_xsltLibxmlVersion, referenced architecture x86_6&#8243;</li>
<li>Google was no help on that one. Uninstalling/reinstalling libxml2 didn&#8217;t seem to help.</li>
</ul>
</ol>
<ul>
<li>Luckily, <a title="Alternative brew formula for php" href="https://github.com/adamv/homebrew-alt">building from another formula</a> (thanks to the comments <a href="http://elytra.net/2011/03/31/hello-world/">here</a>), seemed to the do the trick!</li>
</ul>
<ol>
<ul>
<li>
<pre>brew install php --with-mysql --with-cgi --with-gmp</pre>
</li>
<li>I don&#8217;t know what gmp is, and don&#8217;t care</li>
<li>using &#8211;with-cgi gave me the php-cgi binary</li>
<li>I added this to the bottom of my .bash_profile to ensure I hit the right binaries:</li>
<ul>
<li>export PATH=`brew &#8211;prefix php`/bin:$PATH</li>
</ul>
</ul>
</ol>
<li>Now, at long last, after one more restart of Pow, I get&#8230; a WordPress error!</li>
<ul>
<li>
<pre>"Your heroku DATABASE_URL does not appear to be correctly specified."</pre>
</li>
<li>Right, this is the error we put in above, and we are getting it because we aren’t on heroku now</li>
</ul>
<li>We need to set up a development environment:</li>
<ol>
<li>Create your local db:</li>
<ul>
<li>
<pre>mysql -u root -p -e "CREATE DATABASE ;;"</pre>
</li>
</ul>
<li>In the spirit of a <a href="http://www.12factor.net/config">properly factored app</a>, let&#8217;s store local creds in an environment variable</li>
<li>All we need to do is save our local values in a local DATABASE_URL env var</li>
<li>This could be done in a number of places… php.ini, .bash_profile, a .gitignore&#8217;d project file, etc</li>
<li>I want it to not conflict with other local WP installs, so…</li>
<li>We can use .powenv to pass project-specific env settings to the rack app:</li>
<ul>
<li>
<pre>echo 'export DATABASE_URL="mysql://root@localhost/repo-name"'</pre>
</li>
<li>Or, slightly easier, if you have <a title="Powder: making pow ridiculously easy" href="https://github.com/brookr/powder">my fork of powder</a> installed:</li>
<li>
<pre>powder env DATABASE_URL mysql://root@localhost/repo-name</pre>
</li>
</ul>
<li>Open the local site. If the env var is read correctly, you should see the site setup screen.</li>
<li>Rather than re-entering what you put on the heroku server, just suck it down, using the server and credential info form heroku config command, or from the ClearDB info linked from heroku.com. Something like:</li>
<ul>
<li>
<pre>mysqldump --host us-mm-auto-dca-01.cleardb.com --user 4ecf8dbd0f00b7 --password=3b2e4402 heroku_fd542dc123475e0 | mysql -u root -p ;</pre>
</li>
<li>Before running this, put the app in maintenance mode so the db won&#8217;t change:</li>
<li>
<pre>heroku maintenance:on</pre>
</li>
</ul>
</ol>
<li>Go hit your root URL again, and you should see your site, as you had configured it on the server.</li>
<ol>
<li>Sign in at http://local-app-name.dev/wp-login.php with the same user you set up on production.</li>
<li>Now you can install and update plugins, add themes, etc.</li>
<li>When you are done: commit, deploy, push the db back up with by reversing the dump command, and switch the app back on…</li>
<ol>
<li>
<pre>git commit -am "Updated this AND that\!"</pre>
</li>
<li>
<pre>git push production master</pre>
</li>
<li>
<pre>mysqldump -u root LOCAL_DB_NAME | mysql --host us-mm-auto-dca-01.cleardb.com --user 4ecf8dbd0f00b7 --password=3b2e4402 heroku_fd542dc123475e0</pre>
</li>
<li>
<pre>heroku maintenance:off</pre>
</li>
</ol>
</ol>
<li>You are up and running, Champ! With a modern workflow even!</li>
</ol>
<div></div>
</div>
<p>Other issues you might run in to:</p>
<ul>
<li>Heroku reports &#8220;No such file or directory &#8211; php-cgi&#8221;: I hit this when I included a Gemfile that contained rack-legacy. Restricting it to the :development group enabled me to get to the next error&#8230;</li>
<li>App dies, and Heroku logs say &#8220;can&#8217;t find executable rackup&#8221;: Looks like WP on Heroku just doesn&#8217;t want to work with anything in the gemfile. Deleting Gemfile and Gemfile.lock from the repo, and adding both to .gitignore got the app going again on Heroku. Any ideas why this is happening? I&#8217;d love to hear a better work-around.</li>
<li>Pow reports: &#8220;<strong>LoadError: cannot load such file &#8212; rack-legacy&#8221;</strong> (or just rack). It seems to me a newer version of RVM caused Pow to not get the right gemset. There are <a title="Pow issue 119" href="https://github.com/37signals/pow/issues/119">lots of suggested fixes</a>, but <a title="Fix Pow's loss of gemset awareness" href="https://gist.github.com/2493622">this one is what worked for me</a> (followed by .gitignore&#8217;ing my .powenv file, which is the right behavior anyway).</li>
</ul>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://decielo.com/articles/361/wordpress-on-pow-rack-powered-wp/feed</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>WordPress on Heroku: Up and Running!</title>
		<link>http://decielo.com/articles/350/wordpress-on-heroku-up-and-running</link>
		<comments>http://decielo.com/articles/350/wordpress-on-heroku-up-and-running#comments</comments>
		<pubDate>Sat, 25 Feb 2012 08:44:48 +0000</pubDate>
		<dc:creator>brookr</dc:creator>
				<category><![CDATA[Freelancing]]></category>
		<category><![CDATA[WordPress on Heroku]]></category>

		<guid isPermaLink="false">http://decielo.com/?p=350</guid>
		<description><![CDATA[&#160; Heroku is a great service, and simply the best way to quickly deploy small apps into a production environment. I usually use it for Ruby on Rails apps, but every now and then, a WordPress installation is more suited for a particular project. Now that Heroku supports php, WP can be deployed to the [...]]]></description>
			<content:encoded><![CDATA[<p>&nbsp;</p>
<p>Heroku is a great service, and simply the best way to quickly deploy small apps into a production environment. I usually use it for Ruby on Rails apps, but every now and then, a WordPress installation is more suited for a particular project. Now that Heroku supports php, WP can be deployed to the cloud in just a few steps.</p>
<p>Caveat: Without zlib, Heroku&#8217;s php platform is unable to handle the installation or upgrading of themes or plugins, so those tasks need to be managed in a local development environment, and pushed to production via Heroku&#8217;s slick git deployment. It&#8217;s inconvenient, but I&#8217;m working on some tools to make it smoother. Once you are up and running, <a title="WordPress on Pow: Rack-powered WP" href="http://decielo.com/articles/361/wordpress-on-pow-rack-powered-wp">see the followup post for details</a> about what&#8217;s required.</p>
<p>Here&#8217;s the step by step tutorial for getting a WordPress.org installation running on Heroku&#8217;s Cedar stack.</p>
<ol>
<li>Create GitHub repo</li>
<li>Then create local repo with GitHub as the upstream for origin. Basically like it says on the new repo page:</li>
<ol>
<li>
<pre>cd REPO-NAME</pre>
</li>
<li>
<pre>mate README.markdown # Create the readme file... use your favorite editor. Put in something informative</pre>
</li>
<li>
<pre>git add .</pre>
</li>
<li>
<pre>git remote add origin git@github.com:brookr/REPO-NAME.git</pre>
</li>
<li>
<pre>git push -u origin master</pre>
</li>
</ol>
<li><a title="Direct link to the the latest WP.org source" href="http://wordpress.org/latest.zip">Download the latest wp.org source</a> into your local repo.</li>
<ol>
<li>The zip download will extract contents into a &#8216;wordpress&#8217; folder</li>
<li>move the contents of that folder into your repo dir.</li>
</ol>
<li>Create a heroku server on the Cedar stack</li>
<ol>
<li>
<pre>gem install heroku # If you don't have it already. Use `sudo` if you aren't using <a title="Ruby Version Manager" href="https://rvm.beginrescueend.com/">RVM</a></pre>
</li>
<li>
<pre>heroku create --stack cedar --remote production</pre>
</li>
<li>
<pre>heroku rename REPO-NAME # Or call it whatever you like for your project</pre>
</li>
<li>Verify that the production remote in .git/config was update with the new name</li>
</ol>
<li>Configure the heroku server with some handy free add ons:</li>
<ol>
<li>
<pre>heroku addons:add stillalive:basic</pre>
</li>
</ol>
<li>Most importantly, add a MySQL database option. There are 2 possibilities. Let&#8217;s try ClearDB, as the pricing scales better for low-volume sites:</li>
<ol>
<li>
<pre>heroku addons:add cleardb:ignite # Adds the MySQL option to the Heroku app's config</pre>
</li>
<li>
<pre>heroku config # See the URLs for your new databases</pre>
</li>
<li>
<pre>heroku config:add DATABASE_URL=mysql://... # Replace the "mysql://..." with the URL from CLEARDB_DATABASE_URL</pre>
</li>
</ol>
<li>Configure WordPress</li>
<ol>
<li>Set WP to connect to your database, by replacing the contents of wp-config-sample.php with this:
<pre>if (isset($_SERVER["DATABASE_URL"])) {
 $db = parse_url($_SERVER["DATABASE_URL"]);
 define("DB_NAME", trim($db["path"],"/"));
 define("DB_USER", $db["user"]);
 define("DB_PASSWORD", $db["pass"]);
 define("DB_HOST", $db["host"]);
}
else {
 die("Your heroku DATABASE_URL does not appear to be correctly specified.");
}</pre>
</li>
<li>Update the secret key section of the config with settings from: <a href="https://api.wordpress.org/secret-key/1.1/salt/">https://api.wordpress.org/secret-key/1.1/salt/</a></li>
<li>Add some deployment-awareness, so links will work locally as well as in production:</li>
<ul>
<li>
<pre>define('WP_SITEURL', 'http://' . $_SERVER['SERVER_NAME'] );</pre>
</li>
</ul>
<li>Rename the file with git:</li>
<ul>
<li>
<pre>git mv wp-config-sample.php wp-config.php</pre>
</li>
<li>
<pre>git commit -am "Initial config file reading heroku ENV"</pre>
</li>
</ul>
</ol>
<li>Deploy!</li>
<ul>
<li>
<pre>git push production master</pre>
</li>
</ul>
<li>Congrats, you are up and running! You can now configure your site:</li>
<ol>
<li>
<pre>heroku open</pre>
</li>
<li>Enter info for the Site and initial admin user</li>
</ol>
</ol>
<div></div>
<p>Now you gotta get your local dev environment setup. <a title="WordPress on Pow: Rack-powered WP" href="http://decielo.com/articles/361/wordpress-on-pow-rack-powered-wp">Here’s how I did it, using the POW web server</a>.</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://decielo.com/articles/350/wordpress-on-heroku-up-and-running/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Track Your February Goals</title>
		<link>http://decielo.com/articles/319/track-your-february-goals</link>
		<comments>http://decielo.com/articles/319/track-your-february-goals#comments</comments>
		<pubDate>Thu, 02 Feb 2012 00:35:34 +0000</pubDate>
		<dc:creator>brookr</dc:creator>
				<category><![CDATA[Building Our Business]]></category>

		<guid isPermaLink="false">http://decielo.com/?p=319</guid>
		<description><![CDATA[&#160; Don&#8217;t break the chain, February version, is now available. Download the PDF, and get to work on your top 3 goals for the month: 2012-02-chained_goals Last month went pretty well for me. The chain definitely motivates. Here&#8217;s a view on what this contraption looks like assembled:]]></description>
			<content:encoded><![CDATA[<p>&nbsp;</p>
<p><a title="Don’t Break the Chain (Calendar desk-topper edition)" href="http://decielo.com/articles/297/dont-break-the-chain-calendar-desk-topper-edition">Don&#8217;t break the chain</a>, February version, is now available. Download the PDF, and get to work on your top 3 goals for the month: <a href="http://decielo.com/wp-content/uploads/2012/02/2012-02-chained_goals.pdf">2012-02-chained_goals</a></p>
<p>Last month went pretty well for me. The chain definitely motivates. Here&#8217;s a view on what this contraption looks like assembled:</p>
<p><a href="http://decielo.com/wp-content/uploads/2012/02/Jan2012ChainGoals.jpg"><img class="aligncenter size-large wp-image-328" title="Jan2012ChainGoals" src="http://decielo.com/wp-content/uploads/2012/02/Jan2012ChainGoals-1024x768.jpg" alt="" width="1024" height="768" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://decielo.com/articles/319/track-your-february-goals/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How to Uninstall All System Ruby Gems (Because RVM Is Better)</title>
		<link>http://decielo.com/articles/315/how-to-uninstall-all-system-ruby-gems-because-rvm-is-better</link>
		<comments>http://decielo.com/articles/315/how-to-uninstall-all-system-ruby-gems-because-rvm-is-better#comments</comments>
		<pubDate>Tue, 31 Jan 2012 00:20:41 +0000</pubDate>
		<dc:creator>carlos</dc:creator>
				<category><![CDATA[Ruby on Rails]]></category>

		<guid isPermaLink="false">http://decielo.com/?p=315</guid>
		<description><![CDATA[Brook always shows me the way. And then, sometimes, the way changes and he shows me the new one. But what about the old way? What about all the littering of the old way all throughout my /usr/local/lib and elsewhere? I am speaking, of course, of the outdated practice of installing Ruby gems to the [...]]]></description>
			<content:encoded><![CDATA[<p>Brook always shows me the way. And then, sometimes, the way changes and he shows me the new one. But what about the old way? What about all the littering of the old way all throughout my /usr/local/lib and elsewhere?</p>
<p>I am speaking, of course, of the outdated practice of installing <a href="http://rubygems.org/">Ruby gems</a> to the system, which has been replaced by the method of installing gems using <a href="http://beginrescueend.com/">RVM</a> and Ruby-version- and project-specific gem sets. Hooray, RVM! Hooray, bundler! Such has been particularly important for my current, local dev environment, on which I must run multiple apps on different versions of Ruby &amp; Rails.</p>
<p>Okay, first: I currently have 12.79 GB available on my disk. Let&#8217;s not get started on the size of my music directory.</p>
<p>Now, let&#8217;s uninstall all &#8220;sudo&#8221; installed system gems:</p>
<pre>$ rvm use system &amp;&amp; sudo gem list --no-versions | xargs sudo gem uninstall -a</pre>
<p>What does this command do?  <a href="http://beginrescueend.com/rubies/default/">&#8220;rvm use system&#8221;</a> guarantees that the subsequent command is executed in the system ruby context. I want to uninstall system gems, not the gems used by any specific project or gem set.</p>
<p>&#8220;sudo gem list &#8211;no-versions&#8221; outputs a list of all installed Ruby gems, which is then piped &#8220;|&#8221; to &#8220;xargs sudo gem uninstall -a&#8221; as arguments. Each will be uninstalled in turn. You won&#8217;t miss them.</p>
<p>Some gems seems to not like this chaining, and report:</p>
<pre>ERROR: While executing gem ... (NoMethodError)
 undefined method `name' for nil:NilClass</pre>
<p>If you run the command again, the uninstall will pick up where it left off and continue uninstalling.</p>
<p>I check my free disk again: 14.05 GB available. WHUT. Nice: I just uninstalled 1.25 GB of unused gems.</p>
]]></content:encoded>
			<wfw:commentRss>http://decielo.com/articles/315/how-to-uninstall-all-system-ruby-gems-because-rvm-is-better/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Don&#8217;t Break the Chain (Calendar desk-topper edition)</title>
		<link>http://decielo.com/articles/297/dont-break-the-chain-calendar-desk-topper-edition</link>
		<comments>http://decielo.com/articles/297/dont-break-the-chain-calendar-desk-topper-edition#comments</comments>
		<pubDate>Sun, 01 Jan 2012 16:42:20 +0000</pubDate>
		<dc:creator>brookr</dc:creator>
				<category><![CDATA[Building Our Business]]></category>

		<guid isPermaLink="false">http://decielo.com/?p=297</guid>
		<description><![CDATA[Remember that wall calendar on which Jerry Seinfeld crossed out each day as it passes? Well, his &#8220;Calendar about Nothing&#8221; actually holds a very powerful secret. The comedian used it as a habit-building technique to improve his craft. And now, I&#8217;ve developed an easy way for you to do the same, in a handy 3-goal [...]]]></description>
			<content:encoded><![CDATA[<p>Remember that wall calendar on which Jerry Seinfeld crossed out each day as it passes? Well, his &#8220;Calendar about Nothing&#8221; actually holds a very powerful secret. The comedian used it as a <a title="Calendar as a habit-building tool" href="http://lifehacker.com/281626/jerry-seinfelds-productivity-secret">habit-building technique</a> to improve his craft.</p>
<p>And now, I&#8217;ve developed an easy way for you to do the same, in a handy 3-goal real-world desk-topper version:</p>
<div id="attachment_298" class="wp-caption aligncenter" style="width: 292px"><a href="http://decielo.com/wp-content/uploads/2012/01/2012-01-chained_goals.pdf"><img class="size-full wp-image-298" title="chain-desktopper" src="http://decielo.com/wp-content/uploads/2012/01/chain-desktopper.png" alt="January chain builder" width="282" height="365" /></a><p class="wp-caption-text">Three-way habit builder for January.</p></div>
<p>If you are serious about a resolution, you need to work hard to actively create or modify a habit. Writing down your goals, tracking your efforts, and keeping it on your mind are proven methods for doing so.</p>
<p>Print out the pdf, write in three goals you want to work on daily, and start growing your chain. It folds neatly (try it–it&#8217;s pretty cool) to sit on your desk to keep your goals in front of you and answer the question &#8220;What should I be working on?&#8221; whenever you need it.</p>
<p>I&#8217;ll make a version for every month, so check back here at the end of January, and see what kinds of chains you can produce in 2012!</p>
<p>And please do share: What goals are you pursuing this month?</p>
<p><strong> UPDATE:</strong></p>
<p>Get the latest monthly calendar here: <a title="May 2012: Don’t Break the Chain Goal Calendar" href="http://decielo.com/articles/403/may-2012-dont-break-the-chain-goal-calendar">May 2012</a></p>
]]></content:encoded>
			<wfw:commentRss>http://decielo.com/articles/297/dont-break-the-chain-calendar-desk-topper-edition/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>How to rename a Service in Mac OS X Lion</title>
		<link>http://decielo.com/articles/289/how-to-rename-a-service-in-mac-os-x-lion</link>
		<comments>http://decielo.com/articles/289/how-to-rename-a-service-in-mac-os-x-lion#comments</comments>
		<pubDate>Tue, 27 Dec 2011 23:14:42 +0000</pubDate>
		<dc:creator>brookr</dc:creator>
				<category><![CDATA[Building Our Business]]></category>

		<guid isPermaLink="false">http://decielo.com/?p=289</guid>
		<description><![CDATA[I was playing around with Automator in Lion and had fun whipping up a few interesting services (miscellaneous scripts that can be run from the application menu). Inevitably, my first guess at what a service should be named is incorrect, so I&#8217;ve had to go though the process of renaming a few times. It isn&#8217;t [...]]]></description>
			<content:encoded><![CDATA[<p>I was playing around with Automator in Lion and had fun whipping up a few interesting services (miscellaneous scripts that can be run from the application menu). Inevitably, my first guess at what a service should be named is incorrect, so I&#8217;ve had to go though the process of renaming a few times. It isn&#8217;t hard, but it does require making some non-obvious tweaks. Here&#8217;s my process:</p>
<ol>
<li>Find the service under your home folder, ~/Library/Services.</li>
<li>Right click on the service you want to modify, and choose Show Package Contents.</li>
<li>In the window that opens, look into the &#8220;Contents&#8221; folder.</li>
<li>You should see an info.plist file, which you can open in the text editor of your choice</li>
<li>Change the existing string (in the NSMenuItem -&gt; &#8220;default&#8221; section) to whatever you like.</li>
<li>Save and close the file, and the new Service menu option should now be visible with the updated name.</li>
</ol>
<div>Hope that helps!</div>
]]></content:encoded>
			<wfw:commentRss>http://decielo.com/articles/289/how-to-rename-a-service-in-mac-os-x-lion/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

