Need a cloud? Drop Dropbox, Mozy, iCloud. Get github’s cloud.

All I have known about ‘cloud’ for the last few years, aside from the weather, is that it is the new era, the new new thing, and the place to store your files.

I never paid much attention to cloud data storage until a few weeks ago, when my youngest daughter and her hubbie moved in with us while they both searched for a house and waited to deliver my third grandchild, and first grandson.

As part of this happy transition, I had to unplug my trusty Ubuntu desktop, pack it up, and vacate my former office. I then had to rely on various laptops to do my computing. Since I run Ubuntu I had known about Canonical’s “Ubuntu One” cloud offering, but had never used it.

I now did, and it worked: a real-world example of rsync in action.[1] I found that when I changed a file on one Ubuntu laptop, and later logged on to the other,then I soon saw a message saying the files had been synched.

Then I bought an Apple MacBook Air as part of my work on SPITBOL.I knews The Mac came with Apple’s iCloud, but I hadn’t a clue to what that cloud was, though I was sure it wouldn’t work with Ubuntu One, so I resorted to flash drives and gmail’s with attachments.

During this period I had first made heavy use of github, and had in the process fallen head-over-heels in love with this fabulous product. [2]

A few days later — as the Brits like to say — the penny dropped. Why not use github as my cloud?

I already had a ‘private account’ for private repositories. I mainly got it so I could preview code meant to be open-source before sending it off on its way, lest an early release show that my idiocy survives, while giving me more time to disguise it before releasing my code into the wild.

I thus created two private repositories in my github account: L and W. L is for long-term storage, not active work. It includes documents, pdf’s for manuals and such. W is for work. For many years I have always used the directory ‘w’ for work in progress, so that ‘cd $HOME; tar cfz w.tgz ./w’ has sufficed to save my critical files. This just continues the trend.

I’be been using this scheme for a few days now, and I just love it.

There are at least two great advantages to using github as your cloud.

First, everything is versioned. Other clouds just give you the most recently saved state of your filesystem. With git and github, you get the complete history.

Moreover, using git enforces a more rigorous development style, one that encourages you to do commits at key points and document the changes.

This is *so* simple at the day-to-day level. If you have just made a change on machine A, you just do

$ cd
$ cd w
$ git push

When you log in to machine B you do

$ cd
$ cd w
$ git pull

Typing these commands takes less time that mounting a flash drive on machine A, writing out a tarball, umounting it, taking it to machine B, mounting it, etc.

More importantly, using github as your cloud encourages a style similar to “release early, realease often.” With github you “commit often, push often.” This both moves your work off just one machine and also, and more importantly, pushlishes your work openly when working with a public repository.

The second reason for me, though it would be the main reason for non-programmers, is security.

I knew when i decided to use github that github’s original author was Linus Torvalds, and that it had been refined and extended by many people over the years. Moreover, each person engaged in this important work knew that if they screwed up, then Linus would adminster the lash in the form of a sarcastic email as savagely as was done on a British Man ‘O War two hundred years ago.

Fear of humiliation, to those who care about their reputation, is a strong incentive.

Moreover, I knew github’s business model, and from this it was easy to deduce their greatest fear, the direct path to Chapter 11.

Github makes it wondrous services free to open-source developers. That is, if you are willing to let anyone see your code — or data — then you don’t have to pay. However, if you want to keep your code and date private, then you have to pay.

The most important person at github is *not* their CEO. It is their Director of Security. The most important decision the CEO has made in the last few years is who to entrust with that position, for if they screw up then the company is doomed.

Each and evey day Github is just one very major security blunder from Chapter 11, and you can be sure they know it.

Github doesn’t do ads. It relies on the money paid for private repositories. Github’s long term success requires that large corporations are willing to entrust github with their code.

This is why it came as no surprise when I read yesterday about Dropbox dropping its storage box on its foot: Dropbox Gets a Black Eye in Spam Attack.

Imagine you are the CEO of Github. What is your absolutely worst nightmare, the thing that makes it hard to go to sleep some nights?

The Github’s CEO worst nightmare is that they will wake up in the morning, shuffle to the front door, pick up the latest copy of the WSJ, only to learn that someone cracked github’s security, and then posted *all* the code for the next release of OS X, or Google’s Android, or IBM’s Websphere, or all of the above to the open web.

I’m not too worried about this. Just search on ‘github security’ and see what steps Github takes. Moreover, VC’s have just sent $100MM or so to Github. Unless they are exceptionally stupid, one would hope they had someone at the level of Bruce Schneier vet Github”s security. [3]

For over a decade, when people ask about Linux, I have said that I am confident that my grandchildren will be using it, even though they may not know it. Linux will live forever, as best as I can tell. Perhaps not on the desktop, but certainly in embedded devices. Indeed, I expect that eventually almost all smartphones will run Linux, as the emerging third-world countries such as India and China have both the skills to develop their own software, and the incentive to avoid the Apple Tax — in the form of expensive hardware — that has driven the iPhone’s success to date.

I also fully expect github to remain the central hub for open-source code. They are very good at what they do, and unless they are idiots, there is no reason that they should not enjoy great success for the forseeable future.


1. Rsync is the work of Andrew “Tridge” Tridgell. It is a remarkable piece of software, and the subject of Tridge’s PhD thesis. Weighing in at 100+ pages, it is very well-written. Most of it is accessible to anyone who survived the first year of undergraduate calculus without vowing never again to engage in mathematics.

Tridge is also the original author of Samba.

These accomplishments alone place him, in my view, among the very best active programmers in the world, alongside Linus Torvalds and Patrice Bellard.

(I have had the good fortune to know — and work with — three true world-class programmers: John Cocke, Jack Schwartz, and Robert B. K. Dewar.)

2, Yes, programmers can love software, but real love should be reserved for cutie-pie’s, not open-source licenses.

3.. Why hasn’t Github yet hired Bruce? It’s the obvious move. Give him oodles of boodle, and let him do whatever he wants.



  1. Posted August 3, 2012 at 15:35 | Permalink | Reply

    The other nice thing about git, independent of github, is that it’s easy to back up your repo to another location (say, DVD or whatever). Again, targz up your “repo” (in your case, your L or W directories), make sure you capture the .git directories as well. Now you have a copy of the source AND the full repo.

  2. Posted August 7, 2012 at 18:56 | Permalink | Reply

    Dropbox supports versioning also. It’s saved my bacon a few times! So does SpiderOak, which is also pretty great.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

  • Pages

  • August 2012
    M T W T F S S
    « Jul   Sep »
  • RSS The Wayward Word Press

  • Recent Comments

    mrrdev on On being the maintainer, sole…
    daveshields on On being the maintainer, sole…
    James Murray on On being the maintainer, sole…
    russurquhart1 on SPITBOL for OSX is now av…
    dave porter on On being the maintainer, sole…
  • Archives

  • Blog Stats

  • Top Posts

  • Top Rated

  • Recent Posts

  • Archives

  • Top Rated

  • %d bloggers like this: