Turing on programming

The process of constructing instruction tables should be very fascinating. There need be no real danger of it ever becoming a drudge, for any processes that are quite mechanical may be turned over to the machine itself.

– Turing, A. M., 1946, Proposed electronic calculator, report for National Physical Laboratory, Teddington

So was Turing wrong, or are we just doing it wrong?

The voice whispering bulllshhhiiittt

Zed Shaw has another awesome rant at http://vimeo.com/43380467. I agree with much of what he says about both the web and OO. I don’t see the causal connection though: they both suck, but it is probably just a coincidence. However the best part of the talk was when he invoked the voice in the back of your head whispering “bulllshhhiiittt”. That nails what programming is like for me. Most of what we have to deal with is just so wrong wrong wrong. Having to get stuff done despite the deep wrongness of it all leads to textbook cognitive dissonance. I have always been slightly amazed by the people who seem so happy and satisfied with programming. I suspect that it ultimately comes down to personality differences. I also suspect that it is a hyper-sensitivity to wrongness that drives misfits and rebels ranging from Steve Jobs to the Unabomber. Does anyone else feel the wrongness of programming?

Update: the other thing I like about Zed’s talk is that it aligns perfectly with my research direction. Decades of listening to that whispering voice have driven me to develop a post-object language. I think the best way to demonstrate this language is by reinventing the web. So I am traveling the same path as Zed but in the opposite direction.

Domain specific programming experience

The discussion on the last post suggested Domain Specific IDEs as a possible way forward. By restricting the domain (e.g. games) the IDE might gain enough semantic insight into the program to properly support advanced interaction designs like live code execution and direct manipulation of results. Well here is a perfect example: the Iguana Translator. These guys have done a great job building an advanced programming experience for the domain specific problem of mapping between data formats. I love seeing new ideas deployed out on the front lines of programming. Hats off to iNTERFACEWARE.

An IDE is not enough

The internets are buzzing with new IDE ideas. I credit Bret Victor’s masterful demo for much of this. Chris Granger is having amazing success kickstarting his IDE concept. Josh Marinacci discussed some possibilities. [Another one: Instant C#] I have been working in this area for over a decade and have very mixed feelings about these events. On the one hand, it is great to wake people out of their stupor and and show them what might be possible. But on the other hand I am bothered with the unspoken implication that such things are possible with current programming languages. Just slap a magical new IDE on top of Java or JavaScript and the world will be a better place. Unfortunately I don’t believe that is possible, and I fear it will lead only to disappointment and further fatalism.
Continue reading “An IDE is not enough”

Kickstarter: the aftermath

On Kickstarting research I asked for comments on the Light Table project. They were largely positive. Now, for the sake of argument, let’s assume this will be a complete disaster (a reasonable assumption based on history). What are the consequences?

Are people going to be pissed off and give similar efforts a bad rap? Or will they just see it as $50 donated to a good cause? Or, to paraphrase P.T.Barnum, is there a micro-investor born every minute?