Subj : Re: Question about minimal requirements in programming To : comp.programming From : Rob Thorpe Date : Wed Jul 06 2005 05:17 am gds@best.cut.here.com wrote: > "John" wrote: > >Are the minimal requirements in those threads shared by everybody? > > > >Does everybody here believe you must know Knuth inside and out in order to > >write effective business applications? > > > >Because in all honesty, in all the places I've worked, meeting about 50 > >other programmers. Probably less than half would even know what "know Knuth > >inside and out" means. And nobody I've met has read them. > > This reminds me of a thread way way back in the day (surprisingly, on > soc.singles), where someone complained that BSD code written by grad > students was poor, wouldn't pass lint, etc. The complainer also > indicated that the grad students should be able to do all the problems > in Knuth. > > Personally, I don't know of anyone (except perhaps algorithms > researchers) who can do all the problems in Knuth. Some are quite > difficult, ie. they are open. Moreover, aside from algorithms > researchers, most people would not have the time. > > A couple of years after that thread, I took an algorithms class at > Stanford. It wasn't taught by Knuth, nor did it use his texts. It > was taught by a new professor and used a beta copy of Cormen's > algorithms text. I made a valiant effort to do as many of the > problems as possible (easier to accomplish because it was the only > class I was taking). I couldn't do all of them. Some of them I was > able to get help with on the net, because the TAs were of little help. > (These weren't homework problems; I was doing these on my own.) The > effect was somewhat positive; I didn't get an A, but there were some > exam problems I was able to get totally right. (Unfortunately now, I > don't remember how to do most of the problems; this all took place > over 15 years ago.) > > FWIW, I think it's probably more useful to understand your clients' > needs and be able to implement them cost-effectively than to be able > to do all the problems in Knuth. Of course, being able to do some > problems in Knuth may help in that regard; those are the problems you > should probably focus on. (In my algorithms class, we spent a lot of > time on hashing algorithms, which was very useful to me as I had a > project at work that used various hashing algorithms; probably not too > much of a surprise that I got full credit on the hashing exam problem > since it was on my mind a lot.) The most important thing is to know what problems can be tackled by methods developed by Computer Science. For developing programs it's not that important to know how to use them, it's important to know where the solutions are. If you know that a solution is in Knuth, or on the net somewhere or can be found in journals, that is the important part. You will have to revise your knowledge of the subject anyway. .