http://www.perlmonks.org?node_id=134332


in reply to (OT?) Usefulness of CS

If I change the proposition to

A knowledge of computer science is as useful for writing good software as a knowledge of literary criticism is for writing a good story.
Then I would wholeheartedly agree! In fact I would go so far as to say that it is not even arguable—but then again I did cheat, I changed the basis for the discussion! Now if we return to the original, then things are a bit different. If we look at the first clause, then the question becomes is this thing called 'computer science' useful in the task of 'writing good software'. And that is not an easy question to answer, at least not without making some assumptions. For instance, do we mean the academic thing called 'computer science' as in a degree in same? Or do we mean the entire body of knowledge about same? For that matter does the noun science limit the subject? Should the word 'art' have been used? What is the difference between the 'science of computers' and the 'art of computers'?1 The question tree quickly spins out of control because the proposition as stated isn't decideable.

However, since no one else posting here has let that get in the way, I'll go along and make a stab at an answer—hell, why let a little thing like 'undecideability' get in the way?

If I assume that a degree in computer science and a degree in literary criticism are the stand-ins for the original statement, then I still have to agree. I say this without even having to deal with the value of either. No matter how bad the academic scene may have become, I doubt that it is possible for someone to gain a degree and truly wind up knowing less than when they started. And that is what it would take for the possession of either to be less than 'useful' in the pursuit of the assigned tasks. Necessary? No, I didn't say that, just 'useful'. Any knowledge at all from such a source would be in addition to that already had. So useful? Well of course!

1For a extremely good discussion on this question, see Computer Programming as an Art by Donald E. Knuth. In Literate Programming, Stanford CA, Center for the Study of Language and Information, 1992. 0-9370-7380-6

–hsm

"Never try to teach a pig to sing…it wastes your time and it annoys the pig."