The Sceptical Competent
April 23rd, 2013 by ravi

The Sceptical Competent

Warning and apologies: the train metaphor employed within might drive you off the rails.

Software development has hidden hierarchies that play out not so much in titles or skills as in echo chambers. A person working up the programming ladder is corralled into pre-approved positions by the din of expert opinion repeated many times over in text books, blog posts, Twitter, conferences and sundry outlets. It is only on occasions when there is a clash of propaganda or when a glimpse of history raises question about the grand narratives, that the adrift novice coder begins to question the emperor’s attire. The smarter among such novices quickly learn to swim with the current; or whatever happens to be current. The rest stay adrift, unable to reconcile the reality of the sausage making with the extravagant theorising about it.

What’s my point?

Read the rest of this entry »

The false seductiveness of obfuscation and language overuse
October 20th, 2010 by ravi

Douglas Crockford, in the intro to Javascript: The Good Parts:

When I was a young journeyman programmer, I would learn about every feature of the languages I was using, and I would attempt to use all of those features when I wrote. I suppose it was a way of showing off, and I suppose it worked because I was the guy you went to if you wanted to know how to use a particular feature.

Eventually I figured out that some of those features were more trouble than they were worth. Some of them were poorly specified, and so were more likely to cause portability problems. Some resulted in code that was difficult to read or modify. Some induced me to write in a manner that was too tricky and error-prone. And some of those features were design errors. Sometimes language designers make mistakes.

David Foster Wallace on Perl Programmers
August 15th, 2010 by ravi

Okay fine, he is talking about a particular kind of tennis trainee, but it seems worrisomely applicable to those (like me) who are unable to part ways with Perl:

You’ve got the Complacent type, who improves radically until he hits a plateau, and is content with the radical improvement he’s made to get to the plateau, and doesn’t mind staying at the plateau because it’s comfortable and familiar, and he doesn’t worry about getting off it, and pretty soon you find he’s designed a whole game around compensating for the weaknesses and chinks in the armor the given plateau represents in his game, still — his whole game is based on the plateau now. And little by little, guys he used to beat start beating him, locating the chinks of the plateau, and his rank starts to slide, but he’ll say he doesn’t care, he says he’s in it for the love of the game, and he always smiles but there gets to be something sort of tight and hangdog about his smile[.]

But still, how is it possible to easily bid adieu to an unpretentious language that provides a construction as tight as: $x ||= 5;

»  Substance: WordPress  »  Style: Ahren Ahimsa