Wednesday, May 22, 2002
[via c.l.f] Here's a guy that really nails the idea of silver bullets in programming:
It seems to me that, at a minimum, a professional programmer should be expected (and expect of themselves) proficiency in one assembly language, one procedural language, one object language, one scripting language, and several design/definition methodologies. Only with these "bullets" in hand will they be able to make rational design and implementation tradeoffs.
If you have a hammer, everything looks like a nail.
In principle, all Turing Complete languages can compute anything that is computable. But in practice, they are not all equally suited to all classes of problems. Most importantly, New Bullets Are Not Inherently Better Than Old Ones. They each just solve different classes of problems well.