First Crack 100. How to Cup Coffee with Jeremy Raths

Jeremy Raths, from The Roastery, teaches us how to cup – the traditional process for tasting and choosing coffee. He walks through:

  • The cupping process
  • How he teaches others how to cup
  • The need to be emotionally self-aware when cupping
  • How to get the cupping experience at home
  • The responsibility and integrity of a good cup of coffee

Listen to How to Cup Coffee with Jeremy Raths [14 min].

How To Deploy Rails with SVN and Capistrano to a Secondary Domain on TextDrive

I just deployed my first rails app to one of my secondary domains on TextDrive’s shared hosting space.

If that sounds like a recipe for disaster….you’re right!

While Rails is a great development tool, there’s lots of work to do in simplifying, stabilizing, and documenting the deployment process. The app in question is very, very tiny for the express purpose of getting deployment nailed. In fact, it’s taken me longer to deploy than to develop.

For you, and Future Garrick, here’s the process.

  1. Freeze Rails so you’re not plagued with different-version-itis:
    rake rails:freeze:edge TAG=rel_-2-3
  2. Create an Subversion repository in your primary domain,
    Not in your secondary domain. If the repository is in a secondary domain, your primary account can’t see it. Using your primary domain and primary account is easier – if not as tidy as I’d like.
  3. Give your primary account access to the new Subversion repository.
  4. Grab the TextDrive deploy.rb from nuby on rails. Verify deploy_to and server.document-root are /web and /web/public respectively.
  5. Do the initial import into the repository and an initial checkout back to your local machine.
  6. cd to your local app and run cap setup. Confirm you now have a /web/shared directory. It should contain the following directories: log, pids, and system. In log you should have at least production.log and fastcgi.crash.log. Create and chmod them to 666 if they don’t exist.
  7. Follow TextDrive’s instructions for setting up lighttpd, rails, and a proxy.
  8. Change the /web/public/ paths in APPNAME.conf and rails.sh to /web/current/public/
  9. Follow TextDrive’s instructions to start up lighttpd and rails.
    Running their rails.sh file didn’t work for me, editing and manually running the script did.

After all this, cap deploy will deploy your app for you as advertised.

After I tweak a couple more dials and flip a couple more switches I’ll point you to the app.

A First Step

“…take 100 great journalists, give them small HD camcorders and laptops and say ‘here’s your camera, there’s the door….They could upload their stories and feed them to a web site, 24 hours a day…..and it would not cost all that much…say we paid each of our 100 reporters, $140,000 a year. Where would you get the money from?… take the $14 million you’re paying Katie Couric and guess what… you’re there.” – Jeff Jarvis

Garrick Balances the Minnesota State Budget

garricks_2007_mn_budget.png

My pass at MPR’s Minnesota Budget Balancer with the differences from Gov. Pawlenty’s budget. Numbers in $$ millions.

Spending Garrick Pawlenty Difference
K-12 Education 685 685 Same
Pre-school 200 38 -162
Healthcare 300 48 -252
Long-Term Care 76 76 Same
Welfare & Other 48 48 Same
Local Aid 300 65 -235
Property Tax Relief 40 300 +260
Rebates No change No change Same
University of Minnesota No change 155 +155
MnSCU No change 125 +125
Student Aid 25 140 -115
Debt, State Agencies, & Veterans No change 120 +120
Agriculture & the Environment 200 85 -115
Jobs, Housing, & Arts 130 15 -115
Transportation 185 65 -110
Prisons No change 70 +70
Courts & Public Defenders 100 70 -30
Budget Reserves No change 50 +50
Resource Garrick Pawlenty Difference
Personal Income Tax No change No change Same
Corporate Income Tax No change No change Same
Sales Tax No change No change Difference
Cigarette Tax 100 No change +100
Alcohol Tax 55 No change +55

Hey, MPR, I think you should make these things much easier to share – like providing a permalink to My Budget.

Fear of Chicago

I’ve got two trips to Chicagoland already queued up for this summer.

The first one is Saturday, May 19. When, of this writing, I’ll be spending some time on a go-cart in Buffalo Grove.

The last time I attended one of these events, I was trapped on a permanetly-docked gambling boat near Aurora after dining at a suburban Hooters.

I’m betting on a more enjoyable trip this time around.

Wonderlick – Fear of Chicago

Anyone know a good source for downloadin…

Anyone know a good source for downloading, local, independent music. Specifically, I’m looking for Minnesota-based or MN, WI, NoDak, SoDak, IA music. Thanks

Update 27 April 2007:
I’ve Googled for answer to this question and come up with a number of local music directory projects – some clearly abandon, others just useless. All of these projects (alive or zombie) assume I know who all the musicians are.

I don’t…that’s why I’m looking.

At minimum, I’m looking for a Last.FM search or Pandora stream filtered by geography. A steady stream of recommendations – like AmigoFish for local music, not an alphabetical directory of meaningless artists names.

Daily Catch: Beer, Dr. Who, and the First Crack Podcast

Donavan Hall recently said some very nice things about the First Crack Podcast in his Daily Catch podcast. (After popping by and saying ‘thanks’ last fall, this episode finally came up on shuffle.)

He covers the new Dr. Who in the same episode and talks about some of the same issues I have with the episodes we’ve caught…Netflix hasn’t sent the anything from Season 3 yet. Tick….tock.

As you’ve seen here, I’ve been in a podcasting lull. Like I’m actively avoiding wanting to hit the #100 episode mark. I’m not. The podcast is. I can guarantee at least 2 more of the kind of episodes you know and love. “It makes me think about stuff”, as Donavan describes it.

Thanks again Donavan.

Learning the Rails

I’m taking a week off of active programming to focus on better understanding 3 aspects of Rails development I’ve been wistfully ignoring: Migrations, Testing, and Deployment.

There’s a tiny, fun little project I’m using as the venue for these subjects.

One week from today (May 1) is what I’m giving myself on this effort. Any longer and it’ll be a distraction rather than a learning exercise.

I’ve always have a conceptual issue with Migrations. While migrations make it super easy to iteratively change the database, I’m accustomed to having the database a rock solid representation of, well, the database. My inclination is to look in and modify the database directly, then within create_[model].rb, then within schema.rb. Having bits of the model strewn about numerous migration files feels messy.

I’ll get used to it. Probably even savor it once I wrap my head around it.