Stephen Freeman Rotating Header Image

August, 2004:

pycore: Python on VisualWorks

As reported by recondite, Peter Deutsch is “porting Python to run on VisualWorks Smalltalk”:http://webpages.charter.net/allanms/2004/08/you-dont-tug-on-supermans-cape.html

This should be good.

Paul Graham stirs a hornet's nest…

Paul Graham has incurred the wrath of the Netocracy with his latest piece on “Great Hackers”:http://www.paulgraham.com/gh.html.

As I said “before”:http://stevef.truemesh.com/archives/000344.html, I think his political economy is a bit weak. The tricky issue with massive pay differentials is whether they’re earned or not, and recent executive scandals have broken that consensus in the public (if it ever existed). Edison’s real success came through marketing and patent litigation; there were plenty of other inventors at the time who were smarter. The story of his fight to standardise on Direct Current, including an electrocution, is not pretty. Similarly, Graham’s view of low-tech societies is weak: in warfare the best performers got to kill all the men and enslave the women, which is a substantial differential over the losers. The situation he describes in “Why nerds are unpopular”:http://www.paulgraham.com/nerds.html in which American high schools are ruled “by a caste of giants” is surely a formalized echo of this Darwinian struggle.

On the contentious “great hackers don’t like Java” claim, I have to agree. It’s a pretty good compromise language, and it made garbage collection and interfaces respectable (for which I am very grateful.), but a language to get excited about? Hackers might use languages like Java (and C, for heaven’s sake) because it gets them to their target audience, but that doesn’t mean that it fires them up. I once got put off (incorrectly) during an interview for what should have been a hot job because one of the programmers had _never_ tried a dynamic language. “Do I really want to work with these people?”, I thought at the time and lost interest.

There’s something about typing in yet another for loop when I should be passing a block into a collection that just drains the spirit. At a micro level, this is the sort of thing that Ward Cunningham talks about when he “distinguishes between problems and difficulties”:http://stevef.truemesh.com/archives/000206.html and Graham describes as Nasty Little Problems. I’m not totally convinced by Graham’s solution, because if you have really good people work on the niggly problems you sometimes get really good solutions — that’s where the better open source frameworks come from — but you can’t keep people doing that for ever without blunting their edge.

In the end, maybe the important Hacker Metric is that _this stuff matters_ and that we care about it enough to argue. Is it that these issues should touch us deeply enough that we’re prepared to make a fuss, however misguided, and that organisations that stifle such passion also stifle the inventiveness and focus that might lead to real innovation? Or are we just unrealistic geeks?