Monday, November 23, 2009

I Love it When ...

I love it when users send me detailed, multi-page feedback on reMail's features and bugs. Yes, it means more work but it shows that they care. Thank you reMail power users - I raise my glass to you!

By the way - reMail's ratings are rising in the App Store. Check out these recent reviews.

Tuesday, November 17, 2009

A Quick Observation about Mobile Apps

In 2005, no one was using apps on their mobile phones. Those were the days of the Nokia Series 40 running J2ME. Developers making J2ME apps at that time were claiming that once mobile apps took off (any minute now!), they would be best positioned to take advantage of the new market.

Along came iPhone, Android, and most importantly, all-you-can-eat data plans. But where are those J2ME developers?

If you go through the Top 10 paid or Top 10 free apps on the App Store, you'll find that the companies there are either name brands (Walt Disney, Facebook, Adobe), or smaller development firms that were started recently: For example, ngmoco, founded 6/2008, or Limbic Software, founded 2008, and so on. I couldn't find an About page or Crunchbase profile for all of the companies, but the ones I found about all matched this pattern.

Once again we learn that being early is the same as being wrong.

Friday, November 13, 2009

One Feature of Go that Every Programming Language Needs to Have

Named return values. They rock.

func doit(x int) (a int, b int) {
// do stuff
a = 1;
b = 2;
return;
}

// call it like this:
a, b = doit(x);

In the languages I use, there are two ways to return multiple values from a function:
  1. Build an array, tuple, or dictionary with the return values. That's wasteful and the compiler won't catch your errors.

  2. Pass in reference or pointers. But that's not as elegant as Go's solution: You have to look twice to realize the function call will change the value of your variables.

I'd love to see this in other languages as well.

Thanks to Mark Chu-Carroll for his excellent intro article. More about multiple return values in Go in the language reference.

Tuesday, November 10, 2009

The Know-It-All

Like so many of my generation, I have spent endless hours on Wikipedia learning about the offbeat subjects such as the history of the Embarcadero Freeway, the Munich U-Bahn, the Voodoo 2 chipset, and my great enemy, the MIME standard.

I was happy to learn that someone chose to take the quest for knowledge to its logical extreme: To read the Encyclopedia Brittanica from A-Z. The Know-It-All by A.J. Jacobs is a hilarious book. The author, a writer for Esquire magazine, spent over a year reading the 65k+ entries in the encyclopedia. Highly compressed and intermixed with his life in New York, it makes for an entertaining read. If you've spent significant chunks of your life surfing Wikipedia, this book is for you.