Startups & the Superhero Origin Story

Josh and I went to see “Iron Man” after Startup Riot this evening, and Josh commented how the first superhero movie is always the best.  I tend to agree, and for me, I think it has a lot to do with my love of startups (and why Superman is lame).

The superhero origin story typically follows some flawed individual who sees something wrong in the world that gives them a reason to become something great.  Startups are based on flawed individuals who see a problem and think they have a solution.  Both startups and superheros make mistakes along the way, go through awkward phases where they come to grips with their “powers”, need to reevaluate their solutions, and can emerge powerful and revolutionary.

To me, the story of a successful startup closely follows the superhero origin story.  The sequel can be done well – watching Google mess with the wireless spectrum auction was interesting, but not nearly as cool as watching them rise from nothing to trounce Yahoo, Microsoft, Altavista, and the rest in search.  The mistakes made along the way are part of the charm, and nothing will ever be as epic as their rise to fame.  Superman is lame because he’s a golden boy – he basically shows up with super powers and no real flaws.  Cheering for Superman is like getting excited about the epic rise of ESPN 2.

Java, Technology

Running Eclipse on MacBooks with Java 6

The title of this post is a bit misleading in that you apparently cannot run Eclipse on a MacBook Pro with Java 6 set as the default JDK.  Never mind that it took Apple a year and a half after the release of Java 6 for Apple to support Java 6 on OS X in the first place.  I thought Apple was “developer friendly”?  My experience on a Mac has usually been slightly better than working on a PC, except that the failings of a PC can usually be dismissed as Microsoft’s incompetence.  Apple seems to act more like a highly-opinionated jerk.

After I upgraded to Java 6 (and then had to manually change my JDK symlink even after the upgrade), Eclipse refused to start.  The system log showed:

[0x0-0xa90a9].org.eclipse.eclipse[4265]: _NSJVMLoadLibrary: NSAddLibrary failed for /System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK/Libraries/libjvm.dylib
[0x0-0xa90a9].org.eclipse.eclipse[4265]: JavaVM FATAL: Failed to load the jvm library.

To resolve the issue, I edited /Applications/eclipse/, and uncommented this line:


Problem solved.  Apparently Eclipse uses 32-bit SWT-Cocoa bindings, and Apple just decided that they weren’t going to support 32-bit SWT any more in Java 6, breaking any app that uses them in the process.  So the fix is to just run Eclipse under Java 5 (Java 6 projects still work in this setup).  I’m starting to lose track of the consumer-unfriendly attitudes I’ve experienced from Apple.  Their version of Java 6 is late, incomplete, and lazy.

I will declare this now – Apple is every bit as evil as Microsoft.  If Apple EVER gets the market share that Microsoft once held, Microsoft’s anti-trust violations will seem like trivial misdemeanors compared to what Apple would do with such power.  I need to gather my thoughts on this soon and elaborate on this point.