Thursday, June 16, 2011

iCloud Is Lame, Stay With Dropbox

I feel silly now, but I was pretty excited when Apple (and Steve Jobs) announced iCloud just the other day (June 6, 2011, to be exact). Given the quality of their other products (iPhone et al), I had high expectations. But this is a truly mediocre effort and a premature announcement.

How did I arrive at this controversial conclusion? I installed iCloud on my desktop (also known as CloudMe, why can't Apple pick a name and stick with it?). I also installed the CloudMe sister app on my iPhone so that I could review the integration across devices. To my dismay, I discovered that iCloud is, in fact, no more than a file upload facility, whereas Dropbox is a true file sync tool. One saving grace is that it works at the folder level. You tell it which folders to track on your device, let's say your desktop. And if it sees a new file in one of the folders you've asked it to track, it will upload the file to the cloud. However, and this is where Dropbox leaves iCloud in the dust, if you remove one of the previously uploaded files, iCloud will not remove it from the cloud! So, other devices will continue to have the redundant file. And, wait for it, it gets worse. If you rename a previously uploaded file, iCloud assumes it is a new file and uploads it. Duh! The file with the old name also continues to live on the cloud. As far as I'm concerned, iCloud offers absolutely nothing that I don't already have with Dropbox and does a worse job of it. And Dropbox has an awesomely functional iPhone app to go along with it.

In this context, I will share a philosophy that I solidly believe in. A company can only be successful at a few chosen things. As soon as a company starts to get in on everything that seems like too big a market to ignore, its value proposition is sure to shrink. And in this case, Apple has caused me to doubt whether all of its products are equally superb and reliable.

Sunday, June 12, 2011

Nature Capture | Stream of Leaves

 © Puneet Singh Lamba

Who: A river stream, jam packed with fall(en) leaves
What: Mostly oak leaves, looking gorgeous in their reflective container
Where: Greater Boston Area
When: November 13, 2010
Trivia: The leaves and acorns of oak trees are poisonous to cattle, if consumed in large amounts

An Economics-based Argument for Good Software Design

Martin Fowler is one of my favorite technical authors. I am sharing a link to his eminently thought-provoking keynote address (VIDEO) at the Agile Connect 2011 conference, June 8-9, Las Vegas. In order to whet your appetite, I'll reveal that his talk is comprised of three sections as follows. And I'll offer short summaries, in case you decide not to watch the 1+ hour video.
  • Non-deterministic tests and how best to deal with them. These are tests that succeed or fail randomly. They, therefore, cause your build to succeed or fail randomly. Fowler correctly recommends that such tests should be taken out of the suite and quarantined until the non-deterministic behavior has been fixed. He also lays out several root causes for non-deterministic tests including lack of test isolation (i.e. inter-test dependencies), asynchronous behavior (i.e. non-sequential events), remote services (i.e. failures outside your code).

  • An economics-based argument for when and why to invest in good software design and pay off technical debt. Fowler proposes a "Design Stamina Hypothesis" whereby initially ignoring good design might allow you to deliver new features more rapidly, over time poor design reduces the efficiency with which you can add new features.

  • The current state and future of Agile (and a few, highly welcome, words on social responsibility).
It's in the must-watch category. Candy for geeks.