While enterprises were defining and undertaking their SOA initiatives, the recent rise of grassroots computing among both professional programmers and knowledge workers highlighted a different development approach. During the last 30 years, while languages, platforms, and tools have changed significantly, IT solution development processes have changed very little. Understanding and taking advantage of the latest changes in Web computing has the potential of significantly improving the effectiveness of corporate computing. These changes include shifts in both technology and usage patterns, collectively referred to as Web 2.0, a term coined by Tim O'Reilly