How can I provide web app framework as a service and keep its source disclosed?


I am developing something like a web application framework in Ruby, and I want to turn that into a business. The application is provided as a single library, and can be used by simply require -ing it into the main file of the application. It does not require the application to be given in a fixed directory structure as in Ruby on Rails.

In what ways can I serve the framework to customers while keeping the source code disclosed? I think that obfuscation of Ruby code may be broken in a matter of time, so I do not want to distribute the source code directly to the customer. Rather, I am thinking of a PaaS business, where the customers can work on their application that uses the framework.

Which technical business models would work in this case?

Platforms Web App

asked Apr 8 '13 at 14:30
110 points
  • I've voted to close, it's a technical question rather than one about startups. – Joel Friedlaender 7 years ago
  • It is about a business model. It is not simply a technical question. Depending on the answer, the business can work in different ways. – Sawa 7 years ago
  • If you want it to be a business question, you should reword it significantly. I would however suggest this gets closed and you could create a new question that is relevant to this site if you have one. – Joel Friedlaender 7 years ago
  • why would people pay for this when they have ALOT of great, maintained open source projects with great domain knowledge? – Itai Sagi 7 years ago
  • Although, this is close to being closed, having worked through a similar problem, the issue is more a business question, rather than a technical question. You might these decisions at a commercial level, but maybe make it more generic (i.e. beyond only Ruby to any software business where the source is hard to hide). – David Benson 7 years ago

2 Answers


I am thinking of a PaaS business, where the customers can work on their application that uses the framework

The problem with that is your customers would evaluate you on uptime track record, scalability, and vendor lock in risks. You'd need to handle all the concerns of a true PaaS platform like Amazon EC2 or Google App Engine. You could outsource some of that by running on top of EC2 like Heroku does -- but your customers would want to see a technical track record and depth of know-how similar to what Heroku has.

Ruby is an interpreted language. Therefore it is not practically possible to prevent users of the library to access the source code.

Your two options are:

  • Handle it legally. Have a sufficiently clear, legally valid, and enforceable End User License Agreement or license contract made by a good lawyer. And then rely on just the protection available to you by intellectual property laws.
  • Turn it into a web service, i.e. JSON over HTTPS, as @SamerBechara already suggested. This way you'd have both intellectual property protection, and the very strong practical protection of the code running on your own servers, behind an API you can access control & rate limit.

My experience shows that plenty of software developers pirate their own software. It's more common the less wealthy a region is. Unless your software does something very unusual, or you know your customers very well. it's probably very unwise to just rely on copyright law.

answered Apr 9 '13 at 00:10
Jesper Mortensen
15,292 points


The only reliable way to not share your source code would be to create a client-server based API system, where you provide them with a file which just calls the methods on your own server. They will have access to the file's source code, but it will not matter, because it cannot work on its own.

answered Apr 8 '13 at 22:16
Samer Bechara
251 points

Your Answer

  • Bold
  • Italic
  • • Bullets
  • 1. Numbers
  • Quote
Not the answer you're looking for? Ask your own question or browse other questions in these topics:

Platforms Web App