Clang is the Next WebKit

Over the years Apple has made some big bets on different technologies. They’ve had a great run for the past twenty or so with only a few stumbles. Objective-C garbage collection, 64bit Carbon, and whatever it was they were using before they started using CUPS come to mind.

The hits have been huge though. One of the biggest hits has turned out to be WebKit. Initially a bit of an upstart project built off KHTML and KJS, WebKit has come to rule to roost as the most used rendering engine in the world. A lot of hard work, brains, and elbow grease went into making WebKit what it is today. It reached such broad acceptance by being good at what it does, fast, understandable, modifiable, and compact enough to fit into the first iPhone.

Clang appears to be following the same path that WebKit has. Apple switched over to Clang years ago and the pace of development of Objective-C accelerated immediately. A few years ago Clang became the default compiler for FreeBSD, displacing GCC. In early May Microsoft announced that they’re Bringing Clang to Windows. According to The Register, Microsoft will have a release of Visual Studio that uses Clang as the front-end to their compiler in November.

The “front-end” part is interesting. There are a number of stages when compiling a program and the first stage is taking in the code written by the developer, teasing it apart into logical units, and transforming those units into a form that is more easily digested and optimized by the subsequent stages. The front-end of a compiler is, more or less, the user interface a computer language presents to a developer. By adopting just the front-end Microsoft can continue to use their “back-end” compiler to target specific platforms and architecture. This is smart, good, and a terrific example of open source software at its very best. It helps, in a small way, to make software development easier.

Swapping out the back-end of the compiler for their own is akin to someone adopting WebKit and swapping out the JavaScript engine for something that suits them better. This may seem like cherry picking just the bits that suit Microsoft best but that is exactly the point of Clang and of the more liberal open source licenses.

A Clang front-end that is the face to many different operating systems and platforms is a good thing across the industry. Just as an established web publishing standard is a good thing. Will things change? Will Clang eventually be the one at the table clinging on to backwards compatibility? Maybe. It could happen. But for now Clang is the wind picking up and platforms are setting their sail to it.

As WebKit did for the web I believe Clang will exert a concerted, directed, opinionated, and powerful force upon the native development world.

Grace Hopper Celebration of Women in Computing

The Grace Hopper Celebration of Women in Computing is the World’s Largest Gathering of Women Technologists. It is produced by the Anita Borg Institute and presented in partnership with ACM.

This conference is a big event that’s coming up next week and I fear it may be overlooked. It would be short sighted and misguided to do so.

The notion of “diversity” strikes me sorely. Being “diverse” is not an attribute to be achieved like some level up in a game. Diversity is the default. Failure to live up to that standard rests upon all of us who enjoy the benefits of having been born into that particular bucket that had a “Straight to the Top!” sticker slapped on the side. And, no, that’s not to dismiss the merits and work of anyone in the bucket who has made it. But let’s not pretend we didn’t get a boost.

The Grace Hopper conference will be held between the 14th to 16th of October. Many of the sessions sound terrific. They offer insights into how we approach our projects. Many others are sessions that you will never see at any other conference yet address what it means to be human in a field so rife with stereotypes.

I doubt they’ll make a deal of it publicly but Apple is a key sponsor this year and will be sending an awful lot of people. Google, Microsoft, CapitalOne and Cisco, along with Apple, are the “Diamond Sponsors” of the Grace Hopper conference.

We’re not likely to see any new product announcements there. It’s not that kind of event. It’s vital nonetheless.

Çingleton ended last year around this same time. How about this year, rather than getting together, we spend our time, effort and written words supporting a movement that makes us all better.

I’d appreciate that.