Author Archive

Reclaiming Free Space from a Time Machine Backup

 | October 18, 2009 11:24 pm

Time Machine As much as I love Apple’s Time Machine, it’s a hard drive pig.  If not carefully watched, the little porker will use every spare byte of free space it can.  What is particularly obnoxious, however, is that you might not realize you have a problem until it is too late and you’re backup drive is filled to capacity.

Take my situation as an example.  I have a single MacBook Pro notebook with a 250 GB hard drive.  Most of my files are text based and on the smallish side.  In comparison, my networked backup  is a hefty 1.5 terabytes.  The combination of small hard drive and large backup drive had  me thoroughly convinced that I wouldn’t have to worry about free up space for years.

I was wrong.

Because of the size of the backup drive, I like to keep other files on it – mostly music and video files – so that I have a duplicate copy.  But earlier this week, I got a nasty surprise while trying to add an album I had just downloaded from Amazon Mp3.  The Mac informed me the backup drive was full.

As you might guess, I found this to be very confusing.  How could the drive be full?  Sure … I had three or four hundred gigabytes of music and video files on it, but there was no way that the Time Machine backup could be over a terabyte in size … Could it?

This situation didn’t smell right, so I decided to investigate.  I mounted the backup drive and tracked down the Time Machine sparsebundle and confirmed the impossible.  My Time Machine Backup was a whopping 1.15 terabytes worth of disk space.  “How in the world could the backup be so large?”, I asked myself.  “Time Machine is supposed to be an incremental system.  1.15 terabytes  is big enough to hold every bit and byte on my computer four and a half times over!”

First, I got annoyed; then, I got angry.  What really tipped the scale toward seething fury, however, was failing to find any straightforward way of getting the space back.  Yet another spectacular example of Apple’s “simple over useful” approach to computer design!

After the first bout of obscenities, I came to a simple conclusion: I could publicly express my dissatisfaction with Apple’s product line or I could go about trying to find a solution.  Publicly spouting off was unlikely to help much, so I opted for the latter option.  What follows is a brief summary of what I learned.

Show me more... »

Obama Won the Nobel Peace Prize?

 | October 9, 2009 12:27 pm

There’s big news this morning: Barak Obama has been awarded the Nobel Peace Prize.  According to the committee, here’s why: “Only very rarely has a person to the same extent as Obama captured the world’s attention and given it’s people hope for a better future.  His diplomacy is founded in the concept that those who are to lead the world must do so on the basis of values and attitudes that are shared by the majority of the world’s population.”

Huh?

Upon reading the headline and rationale, I had to do a triple take.  First response: this is an Onion story that someone allowed to get way out of hand.  Second response: clearly there’s a mistake, after all, the nominations were made before Barak Obama was even in office.  He hasn’t had time to engage in any diplomacy.  Third response: shocked silence.

I’m an enormous supporter of Obama.  I generally like his vision and thinking on health care reform, nuclear disarmament, and middle east peace.  But what has Obama done to deserve a Nobel peace prize?  I wasn’t aware that we were handing them out for intentions or even vision; and after looking at the language describing the prize, I remember why:

The Nobel peace prize should be awarded to the person who shall have done the most or the best work for fraternity between the nations, for abolition or reduction of standing armies and for the holding and promotion of peace congresses [Emphasis Added].

There are a couple of keywords in that passage which defy intentions, for starters: “shall have done” and “best work”.  Both phrases have one thing in common: they describe accomplishments of the past and not the potential of the future.  Moreover, it’s more or less an expectation that the award be given for work already done.  A brief review of past Nobel laureates clearly demonstrates this:

  • Martin Luther King Jr (1964).  King was the face of the human rights struggle in the United States, and his philosophy, eloquence and organizational ability are probably the single most important factors of it’s success.  Even though he was the youngest person ever to receive a Nobel Prize, 1964 came after the Montgomery Bus Boycott, the March on Washington, and “I Have a Dream”.
  • Mikhail Gorbachev (1990).  This guy had just finished dismantling communism, thereby ending the cold war.  (And all this while worrying about the very real possibility of a military coup.)  It’s hard to argue that removing the threat of Nuclear Holocaust didn’t make the world a better place.
  • Nelson Mandela (1993).  After spending 27 years in prison for the audacious crime of demanding equality (given the much more seditious label of sabotage), he had finally realized a major agreement with the regime of South Africa, ending apartheid forever.  He then went on to unite his country and serve as the first president elected in a fully representative democratic election.

And now, Obama …  but what has he accomplished?

Sure, our European allies no longer hate us. Except … they never hated us in the first place.  The strained feelings of the past few years have had much more more in common with a serious sibling disagreement than anything else.  Now that the real problem (George W. Bush) is gone, relations have largely gone back to what they were prior to 2003.

I’ll give you that Obama has some wonderful plans to bring about peace in the Middle East …  But that has been a major goal of every US administration for the last fifty years.  And at the moment he’s made about the same amount of progress as his predecessor: that is to say, none at all.

Awarding the prize without a true legacy of accomplishment is not only controversial, it’s short sighted; and this is the second time in the last three years that the award has been a real stinker.  The 2007 award, given to Al Gore for his educational efforts to combat climate change, was also a tremendous disappointment.  Why so many divisive prizes all of a sudden?

Nobel prizes aren’t supposed to be controversial, they’re supposed to be obvious.  The scientific prizes (Physics, Chemistry, Medicine) aren’t awarded at the time discoveries are made, but after the utility and importance of those discoveries is known, which requires time.  It isn’t uncommon for the award to recognize work that was done twenty or thirty years ago.  Ditto for literature.  Why should the peace prize be any different?

Nor was there a scarcity of qualified nominees, Nicholas Kristof of the New York Times summarizes it well:

[What of]  Dr. Denis Mukwege at the Panzi Hospital in eastern Congo, or Jo and Lyn Lusi in the Heal Africa Hospital of western Congo, or Dr. Paul Farmer of Partners in Health for his tireless work in Haiti and Rwanda, or Greg Mortensen traipsing all over Pakistan and Afghanistan to build schools, or Dr. Catherine Hamlin working for half a century to fight obstetric fistula and maternal mortality in Ethiopia … or so many others.

Obama has the potential to be one of the truly great presidents, but before showering him with accolades, we should allow him to actually accomplish something monumental.  Becoming the first African American president was an impressive start, but is insufficient for a great legacy.  It’s impressive the way a birth is impressive and for largely the same reasons: it was the beautiful start of something new.

But Nobel Prizes aren’t birthday gifts, they’re lifetime achievement awards.  So shouldn’t we wait for a little bit more of that life to happen before handing it out?

Installing Duplicity on Mac OS X

 | October 7, 2009 3:20 pm

While Mac OS X shares many things in common with other Unix operating systems, it also has a couple of missing parts.  This can make installing software more difficult when compared to Linux or other *nix variants, and unfortunately, Duplicity happens to be one of those cases.

But just because it is more difficult to install Duplicity on Mac doesn’t mean that it isn’t worthwhile.  Duplicity is one of the best command line backup programs available anywhere.  Using the same program, you can backup to a local hard drive, FTP server, over SSH or even to Amazon S3.  It uses the rsync algorithm, which means that backups happen quickly and only the parts of files that actually changed get copied.  Subsequently, backups are smaller.

Nor does it mean that installing Duplicity is actually all that hard, it’s just a bit tedious.  Like many other *nix programs, Duplicity requires a number of additional programs (called dependencies) that you will have to search out and install separately.  To make that process easier, this article explains how.  Below, you’ll find links to the download pages and instructions for how to compile each of Duplicity’s dependencies on Mac OS X.  The instruction set has been tested both on Mac OS X 10.5 (Leopard) and Mac OS X 10.6 (Snow Leopard).

Show me more... »

Glass Houses and Stones

 | October 6, 2009 4:24 pm

Apple Store - Glass Cube Regular readers of this blog might accuse me of having a deep seated resentment against iPhone, Mac OS X and Apple in general.  The only problem, of course, is that resentment is the wrong word.  Disillusionment and disgust are much more accurate.

You see, purchasing a Mac computer was one of the single biggest disappointments of my young technical life.  I had been promised so much!

If you read the ramblings of online pundits or dedicated Apple purists, you will know that switching to a Mac brings a Zen like state to your computing.  It will make you more productive, more creative, more organized, more intelligent and possibly even more attractive.

Except after nearly three years of owning one and using it more or less daily, I’ve come to a simple conclusion: my MacBook Pro, in addition to being a lovely paperweight, is a computer.  Nothing more, and quite possibly a whole lot less.  (Were it just a computer, I might even be able to use it the way that I want, instead of capitulating to the desires of a mega corporation.)

In fact, I’ve further decided that there is only one possible way that you can possibly claim that a Mac is easier to use than a PC (short of using mind altering chemicals, that is). You must  choose to stay within Apple’s suffocating glass greenhouse and allow Apple to decide what you can do and dictate precisely how you will do it.  The Apple experience demands nothing less.

Want to use Time Machine to back up to a network storage unit different than their ticking time bomb?  Sorry, you can’t do that.  “It’s not supported.”

Want to run that piece of software that worked just fine until you installed Apple’s latest glorified service pack?  Sorry, that isn’t going to happen, either.  “Backwards compatibility prevents us from creating innovative and utterly amazing (tm) new user experiences.”

Or want to use that iPhone program that was approved at the highest levels, and then rejected without explanation?  “We just can’t allow that.  It could result in user confusion.”

It’s either Apple’s way or no way, even when Apple’s way is pathologically stupid.  Yet, there is no lack of iCult members who are positively giddy to be treated like iTools!

In contrast, when something goes wrong on a PC, people – rightly, might I add – blame Microsoft.  Microsoft makes a disgusting amount of money from their software; and in a sane world, money buys accountability.  We pay the CEOs of large corporations obscene salaries and even more ludicrous bonuses to fix problems.  If there’s a malfunction, someone is reassuringly responsible; if there’s a disaster, someone is handily available to be lynched.

Except, reality breaks down within the Church of Apple.  If a Mac user has a problem, you can rest assured that she will blame herself.  You just know that a technical glitch couldn’t possibly be because Apple made a mistake, or the product contains a flaw.  Apple merchandise is loving crafted and precisely engineered!  And the omnisicient Steve Jobs thinks of absolutely everything!

Is it really so hard to see that Apple’s technical accomplishments represent the pinnacle of human accomplishment? Or that every contact with the Holy Church is divinely sublime?

It is positively convenient to drive 50 miles to the nearest Apple store, wait for more than an hour because the iDisciples can’t keep to their appointment system, and lose your computer for a week and a half because a computer repair service doesn’t stock hard drives.  You get to talk to a human being, who will insult you to your face rather than over the phone!  simpsons-mappleIf you can’t get it to work, that’s your problem.  You’re obviously not smart or cool enough to be an Apple person.

In Apple’s pristine little world, it’s just inconceivable that Apple’s products might not be nearly so desirable as the punditocracy claims.  It’s blasphemy of the highest order, requiring that thorough penance to be administered by the all-too enthusiastic congregation of assorted hippies, losers and online freaks.  Any individual who so much as implies something negative about Apple deserves the accusations of bias – defined as anything less than a total willingness to sacrifice their firstborn’s blood on the iAltar – that will plague them for the rest of their public life.

After all, Apple has never done anything to encourage resentment or anger.  They’re far too busy voiding warrantees, sabotaging relationships and having a party to promote the thousands of invisible (albeit refined) features and APIs of their near-perfect operating system.  As a result, it’s simply incorrect to assert that I resent Apple.  Until such time as they do something improper, I’ll just have to classify my feelings as disillusionment and disgust.

Install Time Drive On Ubuntu and Other Debian Linux Distributions

 | October 5, 2009 6:23 pm

Clock Icon: SettingsSince version 0.2.2 of Time Drive, installing Time Drive and keeping it up date has gotten a great deal easier.  Instead of requiring that you install from source, we now offer Debian based packages through the Time Drive Personal Package Archvie (PPA).  This article will briefly describe how to install Time Drive using that PPA.

Background

But before leaping headlong into the nitty gritty, let me provide a bit of background about packages and repositories.  Unlike Windows or Mac OS X, software on Linux is organized into a container called a package.  The package contains the files needed to run the program in addition to artwork and configuration information.  Any given program may require many other programs to be installed before it can run.  These other programs are referred to as dependencies.  Ubuntu and uses a tool for managing packages and dependencies called Apt.

The benefits of using Apt over manually installing things is that Apt figures out all of the dependencies automatically.  Further, it keeps everything up to date by periodically scanning the online repository (PPA) and downloading any updates.  In practice, Apt works much like the Windows Update service, only better, since it monitors every piece of software installed on your computer.

Installation Instructions

To install Time Drive using the PPA, we need to do the following:Ubuntu - Logo

  1. Add the Time-Drive-Devel and Duplicity PPA to your Ubuntu Software Sources.
  2. Configure Ubuntu so that it will trust both Time-Drive-Devel and the Duplicity packages.
  3. Install Duplicity and Time Drive

Step 1: Add the Package Repositories to the Ubuntu Software Sources

Open the Ubuntu Software Sources by going to the System –> Administration –> Software Sources.  Then, select the “Third-Party” software tab of the application.  “Software Sources” requires root access, therefore, you will be prompted to type in your administrator password.

Time Drive 0.2 - Software Sources

We need to add two package repositories to the list, one for Duplicity and the other for Time Drive.  Depending on the version of Ubuntu that you are using, copy and paste the following lines (one at a time) into the “Add Sources” dialog.  After each line, press the “Add Source” button.

Time Drive 0.2 - Software Sources Dialog

For Ubuntu Karmic Kaola (9.10):

deb http://ppa.launchpad.net/duplicity-team/ppa/ubuntu karmic main # Duplicity – Ubuntu 9.10

deb http://ppa.launchpad.net/time-drive-devel/stable/ubuntu karmic main # Time Drive – Ubuntu 9.10

For Ubuntu Jaunty Jackolope (9.04):

deb http://ppa.launchpad.net/duplicity-team/ppa/ubuntu jaunty main # Duplicity – Ubuntu 9.04

deb http://ppa.launchpad.net/time-drive-devel/stable/ubuntu jaunty main # Time-Drive – Ubuntu 9.04

For Ubuntu Intrepid Ibex (8.10):

deb http://ppa.launchpad.net/duplicity-team/ppa/ubuntu intrepid main # Duplicity – Ubuntu 8.10

deb http://ppa.launchpad.net/time-drive-devel/stable/ubuntu intrepid main # Time-Drive – Ubuntu 8.10

When finished, press the “Close” button.  Ubuntu should then notify you that the software information is out of date and needs to be updated.  Instead of clicking “Reload,” click the “Close” button.  We will refresh Apt from the command line in Step 3.

Time Drive 0.2 - Reload Sources

Step 2: Configure Apt to Trust Time Drive and Duplicity Packages

After adding the repository information, you will then need to add the repository key to your system’s list of trusted keys.  This is most easily done by running the update-launchpad shell script.  (To download, right click on the link and select “Save As”.)  When run, the script automatically downloads any needed signing keys and automatically add them to the “Trusted Sources” list.

To run the script, go to Accessories –> Terminal and navigate to where you saved the file, then type:

cd /path/to/folder
sudo bash update-launchpad.sh UbuntuVersion

Be sure to substitute the correct Ubuntu code name for UbuntuVersion in the second step – karmic for 9.10, jaunty for 9.04, or intrepid for 8.10 – otherwise, you will get an error.  I happen to use Ubuntu 9.04, therefore, for my setup, I would type the following:

sudo bash update-launchpad.sh jaunty

Step 3: Install Duplicity and Time Drive

Finally, we are ready to install Time Drive and Duplicity.  From the command line, refresh the package lists by typing:

sudo apt-get update

Then, to install time-drive and duplicity, type:

sudo apt-get install time-drive duplicity

Application Updates

As noted above, whenever a new version of Time Drive, Duplicity, or another dependency is added to the package repository, your system will automatically be updated.  However, should you upgrade your system to a newer version of  Ubuntu, you will need to return to this page to add the repository for that version.

__________________________________________________

Note: These instructions were modified from this tutorial on WineHQ.

Upgrading from Time Drive 0.1

 | 3:47 pm

The Glass Ceiling When it comes to most things, starting fresh is a blessing.  The reason for this is rather simple, when starting over you don’t have to worry about baggage.  After all, baggage is only valuable when on holiday; otherwise, it just slows everyone down.

This is especially true for software.  Over time, computers tend to accumulate a rather potent type of digital baggage that can be very difficult to get rid of.  And that digital garbage results in inconsistencies that can cause enormous – and usually unforeseen – problems.

However, even though starting fresh is usually the best option, that isn’t always true.  Sometimes, it’s better to risk the problems and incompatibilities.  For example, starting over may mean that you destroy hours worth of customization, or that you lose work already created because the older version are not compatible with the new.

Unfortunately, the general rule is also somewhat true of Time Drive.  So, if you were one of those stalwart and brave individuals who decided to experiment with Time Drive 0.1, this post is for you.

In the last few days, I have been in touch with a number of people who have experienced a number of said inconsistencies and problems.  And while several of these problems ended up providing insight on mistakes made during development, some of the others were changed on purpose.  That is to say, the so called “bug” was actually a feature.

After fielding a couple of particularly angry e-mails, however, I thought that it might be good do a formal write up that describes how to work around these incompatibilities.  And while no one likes to squash bugs or fix things that previously worked, rather fortunately, every one of these problems can be overcome with a little bit of effort and patience.

Show me more... »

Time Drive 0.2 – A “More S” Release: More Stable, More Secure, More Settings and Now Supports Amazon S3 Storage

 | September 24, 2009 2:41 pm

The first time that you attempt to do something, it’s pretty much a guarantee that it’s going to suck.  This doesn’t necessarily need to be a bad thing.  Shows like  America’s Funniest Home Videos and MXC have found dozens of way to cash in on the humiliation of their participants.  (And what better exemplifies pure suck than a golf ball to the groin?)

It, therefore, shouldn’t come as any surprise that creative pursuits are no exception to the general rule of suckiness.  After all, you have to overcome inexperience and ineptitude to produce anything.  The only way to ensure that a release doesn’t suck is to finish a first draft and revise heavily.  Which requires a great deal of work.

Yet … as interesting as that might be, this isn’t a post about the creative process.  It’s about Time Drive and I should probably admit that Time Drive 0.1 had a few … rough … edges.  Sure, it mostly worked, but it was new software and did too many strange things to declare anything other than a “work in progress.”  But Time Drive 0.1 was a first release and first releases suck.

Second releases, however, offer a chance to clean things up, refine the bleeding edge, and otherwise deliver the goods.  Maybe that’s why I’m so excited to announce the release of Time Drive 0.2.  This version of Time Drive is a great improvement over it’s predecessor.  So much so that Time Drive 0.2 is hereby dubbed the “More S” release: more stable, more secure, more settings, and Amazon S3 storage.

In the remainder of this post, I’ll attempt to justify such a silly name by taking a look at a few of those new features.

Show me more... »

Filing Bugs for Time Drive or LyX-Outline

 | August 23, 2009 12:30 am

Even though software developers try and create a perfect product, every program has its flaws.  These can be show stopping, or merely annoying; but they are unavoidable.  Even so, unavoidability doesn’t mean that they should be tolerated.  Which is where users bear some responsibility.  If you want a better program, you need to provide feedback to the developer.

Given how important feedback is, I find it hugely ironic that many of the software programs used to solicit such feedback (called bugtrackers), are horrifically difficult to use.  Perhaps the single best (worst?) example is the system used by the Mozilla foundation (famed creators of Firefox and Thunderbird): Bugzilla.  The interface is backward, it’s impossible to find anything, and getting to the same page twice requires a minor miracle.

Knowing this upfront, I tried to find a very easy to use program for collecting feedback on LyX-Outline and Time Drive.  And I thought I had succeeded when I came across Flyspray, an open source bug tracking system.  While still remaining powerful, Flyspray is fairly easy to use for both developers and users.  Unfortunately, though, it hasn’t been quite easy enough.

You see, even though it’s pretty simple to open a new bug report, getting to the right place isn’t the most intuitive process in the world.  A number of people have expressed confusion about where to go to complain about Time Drive.  As a result, I thought i would write a brief guide.

Step 1: Go to the Bug Tracker Website

To get started, you need to head to the Time Drive and LyX-Outline bug tracker website.  It can be found at:

http://www.oak-tree.us/bugtracker

Step 2: Go to the Appropriate Project Page

When you load the page for the first time, you will see a list of the currently open bugs for all active projects.  Depending how busy I’ve been, this list could be quite long, or quite short.  What you won’t find on this page, however, is an easy way to add new bugs.  To do that, you’ll need to navigate to the project specific page.

The main window lacks any way of providing feedback.  This is because you are in the wrong place.

Look at the very left hand side of the tool-bar.  Underneath the username box, you will see a drop down list that says “All Projects.”  This magical list is the main way that you navigate my Flyspray based bugtracking system.

Select the appropriate project from the list and click "Switch"For example, let’s say that Time Drive just corrupted your vacation photos and you want me to know this and how angry it made you.   To communicate these thoughts (bonus points if you can do so without swearing), you need to go to the Time Drive project page.   This is as easy as clicking on the down arrow and choosing “Time Drive” from the options.  After you change the option, it is likely the page will refresh, and the main navigation menu will change.  (Though on some browsers, most notably Opera, you will need to click the “Switch” button.)

Now, instead of the utterly boring, “Overview” and “Tasklist” options, you should be presented with a slightly more exciting menu.  This includes the options to take a look at the “Roadmap” and more importantly, “Open a new Task anonymously.”

Step 3: Complain Loudly, Thoroughly and Convincingly

Once you are on the correct project page, you will be able to take a look at the project overview, browse the roadmap, or file your bug report.

This is where you need to complain.  Tell me exactly what you think of me, my creations, and my professionalism.  Rant about how Time Drive corrupted your carefully maintained comic book collection, or how LyX-Outline destroyed your thesis.  This information is important, it helps me to improve the programs.  And getting it off your chest might help you too.  Nothing is more soothing than a good rant.  Especially when the person on the other end really wants your input.

Squeaky wheels tend to greased.  Thus, consider this positing as my official permission to squeak.  But to be most effective, you need to make your noise in a place where it will get noticed.  For Time Drive and LyX-Outline, this happens to be at their respective project pages.

Time Drive 0.1.5: Incremental Changes

 | August 14, 2009 11:19 am

Lifehacker induced change in web traffic.  Looks like move to exponential decay.It’s been an interesting couple of days.  I was rather honored to see that Lifehacker did a short highlight of Time Drive, which I thought was pretty cool.  It’s always been one of my goals to have something featured in Lifehacker or Gizmodo, and now I’m going to have to scratch that off the list of goals.  But that’s okay, I’ve got other things to fill the void.  Like … how exactly does one get invited to present at TED?

On another note … while I knew that I would see some kind of traffic bump due to the article in Lifehacker, I wasn’t necessarily prepared for the magnitude.  In mathematics, there is this thing called a step function.  It’s where you move from one value to another more or less instantaneously.  It looks like a step, hence the name.  Sure, It may not actually exist, since even very dramatic shifts still have a non vertical slope; but even so, the change in my traffic might as well be a step-function.  Between yesterday and today, I’ve had more visits to this site than I’ve had in much of the rest of the year combined.  I think that’s kind of cool, though it probably won’t last.

(This might be a good time to say that I am actually rather proud of my “lackluster” web traffic.  Though it might not necessarily be that impressive, it is, nevertheless, mine. I’ve worked hard for it, and I revel in the fact that some 40 to 50 people each day find the unorganized garbage of my mind intoxicating.  Some of them even come back!)

But as interesting as that might be, traffic stats is probably not why you're here.  Good thing, since I’ve got announcements.

Show me more... »

Backup for Linux, Done Right - Part 2: Time Drive 0.1

 | August 7, 2009 1:39 pm

Time-Drive-Icon[11]In part 1 of this article, I shared a few of the frustrations and reasons why I decided to write my own backup utility rather than submit to the tyranny of currently available solutions.  While some might find those ruminations interesting, the vast majority are probably far more interested in the end result.  There is a reason why “Get to the point” is one of the most important sentences in the English language.

Here’s the short version: After becoming tremendously frustrated by the state of backup on Linux, I decided to take matters into my own hands and create my own tool.

And though I only want a few things, I want that tool to do each very well.  First, I’m looking for a solution that can incrementally backup over the network and let me restore a file from an existing snapshot.  Second, those snapshots should be compressed, encrypted and secure.  Third, it should be easy to browse old backups for existing files and restoration should be a one-click affair.  Fourth, I want a backup system that can protect me from disaster, carelessness and pathological stupidity.

Show me more... »