Collaboration is a hot term these days. Years ago, collaboration was known as groupware with products such as IBM Lotus Notes and Novell GroupWise leading the way. While these products are still around, collaboration is now ubiquitous. You see it in everything from e-mail to sites such as Facebook and Blogger to packaged products such as Microsoft SharePoint and Lotus Notes.

SharePoint is a great example of a packaged solution that promotes collaboration within the enterprise. It’s one of Microsoft’s fastest growing products, but it includes a hefty price tag. SharePoint was on my mind as I perused the Google Apps offering.

Google Apps and the Google App Engine assist IT departments by providing much needed IT infrastructure through a set of applications, as well as a development platform for building your own applications. Here’s a look at both products.

Google Apps

Google Apps provides a suite of online applications, which include the following:

  • Gmail provides address book and search features, along with integration with Google Talk and Calendar.
  • Google Talk is an instant messaging tool for real-time communication with contacts. File sharing and voice is included as well.
  • Google Calendar organizes schedules with easy-to-use calendars that may be shared among groups of people. In addition, you may integrate it with your current calendar platform.
  • Google Docs allows you to create documents, spreadsheets, and presentations. It supports familiar document formats such as the Microsoft Office Suite of products, so you can easily use it with existing systems. Google Docs also provides real-time collaboration with other users.
  • Start Page provides you with your own start page to customize to include the tools such as e-mail, calendar, or another Web site.
  • Google Sites provides a Web site on which users may work together to build and edit Web applications. It brings together all the power of Google. You may embed videos, straight HTML, Google Gadgets, a spreadsheet from Google Docs, and so forth; it is only limited by the user’s imagination. It also provides a central place to collaborate. The term wiki comes to mind when I work with Google Sites.

The Google Apps initiative is a powerful alternative to more established products such as SharePoint and Lotus Notes. A great selling point is that Google provides the entire behind-the-scenes infrastructure to run everything, and it stores the data (although you can choose to store data locally). Plus, everything runs within the browser window, so there is need to install anything additional on user computers.

Pricing is where Google hits another home run with a very low entry level; a small business can get up and running with Google Apps in no time and at no cost. The Standard Edition offers all of the previously discussed applications for all of your users. The Premier Edition comes with a $50 per user, per user fee. It provides everything in the Standard Edition, along with more tools for enterprise usage. This includes APIs for integrating with existing systems, policy management, more storage space, and customer support. In addition, an Education Edition is available for students.

My initial feeling is that Google Apps is a great offering, especially for small businesses without the capital to build such an infrastructure. Also, the push towards a mobile, disconnected workforce lends itself well to such an offering. I recommend checking out Google Apps: The Missing Manual by Nancy Conner, which offers in-depth information on every facet of the product.

At this point, Google Apps covers pretty much everything a group or company would need except for custom applications, and Google has an answer for that too.

Google App Engine

If the Google Apps paradigm is attractive, but it does not offer the applications you need, you can use the Google App Engine to build and deploy a custom application via Google-provided infrastructure. The Google App Engine gives developers access to Google’s platform. It boasts the following features:

  • The Google App Engine SDK for building applications locally and then deploying to the Google App Engine platform.
  • A scalable server infrastructure.
  • Support for multiple languages, although Python is the only language supported at this time.
  • A robust data store via Bigtable, which is a distributed storage system that Google uses for dealing with its vast amount of data. It is designed to scale to a very large size, so it can easily accommodate your data.
  • A Web command console that allows you to manage your application.

The Google App Engine includes several APIs for leveraging Google functionality. This initially includes APIs for working with user accounts; Mail API for working with mail items; and other APIs for working with the data store and so forth. The Google App Engine integrates with all versions of Google Apps, so custom applications for teams can be built and deployed via the Google platform.

Unfortunately, the only supported language is Python, which is not a surprise considering it’s no secret that Google uses Python quite a bit internally. While that is great for the Python community, it leaves many developers waiting for more and not wanting to learn another language. As a developer, it is intriguing to get a taste of how a very successful organization such as Google does things with features such as Bigtable and the Google file system.

Google’s next move: World domination?

Many Microsoft haters applaud Google Apps and the Google App Engine. While I find it hard to believe Google Docs will force Microsoft Office off of its high perch, it does make me wonder about another behemoth rising in the industry. Like Microsoft, the tenets of Google are reaching into every imaginable space. Is its next target the operating system? Do we want one company controlling everything? It is good to have companies battling against each other because the consumer winds up being the winner.

Are you currently using Google Apps or the Google App Engine? If not, do you plan to use either product in the future? Share your thoughts with the Web Developer community.

Related TechRepublic resources

Tony Patton began his professional career as an application developer earning Java, VB, Lotus, and XML certifications to bolster his knowledge.


Get weekly development tips in your inbox
Keep your developer skills sharp by signing up for TechRepublic’s free Web Developer newsletter, delivered each Tuesday. Automatically subscribe today!