Magazines, Books and Articles

Saturday, July 24, 2010

Where the mind is without fear ...

"Where the mind is without fear and the head is held high;
Where knowledge is free;
Where the world has not been broken up into fragments by narrow domestic walls;
Where words come out from the depth of truth;
Where tireless striving stretches its arms towards perfection;
Where the clear stream of reason has not lost its way into the dreary desert sand of dead habit;
Where the mind is led forward by thee into ever-widening thought and action…
Into that heaven of freedom, my Father, let my country awake."

- Gurudev Rabindranath Tagore, Noble Laureate, Literature, 1913

Tagore's poem is a prayer of universal appeal. It is also a vision and a mission.

It is a vision, a mission and a prayer not only for my country, but for all mankind, especially in these times of conflict all over the world; replace the 'my country' with 'me' and it is a vision, a mission and a prayer for each one of us.

Saturday, July 3, 2010

Design Principles:Don't Repeat Yourself (DRY) - A guide to its implementation

"DRY says that every piece of system knowledge should have one authoritative, unambiguous representation. Every piece of knowledge in the development of something should have a single representation. A system's knowledge is far broader than just its code. It refers to database schemas, test plans, the build system, even documentation.
Given all this knowledge, why should you find one way to represent each feature? The obvious answer is, if you have more than one way to express the same thing, at some point the two or three different representations will most likely fall out of step with each other. Even if they don't, you're guaranteeing yourself the headache of maintaining them in parallel whenever a change occurs. And change will occur. DRY is important if you want flexible and maintainable software." From: Orthogonality and the DRY Principle - A Conversation with Andy Hunt and Dave Thomas, Part II (emphasis mine).
How does this apply to code? Read the article here.