How Google Calendar Works


A view of an empty Google Calendar
A view of an empty Google Calendar
©2008 HowStuffWorks

Calendar software can be quite useful. Busy executives might refer to a calendar program as they navigate from one business meeting to another. Popular socialites use them as they book parties and other events. And the perpetually disorganized depend on calendar software to avoid missing important appointments. There are several calendar programs on the market. One such application that's growing in popularity is the Google Calendar.

Created by the multi-billion dollar corporation Google, the Google Calendar application allows users to create personal or public calendars after signing up for a Google account. The accounts are free, and Google stores the calendars within its cloud computing system. That means that the company stores the application and user information on its own servers. The user doesn't have to download special software to access the calendar -- all access is through a Web browser.

With traditional desktop software, users store information to their own computers' hard drives or other storage devices. That means if they want to access their information, they always have to use the same computer. Since the information in Google Calendars exists on the Web, users can view and make changes to calendars from any computer connected to the Internet.

­A Google Calendar with appointments ­A Google Calendar with appointments
­A Google Calendar with appointments
©2008 HowStuffWorks

Storing calendars on the Internet also means that it's easier to share information with other users. In turn, scheduling events and creating invitations becomes easier. Want to know if a fellow Google Calendar owner is free this weekend? If the owner opts to share his or her calendar with you, you'll be able to see if there are any scheduled events that might interfere with your plans. If there are conflicts, you may be able to adjust your plans.

Like all tools, Google Calendar is only helpful when people use it. It doesn't magically organize your life, but it can make the task much easier for you.

What are some of Google Calendar's basic features? Find out in the next section.

Google Calendar's Features

The agenda view lists out all your appointments by date.
The agenda view lists out all your appointments by date.
©2008 HowStuffWorks

The Google Calendar layout is fairly simple. A miniature view of the calendar appears in a column on the left side of the screen. It displays the current month and highlights the current day. A larger viewing area takes up most of the rest of the screen. The Google Calendar has multiple viewing options. You can choose to view the calendar by day, week, month or a view that presents just the next four days. You can also choose an "agenda" view, which presents all scheduled events as a list rather than as a calendar view.

No matter which view you're in, you can block out time on the calendar. In most views, Google Calendar allows you to schedule appointments or events with a simple click-and-drag interface. In the day, week and next four days views, you can block out time in half-hour increments by clicking and dragging down the appropriate day. Google Calendar then prompts you to fill in details about the appointment. In the month view, you can block out time for multiple days. This is particularly useful if you need to set aside time for trips and vacations.

Google Calendar lets you add details to appointments such as location and other information. Google Calendar lets you add details to appointments such as location and other information.
Google Calendar lets you add details to appointments such as location and other information.
©2008 HowStuffWorks

You can keep appointments simple with just a subject header, or you can choose to add more details. You can include a location for the appointment and a short description. You can also use the "repeat" function for events that occur regularly, such as a weekly meeting or annual event like birthdays.

Most of these functions are similar to the features of other calendar software products on the market. As part of an effort to differentiate Google Calendar from its competitors, Google incorporates other features that take advantage of Google's capabilities. Perhaps the most notable Google offering is its search function. In Google Calendar, you can use Google's search technology to search not only your own calendars, but also any public calendar on Google's system.

The Google Calendar search function lets you search other public calendars. Here are search results for Atlanta theatre. The Google Calendar search function lets you search other public calendars. Here are search results for Atlanta theatre.
The Google Calendar search function lets you search other public calendars. Here are search results for Atlanta theatre.
©2008 HowStuffWorks

Let's say you're going to a conference. The administrators of the conference have made the event's schedule available online through Google Calendar. You can use the search function to find the event's calendar and synchronize it with your own. Google Calendar returns a search engine results page (SERP) specifically formatted to show calendar results. You can select the appropriate entry in the SERP and Google Calendar takes care of the rest. Now you've got the detailed schedule imported into your own calendar.

Perhaps you own multiple calendars, some of which are public and others that aren't. You can use the search function to look for specific events within your calendars. Google Calendar returns a SERP showing you where specific scheduled events fall on each of your calendars.

These features are just the tip of the iceberg for Google Calendar. Want to learn about more advanced features? Head on over to the next section.

Advanced Google Calendar Features

The monthly view of Google Calendar resembles a traditional calendar.
The monthly view of Google Calendar resembles a traditional calendar.
©2008 HowStuffWorks

Many of Google Calendar's advanced functions rely on the fact that it's a Web service. With most other calendar software, you'd either access the program from your own computer's hard drive or you'd store the application on a local area network (LAN). With Google Calendar, the entire application and all its contents are on the Web.

One of the Web services Google takes advantage of is short message service (SMS) support. This is the format cell phones use to send text messages. Users can allow Google Calendar to send reminders via SMS to their cell phones. As a scheduled event draws near, Google Calendar sends an alert via SMS to a phone number registered by the respective user. While Google offers this as a free service, users may have to pay their cell phone service providers if they go over their monthly text message limits.

Google fosters a growing community of developers who use Google's application programming interface (API) to build new programs based off Google technology. Google calls the resulting applications Google gadgets. Many developers design gadgets to work with existing applications, including Google Calendar. Gadgets allow users to insert special events into a calendar. The options are practically limitless. Examples can include everything from inserting a relevant photograph to attaching a Google Map showing the location of the event.

Google Calendar makes it pretty easy to send invitations to other people. First, you create an event in your own calendar and fill out the details. Then, you can click on the "add guests" option. This opens up a field in which you can type e-mail addresses. Once you save the event, Google Calendar sends e-mails to the invite list. As guests respond to the invite, Google Calendar displays the results within the event listing on your calendar.

If a user chooses to share or publish a calendar, other users can leave comments on event entries. This allows people to discuss upcoming appointments or debrief after a meeting. The event page becomes a forum for guests and calendar viewers.

What does Google use to keep the Google Calendar system up and running? Find out in the next section.

Google Calendar Software and Hardware

­One of Google's data centers in Oregon, which is the size of an American football field and holds thousands of servers.
­One of Google's data centers in Oregon, which is the size of an American football field and holds thousands of servers.
Craig Mitchelldyer/Getty Images

If you're familiar with Google, you probably know that they're secretive when it comes to their operations. There's not a lot of information available on the system Google Calendar uses. Still, there are some aspects of Google's operations that are public knowledge. As for the rest, we can make a few assumptions on what's going on behind the scenes.

It helps to imagine the Google Calendar system as a client/server system. A client is an entity that requests a service. The server is the part of the system that provides a service. Both the client and the server may have special software allowing them to interact with one another. What's more, it's possible for a single computer to act as both a client and a server.

On the server side of Google Calendar, Google uses the Java programming language to build applications. Sun Microsystems developed Java as an object-oriented computer programming language. Programs created with Java can exist independently of other programs. It's the Java applications that handle all the data on the back end of Google Calendar.

Google Calendar users see the client side of the system. This consists of a Web page enhanced by Javascript. Javascript and Java aren't the same thing. The Java language allows programmers to build programs ranging from full applications to smaller applets. Developers use Javascript to beef up Web services. They can't use it to build programs that work outside of a Web browser experience.

That about wraps up everything Google outsiders know about the Google Calendar system. But we can make a few guesses about other details:

  • Google tends to use relatively cheap hardware for its systems. Instead of investing in cutting edge technology that can handle terabytes of data, Google purchases inexpensive hardware that integrates with existing networks seamlessly. While the hardware doesn't have all the bells and whistles of more expensive equipment, it serves its purpose. Since it's cheap, it doesn't cost much to add more capacity to the system, which means it's scalable.
  • One possible arrangement of hardware would include application servers and database servers. The application server would process the programs that make Google Calendar possible, including integration with other Google applications. The database servers act as storage. Google may also use a control or administrative server that acts as a gatekeeper.
  • One of the trade-offs when using inexpensive hardware is reliability. Cheap machines tend to break down more often than expensive ones. Google knows that this can happen, and in fact designs its file systems around it. Google stores the same data on multiple machines -- a practice known as redundancy. When a server fails, another one can take its place almost instantly. Google's goal is to reduce service interruptions as much as possible while preserving user data.

Google doesn't say how many machines it dedicates to run services like Google Calendar. But Google has several huge datacenters. A datacenter is a building that shelters computer equipment, usually stored in metal shelving units called racks. A large datacenter might house thousands of servers. How many of those servers run Google Calendar? That's only known to people inside Google itself.

Want to learn more about Google applications and related information? Schedule some time with the links on the next page.

Related HowStuffWorks Articles

More Great Links

Sources

  • "Calendar Gadgets and Reference Guide." Google Code. http://code.google.com/apis/calendar/calendar_gadgets.html
  • "Client/Server Software Architectures -- An Overview." Carnegie Mellon Software Engineering Institute. http://www.sei.cmu.edu/str/descriptions/clientserver_body.html
  • Google Calendar Help Center http://www.google.com/support/calendar/
  • Google Calendar Overview http://www.google.com/googlecalendar/overview.html
  • Krebs, Brian. "A Word of Caution About Google Calendar." Washington Post. July 6, 2007. http://blog.washingtonpost.com/securityfix/2007/07/google_calendar_goofs.html
  • Sjogreen, Carl. "It's about time." The Official Google Blog. April 13, 2006. http://googleblog.blogspot.com/2006/04/its-about-time.html
  • Van Couvering, David. "Google Calendar Offline Talk and Demo." Java.net. Oct 5, 2006. http://weblogs.java.net/blog/davidvc/archive/2006/10/google_calendar.html