Programming craftmanship

Bill Venners and Yukihiro Matsumoto (creator of Ruby) talk about programming craftmanship. They talk about why it's important to have read lots of source code of known well-programmed software, why you should learn programming languages for different paradigms (functional, procedural, object oriented, declarative), why you shouldn't focus on tools but on algorithms and some other hints to become a better programmer.