In software application development, specifically in extreme programming, a fundamental design tenant is to constantly refactor your code. By refactoring, you take a second look at your code, you trim it down, make it more efficient – you optimize. You look for flaws and eradicate them, you look for ways to improve.
By the same token, human beings can benefit from refactoring themselves. Walking to the office from the metro? Cycling through the woods, or sitting in rush hour traffic? Make use of that time to immerse yourself in a bit of reflection. Look at yourself with a discerning eye. Now, look deeper. What are your flaws? Don’t find any? Then you’re not scrutinizing properly – we are all imperfect, by nature. What makes us uncannily dynamic, is the ability to improve upon ourselves. Pick just one or just a few of your rough edges, and make a real commitment to improve upon them. What do you have to lose? Some effort. What can you gain? You may not realize that until you’re looking back at who you used to be…
“By the sun and its brightness.
By the moon as it follows it (the sun).
By the night as it conceals it (the sun).
By the Heaven and Him Who built it.
By the earth and Him Who spread it.
By Nafs (Adam or a person or a soul), and HIm Who perfected him in proportion;
Then He showed him what is wrong for him and what is right for him.
Indeed he succeeds who purifies his ownself .
and indeed he fails who corrupts his ownself.”