
Nice tip in the latest Heroku newsletter: “Use Git Tags to Manage Versions”.

Nice tip in the latest Heroku newsletter: “Use Git Tags to Manage Versions”.
I use Git tags to manage the version numbers of my Rails apps. Every time a new version is ready, I tag the current commit like this1:
git tag -a v2.3 -m "adding version tag v2.3"
My environment.rb file defines a constant to hold this information (in this case “v2.3”):
APP_VERSION = `git describe --always` unless defined? APP_VERSION
This constant simply contains the output of Git describe2. Now I can use it anywhere in my app where I would like to display the version number.
You are using semantic versioning, right? ↩︎
The backticks execute a shell command. Here’s more information: http://gist.github.com/4069 ↩︎
This is just too awesome.
/via Yehuda Katz
Prior to last week, the limit was improperly calculated: articles in folders weren’t being counted. I fixed the bug so that up to 250 articles were downloaded from the Read Later folder, and the other folders were downloaded in order, as long as there were any slots left, until it hit 250.
And then I got a deluge of email.
My email was one of them.
Great to see an explanation for this.
This nice little Ruby library/gem/plugin is a great helper when you need to execute long running tasks from the terminal.
As the name suggests, it displays the progress of the task and even gives you an ETA for when it thinks it will be done.
Check their examples:
% irb --simple-prompt -r progressbar
>> pbar = ProgressBar.new("test", 100)
=> (ProgressBar: 0/100)
>> 100.times {sleep(0.1); pbar.inc}; pbar.finish
test: 100% |oooooooooooooooooooooooooooooooooooooooo| Time: 00:00:10
=> nil
>> pbar = ProgressBar.new("test", 100)
=> (ProgressBar: 0/100)
>> (1..100).each{|x| sleep(0.1); pbar.set(x)}; pbar.finish
test: 67% |oooooooooooooooooooooooooo | ETA: 00:00:03
I used it a lot for rake tasks that convert/import/export tons of data.
“[…] if you like to shoot RAW and you’re only interested in some casual video usage, and want DSLR image quality in a much more pocketable size, you’re going to love the GF1. The GF1 somehow is better than just the sum of its parts, using it is a blast, and especially with the 20mm f/1.7 attached, there’s little reason to not carry it with you everywhere. As such, for photographers (especially enthusiasts) looking for the best compact sized mirrorless camera, the GF1 isn’t just “Highly Recommended”, it’s “Essential”.”–
Panasonic Lumix DMC-GF1 In Depth Review | neutralday
Sounds great to me!
“These little cameras are the future of digital. Big SLRs will still stick around for action, news, and sports, but for most of us, micro 4/3 is it. This kind of camera is half the size of old-fashioned mechanical DSLRs, with a complete range of interchangeable lenses.”– Ken Rockwell in his PMA 2010 Report

I had some problems installing the heroku gem on Leopard:
$ sudo gem install heroku
Building native extensions. This could take a while...
ERROR: Error installing heroku:
heroku requires json_pure (>= 1.2.0, < 1.5.0, runtime)
So I tried to install the json_pure gem first (sudo gem install json_pure), but this always seemed to install/update the json gem instead of the json_pure gem.
I eventually managed to install the correct gem by providing the version number on installation:
sudo gem install json_pure -v 1.2.4
This installed the json_pure gem and I was also able to install the Heroku gem afterwards.
cd [your git repo] git instaweb --httpd webrickSourceWatching a lighting talk of the Mountain West Ruby Conf, and this guy walked up and demoed this one command!
git instaweb --httpd webrickautomatically launch a web server and browser to your get repository!
Way Cool!
Pretty cool indeed!

Sizzling Keys lets you control iTunes from the keyboard.
One of my favorite little apps. I have it running all the time.

Lake Harris from Conical Hill
I took this picture on the Routeburn Track (Mt. Aspiring/Fjordland National Parks) and it’s easily one of my favorites from this trip.
Fuck yeah. ;-)
RSA Animate - Drive: The surprising truth about what motivates us (via theRSAorg)
could it get *any* sweeter? :-]
“Try to avoid burdening your users with choices on how to perform an action. Giving them lots of options may seem like a good idea but it isn’t. It ends up bloating an interface and burdening your users with decisions they shouldn’t have to make.”– How To Critique An Interface « Aza on Design

You wouldn’t drink 9 year old milk.
So why use a 9-year-old browser?
When Internet Explorer 6 was launched in 2001, it offered cutting–edge security – for the time. Since then, the Internet has evolved and the security features of Internet Explorer 6 have become outdated.