Warning: this post is moderately technical in nature. I think it’s the first technical post I’ve done in almost five years here, so I apologize in advance if it’s too geeky for you.
I’m trying a new feature around here called How I Roll. It seems like I get lots of questions from other people about how/why I do what I do as it relates to tech stuff. For instance, I put a lot of thought into how I handle backups, DNS, web hosting, email, etc., and I figured it might be worthwhile to document and share some of that knowledge. Maybe I can save you some trouble or give you additional insight into something you’re researching for yourself.
For this first installment of How I Roll, I’ll be talking about how I handle web, email, and DNS hosting–the infrastructure-level components of nearly any website. I think it’s really important for those three things to be done right, because these days, online media is the first point of contact for a lot of people.
Let’s talk about DNS first. The most common analogy I’ve heard for DNS is that it’s like the phonebook of the internet. I guess that’s mostly true, but if you don’t already have a strong grasp of what it is and how it works, you shouldn’t be reading this article. A lot of hosting companies and domain registrars provide free DNS hosting, but I tend to stay away from them and do my own thing.
Nearly every major registrar has had DNS troubles of some kind over the past few years, and that’s understandable. It’s not their core business, it’s not important to them, and it’s not what they do well. Things also get complicated/broken when you start moving to different registrars. Just recently, I moved the majority of my domains from GoDaddy to NameCheap (I couldn’t stand GoDaddy’s low-class advertising or their constant upselling attempts anymore). If I had hosted my DNS with GoDaddy, I would have made a lot of extra work for myself by switching to someone else.
For the same reasons, I don’t let hosting companies handle my DNS, either. I’ve changed hosting companies too many times, and I just don’t feel comfortable giving a single company the “keys to the kingdom”. That’s why I use DNS Made Easy. Their user interface is really awful until you get used to it, and even then, it’s still pretty bad. But they do one thing well, and that’s all that matters: they offer rock-solid DNS hosting at a reasonable price.
Other companies specialize in DNS hosting, so don’t think that DNS Made Easy is the only choice. They just happen to have a very good track record and plans that fit my budget. EveryDNS.net is a free service that does an admirable job, and it was started by David Ulevitch of OpenDNS fame. Unfortunately, EveryDNS has had their own share of issues over the years. I’m mentioning it here because I think it’s the best option for people who aren’t willing to pay for this essential function.
Next on the list is web hosting. Again, I’m not going to explain the differences between shared/dedicated/VPS plans because I assume you already know that. In my earlier years on the web, I was perfectly content with shared hosting. My Linux CLI skills were modest, and I didn’t demand complete control over my server environment (root, baby). In the last 4-5 years, my sysadmin skills have grown and the price of hardware has dropped to the point where I can afford my own box.
The problem is that I don’t need my own box. My blog isn’t exactly on par with Amazon or eBay or Google in terms of traffic. I can get by just fine with a VPS, which is essentially a virtual chunk of a much bigger machine. For what I do, 256 or 512M of memory is more than enough, and I only require a couple gigs of HD space. After searching around for a long time and reading tons of reviews, I decided on Slicehost about a year ago (14 or 15 months ago, actually). They’ve been fantastic.
After 300 days of uptime, I restarted my box because I wanted to, not because I had to. I think that fact alone speaks to Slicehost’s reliability. Sure, I could build out my own server and drop it in a colo facility somewhere, but that’s cost-prohibitive. I’d be looking at about a grand for the initial build-out and then a monthly colo fee on top of that. And if (when) the hardware fails, it’s all on me. Instead, I choose to pay Slicehost $20/month for use of their high-end hardware and connectivity. When a drive dies, they replace it, and it doesn’t cost me a cent.
Recently, I’ve been exploring some other VPS providers that offer more bang for the buck. Linode and Prgmr.com both provide more capacity for the same price (or less). A server move is a big deal and involves a lot of work, so being the lazy sysadmin that I am, I’m not too keen to pack up and move quite yet.
If you’re still with me, I saved the best for last: email. In 2009, email is absolutely critical, so we can’t take any chances here. Everything from job offers to utility bill notifications are sent via email, and even though the underlying protocols are designed to be fault-tolerant to a certain extent, I’d rather not risk it. Imagine what would happen if your home mailbox suddenly disappeared before the mailman could deliver your mail. Get it?
Well, I’ve had a Gmail account since before they were cool, so I was using that for the longest time. Seriously, I had one of the early invites back in May of 2004–now that’s some geek cred right there. At some point, it occurred to me that I was stupid for not taking advantage of my own domain name, which I’ve had since 2002. I knew I didn’t want to run my own mail server because it would take up too much of my time. (You think it’s easy to stay on top of spam filtering, virus filtering, and block lists?) Besides, it would be cheaper and more reliable to outsource it to a company that specializes in mail hosting.
After researching Google Apps and Tuffmail, I decided to go with Google Apps–sort of. I think Gmail has the best web interface around, and it would have been hard to settle for something less. Google Apps comes in both a free version (Standard) and a paid version (Premier). They have similar feature sets, but you get a 99.9% uptime SLA, 25G of storage space, phone support, and the ability to disable ads with Google Apps Premier. The cost is $50/account/year, and with only one account, that translates to $50/year (I was always this good at math, by the way).
Since I had been using and enjoying my free Gmail account for about five years, I figured it was time to pay it forward by signing up for Premier instead of Standard. I was also getting a little nervous after reading horror stories of people being locked out of their Gmail accounts for days at a time, and I reasoned that a paid user with an SLA would have more protection against that kind of thing. For $0.13/day, the peace of mind, extra space, and lack of ads has been well worth it.
Since Tuffmail is equally awesome in a different way, I decided to use them for all of my auxiliary domains. I’ve got their most basic plan that costs $6/quarter, and they too have been well worth the money. Considering that I would have needed a separate email server at $20/month, paying Tuffmail $24/year is a bargain, and that’s not even counting the cost of my time to manage another box (and an email box, at that). You can set up as many domains as you want at Tuffmail and then have unlimited aliases all deliver to a single physical box. Cool.
Because of the way I’ve set up my essential services, I can continue to receive email even if my website is down. And because of Google’s SLA, I should be able to receive email 99.9% of the time. Changing domain name registrars or hosting companies is a breeze thanks to the decoupled nature of everything. Oh, and did I mention that I’m still able to receive email even when that happens?
I hope this article has been helpful, and I intend to write more like it in the future. Feel free to ask questions or spark up a discussion in the comments.
That’s how I roll.





Google Apps: impressions after 14 months
More than a year ago, I decided to switch my personal email account from Gmail to Google Apps Premier Edition. The logic behind that move is laid out in a previous post, so I won’t rehash what’s already been said. In this post, I mainly want to reflect on what’s already been done and also point out some potential pitfalls for anyone else who’s considering making the jump.
Enjoying the status quo
My Google Apps mailbox is puttering along nicely, happily sucking down messages from two other accounts via POP. I originally had set my old Gmail account to forward to my new address, but after noticing that some new messages weren’t forwarded properly, I switched to POP, which seems to be more reliable. I changed all my important stuff directly at the source to point to my new address instead, so it’s really not that big of a deal—just something to be aware of. The other mailbox I’m checking is my Tuffmail account. I have about 30 or 40 addresses delivering to a single mailbox on the Tuffmail side, and then I just poll that single box.
Frustrations start to mount
Everything works pretty well in and of itself, but the problems start to pile up, in spades, when you throw additional Google services into the mix. It seems like there’s a strange dichotomy between Google Apps accounts and Google Accounts (notice the capital A). For those who don’t know, the distinction is this: a Google Apps account is simply one user of your Google Apps domain (you@yourdomain.com). A Google Account, on the other hand, is not related at all. That’s right—it’s completely and totally unrelated. Most commonly, a Google Account is also a Gmail account, but it doesn’t have to be. If you have a Google Apps email address (or any other non-Gmail email address), you can create a Google Account for it. Confused yet?
Google’s a/Accounts don’t play well together
The most notable problem—and my biggest gripe—is that email/Gmail-related functions of Google Apps don’t share data with other services that are accessed via a Google Account. I’ll give you the most prominent example: my Google Voice contacts are separate from my email contacts, even though my Google Voice account is linked to a Google Account that’s really just a Google Apps email address. Again, confused yet? The tasks for my Google Account are different from the tasks for my Google Apps account, and the contacts for my Google Account are different from the contacts for my Google Apps account. I know it seems minor, but the end result is an enormous pain in the butt. Gmail users don’t have this problem!
To further frustrate and complicate things, it looks like once a Google service is associated to a Google Account, it’s destined to be forever linked to that same account. The only exception seems to be Google Analytics, and it was fairly easy to move that over from my old Gmail Google Account to my new Google Apps Google Account. In my mind, you should be able to migrate a Google service to any Google Account you want. Just prove that you own both accounts, and off you go.
No longer a good value
Taking only storage space into consideration, Google Apps Premier Edition is no longer a good value for people using a single account for personal use. For organizations, it still makes a lot of sense, but Google’s recent price cuts on additional Gmail storage give you far more for your money. When I signed up for Google Apps, additional storage for Gmail/Picasa/Docs was $20 for 10 GB and $75 for 40 GB. Google Apps came in right between those with 25 GB for $50. In November of last year, Google started offering 20 GB for $5, 80 GB for $20, and 200 GB for $50.
Now, I’m only using 6% of my 25 GB at the moment, so talking about how I could get 200 GB for the same price seems a little silly. Even so, if Google is going to increase storage and decrease costs, they should do it across the board.
How to fix the mess they’ve made
There are two things that Google could do right now to resolve the sorry state of their Google Accounts. The first would be to link Google Apps accounts and Google Accounts that share the same email address. The behavior would be exactly the same as what already happens with Gmail accounts, except that the domain would be yourdomain.com instead of gmail.com. There would obviously need to be some kind of verification process, but there is absolutely no reason why this shouldn’t be happening. In fact, this is already happening—kind of.
When I’m logged into my Google Account that is also my Google Apps email address, and I try to visit Google Calendar, I’m asked if I want to use my Google Apps calendar or sign in under a different Google Account. Google Calendar knows that a Google Apps account exists with the same email address as my Google Account, or else it wouldn’t be asking!
The second thing Google could do would be to make services portable—and “mergeable”—between Google Accounts. If I want to move my Picasa or Google Voice account to a different Google Account, I should be able to. If Google detects that I already have a Picasa account in both places, it should offer to merge the photos and usernames and so on. Many other service providers have already built this functionality, and Google should be able to as well.
My advice to you
If you are like me and are only looking to host a single account (or a household of accounts) under Google Apps (Premier or Standard editions), think twice. After 14 months of using Google Apps and the corresponding new Google Account I had to create, I wish I had stuck with Gmail. The integration with other Google services is better, the additional storage space is cheaper, and the hassle of changing email addresses is nonexistent. The one benefit of Google Apps is that I get to use my own domain without having to resort to a half-hearted forwarding system that would never set From: headers properly, but it’s not worth it. Take my advice and stick with Gmail.
Update: Gina Trapani, of Lifehacker fame, has written a similar article with valuable input from a real Googler. Maybe that kind of write-up is what we need for this issue to get noticed and gain some traction at the Googleplex.