Hi! At my company in the Phoenix, USA area, we are preparing to work on a new version of our large proprietary in-house ASP classic web application. Since we are going to essentially be rebuilding it from the ground up, we are going to choose a single technology for our future direction. The application must be capable of being hosted, and of scaling well. The president of the company has been in touch with some local consultants, and they want to use .NET to build it. Internally we are an all Microsoft shop, but since our application is hosted, the backend technology does not have to be windows. Now, these consultants are smart and savvy, but sadly they categorically reject the school of thought that says that RoR might be a possibility for this project. Personally, I feel that RoR would be a great fit for this project. But I am not the final decision maker. We're having a meeting at some point fairly soon to discuss the pros and cons of RoR and .NET. I need (a) some ammunition to discuss at a serious level why RoR might be a good fit for the solution here, and (b) also the name of a good RoR expert who would be willing to be a consultant for a few hours and meet with us to discuss our future tech direction. Phoenix area would be preferred, but a teleconference is workable. Thanks a ton! Jay
on 2007-04-13 18:08
on 2007-04-14 02:58
Hi Sadly a lot of corporate guys just don't get it. You can start with the book "From Java To Ruby". We recently took the decision to move from Lotus Notes to Rails. We have 0 experience in Rails. The 3 or 4 developers are willing and eager. So we hired a couple of Rails wizards (one is on the core team) to give us a one day crash course. And we are on our way. It is slow going in the first 3-4 weeks but I am unfazed. It gets better everyday. I am fortunate in that I am the CTO so I could take the tough decisions when I see that they are the right ones :-) BTW my company has about 1000 employees so our enterprise stuff is not that complex. The same mentality used to plague Java. Now that Java is mainstream, you see the same arguments raised against Ruby and Rails. For me, I have a couple of guys developing in another language, which will become huge in 2 years! But that's another story. Rails IS the platform for web-based work. Hope that helps! (Many enterprise apps are similar - I would like to see if there are ways the community could share the development.) Cheers!
on 2007-04-17 10:50
My experience has been that taking on a few small projects, in Rails, "out of sight" of the Java and .NET zealots is a very good way of getting Rails into an enterprise. You need to pick a project that's: - big enough to create an impact, but small enough that it can be worked on unnoticed until it's in a demonstrable state - doesn't necessarily have "carved in stone" requirements, so Rails' agility can shine. In particular, when you finally show it off and someone says "That's great, but I'd really like it to do X as well", you want to be able to implement X quickly (i.e. many times faster than could be done in Java) - something that will actually make peoples' day to day work easier/more enjoyable/faster/... so that it creates a positive feeling in the minds of a large mass of people, as distinct from that big group of "here's another boring app that we have to use, in addition to everything else that makes my working day miserable" applications Examples that have worked well for me (I consult to many large corporates) include: - on demand, parsing large quantities of application log files, matching up common events across data files, and producing summary data in an easily digestible format. Easy win (trivial app, cuts out hours of manual work), high visibility (since the results are widely viewed each day), agile (messages link back to a knowledge database, and the requirements for this have been fine tuned over time). Sure I could've done this with e.g. shell scripts and email, but making it something that could be driven from a Web browser and having results that come back in a browser with color highlights, drill down hyperlinks etc. makes for a very positive response - presenting statistical reductions of large datasets. This used to be done by some guy in a backroom (me!) running a set of R scripts and emailing the results around to a bunch of people who largely ignored them; now the same scripts produce a bunch of graphs automatically and present them via a nice AJAX-y interface to the same group of people who are amazed that they've never seen the data exposed in this way before... Easy win (the R scripts were already done, and the rest was gravy) With Java or C#, neither of these would've actually gotten done - the time required would have been too much for the apparent benefit. However, leveraging Rails to do it in a fraction of the time means that the work actually gets done, the benefits turn out to be much greater than originally estimated, and I look golden. I did both of these apps at home in a couple of days, demo'd them, and the clients were happy to pay me for the time worked in both cases. Win-win I probably wouldn't advise starting out with the next bet-your-business app though. Regards Dave M.
on 2007-04-17 12:42
I love Rails as much as the next guy, but they haven't all been good days. I actually just blogged about some of the challenges I've had.. http://www.prestonlee.com/archives/105 Preston
on 2007-04-17 13:51
On 4/17/07, David Mitchell <email@example.com> wrote: > > My experience has been that taking on a few small projects, in Rails, > "out of sight" of the Java and .NET zealots is a very good way of > getting Rails into an enterprise. The zealots can trip you up by setting up straw man challenges. We have had the same problems trying to 'justify' our use of say web-technologies for a remote UI in a Java app. Results-oriented promotion is always the best. > With Java or C#, neither of these would've actually gotten done - the > time required would have been too much for the apparent benefit. David you totally nailed it here. Java/.NET put too much work in the way that trivial jobs become non-trivial and are de-scoped from project plans. Over time this becomes the norm, and these developers just reject the concept of quick opportunity deliverables.
on 2007-04-17 14:05
Absolutely - once you take away all the cruftiness of Java and .NET, the costs drop way off and things suddenly become do-able. Actually, that might be the answer for the original poster - find a useful project that can't be justified (due to cost) with Java/.NET, and do it in Rails as a way of bringing Rails into the enterprise. There's sooooo many projects that fall into that category - many people in big biz spend loads of time doing tasks that can be automated, but never get around to doing so because the cost of doing it is too high. Dave M.