Live data from Hacker News

Current draft of The Art of Computer Programming pre-fascicle 6a [ps]

www-cs-faculty.stanford.edu

51–60 of 116 posts

Re: Current draft of The Art of Computer Programming pre-fascicle 6a [ps]

#51
post #25

For anyone curious, this section is on SAT solving. It's section 7.2.2.2 of TAOCP, and is over 300 pages long. Pretty thorough for a section of backtrack, within a section on generating all possibilities, within a full chapter on combinatorial searching.

I was reading the proceedings of the 2013 SAT competition and was pleasantly surprised to find Knuth listed as a contestant! It also included a few paragraphs he wrote about his submission.

Re: Current draft of The Art of Computer Programming pre-fascicle 6a [ps]

#53

If this is art then I'll have to admit - after 20 years of learning and practicing programming, I'm still a mechanic (or craftsman), not an artist. I will not be able to read and understand this book fully and I probably won't even try, unless I'm locked in a cell with it. Although I've helped build software used by millions, what I did was stitch together things that are too brilliant (or insane) for me to fully und…

Everyone with a good computer science education should be able to digest his books. I know that around here college education is often derided as outdated, impractical, too costly (which is a USA-ian problem), or outright irrelevant, but what Knuth writes about ain't rocket science yet important for many a programmer to understand. He writes in a quite readable style about the fundamentals of programming and computer science theory that's relevant to that programming. I know most programmers mostly glue together prefab components into working systems that successfully serve millions, but if one wants to go beyond the surface, to ask why it all works the way it does, a good computer science education is an advantage.

Re: Current draft of The Art of Computer Programming pre-fascicle 6a [ps]

#54
post #53

If this is art then I'll have to admit - after 20 years of learning and practicing programming, I'm still a mechanic (or craftsman), not an artist. I will not be able to read and understand this book fully and I probably won't even try, unless I'm locked in a cell with it. Although I've helped build software used by millions, what I did was stitch together things that are too brilliant (or insane) for me to fully und…

Everyone with a good computer science education should be able to digest his books. I know that around here college education is often derided as outdated, impractical, too costly (which is a USA-ian problem), or outright irrelevant, but what Knuth writes about ain't rocket science yet important for many a programmer to understand. He writes in a quite readable style about the fundamentals of programming and computer…

I would argue that anyone who can read and understand TAOCS in its entirety is extremely privileged. Even if the entire CS curriculum was just "Read TAOCS", only the most motivated and hard-working students would make it through. TAOCS is enormous and a lot of the content is dense; even if it is possible for anyone with a (good) CS degree to digest, finding the time to do so would constitute a significant life commitment/accomplishment. Probably above/beyond that of getting a degree.

Even this single section within a single chapter could be used as the basis of an entire course.

Re: Current draft of The Art of Computer Programming pre-fascicle 6a [ps]

#55
post #54
post #53

Earlier quoted context omitted.

Everyone with a good computer science education should be able to digest his books. I know that around here college education is often derided as outdated, impractical, too costly (which is a USA-ian problem), or outright irrelevant, but what Knuth writes about ain't rocket science yet important for many a programmer to understand. He writes in a quite readable style about the fundamentals of programming and computer…

I would argue that anyone who can read and understand TAOCS in its entirety is extremely privileged. Even if the entire CS curriculum was just "Read TAOCS", only the most motivated and hard-working students would make it through. TAOCS is enormous and a lot of the content is dense; even if it is possible for anyone with a ( good ) CS degree to digest, finding the time to do so would constitute a significant life comm…

I agree with you. It might make for an interesting course: the teacher develops instructional materials fitted for the class she's teaching, using Knuth's chapter as a reference and foundation, guiding and challenging students to dig deep on this topic. I'd like such a class, both as a teacher and a student, I think.

Re: Current draft of The Art of Computer Programming pre-fascicle 6a [ps]

#56

If this is art then I'll have to admit - after 20 years of learning and practicing programming, I'm still a mechanic (or craftsman), not an artist. I will not be able to read and understand this book fully and I probably won't even try, unless I'm locked in a cell with it. Although I've helped build software used by millions, what I did was stitch together things that are too brilliant (or insane) for me to fully und…

You might be amused about one of the questions asked of each interviewee in http://www.codersatwork.com/ about whether or not they read TAoCP. Most, including Knuth, claim that they did not read it.

I have one of the first printings of the three first volumes but have not read all parts. I did do a deep dive in the floating point, as we at one point had to write that at MWC for an early compiler for the non-8087 class of computers. (Good work, Tim M.!)

Re: Current draft of The Art of Computer Programming pre-fascicle 6a [ps]

#57
post #56

If this is art then I'll have to admit - after 20 years of learning and practicing programming, I'm still a mechanic (or craftsman), not an artist. I will not be able to read and understand this book fully and I probably won't even try, unless I'm locked in a cell with it. Although I've helped build software used by millions, what I did was stitch together things that are too brilliant (or insane) for me to fully und…

You might be amused about one of the questions asked of each interviewee in http://www.codersatwork.com/ about whether or not they read TAoCP. Most, including Knuth, claim that they did not read it. I have one of the first printings of the three first volumes but have not read all parts. I did do a deep dive in the floating point, as we at one point had to write that at MWC for an early compiler for the non-8087 clas…

I've read your book! Very inspiring indeed! Thank you !

Re: Current draft of The Art of Computer Programming pre-fascicle 6a [ps]

#58
post #53

If this is art then I'll have to admit - after 20 years of learning and practicing programming, I'm still a mechanic (or craftsman), not an artist. I will not be able to read and understand this book fully and I probably won't even try, unless I'm locked in a cell with it. Although I've helped build software used by millions, what I did was stitch together things that are too brilliant (or insane) for me to fully und…

Everyone with a good computer science education should be able to digest his books. I know that around here college education is often derided as outdated, impractical, too costly (which is a USA-ian problem), or outright irrelevant, but what Knuth writes about ain't rocket science yet important for many a programmer to understand. He writes in a quite readable style about the fundamentals of programming and computer…

I like your sentiment, but your "good computer science education" sounds a lot like a "true scotsman". A lot of the people I work with have BS's in CS and a lot don't. I haven't seen any correlation between a real in depth understanding of computer science and a CS degree.

I agree programmers should be able to read and understand Knuth's books, but I don't think a CS degree is preparation. Would you think someone needs a CS degree if they already have a good understanding of the books?

My complaint with college is that it seems to be mostly fluff. If you show up and pay the bills then you'll get your degree.

Re: Current draft of The Art of Computer Programming pre-fascicle 6a [ps]

#59
post #53

Earlier quoted context omitted.

Everyone with a good computer science education should be able to digest his books. I know that around here college education is often derided as outdated, impractical, too costly (which is a USA-ian problem), or outright irrelevant, but what Knuth writes about ain't rocket science yet important for many a programmer to understand. He writes in a quite readable style about the fundamentals of programming and computer…

I like your sentiment, but your "good computer science education" sounds a lot like a "true scotsman". A lot of the people I work with have BS's in CS and a lot don't. I haven't seen any correlation between a real in depth understanding of computer science and a CS degree. I agree programmers should be able to read and understand Knuth's books, but I don't think a CS degree is preparation. Would you think someone nee…

Certainly, if all you're after is a degree (the certificate), not much effort is needed. On the other hand, if you want to, you can get more out of college. Which brings me back to my "good computer science education": it depends a lot on the aims of the student and how she approached her learning. That is not to say that there are no computer science programs that is basically vocational training, nor that there are programs that are very theoretical in nature, of course, but if you want, you can get more value for your money than a degree.

> Would you think someone needs a CS degree if they already have a good understanding of the books?

To be a programmer? No. But, at least to me, programming related matters is but a small part of computer science. Which makes Knuth's books such a great resource: it goes into detail in that small, yet quite large, field of programming.

Re: Current draft of The Art of Computer Programming pre-fascicle 6a [ps]

#60

>>These so-called "SAT solvers" are able to handle industrial-strength problems, involving millions of variables, with relative ease, andthey've had a profound impact on many areas of research such as computer-aided verification. I would be very interested in hearing of industrial/practical applications of those. Anyone with some experience?

p2 (https://www.eclipse.org/equinox/p2/), the provisioning platform used in Eclipse, uses a SAT solver (specifically, http://sat4j.org/) to resolve complex plug-in dependencies (with version range constraints and other OSGi-specific niceties) when you install or update plug-ins in Eclipse.
Post reply on HN