I've had good luck with hosting Rails on Dreamhost. They have a good wiki page on how to set it up with capistrano (http://wiki.dreamhost.com/index.php/Capistrano) and you get shell access.
The bias point is well made. I don't remember the quote exactly, but i think it's something like "...when all you know are hammers, everything looks like a nail...". Though I think his point is that you have to at least be able to form models about the problems you tackle and stick to those models. I feel like you need some commitment or vision to be able to move on. Development tends to have two phases, exploration and exploitation. Balancing the two is a real problem. If you exploit too soon you may miss a much better solution, but if you do too much exploring you may just be wasting time. Balancing the two contributes to writing good code it seems.
RubyForge was one of the reasons I got really interested in ruby/rails development. A central location is a must for new ideas to be easily moved around.
That was interesting. I took a vision class a few years ago that clearly illustrates these ideas. Bringing vision theory into CS boils down to converting continuous space into discrete space. This led to a great quote from the prof "CS people are engineering who think discretely". I think this article reflects this mentality. Being "good" at CS involves making a consistent state model where events always follow other events. This is yet another reason why concurrency seems to be difficult to grasp even for good CS students. Because of possible thread interleaving the typical state space explodes and we have to think about that kind of code in a different way.