Beginning Questions

Dear all,

I am new to rails and I am considering it for a project. What I would like to know (and I couldn't straightforwardly find an answer to) is: - is it possible to develop commercial web applications in which you can pack a whole web app and send it to a client without disclosing the source? - is there any library of existing components already implemented? - which solutions are provided as development environments for major platforms (Linux, Mac OS X, Windows)?

Cheers,

Dear all,

I am new to rails and I am considering it for a project. What I would like to know (and I couldn't straightforwardly find an answer to) is: - is it possible to develop commercial web applications in which you can pack a whole web app and send it to a client without disclosing the source?

No

- is there any library of existing components already implemented?

Depends what you mean by components.

- which solutions are provided as development environments for major platforms (Linux, Mac OS X, Windows)?

Some people like IDEs like Aptana or Netbeans. On the Mac a lot of people use textmate (which is more of an editor with knobs on (and awesome in my opinion))

Fred

- is it possible to develop commercial web applications in which you can pack a whole web app and send it to a client without disclosing the source?

No, and that's not the best model anyway.

The best model is you own the keys to a web server you chose. (This makes deploying very easy, and you don't need to productize your deployment path.)

Then you charge your client for logging into the site.

It's the old "sell them a fish or teach them to fish" deal. Don't teach them if you can charge per fish!

- is there any library of existing components already implemented?

There is a huge number of gems and plugins available for every conceivable system, from GIS integration to naughty-word deletion.

- which solutions are provided as development environments for major platforms (Linux, Mac OS X, Windows)?

Ruby runs, out-of-the-box, on all of those. Some have serious issues with some third-party libraries (installing MySQL on a Mac was a major issue for us, for example)!

Thanks for your reply. I am interested in knowing more about what you mean by 'own the keys to a web server you choose'. You mean, selling the software would not mean sending them the source but instead deploying them in one of our own servers?

Yes. You sell access to the use of the software, not access to the software itself. While you can write ruby standalone apps and obfuscate the code, ruby is not a compiled language, but rather interpreted. So the code remains viewable in a (somewhat, if obfuscated) human readable format.

If you want corporate-speak for the bosses, read here:

Highlights: - Less support for installation and fixing your customer's stupidity in setting things up, since that's your responsibility - Easier to push out updates to your clients - Easier to fix client's problems (because you can view what's going on directly) - Your customers don't need to buy servers, support staff, etc. - You never have to worry about people pirating your software (just standard web app security) - You save money (and them money) by pooling resources and sharing servers

The only thing I can think of that might not be a good fit for ASP are critical business functions that people would not want someone else having control over, or a highly "hands-on" company that caters to only a few large clients that already have tons of resources in place.