Tuesday, June 3, 2014

Apple's 2014 WWDC Announcements

WWDC 2014 logo

I like that there were no hardware announcements. Nice that this one was just for the developers. Even if I just write code on Macs without targeting OSX or iOS.

Swift Programming Language. If you're a programmer, you have pretty much the same schizophrenic reaction to any new language announcement. One half of your brain is excited about a new programming language, and the other half of your brain is screaming oh God, yet another programming language.

It's great that there's an official script-ish alternative to Objective-C for iOS development. That is, I think, objectively a good thing. Especially when you can mix and match Obj-C and Swift in a single project, which is the single most important thing about this announcement; it means you can upgrade your old Obj-C projects in a piecemeal way, or quickly write something in Swift and replace bits of it with Obj-C if you need to, and so on.

But why a new language? Why not adopt Ruby or Python or Lua or...?

At the very least, I hope the Light Table-ish live preview thing finds a niche in education. Maybe it's the Logo for our generation.

Metal Graphics API. What is this, 1997? Think about how badly OpenGL would have to drop the ball for a couple of decades in order for people to even think about going back to the bad old days of every piece of graphics hardware having its own proprietary, incompatible API. Well, that's how badly OpenGL dropped the ball. Everybody point at OpenGL and laugh.

What I found unclear is what Metal is actually is. iOS only? iOS and maybe OSX someday? iOS devices have a wide range of graphics hardware. So Metal lets you code "close to the metal," but which metal? All of them?

It would be nice if Metal is an alternative to DirectX or OpenGL, in the sense that it's hardware agnostic, but provided an approach that's a little more in tune with how modern graphics hardware actually functions. I don't think that's what it is, though.

Edit: It looks like all iOS devices have used PowerVR graphics. I don't know how similar they are, but I'm assuming there's a fair bit of commonality. So I guess that's what Metal targets, specifically.

HomeKit Yawn. Cool in theory, but in reality, there's just not really that much I want to automate in my home. We have pets, so I can't really let the house go down to 40F in the winter or let it get up to 90F in the summer to save a few pennies while we're at work.