blog
What is different about a Web 2.0 project?
For a while now, you’ve probably heard the term “Web 2.0” loosely bandied about. But what does it really mean? I don’t think there’s any hard and fast definition. It’s more of a broad philosophy. But I like to use the term to distinguish my projects from other types of projects, especially “enterprise” projects.
As the name implies, “Web 2.0” means that you have a web site of some sort. It might be an online store. Or it might be web services. There are lots of possibilities. But in general, you are evolving continuously based on user needs. From a project perspective, this means that you are using an agile development methodology and frequent software releases. You tend to use open source software whenever possible to keep licensing costs to a minimum. It also means that the software architecture must be very modular so that the number of servers for one functional module can scale independently from those needed for some other module. For example, one functional module could be your front-end web servers, while another module could be authentication web services.
“Web 2.0” also has implications for the data center hardware. Again, you need to be evolving and adjusting very quickly. The ideal way to do this is by using pure cloud computing. Cloud computing lets you easily create or remove virtual servers as your load changes over time. However, you can also evolve quickly even if you’re using fixed servers in your own data center. (More later on the pros and cons of cloud computing versus fixed servers.) The trick is to use commodity hardware so that you can buy and install more servers and infrastructure gear very quickly because they are readily available. For example, you could use cheap, off-the-shelf Dell servers that you can order via Dell’s web site.
Let’s contrast this with the typical enterprise project. In many cases, the project needs to be planned months in advance. The servers are usually expensive, high-end servers that require longer lead times. Cloud computing is generally frowned upon. The software development is usually a one-shot project for a fixed duration and there are usually very high licensing costs.
This entry was posted on Monday, June 14th, 2010 at 10:18 am and is filed under Data Centers, Software Development . You can follow any responses to this entry through the RSS 2.0 feed. You can leave a response, or trackback from your own site.
