Assume you want complete legal control of all of your code and you are not intending to open source any of it, but your goal is to make money with the site and possibly sell the business and its software assets at a later point, what framework would you create the app with? LAMP, Ruby on Rails, .NET, J2EE, other. Consider development time, cost, talent, flexibility, features, and the possibility of interferance by the provider of the framework (such as Microsoft with .NET or 37Signals with Rails).
If you wanted to build a commercial web 2.0 app with the intent to sell, what framework/platform would you use
There is a lot to consider regarding your question, and it probably should be ten or twenty different questions. The key to a good business plan is to divide the problem and conquer each piece. Anyhow, that being said, here goes nothing...
As far as control goes, you need to read the licensing. For the most part with open source, the components must remain open source, but the overall application you write will belong to you to license as you wish. In that sense there is little difference between closed and open source. The biggest difference is whether your code is easily reverse engineered. That is not easily preventable even if you are handing over compiled code. From your description, that does not seem like it will be a risk.
When building said applications, its a matter of knowing what you are looking for and focusing on your developers skill sets. For example, if you enjoy PHP, symfony is a rapid application development tool that might be useful. It utilizes an object relational mapper, which in my humble opinion should facilitate maintenance of the application over time and help you maintain consistent transaction support. Django might be a good alternative for the Python programming language. Spring/Hibernate used to be one of the better alternatives for a lightweight app in Java, but today's Java uses EJB3 which solves much of the same use-case and is built into Java.
As for .NET, Microsoft has done some solid stuff with web programming, but obviously it has a vendor lock in issue. You should carefully consider the costs involved, such as using a windows server, an sql server, etc.
With open source, you pay a bit more for developer skill in lui of these software installations ( or in some cases purchase support packages). As such you would pay a person to maintain your database, which might be mysql, oracle, etc and your application server, which might be jboss, tomcat, apache, etc. These might run on a Linux or Unix variant, or you might choose a windows server. If you go windows, you will have to pay for the server since windows limits concurrent connections in non-server variants.
Assuming you are a small group looking to start something up, I would advise you to use open source as Web 2.0 technologies tend to be available as open source. You will also want a repository and to consider the concept of continuous integration.
Good luck.
Mehmet
No comments:
Post a Comment