How-To Tether with Android and PDAnet

One of the annoying things with a non-jailbroken iPhone is the lack of tethering.  Tethering is the ability to use your 3G-enabled phone and its Internet connection with a computer.  When I am on the road I find times it would be helpful to be able to tether my Droid X to my laptop but not for the $20/month Verizon changes.

I was put onto the application known as PdaNet.  The application consists of a piece of software that runs on the Android phone and a client which runs on the computer you want to make use of tethering, both Mac and Windows clients.

The directions from the June Fabrics web site are pretty good but were missing a few details I stumbled over the first time I tried to set this up.  Maybe if I was a long-time Android user I might have not had any issues.

Setup

So, the steps I used to setup tethering of my Motorola Droid X to my MacBook Pro.

1. Install the Desktop Client – visit the June Fabrics web site and download the Mac client.   I am on a Mac, as I said, but a client is available for Windows as well.  The installation was fairy straight forward, requiring a reboot to complete the installation.

2. Install the Android Client – install on the phone, grab the app from the Android Marketplace.

 PdaNet-QR

3. Enable Tethering – run the PdaNet application on the phone and select “Enable USB Tether”.

pdanet_setup

Turning it off later is pretty simple, just run the software on the phone again and you get only one option.

pdanet_enabled 

4. Enable USB Debugging – on the phone, go to Settings->Applications->Development and check "USB Debugging".

5. Configure USB Connection – this is the step that had me scratching my head.  As you should be able to see, the selection here says “USB Mass Storage”.  This is key since the default “PC Mode” does not work to tether the phone.

usb_config

6. Connect the Phone – armed with your phone to USB cable, plug into the USB port of the Mac.  Now, if all goes well, visiting the PdaNet menu on the Mac now finds the phone.

PDANET_Connect

Per the June Fabrics web site:

Now when you connect your phone to the computer, you should see the menu icon changes state, click on it to connect. When the icon stops blinking and turns blue, your computer should be online.

Network traffics on the Mac will go through PdaNet only if your system does not have other connectivities.

So, if you are testing this out and are connected via Wi-Fi or an Ethernet cable, it will still go through these connections.  Disable them to test.

Results

The bottom line is, it works.  It isn’t exactly fast but gets the job done and does it well.  You can see the results of the speed test from Speakeasy.net of my tethered Droid X.

3GSpeed

I would like to know what folks are getting for speed from their Verizon Mi-Fi.  This will certainly work and for most things like email, Twitter, blogging and less bandwidth-intensive jobs, it will work well.

Android Fragmentation is Disturbing

A recent blog post over on the TweetDeck blog shows just how fragmented the Android phone market is already, and we have just begun.

As we bring our initial Android TweetDeck beta period to a close, we wanted to quickly reflect on the Android ecosystem and what might be considered extreme fragmentation. To date we’ve had 36,427 active beta testers and below you can see the massive variety of phones and Android OS versions everyone is running. We were really shocked to see the number of custom roms, crazy phones and general level of customization/hackalicious nature of Android. From our perspective it’s pretty cool to have our app work on such a wide variety of devices and Android OS variations.

Taken from their post, you can see how many different devices they saw in their beta.  This is different devices with many potentially versions of Android.  By my precise calculations, that’s 244 different phones and 108 different versions of the operation system and ROMs.  This is pretty staggering and quite a task to try to support.

Google says this is not an issue, but I wonder.  As a software developer and have heard Android developers explaining their issues with supporting different versions of the Android operating system, I think there is more than meets the eye and more issues to come.  An article from ZDNet this summer supports my thoughts:

But is this a problem? Well, I think that six major releases in the space of 19 months has been a problem. That pace of change speaks of Android’s geeky origins. For Joe Average, this created an ultra-confusing marketplace where operating system versions changed every few months. It also meant that compatibility issues were inevitable.

I will personally not pursue developing for Android because of fragmentation alone.  Stepping into a market which has so many different devices and operating system versions wreaks of support nightmares for developers.  The sad part is, I don’t have a solution to the problem.  Apple get chastised for its closeness, but controller the hardware and the operating system seems to work well.

There is even a web site dedicated to the problem, AndroidFragmentation.com.

Droid X Replaces My Apple iPhone

This blog post was a lot harder to write than I initially expected.  I wanted to not come off biased against either platform but offer just a view of my hands-on experience with both devices.

droidxI have been using the Apple iPhone since the first generation release and have been very happy with it.  Apple has done a great job with the iOS mobile platform making their phones a pleasure to use.  Apple has failed (for me anyway) in a big way, by partnering with AT&T which makes the iPhone virtually unusable as a phone in the places I need it most.

I have lived a long time with the iPhone, buying the 2G first and then later the 3GS, hoping the weak signal issues I faced would be resolved, but this was not the case.

I also waited a long time for the rumors of iPhone on Verizon to appear but they have yet to materialize.

So, I have bid a farewell to the iPhone for the time being and moved to a Google Android-based Motorola Droid X on Verizon.

Some Initial Comparisons

When the Motorola Droid X finally arrived  (3 weeks after ordering), I spent a lot of time comparing the new phone to the iPhone. It concerned me what I might be giving up or maybe what I had gained with a new phone.  After 3+ years with the iPhone one becomes used to things.

Size

I was told how large the Droid X was and listening to podcasts from Android Central, I had definite doubts that I was getting into a phone too big to be useful.  I often carry my iPhone in my pants pocket and this was something I still wanted to be able to do.

I took a trip to my local Best Buy so I could compare the Droid X to my iPhone.  I was surprised to discover the Droid X was only slightly longer, maybe 3/8”.  This is a big phone, no doubt but the 4.3" screen makes it worth it.

iPhoneDroidX

The thickness of the Droid X is less than the iPhone 3GS, so it is a bit easier to manage.  This is a nice feature of the Droid X.  The iPhone with case is a bit bulky.

Screen

The iPhone 3GS has a beautiful screen and watching videos on it are really clear, but small.  The 4.3" screen on the Droid X is big and beautiful and watching movies is a pleasure.  I find the colors to be vivid with good contrast.  I can’t compare to the iPhone 4 retina display.

Battery Life

iOS does a great job of managing switching between applications and battery life benefits from this.  I can go all day of average use on the iPhone and still have 40% battery life left.

The story is not so bright with the Droid X.  It takes a lot more management of running applications as well as management of enabled features to be able to last well into the day with a single charge.  If features such as GPS, Wifi, bluetooth or 3G are all enabled, battery life is only a few hours at best.  Disabling all or some of these features helps the battery go a long way.

Battery life is greatly effected by the running applications and how often they access things like data or graphics.  It is easy to have email, Twitter client, Facebook, etc. running all at the same time.

Applications

The main applications I use on my iPhone is Gmail, Google Maps, Twitter, Facebook, Yelp.  All of these application are available for Android.

There are many more applications available for the iPhone as I would expect with such a big lead in getting to market.  Android is catching up though and developers are busy creating great stuff.  It seems many of the non-mainstream applications for Android appeal to geek in me.

Functionality of software is the number one priority for a good application but the user interface makes it a great application.  iOS does have a distinct advantage here with a much richer set of controls for developers to use and the applications they create show it.  I think the market is young and Android will look better as time goes by.

Updates

The Droid X arrived with Android 2.1 where other phones were shipping with 2.2.  The interesting fact about Android phones is each vendor is responsible for their own operating system updates for each handset they offer.  I had to witness 3 different Motorola phones getting 2.2 before I could upgrade mine.  Apple on the other hand rolls out a single upgrade for their phones and everyone gets it.

Updates are done over-the-air, which means there is no iTunes-like piece of software to have to run to install an update.  The update comes over Wi-Fi or 3G.

Android phones do have a sort of jail breaking that we see on the iPhone except it is called “rooting”, which allows for installing an OS update before the vendor has it ready.  This skirts the process and allows advanced users, geeks, to upgrade more often.

Android Phone Market

There are a ton of Android-based phones in existence and more coming out all the time.  Each handset manufacturer ships their own version and flavor of Android.  Each manufacturer is responsible for upgrading each handset model to the next version of Android..or not.  This doesn’t seem very sustainable to me.  I think phone buyers who are signing into a 2-year contract will be left with a phone which is no longer being upgraded by the end of their contract.

Fragmentation seems like a very real possibility and a problem for Android.  In the short time I have been an Android user I have seen many versions of Froyo (Android 2.2) be released for a large number of different handsets.  My installation of Android on my Droid X will not work on your HTC handset.

How will these manufacturers keep up and support all these phones?  It would be akin to Microsoft having a different version of Windows for each PC manufacturer.  It is a support nightmare waiting to happen.

Overall

After having had the Droid X for a couple months now and have given the phone a pretty fair test.  One thing I can say the Droid X does better over the iPhone is well…operate as a phone.  This is the number one feature I require in a, you know, phone.  It is the one feature I could not count on with AT&T and the iPhone.

I live in rural CT and the AT&T service was never good at my house, if I was lucky I could go outside on a clear day and make a call.  Verizon service just works every where in the house, even 3G.

On a recent vacation in northern New Hampshire AT&T service was dismal and virtually non-existent.  A later trip to the same location for some backpacking with the Droid X resulted in fantastic service.

I spent a lot of time comparing applications and the user experience between the two operating systems and I have to say, iOS is much more polished than Android.  Android looks much less integrated and thought out than iOS.  Android gives me the impression a collection of separate teams worked on the operating system, not a single cohesive team.

Battery life is a pretty serious problem with Android whose battery management is not as sophisticated as that under iOS.  This means the user has to know what they are running for applications or what services they have enabled.  This is not something an average user can or should do.  The iPhone easily wins here.

Android is nice but it is not iOS.  I am waiting for the day Apple finally puts the iPhone on Verizon, I will be the first in line to order the Verizon iPhone.

My Perfect Laptop Bag

I have to admit, I am a bit of a laptop bag junkie.  I have had pretty much every type of bag, I think I have tried them all.  Most of the bags I’ve used I can say I didn’t like for one reason or another.

I don’t like backpacks because I feel like I am back in High School heading to Chemistry class.  Messenger bags, don’t like them either, I look like I am trying to be hipper than I actually am.  Maybe if I was 20 years younger I could pull off a messenger but that’s not the case.

I started my quest for a new bag recently, going for the professional look but still remaining functional.  I don’t think showing up at a business meeting with a backpack or messenger will ever work for me.  I want to be able to carry my 15” MacBook Pro, power adapter, cables, mouse, pens, file folders and a notebook.

Much of my search led me to so many backpacks and messenger bags that I thought I may have reached the end until stumbling upon Waterfield Designs.

Waterfield Designs

I came across Waterfield Designs’ bags from a blog post by Dan Benjamin of Hivelogic when he was looking for a new bag.  The company was mentioned in the comments of the post, but only once.  They are located in San Francisco and founded by Gary Waterfield.

The company sells a variety of products from laptop bags, laptop sleeves, to iPhone and iPad cases and many others.

The Cargo

I decided the Cargo bag from Waterfield was worth a try.   Yes, the bag is a bit pricey but it is NOT one of those bags mass produced.

medium_alpine-md

The picture here is from the Waterfield site and it hard to get an idea of the size and construction of this bag.  The bag pictured here is the model of bag I ordered, the medium Cargo.

The Waterfield web site does a really nice job of showing off their products with great product descriptions, photos and reviews.  I was torn between ordering the medium or large cargo, the large appeared too big and I feared the medium would be too small.  All of the comments I had read about the company raved about their customer service.

I was pleasantly surprised when I call the company and the phone was answered by Gary himself.  I find it particularly comforting when you can call a company and the founder is not too important to answer the phone.  I explained the bag I was looking for and my dilemma with trying to choose between a medium and large bag.  After hearing what I planned to do with the bag and the type things I wanted to carry, Gary just said the large bag was “big” and I would probably better off with the medium.

The single phone call and the way I was help choose the bag sold me right away.  I set off to order the bag online, placed the order and began the wait.  I received a call a few minutes later from Gary letting me know the bag I wanted in the colors I chose utilizing the standard buckle would take a bit longer to receive but he did have the upgraded bag with the buckles in-stock.  It was a no-brainer, just add the $10 extra and get the better buckle and get the bag sooner.

The Bag

I had ordered the bag via FedEx 2-day deliver.  It came in packaged very well, almost like a presentation.  The bag itself is really a thing of beauty built with very heavy nylon, the bag feels indestructible.

IMG_1262

The paratrooper buckle is a great upgrade, especially for $10.  You can see here how nice it is:

IMG_1261

The main compartment is pretty large and fits my MacBook Pro inside of my Marware sleeve with no problem.  The inside of the bag is a nice yellow-orange color which lets me see inside even in dim lighting.

IMG_1264

The outside pocket has a nice zip closure with plenty of room for the MacBook Pro power supply, mouse and my headset.

IMG_1259

Even the small details like the pad for the fully-adjustable shoulder strap are well-thought-out.  The padding is a gel and extremely comfortable, unlike so many other shoulder straps.

IMG_1256

Conclusion

This is a really nice bag and is not too flashy and hip but hip enough to have a different look than the other bags you see you there.  I think this is the perfect bag for the professional who doesn’t want to carry a huge bag around and one that looks professional going to a client site.

I have been using this bag for over a month now while visiting client sites, it travels really well.  I have used it to haul everything I need and everything fits perfectly with plenty of room for extra items like magazines, notepads and client documents.

One common complaint I have with most bags that have a shoulder strap is the fact they are all uncomfortable, except for this one.  The strap comes with a gel-padded strap and it is a really nice touch to a perfect bag.  I will be buying more from Waterfield for my future iPad and other gadgets.

2009 Year in Review

Well the past 12 months have gone by really fast, again. It seems I always tell myself this each New Year’s Eve. So looking back on 2009:

Ruby on Rails Consulting

I have made many changes in the past year from a business standpoint, taking on more Ruby on Rails projects and less .NET projects. I think the decision to transition to more Rails projects has been a welcomed change from .NET if only to be doing something new. I have to say the quality of potential .NET projects is a lot higher than Rails, but I’m not sure why. I tend to think it might be because Rails tends to attract too many clients with little or no money, but this is just a guess based on observations.

iPhone Development

I signed up in the later part of 2008 for the iPhone Developer Program with the intention of putting my stake in the ground and implementing some ideas I had for mobile applications I thought would be good on the iPhone.

To say the least I was disappointed by the way Apple has been processing app store submissions and subsequent seemingly random rejections. It would take a lot for me to spend 3-6 months writing an app *hoping* Apple is kindhearted enough to accept it into their store for someone to possibly find. Not going to happen.

I may revisit the platform at a later time if the approval process changes because I think it is a great platform for developing apps, I am just not into playing the app store approval lottery.

Freelancing

I have been doing full-time freelancing for over three years now and 2009 really was a pinnacle of the realization how difficult it can be. The year started off very well but as summer came and things slowed down to a crawl but picked up again in the Fall. It was really a feast or famine time and it has made me realize just how hard it is to juggle the “feast” portion of freelancing.

It has made me realize how much consulting or freelancing does not scale. I can’t work 80 hrs a week for any number of clients, the work suffers, health suffers and overall life suffers. A freelancer can only work so many hours at full-speed but when times are tough, it gets really tough.

Unless you can juggle getting work, doing the work and getting more work in a reasonable time frame, it can be tough.

Looking Ahead

I think this is one aspect I need to change in my approach for 2010. Things are already in the works but I won’t go into detail right now, but expect news in the coming weeks.

I wish every one of my readers a happy and healthy new year and look forward to 2010.

Technorati Tags: ,,

Enabling Wireless on a Dell Mini 9 Running Ubuntu 9.1 Netbook Remix

I have had a Dell Mini 9 for quite some time now and played around installing various flavors of Linux on it, more as an exercise than anything else.  The recently release of Ubuntu 9.1 which has a distribution configured especially for netbooks, piqued my interest.   The download is called Ubuntu Netbook Remix and is available as an ISO.  There are various instructions for installing, including a thumb drive, but I decided to burn to CD and boot off of an external USB CD-ROM drive I have just for this occasion.

The installation goes pretty quickly and is uneventful, until booting up the OS for the first time; no wireless care detected.  It seems this is a known issue with Broadcom wireless and has a variety of solutions. 

I fixed the problem in a couple of steps:

1. The Dell Mini has a wired Ethernet port, so I grabbed a cable and plugged into my router.  Internet connection established.

2. The restricted Broadcom driver needs to be installed so I ran these commands:

sudo apt-get update
sudo apt-get –reinstall install bcmwl-kernel-source

3. Setup connection to wireless network, with proper security and pass phrase.

4. Done!

It was all pretty easy but pretty annoying little issue with this distribution only on certain hardware.  Overall Ubuntu 9.1 on the Dell Mini is a really nice experience, very well done.

A Serious Windows Home Server Pain Point

pain I talked about my experiences with not having a solid backup strategy back at the end of August.  My solution included using a Microsoft Windows Home Server (WHS) system to handle backups for all of the computers on my home/office network.  I wanted to give a bit of follow-up to the experience and explain a huge pain point I found.

Reflection

I have been using the Acer Aspire Easystore H340 Windows Home Server for the past 6 weeks, backing up several computers on a nightly basis and it has been working flawlessly.  Computers are set to backup each night between 6pm and 11pm and this gives WHS plenty of time to complete all incremental backups with time to spare.  Backing up from Macs using SuperDuper works great too.

The WHS has been great to store all of the software we use on a regular basis when we need to share installation files. 

A Pain Point

I did run into a rather annoying problem this weekend that resulted in a kludgy workaround.  When I setup the WHS in August I had purchased an extra disk to be using in the WHS after I was confident my Windows development system was functioning fine.  The idea was to take out the 1TB (Western Digital Green) and replace with a 1 TB Western Digital Black drive, which is faster than the green.

I cloned the green drive to the black, took out the green and rebooted the development system, all worked great.  I was informed by WHS that my system had a new hard drive and I needed to log in to WHS Console and configure to recognize the new disk.  When running the wizard, I was greeted by this message when almost to the end:

This computer is not online or Windows Home Server cannot access the computer’s hard drive. Please make sure the computer is powered on and connected to your home network.

After much trial-and-error I could not get the new drive to be recognized by WHS.  It was aware there was a new drive but could not recognize it was a replacement for the old drive. I came up with a solution that worked but is not ideal:

  1. Uninstall Windows Home Server Connector
  2. While using Windows Home Server Console, remove PC from list of backed up PC’s.
  3. Cleanup backup database using the "Cleanup Now" button in the WHS Console
  4. Reinstall Windows Home Server Connector – install from either original DVD or by accessing via the Software share on WHS.
  5. Retry setting up backups – should now be able to configure backup for system.

I performed actions 2-3 from the actual WHS itself by utilizing a Remote Desktop Connection to the WHS.  I then had to reconfigure the backup for my system, including all of the folders I had previously Excluded.  This wasn’t a surprise but don’t forget to do this or your backup might be a lot bigger than expected.

UPDATE: Joel Ross made a comment suggesting the correct way to change out the disks under WHS:

I think (and I could be wrong here) the proper way to do this would have been to do a back up with the old disk in the dev box, replace the drive in the dev box, and then do a restore on the dev box using the windows home server software. I haven’t replaced a drive in any of my machines yet, but that’s what I’ve read others doing.

Conclusion

This solution certainly worked but was not a very clean and user-friendly way of replacing a disk.  This begs the question – what happens if I have a disk failure and need to replace the drive, will I be able to connect and restore?  The answer is not clear at this point.

After some searching around the web and there are many reports of this issue back to the WHS CTP and it has yet to be resolved as of WHS Service Pack 2.  It appears it could be due to the fact the new drive is not on the same SATA connection as the previous drive but, in my opinion, this should not matter.  A fix for this is needed or I will not have as much confidence as I once had for Windows Home Server as a key backup solution.

If anyone has a better solution than the one I have found, I would love to hear it. If there is a released fix for this, I would like to hear about it as well. I am running on Windows 7 Ultimate RTM, if that matters. 

I use Balsamiq Mockups and So Should You

No, I am not a spokesperson for Balsamiq but rather a happy customer.  In the unfortunate event you have not heard of Balsamiq Mockups and you develop software or design it, you are missing out.  Balsamiq Mockups is a tool that allows developers to create mockups easily using a library of user interface components to help ease the pain of creating screens.

mockups_fpa

Replaces Pad and Pen

This is a great little tool which helps me develop screens and workflow for the software applications I create.  I use this tool instead of the usual pad and pen to determine how a particular screen will look.  A recent mockup of the administration screen for a Survey tool I’m creating:

SurveyMockup

What makes this so nice is it appears similar to writing on a pad of graph paper with one key exception; I can determine the dimensions of my screen and how much space each component laid out on the screen will take up.  This way, I *know* how everything will fit on screen or in the browser and won’t be surprised after the HTML/CSS is written.

SurveyMockup-Dim

I can toss aside my pen and paper and just use Mockups.  I spend my time now dragging and dropping controls from the library and know exactly how much space I am taking up, keeping in mind the screen sizes of the target.  I easily move controls around, remove them and customize their text.  I cannot say enough about how much time this saves me.  Instead of fretting over how bad I draw, I can not easily create what I need to get my work done.

Control Library

Balsamiq Mockups is not a free-hand drawing tool, I could not use such a tool.  Rather it contains a library of common user interface tools which you drag and drop to the grid surface.  They tout 75 ready-to-use controls:

balsamiq_controls

I have yet to need any control in my interfaces that is not in this library.  They even have layout components for iPhone applications.

Third-Party Integration and Support

When I decide to use a tool I often look to see if the tool with integrate with or support other tools I might be using.  This isn’t critical most of the time but can be the deciding factor in some situations.

Although there is built-in support to export a mockup to Adobe Flex, there is a company, Napkee, which allows the user to create full HTML/CSS/JS or Adobe Flex 3 from a mockup, saving a ton of time to give you a great starting point.

Not enough parts to play with?  Mockups To Go offers user-contributed UI components and Mock4U provides some hand UML components.  I think we can all stop using Visio and save ourselves some headaches.

I subscribe to the Balsamiq blog so I know what is coming next and when I will see it.  I could imagine feedback is welcome.

In the Air

Mockups is an Adobe Air application so the installation is easy.  I know what you are thinking, I don’t want another run-time on my system.  Stop your whining, you have a ton on there now and it won’t kill you to have another.  The number of good Adobe Air applications I use is growing and are really good, TweetDeck for example. 

One really nice thing about Adobe Air apps is they run on all the platforms I need; Windows Vista, Windows 7 and Mac OS X.  I understand they also work on Linux.

The Adobe Air runtime is super-simple, just like installing Adobe Acrobat Reader and once the runtime is installed, each application is just a simple click.

Finally

Mockups is not free to be able to save mockups but you can try it out or if you don’t care about saving, they just install and use it.   The licensed version does cost $79, so a bit pricey in my opinion, but a valuable tool all the same.

Balsamiq does release updates often and you need to visit the site to check for updates and install them.  I really wish this was built into the app like so many others where it either does an automatic check or allows me to check for the update.

I also wish for a way to export as a PDF to share with others who don’t have the tool.  I would like to be able to annotate diagrams and collaborate with others, maybe myself and a designer.

I can’t say enough good things about this little tool, it makes my job easier everyday.

Technorati Tags: ,

Thinking About Google Chrome Frame Deployment

Today Google announced the availability of an Internet Explorer (IE) plugin called Google Chrome Frame.  The plugin is designed to allow HTML 5 support and is open source.  This is an interesting and pretty novel idea.  Google claims:

With Google Chrome Frame, developers can now take advantage of the latest open web technologies, even in Internet Explorer. From a faster Javascript engine, to support for current web technologies like HTML5′s offline capabilities and <canvas>, to modern CSS/Layout handling, Google Chrome Frame enables these features within IE with no additional coding or testing for different browser versions.

You can watch the video from Google about this released today:

The most interesting aspect, or problem, to me with this new plugin is who will use it.  Sure, here are a lot of IE users but who will be installing the plug-in for use?  Just thinking for a moment about all of the IE6 users today, who can be broken down into two distinct groups:

  1. Corporate Users – these folks are in companies with a corporate IT staff who controls what is on their desktops with remote deployments.  Face it, if they are still using IE6 it’s the IT group be running out and installing this plug-in.
  2. Grandma – she feels lucky to be on the Internet, being able to see Flickr pictures of her grandkids.  She probably couldn’t tell you if she had IE6 or something else.  There is nothing wrong with this, it works for her and she is happy.  Grandma will NOT be installing this plug-in.

 

I have the feeling that there are many IE7 users in the corporate world who are facing the same thing, the IT department controls their desktop and will not be putting some open source plug-in in the nightly deploy.

This narrows down the real audience for this plug-in, geeks and developers.  I have no idea what the numbers are for any of the IE version installations and the demographics of who is using which version but I would tend to guess there are many users who will never see this plug-in.

I am interested to see how Google gets past this wall.  If they can pull it off it will mean huge barriers brought down for web developers worldwide.  I am rooting for them.

Technorati Tags: ,

When Neglecting Backups Becomes Costly

I recently had a setback in my work because I had failed to backup my system properly and it cost me dearly.  The term “dearly” is really relative and it could have been much worse.

My daily work consists of both Ruby on Rails work and ASP.NET projects for clients.  Since both of these web frameworks have completely different environments, I have different operating systems to think about backing up.   The ASP.NET work is done on native Vista 64-bit and on VMWare VM’s running Windows 2003 server instances to keep client work isolated.  The Ruby on Rails work is done solely on my Apple MacBook Pro.

My main development system for ASP.NET client work suffered a sudden and catastrophic hard disk failure which was the main hard drive for my client virtual machines.  The disk never started acting strange, as others I have had in the past, no read errors, not entries in the Windows Event Log but rather a sudden disappearance from Windows.  Upon examination on reboot, the drive can be heard clicking which usually means there is a head-related issue.  This particular drive was only about 6 months old and is a Seagate Barracuda 750G SATA, one of the 7200.11 which apparently is known to have these types of sudden failures.  I was not aware until I asked around after the fact.

The result of this failure meant I had to go to my last backup to restore, which was 03/2009, 5 months ago.  This was certainly going to be painful and resulted in losing 5 months of email since one account uses Outlook as the client, many Word documents and worse of all was the client development work since my last commits to their source control system.  This will prove to end up costing me a week of coding work and trying to remember what was done…not good at all.

After first replacing the hard disk with a Western Digital Caviar 1TB drive and restoring what I could, the updates to the operating system and other patches took a few hours.  The replacement of code took 4 days of working longer hours than normal.  The email was a total loss for 5 months and all-in-all resulted in a few days of lost time which adds up to several thousand dollars.  Not acceptable in any way, my backup strategy needed to be looked at and fixed.

Original Backup "Strategy"

My recent so-called backup strategy consisted of the following:

  • JungleDisk on OSX and Vista used to backup documents an photos to Amazon S3 – this works great but takes a lot of time and not really intended to backup large (gigabyte) files or complete operating systems.
  • SuperDuper on OSX to backup complete system to external USB drive – this works great and has helped me in the past.  The major drawback here is the process is manual but be made to be a scheduled task and an incremental update.
  • Time Machine and Time Capsule – this may seem a bit redundant to using SuperDuper and an external USB drive.  It probably is but Time Machine really gives me a nice view into the past and lets me restore very easily.
  • Acronis TrueImage on Vista to backup complete system to external USB drive – also works great and can be scheduled.  Notice I said "can be scheduled", which works if you actually set up a schedule.
  • Dropbox for various documents for clients and reference.

As you can see this mix of backups is fine if done all the time but the manual nature of some of some aspects can lead to inconsistency.  This was a haphazard mix of inconsistent backups.

New and Improved Backup Strategy

After the failure and all of the lost time, I decided to fix the problem now and not have to face this again.  Since I needed a solution that will back up both Mac and Windows systems it had to be cross-platform.  The obvious choice to me was to look at a Windows Home Server.  As I write this, two companies make solutions, HP and Acer.  I reviewed each company’s offerings and determined HP used Seagate Barracuda drives while Acer reportedly used Western Digital.  This fact alone was the deciding factor to purchase from Acer.

I ordered an Acer Aspire Easystore H340 from NewEgg and it arrived in a couple days.  The specifications are pretty decent:

  • Intel Atom 1.6Ghz Processor
  • 2GB Memory
  • 1 TB Storage – expandable with 4 drive bays, 3 free
  • Gigabit Ethernet Port
  • 5 USB ports for external storage or printers

Upon receiving, the setup was pretty easy.  Client software gets loaded on each system (not the Mac) and are backed-up nightly.  The Acer can even wake-up shutdown clients to back them up.  Pretty slick.

IMG_1182

Backing up with the Mac is a bit different, with no native client.  I again use SuperDuper (licensed) to attach to the Acer and create a bootable image which can be updated on a schedule basis from SuperDuper.   A nice tutorial on how to be able to attach a client Mac to a Windows Home Server is available.

This takes care of each computer backup but the data is stored on-site.

A general policy I put into effect will help us be more vigilant with our work:

  1. Continue to use JungleDisk on all systems to backup documents, text based assets (source code, etc), photos and email.  This will be more inclusive and run daily.
  2. No source code will be left out of source control, check it in or shelve the changes.
  3. Monitor nightly backups to Windows Home Server to verify integrity.

Finally

I have learned my lesson being lazy with backups.  If anything I will be backing up too much but I equate that with having too much money.  I also do a firm commit with any source code I am working on for a client, if it does not poorly effect the build it either gets checked in or shelved. Savvy Freelancer had a nice article recently on this subject, definitely worth a read.