# Beginning Questions

**URL:** <https://www.ruby-forum.com/t/beginning-questions/139326>\
**Category:** Rails\
**Created:** [June 2, 2008, 11:16pm UTC](https://www.ruby-forum.com/t/beginning-questions/139326 "2008-06-02T23:16:45Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![Paulo\_JSMatos](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/p/90ced4/32.png) [@Paulo\_JSMatos](https://www.ruby-forum.com/u/Paulo_JSMatos)\
**Post date:** [June 2, 2008, 11:16pm UTC](https://www.ruby-forum.com/t/beginning-questions/139326/1 "2008-06-02T23:16:45Z")

</div>

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,

–  
Paulo Jorge Matos - pocm at [soton.ac.uk](http://soton.ac.uk)  
[http://www.personal.soton.ac.uk/pocm](http://www.personal.soton.ac.uk/pocm)  
PhD Student @ ECS  
University of Southampton, UK  
Sponsor ECS runners - Action against Hunger:  
[Jennifer Sorge is fundraising for Action Against Hunger UK](http://www.justgiving.com/ecsrunslikethewind)

---

<div class="post-metadata">

**Author:** ![Paulo\_JSMatos](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/p/90ced4/32.png) [@Paulo\_JSMatos](https://www.ruby-forum.com/u/Paulo_JSMatos)\
**Post date:** [June 2, 2008, 11:19pm UTC](https://www.ruby-forum.com/t/beginning-questions/139326/2 "2008-06-02T23:19:07Z")

</div>

On Jun 2, 10:09 pm, “Paulo J. Matos” [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> 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

---

<div class="post-metadata">

**Author:** ![Paulo\_JSMatos](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/p/90ced4/32.png) [@Paulo\_JSMatos](https://www.ruby-forum.com/u/Paulo_JSMatos)\
**Post date:** [June 3, 2008, 3:49am UTC](https://www.ruby-forum.com/t/beginning-questions/139326/3 "2008-06-03T03:49:18Z")

</div>

> - 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)!

---

<div class="post-metadata">

**Author:** ![Paulo\_JSMatos](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/p/90ced4/32.png) [@Paulo\_JSMatos](https://www.ruby-forum.com/u/Paulo_JSMatos)\
**Post date:** [June 3, 2008, 4:19pm UTC](https://www.ruby-forum.com/t/beginning-questions/139326/4 "2008-06-03T16:19:43Z")

</div>

On Jun 3, 6:53 am, “Paulo J. Matos” [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> 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:

> **[Application service provider](https://en.wikipedia.org/wiki/Application_service_provider)**
>
> An application service provider (ASP) is a business providing application software generally through the Web. ASPs that specialize in a particular application (such as a medical billing program) may be referred to as providing software as a service.
> The application software resides on the vendor's system and is accessed by users through a communication protocol. Alternatively, the vendor may provide special purpose client software. Client software may interface with these systems through an appl...

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.

---

<div class="post-metadata">

**Author:** ![Paulo\_JSMatos](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/p/90ced4/32.png) [@Paulo\_JSMatos](https://www.ruby-forum.com/u/Paulo_JSMatos)\
**Post date:** [June 3, 2008, 12:55pm UTC](https://www.ruby-forum.com/t/beginning-questions/139326/5 "2008-06-03T12:55:40Z")

</div>

On Tue, Jun 3, 2008 at 2:47 AM, Phlip [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> 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!

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?

–  
Paulo Jorge Matos - pocm at [soton.ac.uk](http://soton.ac.uk)  
[http://www.personal.soton.ac.uk/pocm](http://www.personal.soton.ac.uk/pocm)  
PhD Student @ ECS  
University of Southampton, UK  
Sponsor ECS runners - Action against Hunger:  
[http://www.justgiving.com/ecsrunslikethewind](http://www.justgiving.com/ecsrunslikethewind)
