Hacker News new | ask | show | jobs
by SwellJoe 6631 days ago
Frankly, I wouldn't want to argue with Knuth on very many things. While I don't get literate programming, I suspect he understands something that the rest of us don't (yet).

And, I share his suspicion of most XP techniques.

2 comments

Joe, are you a web programmer?

I'm really interested in why people don't get LP because it was love at first sight for me, in theory at least. It'll help bridge the gap between writing journal papers that contain the theory and the code that implements/demonstrates the theory.

The other day I got some code (calculating and displaying the Cramer-Rao bounds on radar parameter estimators) written by one of my professors who gives stunning lectures and writes excellent papers. The coding style was straight from the 80s... think Fortran. I think that's because nobody ever had to read his code, so although he got great at lecturing and writing, he never got to practice coding. And I think LP will help avoid that and encourage people to combine documentation, code, and theory.

I think a very different set of constraints exist for web programmers and indeed for my own php/mysql-style apps, I can't imagine doing LP.

"Joe, are you a web programmer?"

Yes, by some definition of "web programmer". (I work on Virtualmin, Webmin, and Usermin. So, a large percentage of my work is back end systems management with a web front end.)

I've merely never committed the time to doing a project with LP. Which is why I included a (yet) in my comment. I'm not ruling out the possibility of some day falling in love with LP. It just hasn't happened so far. I think it's one of those things that requires quite a lot of up-front commitment to make use of, and so many projects start off as tiny "throwaway" projects and eventually grow large (or don't).

> I share his suspicion of most XP techniques.

Well, he is suspicious because he assumes people using XP are programmers. That's not correct.

The idea behind XP is to get somewhat usable code out of non-programmers. Why companies don't just fire people that can't program, I'll never know... but XP does seem to work. Instead of getting unmaintainable, untested, half-working garbage, you get unmaintainable, tested, two-thirds working garbage.

Oh yeah, now I remember why these programmers exist. Companies seem to value quantity over quality of programmers. That way people can be sick or go on vacation and you'll still get your two-thirds-working code. BRILLANT!

I'm not sure I buy this logic either. Programming is right in the name, and some proponents of XP are good programmers. And, I really don't see how horrible programmers would be made better by poor techniques (which I believe some aspects of XP are).
XP makes programming less like a creative art and more like checking off items on a to do list. You can't teach art, but you can sort of get people to do stuff on a list. Hence XP.