Here are a few quick tricks for using the Rails logger.
Save disk space by rotating logs in the config/environments/test.rb and config/environments/development.rb
config.logger = Logger.new(Rails.root.join("log",Rails.env + ".log"),3,5*1024*1024)
which will rotate the log files every 5 megabytes and leave only the three most recent log files. This will limit the total spaces used by the logs at 15 megabytes.
To log to STDOUT while using the console use this trick:
if $0 == "irb"
config.logger = Logger.new(STDOUT)
else
config.logger = Logger.new(Rails.root.join("log",Rails.env + ".log"),3,5*1024*1024)
end
For more tips on Rails logging see this post: Rails Logging Tips.

Tokyo Cabinet is an extremely fast key-value store. It's a lot like memcache: only better.
Are you having weird issues associated with sessions using Rails 2.3 and Passenger? Perhaps you have problems like repeated flash messages and the inability to logout by destroying a session variable.
There is a simple fix: upgrade passenger. This lighthouse ticket has some more details about session problems.
To upgrade passenger:
sudo gem install passenger
passenger-install-apache2-module
After installing the new Passenger Apache module you will probably have to edit the httpd.conf to include the new version of the Passenger module.
After restarting Apache everything was working correctly.

The recently launched Diggbar from digg.com can wrap your site in a frame if the user visits a special URL on digg.com. Your user's experience is negatively impacted:
Many sites (like the NY Times) are, with good reason, blocking this Diggbar. There is a Rails plugin to do this for your site: acts_against_douchebar.

There is a great new searchable version of the Rails documentation online at http://voloko.ru/sdoc/rails/rdoc/. This version is very fast and can even be downloaded for offline (airplane?) use. What a nice usable search interface with embedded browsing capabilit. I have used http://www.railsbrain.com/ but I find the search experience to be suboptimal. (Thanks to Rails Inside for the link.)

If you haven't already seen the beta version of Safari 4 you might be in for a little surprise when upgrading from Safari 3. The tabs have moved into the title bar of the window, just like Google Chrome.
I haven't decided if this is a good idea or not yet. What I find the most interesting is that this has generated a lot of spirited discussion. The most important conclusion from this whole ordeal is probably that sometimes making user experience decisions is very hard. Fortunately, most user experience decisions are pretty easy.

I'm sure that many have seen the Twitter user page. I would guess most common use of this page is to:
If that is the case, why isn't the page optimized for these tasks?
Luke Wroblewski, the writer of the book Web Form Design: Filling in the Blanks, has a synopsis of some of the talks at this years Interaction Conference. The talks include:
One of the many strategies for speeding up your Rails application is to serve exactly one CSS file and exactly one Javascript file. It is often more convenient to have multiple files in development and only package these files into one file in production. It doesn't hurt to also minify these files when in production mode. This is exactly what Scott Becker's great asset_packager original plugin is for.
In a project I was working on there were several classes that were involved in a lot of background processing. In order to monitor the behavior of this background processing I wanted a separate log file for these classes. The result: class_logger is a simple plugin that creates a separated log file for an ActiveRecord model.
Screencast: Hover Content in Rails and Prototype from Erik Andrejko on Vimeo.
It is often a good idea to show content when the user hovers the mouse above a link or an element in a page. This technique has been abused by some, but when used correctly it can enhance the user's experience. This is particularly the case when you have a lot of information that may be relevant to the user's interests but is too much to display all at once.
Design is all about assumptions. If you don't assume anything how can you get started? Good design means getting those assumptions correct. Often times these assumptions will be wrong, and many of those assumptions will be hidden: the designer doesn't realize the assumption is being made. This is not a problem if the assumption is correct, but becomes an unknown problem if the assumption is incorrect.
Sinatra is a wonderful small Ruby web framework built on top of the Rack interface. Sinatra is very fast out of the box making it perfect for light weight tasks. Sinatra does not come with support for memcached out of the box but adding support for memcached is fairly straightforward.
There are a lot of cases where pagination is the wrong choice to present a long list of items. This screencast will show you how to unobtrusively enhance a paginated list of items with an endless page. I first learned of the endless page trick from Aza Raskin of Humanized. His talk, Don't Make me Click, is well worth watching.
The Bad Usability Calender for 2009 can now be downloaded. Some of the lessons of 2009 include: