Never be satisfied with your code
There is a saying in Tamizh (my mother tongue) that when you are stuck with a thorn you can take that out easily with another thorn. Similarly a diamond can be cut with a diamond. A cop should think like a criminal to catch a criminal. A developer should think like a tester and try to break his own code. A tester should think from many, a user, business, sales, marketing, usability even a hacker. If A = B and B = C, D and E then implicitly A = C, D and E. Thus a developer should also think like whatever a tester is thinking. Ultimately this boils down to one thought a developer should have. Never be easily satisfied with your code, test it by all means and try to break it. That’s the mantra to delivering a bug free code. And make it as tough as possible for the testers to break your code. Once you get into this habit, it is difficult to get away from it and in the process you learn a lot. Besides it also makes you think and be innovative because as your code gets to a stable level you have to be innovative to break it. All said it requires an attitude to think your code is breakable.
The origin of the above thought came to me when I was reading this blog “The Devil’s Guide to Google“. The steps given in the blog come handy to a cyber criminal but these are points to watch from Google’s perspective if not already been taken care of.











