Sunday, August 3, 2008

Alan Kay, IT Slavery and Coping.

Alan Kay on Mark Guzdial's Amazon Blog:
So, I've been positing that it is precisely "powerful ideas in computing" that needs to be taught more in universities, even as I doubt seriously that most professors in most universities are up to it. The reasons for this are partly the difficulties of academia in general with respect to a developing field.

Another part of the problem has to do with the psychology of being a programmer (I worked my way through college as one) and it's mostly about *coping* (with someone else's computer, OS, programming language, problem, techniques and architectures, etc.). I did just that until I got into an ARPA grad school by complete accident and into a culture that was as "anti-cope" as one could imagine -- they were quite happy to invent everything they needed, and to build from scratch everything they needed, including every gate of the HW if necessary, and every bit of the SW.

This was a shock and a revelation to me. And it was followed quickly by an even bigger shock: it wasn't as difficult to work from scratch as it seemed from the outside. And it got much much easier when techniques from real math, science and engineering were adapted to the weak shapes of computing. The results from this "ARPA/PARC" community are well known and revolutionized computing. But in spite of their success, essentially none of the processes, techniques and learning curves used and invented by ARPA/PARC are taught anywhere today.

But we can't build! We have to buy, right? Isn't that the way to get ahead, make forward progress and be a responsible IT slave, er, I mean citizen? Well not always. I know that folks like google and ebay have taken the "from scratch" approach with some of there IT infrastructure and the result has been competitive advantage.

I suppose it comes down to whether or not IT is merely a cost center. I can also appreciate the drivers that lead IT Managers and Architects to think the way forward is to hire more slaves -- er, I mean contract labor -- to cope with the mess but, as Alan Kay pointed out in his Turing award speech, this approach to architecture and development does not scale.

So what's the powerful idea that will move us forward?

I don't know what to think about academia, but in corporate IT, where we treat developers and architects like slaves, I think the big idea is the "Free Man." I work with a couple of Distinguished Architects and none of them own a budget or are empowered in any meaningful way to evolve our systems. The net result is that the systems collapse and the new budget holders start over again.

And what does starting over look like? Well, they turn to the same vendors, talent pool, and institutions that got is into the problem in the first place. What's worse is that we turn around and buy the latest version of their bad ideas and expect different results. And its all done in the name of Core vs. Context. Blah, blah, when's my next promotion and cap award?

I wish someone was keeping score.

No comments: