Hello... > Hi - > > Does anyone out there have any experience with building medium to > large-scale web-applications using Ruby? > I'm going to write a modular CMS for me and my (coming) clients. I have > several years experience with PHP, but Ruby appeals so much to me that I > think I am willing to screw the fact that PHP is so more used, and therefore > supported by almost every webhotel. ISP's I've dealt with seem to be willing to install ruby at the customers request. Getting them to install mod_ruby is more difficult. However, if this is a critical website, it might be worth getting a dedicated box from someone like Rackspace (where you can install whatever you want). > Anyone who have any experience with writing web-applications and some good > advices are very welcome! > I want people's experiences. Good as bad. I'm sort my problems into two categories: * Problems with writing web-applications, and * Problems with using Ruby on the web The first seems very combustable to me, so I'm going to focus on the second. IIS Using ruby with iis is a pain. Besides the path issues, you also have to map the .rbs to "c:\path\to\ruby.exe %s %s". It's much easier to use ruby with apache. Furthermore, Win32OLE provides the same functionality as ASP's Server.createObject( "ADODB.Connection" ). I'd say.... ditch IIS! Sessions Ruby sessions aren't quite as great as they should be. IMHO, the API for creating sessions is a bit confusing. I've run into a few path issues on windows. A friend pointed out that the Session files don't seem to get deleted, and you end up with clogged temp directories full of outdated session files. I don't know if the SharedMemory sessions have these problems, or if they're available on Windows machines. Sessions feel a like a greener branch on the Ruby code tree, but they seem to be getting better. CGI The CGI object is perfect in every respect except for how it handles multipart forms (again IMHO). See http://www.rubygarden.org/article.php?sid=186 for my feelings on the matter. Overall, I've felt little bits of pain here and there while using ruby for web-applications. These problems are the kind that can be fixed, many by extending the system classes. These little bits are insignificant compared to the productivity gains I've had while working from ruby. Using ruby allowed me to write unit tested ruby code in the same time it took to write raw Java. In the lifetime of a project, that adds up to some serious gains. ~ Patrick OT P.S: I just noticed how I capitalized Java instinctively, but leave ruby lowercase. Maybe that's because of the CamelCase style, maybe it's because Java is a (TM)... just interesting.