Rails on Lighttpd with FastCGI

Although Apache is the default choice of web server for Rails, it is by now means tied to it. Any web server that’s capable of doing a wee bit of rewriting in front and handling FastCGI applications can run Rails. Lighttpd is just one such web server.

If you’re interested in trying that out, TJ Vanderpoel has written an extensive tutorial on how to get Rails running with Lighttpd using FastCGI on Debian.

Have a codefest and collect cash from RubyCentral

Chad Fowler just reminded the Ruby community that free money is up for grabs if you have a cool idea for a codefest. There’s a total of $1,500 in the pot and $500 max on a per-project basis. Chad suggests a couple of ideas that could get a grant:

  • Ruby Subversion bindings
  • A nice bug tracker in Rails
  • Something that simplifies the open source ruby library release process, integrating RAA, RubyForge, ruby-talk, Freshmeat, and RubyGems

So what are you waiting for? Get the band together and apply for the Ruby Codefest Grant Program.

S5 Presents competes with SoapBX

This is funny. With SoapBX barely out the gates, Lucas Carlson has already launched a competitor with S5 Presents that does themes and is open source. He even claims to have done it in half the time of Pelle:

S5 Presents was written in under 10 hours and 500 lines of code using the fantastic Ruby on Rails framework.

So now you have two options for your online presentation needs. Cool stuff!

3,000 people are doing 10,804 things...

43things.com has just been in the air for a week and already do they have 3,000 people are doing 10,804 things! That’s an incredible achievement in such a short period of time and bodes well for the future success of the application. 43things.com will undoubtedly soon become a reference point for discussing performance with Rails.

Speaking of performance, Bob Cottrell is their main man on MemCached integration and also the contributor of MemCacheStore in Rails 0.9.3. He has promised to start writing about how best to use MemCached with Rails and were eagerly awaiting his guides.

Jamis Buck is working on Basecamp

Along with the announcement of the latest major upgrade to Basecamp, I’ve unveiled who the mysterious programmer we’ve brought on at 37signals is. So I thought I’d also wish him a warm welcome on landing a Rails-based job from the Rails weblog.

Congratulations on landing a contract working with Rails, Jamis Buck :)

You may recognize the name from his many contributions to the Ruby community. Most recently, the SQLite3 bindings that’s taking the dream of self-contained Rails applications a big step closer to reality.

UPDATE: Jamis shares a few more details.

Nicholas presents the Directors

Nicholas Seckar is busy working away on the Directors — the next-generation URL mapping scheme for Rails — yet still took the time to explain how its going to work. Of course, he chose to use the newly launched SoapBX: Rails & Rewriting. Most excellent.

Road Map: The rails leading to 1.0

Rails is already an incredibly capable environment, but we’re still not quite ready to slap on the 1.0 sticker according to my own standards for that label. So what’s missing? Here’s a list of the major achievements that I want to see happen before we go to the big one-o:

  • Directions: While its fully possible to do intricate custom URL layouts, its not as easy as it could be. The combination of mod_rewrite going in and the hoops you need to jump going out ensures that most people just stick with the defaults. Directions is the path that’ll rectify that by pulling URL rewriting into Rails, so WEBrick and Apache will share the same format and it’ll be possible to handle both in and out in a coherent fashion. Nicholas Seckar is leading a development effort guided by a design from Dave Thomas.
  • Packaging: Instiki has had great success with the OS X native .app format. We want to enable all Rails applications to have push-button package outputs to .app, .exe, and one-file scripts for the rest of ‘nix. The rise of SQLite3 will make this even easier (thanks to Jeremy Kemper for the adapter and Jamis Buck for the bindings) to have self-contained applications. Marcel Molina is leading the development on the one-file scripts that’ll serve as the foundation for the native compilations.
  • Web Service Dispatcher: XML-RPC and SOAP could easily be supported by the same controllers and models as the rest of the application if the calls were translated into controller calls. That’s what the new WebServiceDispatchers will do.
  • Caching & Performance: One of the easiest ways to deal with performance is to start caching, so that’s what we’ll do. There’s a lot of different schemes to pursue and that’s exactly what we’ll do. From full-page caching that sidesteps Rails to per-request model caching to integration with MemCached. Lots of opportunities to take what’s already there and make it much faster with a bit of sprinkled caching. Getting a good benchmarking suite together is part of that. Florian Weber has promised us the later since 0.7, so he expect a delivery any day now :)
  • Documentation: I really do need to fulfill my obligation to renew the introduction video and accompany it with more. On top of that, we’ll need to start the long rumored Rails User Manual. We’re already off to a fantastic start, though, with great API documentation and quite a few guides and tutorials. The last push will round off the polished feel a lot, though.

Five major areas of improvement. I hope we’re able to reach all of these goals by mid February or early March. But there’s no inherent pressure. We’ll continue to release updates at the current staggering rate and when its ready to ring the bell of 1.0, we’ll ring the bell.

SoapBX: Presentations powered by S5, Textile, Rails

Pelle Braendgaard just launched and announced a new free Rails service entitled SoapBX that let’s you use a combination of Textile and S5 to forget about Powerpoint and Keynote:

About the development of SoapBX using Rails, Pelle writes:

I got an idea less than two weeks ago and now as a testament to the
power of Rails I have released the first initial beta version of
SoapBx, with less than 20 hours of programming involved so far.

Congratulations on the launch, Pelle!

Brian discovers the default logging goodness

Brian McCallister started working on a new Rails application and discovered the goodness that is the default logging setup:

This is sort of what using Rails is mostly like. You stumble on a really nice gem — the default logging giving you a breakdown of execution times, translating it to requests per second, giving you any sql, execution times on the sql, etc. Oh yeah, nicely color coding and bolding as well. Then you stumble on another gem. It feels like programming in ruby, where things surprise you by being just really well done, and easier than expected.

It is indeed a powerful tool to have a tail running on while developing as you get an early warning system for performance problems and a minds eye into the internals of the system.