views:

899

answers:

7

Businessmen typically want a web application developed. They are aware of .net or J2EE by names, without much knowledge about either.

Altho' Rails and Django offer for a much better and faster development stack, it is a big task to convince businessmen to use these platforms.

The task begins with introducing Django (or Rails), quoting some blog/research. Then making a case for the use of the framework for the specific project.

Lot of the task is repetitive. What are the sources/blogs/whitepapers and other materials you use to make a case for django (or Rails)

Don't you think there should be a common brochure developed that many development agencies could use to make the same case, over and again. Are there any such ones, now?

There seems to be enough discussion on Django vs Rails. Whereas the need is (Django and Rails) vs (.net and J2EE), at least so, while making a business case. Both represent a faster pragmatic web development in a dynamic language.

+1  A: 

The best case to be made for either of these frameworks is their ability to automate repetitive and time-consuming tasks. This allows developers to be faster and more productive which in turn means projects are delivered faster.

Andrew Hare
+1  A: 

The first 2 arguments from the top of my mind:

  1. Easier and faster development = cheaper product, less time to market.

  2. SO optimization out of the box.

Vasil
+14  A: 

You need to speak the language of business: money.

"If we do it Rails, it will cost you 50% less than the same functionality in Java."

Your percentage may vary, and you might need to also include hosting and upkeep costs, to show how it balances out.

When you're convincing other programmers, sure, talk about development speed and automation of repetitive tasks. But talk bottom-line cost to a business person.

Sarah Mei
+1  A: 

The problem with a "brochure" approach is that it doesn't address the clients needs. Putting the language/platform of choice into a presentation that addresses the clients goals is much more likely to sell them - both on the tools you want to use, as well as you as a provider. As long as you can show that your approach will solve the problem (preferably with the least amount of expense), you'll have fewer objections and less of the "but I've heard that xxx is the best".

Todd R
+20  A: 

It's easier to ask forgiveness than permission.

First, build the initial release in Django. Quickly. Build the model well (really well!). But use as much default admin functionality as you can.

Spend time only only reporting and display pages where the HTML might actually matter to the presentation.

Show this and they'll only want more. Once they've gotten addicted to fast turnaround and correct out-of-the box operation, you can discuss technology with them. By then it won't matter any more.

S.Lott
Very practicable and well said! But some clients say, "Oh, Django? Whats that? We use J2EE"
Lakshman Prasad
They can say that. But you have working code in Django. Then it's their decision -- pay more to convert or pay less to keep going.
S.Lott
I confess I have some ethical concerns about that approach. It may be easier to ask forgiveness than permission of your boss, but a client? You may disagree with their decision, but it's their money, not yours. Build it on your own recognizance and sell it on that basis.
Brian Guthrie
@Brian Guthrie: "unethical" perhaps, if it's a case of "bait and switch". Lying about the technology choice, certainly. But if there's actually an opportunity to select technology, proof of concept beats debating the merits.
S.Lott
+5  A: 

Before you begin making the case for Django or Rails, you have to be convinced it's the right stack first in the context of the business person's needs. If the business person is an entrepreneur, he may have other factors that go beyond how quickly can the solution be developed. For example:

  1. If its an enterprise play that's being developed (something like SalesForce.com, SugarCRM, etc.) it may make sense to have it written in Java because this makes acquisitions and mergers easier with potential Java-based suitors.
  2. If its an internal IT play for a custom solution in a large company, they may already have a significant amount MS infrastructure in place. It may not make sense to have your client install SQLServer or complicate their stack further with a Rails/Django friendly stack.

If you've cross this chasm and are convinced you have the client's best interest in mind, then I would look for examples on the Internet where the same application has been authored in both Java and Rails/Django. Here's an example of the Pet Store implemented in Rails.

http://www.anassina.com/projects/railspetstore/

You can download the source code and demonstrate to your client how much less code is needed to achieve the same result.

Explain to the client why less code is valuable: the less code you write, the fewer bugs you will have.

hyuan
+2  A: 

While many of you made some good suggestions, WRT the talks/resources for using these frameworks, you may also note to have a look at talk on redesigning yellow pages in ROR:

Summary from the site:

This talk explains how YELLOWPAGES.COM, one of the highest-traffic websites in the U.S., was written using Ruby on Rails, how it was scaled to handle the traffic and how the software architecture evolved. Also: the reasons for choosing Ruby on Rails.

Lakshman Prasad