Saturday, August 13, 2011

Some of the ways Exchange isn't working for us

I was recently asked by an employee (who's less than thrilled with our Google Apps transition) why we're trying to "fix something that isn't broken." It then occurred to me that we haven't been too clear about what we're trying to fix.

As a result, here are some of the ways in which our current on-site Exchange hosting is broken, along with the ways in which Google Apps resolves them.


Mailbox Size
Because of the costs of installing, managing, and backing up storage space, we've fallen far behind today's demand for it. It isn't explicitly broken, but our outdated limits on mailbox space have forced users to work around it in ways that result in more downsides than people often notice.

Workaround 1: Archive mail on your local machine.
This will stop the "your mailbox is full" messages while maintaining access to your old mail, but you'll now only be able to access it from that machine. Want to see it on your iPad? Mobile device? Another desktop PC? It won't be available.

Another problem this introduces is a lack of redundancy. Is the hard drive of your local machine backed up regularly? If not, a hard drive failure (not uncommon) could literally mean years of correspondence are now unrecoverable. While this may not appear as "broken" now, it certainly will to you if it's your hard drive that fails.

Workaround 2: Delete messages you don't think you'll need.
Depending on how much mail you receive regularly (and how long you've been here), this may involve quite a bit of deleting. Putting aside the obvious problem of needing something you've deleted, this also means that for each and every incoming and outgoing message, you have to consciously decide what is or isn't important enough... far from an efficient work flow.

Workaround 3: Have mail forwarded off-campus.
We should have gathered statistics on exactly how many users were doing this, but I can confirm that it was a significant chunk. If my free personal off-campus account offers 7200+ MB of storage compared to my 100 MB at Seton Hill, why even bother using my Seton Hill mailbox?

It isn't only students, though. I took a course here last Spring, and as a way of turning in homework, we were asked to e-mail our assignments to the professor's off-campus (@yahoo.com) e-mail address. Why? Because her Seton Hill account didn't have enough space. My assignments always seemed to reach her, so it seemed to work for her, but should she really have to do that? How effective do our IT department and school look when professors are forced to do things like this for something as basic as e-mail correspondence?

Solution: Google Apps
Each and every Seton Hill Gmail account comes with 25,600 MB of storage space. That's 256 times the student Exchange mailbox quota and almost 150 times the default employee Exchange mailbox quota. With sizes that high, users should feel comfortable deleting no messages at all, should never have to archive messages on their local machines, and will have substantially more storage available than any comparable personal e-mail account.

Gmail is well-known for the large amount of storage space offered.

Not only that, but users of Google Apps benefit from Google's implicit promise to increase mailbox sizes as the demands of storage increase. When Google Apps was first offered back in early 2006, the storage quota was 2 GB. In 2008, the quota was increased to over 7 GB, and just two weeks ago, it was increased to a whopping 25 GB. All of these upgrades were implemented at no additional charge.

Meanwhile, our Exchange quotas have stagnated and will only increase at considerable additional cost. Even then, we'd offer nowhere near what Google Apps and Gmail are able to provide. In terms of solving the mailbox size problem for the future, it's pretty clear what should be done.

Desktop Mail Client Support
Most of our employees have become quite familiar with Outlook, and for good reason. For most of them, it's an effective tool that they've built their work flows around using. Perhaps more importantly, it does what is needed and isn't expected to do more.
To put it simply, though, if the seamless use of Outlook represents your entire experience with e-mail here, you're either one of the lucky ones or you haven't been here long enough.
Outlook for the Mac has been nothing short of a support headache for our help desk. Users sometimes have to wait for hours on end for the mailbox databases to be "rebuilt" before they can send and receive mail. It also has poor public calendar support and contains only a subset of the features included in the Windows version. Another common complaint is that it can be slow and unresponsive at times. A select number of users have even had to deal with the unrecoverable loss of archived mail.

Outlook 2011 isn't the only client that suffers from issues, though, and it's not always just unlucky users that experience them. Many Entourage users will recall when our upgrade to Exchange 2010 completely broke the calendar feature. That is: the latest version of Microsoft's own software intentionally breaks its own clients. This was not a bug, but intended behavior. What were our options as support staff? Deal with it the best we can? Work around it? These aren't acceptable to us and they certainly shouldn't be acceptable to you.

E-mail shouldn't be this difficult. It doesn't have to be.

Windows users may have been better off so far in terms of avoiding issues like these (at least in Microsoft's own software), but they're not quite "in the clear." Due partially to the user interface overhaul in Office 2010, many users have stuck with Office 2007. Using old software isn't inherently bad, but it isn't a long-term solution. Even without this transition, Outlook 2007 will eventually stop working. Whether that's with the next version of Outlook, the next version of Exchange, or with some other upgrade or change, it will happen, and it may not be at a time of our choosing.

Even for Windows users running the latest version of Outlook, though, how do we know that it will continue to work as changes take place? After what we've experienced before, what guarantee do we have that Exchange 2014 won't break some key feature? Perhaps more relevantly, what possible excuse could we have if/when it happens? That snake has already bitten us twice since I started here, and that was only a year ago.

Solution: Google Apps
Whenever you open your Gmail, you are always using the latest version. There isn't a "new version" to get accustomed to every few years. Since Gmail is web-based, any new features or interface changes can be phased in slowly over time. This way, rather than being overwhelmed with new features while you're just trying to learn how to do what you've always done, you might see a new feature show up every few months. Even then, interface changes are typically available months ahead of time for trying at your convenience.

You also see the same familiar interface, whether from Windows or a Mac. Keep in mind that as long as employees are still using desktop mail clients (like Outlook) the way we have been, any of the things below could mean having to change mail clients and learn a new interface anyway:
  • Upgrading to a new machine
  • Switching to a different machine
  • Switching from Windows to Mac (or vice versa)
  • Upgrading to a new operating system
  • IT staff upgrading Exchange
None of these things would affect how a Gmail user sees his/her mail, and it would be immediately available with no configuration necessary.

Reliability
Our on-site Exchange system has multiple commonly tested points of failure. It's a single server hosted on our single network, so any issues at all with these mean that no Seton Hill users can send and receive mail. When I first started work here last year, outages were a common complaint, and although it's happened less frequently, it's not because any direct steps have been taken toward creating redundancy. Just last month, the Exchange server was down for several hours one night just because it applied a Windows update and got "hung up" rebooting.

Solution: Google Apps
That single night of Exchange server downtime was more than Gmail has experienced collectively over the course of years. Gmail's uptime percentage was 99.984% throughout 2010 and it's on track for 99.99% this year.

Costs
Exchange costs the college substantially more to use and support, even in its current state. In spam filtering alone, we spend tens of thousands of dollars each year, and if we accounted for the time we spend supporting it and the various mail clients, that would add many thousands more. It also requires a notable chunk of our available virtual resources (memory, hard drive space, processor cycles) which could otherwise be utilized elsewhere.


If we attempted to offer services on a level similar to Google Apps, costs would sharply increase.

Solution: Google Apps
As an educational institution, Google Apps costs us nothing. Thousands of businesses pay $50/user per year for the same services. Our only post-transition cost is for archiving (discussed below).

Backup
On-site, we store daily backups of Exchange users' mailboxes to a certain point in the past (approximately eight weeks ago). This allows us to recover from a disaster, restore most recently deleted mail, or even restore an entire mailbox to whatever state it was in when the backup was run. This covers most of our needs for backup.

While the ability to recover from a disaster is important, how quickly we can do so is also important. If a fire broke out in our server room, it could take hours or days to return to full effectiveness. What if this occurred during finals week or some other busy time? What if getting the Exchange server running is just one part of recovering from a larger disaster?

Solution: Google Apps
On Google Apps, our mail is redundantly stored in multiple data centers all over the world. If a fire broke out in their server room, we likely wouldn't even notice. It would take multiple simultaneous disasters in multiple countries before we would be affected, which is (naturally) very unlikely. Likewise, even if all of our on-campus servers went offline, users would need only a basic Internet connection to access their mail just as they always have.

Archiving
E-mail backups typically serve another purpose, though: compliance. If a legal question is brought up about what information was shared with whom when, it's important that we're able to answer that. Without going into too much technical detail, our ability to reliably answer "what happened when" questions about e-mail is limited. Except under ideal circumstances, we would have difficulty answering with absolute certainty--especially if we don't find the message(s) in question.

Postini is Google's separate e-mail archiving solution.

Solution: Google Apps
Google Apps offers a separate service called Postini which archives all sent and received mail separately from Gmail. Through this, we can archive up to ten years of messages in case we ever need them. If and when we do, we could use the service's search feature to definitively answer any question regarding what has been sent or received from various e-mail addresses.

How could we go with anything else?
Once you take into account all of factors above, it's difficult to argue that our on-site Exchange hosting is anything but broken. Besides, with something as important as e-mail, we don't have the luxury of waiting until basic functionality no longer works. Google Apps doesn't just represent a better way of solving these problems, it represents the ideal way of solving them. This isn't just a different way of doing our mail, it is, by far, the best way.

In fact, the only substantive downside of this transition is the only one we've been hearing complaints about: unfamiliarity with the new interface. This is completely understandable, but it's also completely temporary. That's why we've arranged for free web-based training for any interested employees and have made ourselves available for any and all questions you have. Once the transition is complete, we're confident that Seton Hill will be much more effective technologically not just today, but well into the future.



NOTE: The focus of this post has been on the problems with our Exchange system and how Google Apps does things better. It doesn't just solve problems, though. Google Apps also provides many exciting new features that I've covered in a different post.

Friday, August 12, 2011

Exciting new Google Apps features!

As part of explaining our decision to migrate to Google Apps for Education, this post outlines all of the benefits Google Apps brings that go beyond those offered by Exchange. For a comparison of how Google Apps handles the features our on-site Exchange server provides, check out this post.

Improved calendar creation and sharing
Google Calendar brings with it a much easier way to make use of calendars. Consider the following use cases:
  • Share your calendar with a friend or coworker.
  • Start a separate calendar for your department, committee or club and share it with whoever you'd like.
  • Publish a specific calendar to a web page for easy public sharing.
  • See the birthdays of the employees in your department in a separate calendar.
  • See Seton Hill-managed calendars right alongside your own--like the academic calendar and fall meeting schedule.
  • Subscribe to other calendars, like the Pittsburgh Pirates' game schedule or your favorite NFL team's home and away games.

Go Pirates!

In the CIT Department, we're currently using one shared calendar to track who is "On call" for the help desk and another to show our technology distribution schedule. Personally, I also subscribe to a few calendars Google provides to allow Google Apps administrators to keep up with when new changes will implemented.

This is a feature that's difficult to get users excited about until they start using it, but once they see how easy it is to do, it really makes event planning and scheduling much easier. They'll even show up on your iPad, too.

Google Docs - Online document sharing, collaborative editing, and versioning
This is another feature that's difficult to get users excited about until they start using, but consider the following use cases:
Ever have a document that will undergo multiple revisions, but needs to be reviewed by multiple people throughout development? The conventional way of dealing with this is through e-mail. Send out the first draft, gather comments, make revisions, send another draft, etc. Not only is this inefficient, but it's creating multiple copies of the same document all over the place. Using Google Docs, you can create or upload the document right inside your web browser and directly share it with others. When they see it, they'll see the latest copy each and every time, and if any edits are made, they're synchronized in real-time.
Ever done any group work for a class? Organizing getting the work done on time can be a very frustrating process. Splitting up the work often leads to different parts of the report not fitting well together, and e-mailing drafts back and forth can be confusing and annoying. With Google Docs, you can edit the same document, spreadsheet, or slideshow presentation at the same time, see each other's edits in real time, and even discuss the changes being made through chat without leaving the browser window. No more e-mailing back and forth--you're seeing the latest version whenever you open the page. 
You know that form or document your department uses that requires changes occasionally? Griffin's Lair has certainly made sharing these documents easy, but using Google Docs, it can be even easier. Upload them to Google Docs, share them publicly, then publish a link to it on Google Docs instead. Now, when changes are made, you can simply change whatever dates or values you'd like without even leaving your web browser. When users click the link, they'll always see the latest version. No more opening a help desk ticket and waiting for the web developers to get around to posting it--the changes are published instantly!

How we manage documents is something we've all grown accustomed to over time, but Google Docs promises to dramatically change that process for the better.

Increased account security - Two step verification
Have you ever thought about just how much can be done if someone were to gain access to your account? If you'd like to add an extra layer of security to accessing your Google Apps services, check into two step verification. With this feature enabled, someone will need more than just your username and password to gain access.

Increased focus on data liberation
Data liberation is the process by which you can get your data out of a system if you should choose to do so. Google maintains a website dedicated to making the process as clear as possible: http://www.dataliberation.org/

While not too useful to us now, going above and beyond to make sure customers can leave your services as easily as possible makes a clear statement about just how much faith you have in the services you provide. If we do ever decide to go elsewhere, retrieving our data from Google services won't be a hurdle.

Google Talk - hosted chat and instant messaging
Before our transition, we maintained a Jabber (chat) server on-site. Like Exchange, though, it was on a single server and required its own maintenance and support. It received some use, but since configuring a separate chat client was required, it never quite lived up to its potential.


Now that we're on Google Apps, our chat server is in the cloud. Not only that, but it's also integrated right into Gmail, so no separate client configuration is necessary (although that's still available, if preferred). All chats are also logged to the users' Chats folder in Gmail, and since it's hosted by Google, we benefit from increased reliability, as well.

Google Sites - web site creation and hosting for non-programmers
Google Sites is a wiki and web page creation tool aimed at users who aren't web developers. In our case, this would serve most clearly as a replacement for the "Department" pages in Griffin's Lair. Departments, clubs, groups, or even normal users can create their own web sites with announcements, links to relevant content, and other normal web content. They can even be hosted from our domain (e.g. shga.setonhill.edu) for an even cleaner look.



Want to see examples? Here are some I've found:
Not bad at all for sites developed and maintained by non-techies.


Blogger - hosted blogs
We still maintain an on-campus Wordpress server, but the Google-hosted Blogger service is another feature that our students and employees can benefit from. In fact, you're reading a Blogger-hosted blog right now!

Like the other hosted services, Blogger costs us nothing to maintain and support, yet is backed up, always using the latest version, and is world-class in quality.

Picasa Web Albums - image sharing
Picasa allows users to upload and share photos and other images.

YouTube - video sharing
Since a Google Apps account functions as a Google account, Seton Hill students and employees can use them to post YouTube videos.

Those are the services that stood out most to me, but there are actually other Google services available, too, and the list keeps on growing! If you have any questions about them or anything mentioned above, feel free to e-mail me or leave a comment here.

Tuesday, August 9, 2011

Please add API support for adding non-Google calendar subscriptions!

One of the most exciting new features we've gained from the transition is the ability to easily create, share, and subscribe to different calendars. In fact, upon user account creation, we automatically subscribe users to a few calendars we expect them to find useful. One of those is the academic calendar.


The academic calendar is managed through our intranet portal, so I simply wrote an iCal (.ICS) output URL of it, and that allows users of Google Calendar (or almost any other calendar software) to subscribe to it. Through the API, though, I can't just subscribe users to the calendar's URL. I had to add the calendar personally through the normal web interface first, which then provides the Google Calendar ID necessary for the calendar subscription API.


Since the academic calendar is the same for all users, it's not a big deal. A single hand-performed operation allows for the same calendar to be subscribed to by all of the users on the domain. This has become a problem, though, for one of our other planned features.

One original goal was to have the user's class schedule subscribed to by default upon account creation. Imagine how smooth that is! No need to manually type in each class's start and end times or adjust added/dropped classes yourself. Not only that, but since it's a calendar subscription to an ICS that is dynamically generated from our course registration database, it requires absolutely no user or administrative maintenance. Everything "just works."

Unfortunately, though, Google's API doesn't provide a way to subscribe users to a non-Google ICS URL. The calendar must have a Google Calendar ID, which can only exist if the calendar has been added by a user. While it doesn't completely kill the feature, it's really disappointing to have to walk users through adding this calendar subscription themselves. Sure, it's not that hard, but new students and employees already have a long list of stresses and things to worry about. On a practical level, the end result is more likely to just be that most users don't bother adding it and miss out on the functionality.

I was quite disappointed to discover this, but I'm still hoping that this ability is added to the API.

Why We Don't Support Desktop Mail Clients (like Outlook) with Gmail

My original hope was that "switching to Gmail," for the majority of users, would consist simply of changing a few settings in the mail client. After all, we're trying to make this transition as smooth as possible, and we can effectively guarantee a successful transition if the only thing that changes for the user is the mailbox size. All of the other things (like Google Docs and new calendar features) are still available for the users who want them.

It didn't end up working that way, though. We certainly think it's for the best in the long run, but it's been making employees a little more hesitant to make the switch.

So why not?

Keep in mind that as a campus, we've made a significant shift toward using Apple machines. Most of our students and employees are using Mac OS X.

Outlook 2011 (Mac) ONLY supports calendar and contacts through Exchange.

That's right. On the latest version of Outlook for the Mac, you can get your mail through IMAP, but for anything else, you'll need an Exchange account. Google provides a special utility that supposedly makes Outlook fully-integrated on Windows, but no such utility exists for the Mac. After further research, I can confirm that this is not due to a lack of interest from Google. Outlook 2011 provides some abilities to developers for interacting with it, but nothing that would overcome this obvious problem.

Outlook for Mac 2011: The straw that broke the camel's back?


This puts our IT Department in a tough position. On the one hand, we've been really pushing for the use of Macs over Windows machines based on the position that software incompatibility issues are, for the most part, overstated. On the other hand, though, we have a clear-cut example of Windows software that works just fine... and its Mac counterpart is inadequate. Imagine how we'll look when we have to tell users,
"You can keep using Outlook if you're using Windows, but if you're on a Mac, you can't."
The more we thought about it, though, the more we realized that this isn't a problem with the Mac. Getting your Gmail working with a Mac is quite easy, and it became even easier with Lion. This is just another issue of Microsoft's own software not working as it should. We were similarly frustrated when changes with Exchange Server 2010 led to us having to pester users to upgrade Entourage (the precursor to Outlook on the Mac) because the new Exchange no longer supported WebDAV. That is: key features of Entourage would simply stop working after Exchange is upgraded. How is that, in any way, acceptable?

One of the reasons we're moving to Google Apps is to rid ourselves of dealing with Microsoft's annoyances, and even as we're doing it, Outlook 2011 manages to reinforce that decision.

Mail and calendar clients change often

Even if we were a completely Windows campus, though, what guarantee do we have that the next version of Outlook will integrate with Google Apps? Perhaps more relevantly, what possible excuse would we have if it doesn't? The snake has already bitten us time and time again. If our Mac users are already learning the new interface, why prolong supporting something we don't even know will work next year?

Just working, though, is only part of the issue. If there's anything I've learned through this process, it's that people like things to look exactly as they have, and any change (regardless of how small) will be met with resistance. We all remember the user interface overhaul of Microsoft Office in 2008. Whether the UI was better or not, it was very different, which was very negatively perceived. Of the few employees still using Windows prominently (through virtualization or otherwise), it's not surprising to see many of them still using Office 2007. People don't like change.

Microsoft isn't the only company to change a user interface, though. Apple Mail has been revamped for OS X Lion, and while it won't be an issue (since most employees are using Outlook or Entourage), I feel quite confident that it would be if we configured it commonly. We can't expect user interfaces to stay the same, though, right? So how does Gmail relate to this?

Since you're loading the latest version of Gmail each and every time you open your Gmail, that alleviates a lot of these issues. Likewise, Google tends to keep Gmail interface changes fairly minimal, so users will be using the latest interface... only without the shock of a completely new interface. Users don't have to get re-accustomed to how to manage their e-mail every time their machine is upgraded or a new version of Office is released. Even after a Windows <-> Mac transition, users will be already familiar with their mail.

Some Gmail concepts don't translate well to IMAP

This is a much more minor issue, but some of the concepts don't necessarily act intuitively in IMAP clients. If someone doesn't understand archiving vs. deleting, s/he might not understand why deleting an item from the Inbox doesn't put it in the Trash. If someone doesn't understand the concept of labels vs. folders, s/he might not understand why the same message is "copied" in multiple places in their mailbox. And what's to stop someone from dragging a message from the Inbox (or a folder) into All Mail (where it already exists)? In a normal folder-based structure, that'd be no problem at all.

We ended up deciding it's worth dealing with on mobile mail clients, but would, even in an ideal configuration, cause confusion for desktop users.

To be clear...

We haven't disabled the configuration of desktop mail clients (although we could). In fact, I've gone out of my way to ensure that these things will work properly. When users ask, I'll even tell them the settings necessary to configure desktop mail clients. However, this is only done with the understanding that any issues encountered are yours to troubleshoot. The web interface will always work, and works for all available features. Not only that, but it's the one we prefer personally.

It's a bit painful for switching users to learn the new interface, but it's no worse than what the next version of Outlook could be, and it holds the promise of being the last time a new interface must be learned. From here on out, it's just whatever granular changes Google implements. Just imagine how many fewer headaches all of us (users and support) will have! E-mail and calendaring will finally be the "always just works" "take-it-for-granted" tools they always should have been. I, for one, am certainly looking forward to it.

Have any thoughts? Feel free to leave them in the comments.

Monday, August 8, 2011

Google Sync Calendars: Shouldn't they be "On" by Default?

The ease of sharing and subscribing to other calendars is one of the most useful features we've gained in our transition, but one thing I haven't understood:

Why are Google Calendars toggled "off" in Google Sync by default?

This is especially annoying among employees because we have three separate calendars we subscribe each to. It's not just that, though. The process of making a calendar appear through Google Sync is a bit convoluted, and since new calendars are off by default, this process must be done each time a new calendar is added.



Here's what I've posted on our help desk site as instructions. Keep in mind that Seton Hill has issued iPads to all full-time students and faculty, so this is an issue we see quite commonly with the iPad.
Want to select which of your Google Calendars show up on your iPad, iPhone, or iPod Touch?
  • On the device itself, open Safari and go to m.google.com/sync
  • Tap "Sign in with your Google Account"
  • You should now see a Google login page. Enter your e-mail address as the username and leave the password blank. Click the button to continue.
  • You should now see the Griffin's Lair login page (if you weren't logged in already). Enter your username and password, then click the button to log in.
  • You should now see a page that says "Google Sync" and "Manage devices". Each device that you have configured for e-mail and calendars should appear here. Tap the row for the device you'd like to configure.
  • Here you should see a list of all of your calendars. Check the boxes for any calendars you'd like to have on your device, then tap the "Save" button at the bottom.
That'll turn them on, although you may need to kill the "Calendar" app and restart it for them to show up. Rebooting the device will do it, but you can do it more quickly by:
  • Double-tap the home button.
  • A row along the bottom with some of your apps will appear here. If you don't see the "Calendar" app, scroll to the right until it's visible.
  • Tap and hold the app's icon until it becomes wiggly, then tap the red "-" icon (just like you do to delete apps).
  • Double-tap the home button to go back to normal.

The practical result is that most users don't bother getting or keeping their calendars set up properly. Just imagine sending these instructions to someone who is in no way "tech savvy." The problem is so easily solved, though. Just have calendars show up through Google Sync by default. After all, they can be hidden on the client itself, anyway.