Making Mistakes

A junior asked me about what I have gained after about a decade of experience in the software development. I tried to sound cool and talked about methodologies, philosophies, tools, and what not. A perfect recipe for a boring and useless lecture, which I am sure was of no use to him. And then I really thought about it and it was only one thing – courage to experiment and make more mistakes. I realized that my whole setup is geared towards increasing my affordability to make mistakes. Whether it is the version control system or tools to make quick changes or documentation or my effort to learn new languages and tools – they all allow me to be productive not by avoiding mistakes, but by making them, crashing hard and learning from them.

Discussion [Participate or Link]

  1. NatalieMac said:

    We definitely learn more from mistakes than learning any other way. I think it’s important to understand that – and learn to not feel like a failure and to keep trying.

  2. MrvnMouse said:

    Well, I find the key thing is to balance making mistakes (But being more creative) to being less creative but having a more solid product. However, establishing a development environment so that mistakes can be caught quickly in development and pre-production is clearly useful.

    However, I find the biggest mistake most people make (and shouldn’t) is have their development go to production way too early and run into a long list of disasterous problems.

  3. Encephalosponge » Making Mistakes said:

    […] Making Mistakes | iface thoughts.  This was a great realization by Mr. Nadgouda.  Making mistakes (and learning from them) is the key to true innovation in any field.  Unfortunately, mistakes are not so “affordable” in medical treatment. […]

  4. Jeff Kinz said:

    Hello Abhijit.

    I think you have hit upon a one of the most valuable and possibly one of the most overlooked principles of good programming techniques. It may not be a “formal Computer Science concept” but getting people to approach their work unafraid of “just trying it” is clearly going to increase their productivity, as well as their comprehension and code quality.

    Being able to “undo” the changes by going back to the last working state completely frees the student to take a risk. And in the computer field we are ALL students some of teh time… 🙂

    I would love to see you do more on this subject especially perhaps filling out the “how to” information that enables the undo capability for people in the tools that you use.

    Example: 30 or so years ago, after helping a Gf with her programming homework on a VMS system I decided I liked VMS’s ability to keep each edited version of a source file around so (being a UNIX user) I wrote a wrapper script for vi that did just that. Next I modified the wrapper script to check the file out of source code control before editing. And so on. I still use it today, especially for editing system configuration files. Its nice to havethe entire hsitory around. It evolves constantly. Some years it only keeps diffs around, some years it compresses the changed files sometimes both.

  5. Abhijit Nadgouda said:

    Jeff, thanks for giving me the final push to do a push about my setup in this context.

  6. I Need The Cult Of Done | iface thoughts said:

    […] found the Cult of Done Manifesto via Assaf, and it rocks! What does it give me? Luxury of making mistakes, a chance to work on my thoughts and keep the river flowing. And I think it will also help me get […]

Say your thought!

If you want to use HTML you can use these tags: <a>, <em>, <strong>, <abbr>, <code>, <blockquote>. Closing the tags will be appreciated as this site uses valid XHTML.



Abhijit Nadgouda
iface Consulting
+91 9819820312
My bookmarks


This is the weblog of Abhijit Nadgouda where he writes down his thoughts on software development and related topics. You are invited to subscribe to the feed to stay updated or check out more subscription options. Or you can choose to browse by one of the topics.