Posts tagged: tech

(this is page 2 of 118)





Latest

Today is the second anniversary of Steve Jobs's death and while I am not planning on joining the Apple has Lost Its Way chorus, it is somewhat sobering to look back at my favorite piece of technology speaking ever, a 1997 pre-heyday WWDC Jobs Q&A where he is not only amazingly lucid about the strategy he would go on to implement for the next 14 years, but where he is incredibly straight forward and direct in his communication style.

If you are a student of superb public speaking, go and check it out. Compared to the ridiculously over-emphasized style of Cook and the other Apple execs of today (all of which are weirdly trying to channel a cargo cult version of the Steve keynotes), it is a particularly stark reminder of what the company lost two years ago.

Comments Permalink

When Microsoft shipped XmlHttpRequest and the web browser became a runtime for interactive apps the most wonderful thing about the whole thing was how quickly developers could iterate their entire applications and get new bits running in the hands of users. This more than "ubiquitous access" is what gave birth to agility that ushered in Web 2.0 with Google Maps and Flickr leading the way.

Imagine then how disappointing it was for developers to realize that the platform shift to mobile required putting a giant pause button in the middle of the iterative process— defined by days/weeks of AppStore review followed by the much more indeterminate amount of time required for a user to remember to open the AppStore app to the "updates" nav element to pull down 1-60 "updates" to apps developers wanted to have upgraded.

On new iOS 7 devices the default mode is to pull down app upgrades without user intervention which is a huge step forward in the iterative development process that came with the web. While it still leaves the huge speed bump that is app review process, automatic upgrades may be the most important thing to hit iOS since background processing.

Why no hoopla? Potentially because Android has had it for such a long time. Having said that, the fact that it has finally come to iOS is a big deal for every startup that I see as they all seem to start on iOS (still to this day) and move over to Android once they understand what it is that they are building.

Now if Apple would only fix the 1-2 weeks of sitting is a stupid review queue, we might actually be back to parity with what developers had back in 2005...

Comments Permalink

Us at MeadhallA few years ago I wrote about a book that I had found by a self-published author with a weird name, Leinad Zaurus, called Daemon which combined the best parts of what was possible with the most dramatic elements of the near future as defined by science fiction. The entire book was a metaphor for the lack of control that comes from automating too much and living far too close to the limit of what any part in a complex interconnected system can sustain in the face of even the smallest of Black Swans.

I was so taken by Daemon (and the palindromically named Leinad) that I cold emailed him to ask if we could get together and chat about me optioning his book for a movie. I knew nothing about what any of the words in that phrase meant but I'd seen it on Entourage and hey, I was recently feeling like a Master of the Universe after selling my company.

Daniel, true to self, let me down gently by telling me that someone else had already thought of that (a small shop called Dreamworks) but thanking me profusely for being a fan thus sparking the kind of authentic author/fan relationship that is becoming more and more common as the Interent eliminates layers of indirection ("distribution") between creators and their fans. I've since gotten ARC (advanced copies) of all of his subsequent novels and reveled in how as an author he truly encompasses the Steve Jobs mantra of living at the intersection of engineering and liberal arts with his work on big themes dressed as thrillers with narrow AI, drones, and augmented reality as its villians and heroes.

It was a treat to see Daniel again in the flesh this week as he trolled the hallways of MIT for inspiration and gushed about the advances of private space flight, the maker movement, and VR. Get him going with just one beer and he'll give you positive proof that the sculptor Brancusi was right when he wrote about artists: "When we are no longer children, we might as well be dead."

Postnote: Daniel will be stopping by at our Oculus Rift "Celebrating Hardware Innovation" event tomorrow night so come and see two pieces of the future together in one place.

Comments Permalink

Back in 1996 when the first “web applications” emerged at the apex of the client-server era, one common frame for looking at the tradeoffs of the web browser was talking about the “richness” of an interface like Lotus Notes or Microsoft Outlook against the “reach” of one like Hotmail or eGroups. While the productivity purists would bemoan the latency of the browser’s limited rendering capabilities handicapped by an Internet that was too slow, they would jealously look on as the web heads collected users by the millions on computers that differed in screen size, operating system, and even (gasp) Internet browsers.

In the end, reach won because networked applications benefit from more users, because the browser vendors had a clear spec to deliver to when it came to interactivity in the form of the GUI (and now no one remembers that Microsoft had more to do with this than any other single vendor), and because broadband became reliable and ubiquitous (at least in the first world). Interestingly though, it took about a decade and there were many who falsely claimed victory many times along the way.

Despite the excitement this last week at MWC in Barcelona around the mobile web as the future of mobile application deployment— an ebullience which reached a fevered pitch in the case of those who came to worship at the altar of the Mozilla/ZTE Firefox OS phone, the truth is probably along the lines of the Mark Twain statement that while history may not repeat itself, it certainly has a way of stuttering.

Firefox OS represents a noble cause: as per the marketing plastered all over their booth at MWC this week, it aims to “connect the next billion people” with affordable (read: anemic) hardware and an “open” platform. The demo I was given looked quite a bit like early WebOS demos did with the “apps” sitting on cards that could be moved around, paused/resumed, etc. It was a little laggy but surprisingly not as much as I had expected. In short, the device pointed to a future where fat apps will give way to the “reach” of folks who might carry loads of these devices, or in the case of the developing world, share them while all of the relevant bits of state live on a server.

It’s going to take a while though as was evident in how poorly the games showed (no sound), how much the tortured limited bandwidth of the show caused in terms of lag, and perhaps most importantly, how weak the story around offline remains, particularly for media storage.

More importantly, the mobile communicator (aka the smartphone) is so much more of a personal device that it feels the richness end of the spectrum is about much more than just snappier UI and local resources, extending to all sorts of sensors and actuators that will take the W3C a long time to bake into the DOM. And to boot, unlike PCs in the late 1990s, we’re a long way from over-serving the needs of the users on this platform.

I’d love to see the mobile web win, and have no doubt that it will in due time as it did on the prior dominant platform. But there is little reason to think that it won’t take a decade just as it did the last time and the belle of this year’s MWC ball was a good reminder of that.

Postscript: While noodling on this, this Engadget editorial perfectly captured a lot of the problems I saw at the booth.

Comments Permalink

In Love with LÖVE

I’ve been looking for the past year for a suitable programming environment for my two boys (10 & 7) that moves them beyond graphical environments like Scratch and Lego Mindstorms and into the land of real programming (a few years ago we had great success with Scratch). In my mind, the target has always been something like the Apple ][ BASIC ROM that shipped with the machine: easy to grasp and when paired with the GR (low resolution graphics), an endless source of fun. However, it’s been an absolutely bear to find something that fit the bill in terms of abstracting away enough complexity while remaining engaging enough in the era of Minecraft and Halo 4. Until LÖVE, a quirky game framework.

Before I get to why LÖVE is working, here is a list of the stuff we played with and dismissed:

  • PyGame: though it benefits from maturity and tons of material online and Python at its core (a fantastic starter language with tons of headroom), it is too low level for kids. Plus it is a bear to build on OSX.
  • Pythonista: iOS only, sadly, and both boys have yet to get the memo that keyboards are out and fingers on glass is the future. If this got ported to the Mac, it would win, hands down as the API is fantastic. Maybe my kids will learn that in the future there won’t be keyboards and start living there...
  • Gosu: Ruby’s version of PyGame, it looked great until you try to build it and see some of the same cracks PyGame suffers from. On top of it, there are a bunch of Ruby projects for teaching kids that use it so the documentation is a bit inconsistent.
  • ImpactJS: I want so badly to believe in a future where all apps are in the browser but if you value your sanity, it’s a tough environment for beginners. ImpactJS is well done if you already have all of the basics of game development down and want to target the browser but otherwise, I call it the “English major maker”
  • Unity3d pros use this and it has a nice feature in that it supports a lot of languages along with a free edition. But it is a full and complex IDE so teaching someone to program with this is like teaching a kid to draw with Photoshop. Sometimes crayons are better (Playmaker makes some of this go away but at the cost of being Scratch-like)
  • text based terminal games: I loved Zork and Choose Your Own Adventures but it turns out that no graphics = no fun for little guys so this one was not ever a real option

Enter LÖVE. I had seen this about 6 months ago but dismissed it because the programming language, Lua, looked weird and I’d never heard of it. But it turns out to be just what the beginner brain needs and surprisingly, its warts are a padawan’s advantages. Crappy scoping? No need to explain locals, globals, etc. Only 5 datatypes? No need to explain how numbers aren’t always numbers. Pascal like “ends” everywhere? Much better than braces or whitespace.

To boot, the API offered by the underlying game engine makes sense, boots quickly, and offers a really nice learning curve. It’s only been a weekend but already we’ve got a a 2D game with a minimalist state machine, collision detection, sprites that don’t look totally awful, and sound effects to boot!

If you are looking for something to ease kids into real programming, you could hardly do better than well documented, nicely packaged, and free on top of a language which may not please the purists but will certainly engage your kids in the basics.

Comments Permalink