The Ongoing Beer List

On the tail of a Twitter conversation on Wisconsin beers and a renewed interest in homebrewing seemed like a perfect time to write up my favorite beers.

My Homebrew Favorites

  1. Owd Potters Field Ale
  2. Sour Cider – Mach II
  3. Sour Cider – Mach I
  4. Aloysius Amber Rye – 2011

Top 5 Anytime, Anywhere Beers

  1. Rush River Unforgiven
  2. Rush River ÜberAlt
  3. North Coast Brewing Red Seal Ale
  4. Affligem Abbey Blond
  5. Two Brothers Brewing’s Cane and Ebel

Special Occasion Beers
One beer at the end of a great day:

Killing time on a beautiful spring afternoon at the train station near Hannover:

In Belgium on vacation:

Weekend on the river in northern Wisconsin:

  • Leinenkugels Red
  • Leinenkugels Creamy Dark (after sunset with a campfire)

In Minneapolis (or Portland), watching a local bike derby under pouring rain in October with empties as the course marker:

  • PBR

Reading William Gibson

  • Tsingtao

(more later)

Spring ’08 Refresh

“not really blogging or podcasting for two weeks can hurt your page rank something fierce” – Kristopher Smith

Since I haven’t been writing here much this month, here’s an update for those of you that just read this feed.

  1. GarrickVanBuren.com got a facelift this past weekend. Primarily so I could explore all the shared feeds Cullect.com generates (check the sidebar for ‘Recommended Reading’), but also as a larger effort to bring more visibility to the work I do (more on that later).
  2. Big, exciting new client projects, that have really got my gears whirring.
  3. I’ve published 2 new First Crack Podcasts so far this month, with a 3rd on the way. W00T!
  4. I’ve been trying to wrap my head around RubyCocoa, more specifically the relationship between RubyCocoa and Interface Builder
  5. It’s March. Historically, I get a SAD funk in March. 😉

Cullect.com – Moving Servers

Cullect was fast out-growing the Lifetime M Accelerator it started out on last summer, so this weekend I moved it to a bigger, 1GB Accelerator. As I write this, the database is migrating. After that, Cullect will be faster and have room to grow.

As part of this, I’ve started a proper blog for Cullect where I’ll be posts status updates, in-depth pieces on the decisions behind Cullect, and general bloggy stuff.

First Crack 106. Coffee Review – El Salvador: Finca La Montaña

This is the second in the monthly coffee review series at the First Crack Podcast.

This month, I’m reviewing George Howell’s Terroir Coffee: El Salvador: Finca La Montaña

The 2007 Cup of Excellence winner that was completely devastated by near hurricane-strength winds in January. Pushing the next harvest out to 2010. In response to this tragedy, George Howell doubled the price of his last 70lbs and sent all the proceeds to aid the farms recovery:

“This is a farm which won 5th place, then 4th place, then 1st place in succession over the last three years in Cup of Excellence. Preliminary estimates indicate he will not have a crop until 2010! How does a farmer with less than 14 acres survive? The 3rd place and 4th place winners of last year’s Cup of Excellence are his neighbors, and all three use the same mill to strip their fruit and dry their beans. We have yet to hear about them. We want to help in a meaningful manner.”

“La Montaña is scheduled to be roasted on Monday, January 28. We will be offering this coffee, which in my opinion is the purest coffee expression we have, bar none, at $50 for eight ounces (versus the usual $27.95). Terroir Coffee will donate the entire price to Mr. Ochoa primarily and to the mill, his critical support, which may also be facing very bad times from these events. Not a penny will be spent on any bureaucracy. We have approximately 70 pounds of his coffee left. $50 dollars per half-pound would result in $7,700, if all is sold.”

Special thanks to Andrew Kopplin at Kopplin’s Coffee for putting this Cup of Excellence on my table and connecting the world economy.


Listen to Coffee Review – El Salvador: Finca La Montaña [9 min].

Elsewhere:
Cup of Excellence Winning Farm 2007: Raúl Ochoa Hernández – La Montaña
CoffeeReview.com: El Salvador La Montaña – 93 points

Reflecting on Last Nights New Media Ethics Forum

After a decent night’s sleep, here’s my thoughts on last night’s MPR talk. It was originally an email, so some things might read a little weird.

First off, I’d like to thank MPR (et al) for bringing all of us together. I alway enjoy our time together. I think very highly of Dan Gillmor (and his brother Steve). Dan’s book ‘We the Media’ is one of the best books on the subject of bottom-up political journalism and fantastic recount of the meltdown of the Dean campaign. I’m also happy to listen to Dan talk for 2 hours, if that’s what I had expected I would have stayed home and turned on the stream.

Secondly, last night was the 3rd time I attended an event @ MPR (in that same room) with the expectations of a conversation and left without having one. I found it quiet telling when the guy watching the survey results said people wanted Bob to ask the audience more questions and he replied, “I thought I did.” Ummm.

I agree w/ Graeme – I don’t know why this is an ‘us v them’ (blog-less vs. blog-ful) thing. To say one media form is somehow less credible simply because the barriers to publish are lower than some other media form is simply specist. Especially when traditional media is investing in blogs more.

Somehow last night, even after starting the conversation about the recent failings of NY Times there seemed to be an underlying assumption that everything published (blog or otherwise) was to be interpreted as important, award-winning journalism. Sometimes it’s just writing. Sometimes for a pay check on a deadline to fill a newshole, or create controversy for the sake of ad dollars. I’ve been told that McCartney and Lennon would frequently sit down, “to write a couch.” As I mentioned in a recent post [1] and mentioned on mic last night – the greater the pressure to publish the greater the chances something isn’t journalism (or important, or relevant, or worth reading). What we didn’t do last night was dig into those pressures and their ethical ramifications.

As I mentioned to Dan Haugen of TCDailyPlanet afterwards, I assume everyone has a blog (if not many). That assumption frames my perspective of projects like MinnPost, TCDailyPlanet, MPR, etc. Leading me to 2 questions; if I can read about an issue on a friend/colleague’s blog what do those other publications offer me?, if the people closest to me aren’t writing about an issue and those publications are – is it relevant to me?

If we were to go off topic last night, that’s the direction I would have preferred.

Lastly, I think we would have had a better chance of getting the conversation we expected if we had sat in the reception room on the chairs, couches, and floor, than inside the hierarchy-reinforcing forum.

More great comments in the following places:
Minneapolis Metblogs
Chuck’s Blogumentary
and if that’s not enough Bob Collins for you:
Bob Collins’ News Cuts

UPDATE 29 March 2008
I think Chris Pirillo’s account of Gnomedex 2007 applies here as well:

“the expectations of the crowd did not match what was happening on stage. The first person (name?) to say something that resonated with a good portion of the crowd wasn’t to blame for what a portion of the crowd was thinking. Positive or negative, Twitter fuels groupthink….Expectations were off…” – Chris Pirillo

Notes from the MPR Ethics in Online Journalism

I’m at the MPR, MNSPJ event on ethics in online journalism1 with the esteemed Dan Gillmor.

Greg and Erica are live-blogging.

“Most are not…and a few are.” – Dan Gillmor

“It’s not about ‘or’, it’s about ‘and.” – Dan Gillmor

Again, it’s hard for newspapers to correct themselves. Apologies aren’t news.

Who do you trust? As I mentioned in an earlier post, I trust those more that publish less.

Can transparency replace ‘fairness and accuracy’?

Are all the people that publish everyday in traditional media practicing ‘traditional journalism’?

I’m paraphrasing Gillmor here: “It doesn’t necessarily mean anything if something is published.”

Kudos to Erica and Greg for fantastic coverage. Also thanks to everyone on Twitter for proving (once again) the interesting things are in the audience.

1. Can’t find a link to the event detail right now.

Optimization Tips: Ruby on Rails and MySQL

Stop.

I’ve uncovered these tips after (at least) the 3rd refactoring effort of some fairly simple, straight-forward Rails code. Rails is great for getting ideas prototyped super fast. These tips will slow down development and make apps less portable. Continue reading only if you’re running a live app in production and not happy with how resource-intensive it is.

My approach to this round of optimization was watch the Load calculations in the development log and optimize transactions with a Load greater than 0.0009.

  • First, a rule of thumb: Development boxes are faster than production boxes. If it’s acceptably fast locally, then it’ll probably be a turtle in production.
  • Use Model.find_by_sql or Model.count_by_sql whenever possible.
    Slow: Person.find_by_name('JoeyJoeJoe')
    Fast: Person.find_by_sql("SELECT person.* WHERE person.name = 'JoeyJoeJoe'")
  • Don’t put keys, IDs, or other numbers within quotes in your Finds
    Slow: WHERE id = "1234"
    Fast: WHERE id = 1234
  • Only request the specific database column/model attribute you want
    Slow: Person.find_by_name('JoeyJoeJoe').height
    Fast: Person.find_by_sql("SELECT person.height WHERE person.name = 'JoeyJoeJoe'"). Put indexes on all these columns/attributes.
  • Use connection.insert, connection.update, connection.delete for database transactions performed on an array of models or transactions that don’t need the overhead of a model.
  • Slow: ...WHERE table_1.id = table_2.table1_id...
    Fast: ...table_1 JOIN table_2 ON table1.id = table_2.table1_id....
  • Many tiny database transactions are faster than 1 big one
    Slow: stuff = Stuff.find_by_sql("SELECT everything.* FROM everything JOIN (box_1, box_2) ON (everything.id = box_1.everything_id box_2.box1_id = box_1.id")
    Fast: boxes = Boxes.find_by_sql("SELECT box_1.everything_id FROM box_1 JOIN box_2 ON box_2.box1_id = box_1.id")
    followed by
    boxes.each do |box_1|
    stuff = Stuff.find_by_sql("SELECT everything.* FROM everything WHERE id = #{box_1.everything_id}
    end
  • If you’re running the InnoDB datastore (vs MyISAM) try cranking up your innodb_buffer_pool_size. I say start by doubling it. Seriously.
  • Again, if you’re running InnoDB and doing a anything more involved than the simplest ORDER BY, try cranking up your sort_buffer_size and read_rnd_buffer_size to something in the double-digit M range.
  • Also, if you’re comparing datastore engines, MyISAM has full text search, InnoDB doesn’t. So you’ll need a clever work around. There are a number of them.

TwitterCooler v0.2 – Make Twitter More Like Office Chatter

(formerly TweetSpeak, changed as to eliminate confusion with TweetSpeak.com)

While I’m fond of the Twitter-as-water-cooler metaphor, there was something missing.

Namely Twitter is quiet, and offices are filled with loud, distracting chatter.

If you’re on a Mac you can now remedy this issue with TwitterCooler.app.

TwitterCooler downloads your friends tweets and reads them to you using the Mac’s built-in voices (selected at random).

Hey it’s Friday, you weren’t planning to get anything done anyway. 🙂