Keith Watanabe * NET 2.0

Programming (Language) as/is a Philosophy
By: Keith Watanabe
Published On: 8-8-2007

I was reading something on Perl packages from the O'reilly Perl Programming Book, and one paragraph really stood out:

Whenever you're tempted to do any of these things, you need to sit back and think about what will do the most good for you and your neighbor over the long haul. If you're going to pour your creative energies into a lump of code, why not make the world a better place while you're at it?

This can really apply to any language.  The fact that this statement occurred in the Perl book made me realize the connection of programming, programming languages and their attribute as a philosophical mode of thinking.

Think about the flamewars between Java and scripting languages such as Perl.  The core arguments that Perl people have against Java is the verbosity while Java programmers call Perl programmers obscure and lacking thoroughness.  Shouldn't the real result be about results you bring to a business?

All of these statements above are loaded philosophical questions.  The best programmers, in my view, are those that have an issue or stake involved in such questions.  Should each little optimization be so critical for a business?  Why not just lie to the company and say optimization is impossible that issue?

Again, it's all philosophical.  But the intention behind that philosophy is equally critical.  The person who refuses to optimize places importance on immediate results at the sacrifice of performance so that his end of the bargain is complete.  The person who prefers verbosity emphasizes thoroughness and process.  The person who favors obscurity prefers succinctness.

I think those who practice programming philosophy rather than simply programming are those who are looking or have their own set of best practices.  This is one area which isn't well defined.  Certainly, there are tons of books, online articles and whatnot prescribing sets of best practices, but like any philosophy, there are numerous variations that really fit with a person's core value system.

AddThis Social Bookmark Button Sphere: Related Content

Trackbacks: (Trackback URL)

No Comments Posted Yet

June [July] August
Sun Mon Tue Wed Thu Fri Sat
29 30 1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31 1 2