I've liked using Phusion Passenger as a stupid-easy deployment solution for Rails (and now merb) apps, but running three Rails apps and one Merb app on a Slicehost 256slice, things got kind of crowded.  I had to set the PassengerMaxPoolSize variable to 2 in order to keep my free memory at an acceptable level, and I got annoyed when Passenger would automatically kill my apps after a certain amount of idle time or when another app was started up.  Though things were generally zippy once the instances were loaded, there was a laggy startup time while spawning the new app.

Because of this, I decided to take another shot at deploying with mongrel+nginx--I had used it for a site awhile back but had gotten lazy.  It turns out that nginx (a super-fast lightweight web server) is a lot easier and less confusing to setup and configure than Apache...and after setting up the reverse proxy stuff my Rails/Merb apps were humming along smoothly.

Another cool thing about nginx is that it serves static assets (stylesheets/js/images/etc) really fast.  To take advantage of this on my blogs, I installed WP Super Cache (following this howto) to generate static files.  This speeds up load time since Wordpress doesn't have to hit the database at all once a page is cached.

Overall I'm happy with the move to nginx/mongrel...and now my server is running 30% free memory (as compared to just a few MB to spare with my previous setup).

Where does my time go?

Friday 11/21/2008  –  Category: Uncategorized  –  1 Comment

I've been using RescueTime for awhile to track my usage trends and see how (un)productive I am over a certain period of time.  Their web interface is pretty easy to use and it shows pretty graphs (see ma, I really do work!)

But part of me feels kinda weird having an app push updates to a server in YAML:

app_name: Firefox
window_title: 'RescueTime - finally a time tracking app that does not suck | James Robey'
extended_info: 'http%3A%2F%2Fwww.jamesrobey.com%2Frescuetime-finally-a-time-tracking-app-that-does-not-suck%2F'
start_time: 2008-11-21 14:58:56
end_time: 2008-11-21 14:59:06

I just ran into another (standalone) app that looks promising--Slife.  The interface has few different visualization options -- one with the icons of the applications you're using in a timeline view, another that shows total time per application, and another categorized by activity (e.g. "checking email").  If it ends up working well I may ditch RescueTime and keep my usage data local...

Lost?

Thursday 11/20/2008  –  Category: Uncategorized  –  No Comments

Is anyone else seeing this on the top of their Facebook home page?

Please reset your email notification settings.

Unfortunately, your email notification settings have been lost. You can reset them on the Notifications page. We're sorry for the inconvenience.

I'm wondering how Facebook goes about losing things...perhaps someone accidentally dropped a table?  Whoops.

Instead of doing ghetto (and inaccurate) coordinate math, let's use Google Maps to do the work. This is a bit obscure, but you can append &output=kml to any search query and it will give you output in KML (XML for Google Earth) which makes scraping just a tad bit cleaner.

Instead of parsing the XML, I chose the quick and dirty way of isolating the distance and time.

To calculate DISTANCE, pass 1 as the first argument. To calculate TIME, pass 2.

CAVEAT: If Google Maps can't find your start or end address, it will output an empty file.

Talking vs Typing: Google Voice Search

Wednesday 11/19/2008  –  Category: Uncategorized  –  No Comments

Google recently updated their iPhone app with voice search, and I must say...it's pretty impressive.  I can imagine it being really convenient when I'm driving or in a situation where it's not convenient to type.  You just have to hold it up to your ear and it prompts you to speak the phrase to search for and it does it's thing.  It also uses your location data to find relevant results in your area.  A voice search for pizza yielded results of places right down the street.

What's really impressive is the speed that it records, uploads, and processes--just a few seconds on EDGE, and even less on wifi.

Of course, it's not perfect.  I whistled a tone into it, and one time it gave me "yahoo", and another time "nude".  I'm wondering how their detection engine works...

Google Mobile app is available in the App Store.

 Page 13 of 15  « First  ... « 11  12  13  14  15 »