It Depends, Really

It was funny initially when most of my answers in a casual discussion with a friend ended up being it depends! On more thought I can only say it with more conviction. It depends, really! The discussion was about choosing software and peripheral technology for a project, or as I would like to say, to solve certain problems. The only information I had prior to the discussion was the problem statement, nothing more nothing less. But I could not answer which software to use, which framework to use, which programming language to use or which operating system to support on.

I needed more information. His questions met with more questions from me – questions about everything else other than than problem statement. The budget, the deadline, the existing team and its skill-set, the existing software being used, the underlying process, and the effort and time the team was ready to give exclusively to the software for its maintenance. Funnily, my perception of maintenance has changed. It is not only about maintaining data integrity, taking backups or monitoring the software. It is slowly changing into that of evolution. Businesses are quite dynamic today, and so are their requirements. Not that the businesses were not dynamic earlier, but today it is more possible because of IT. Ironically, this is affecting the way software is maintained, or that it is not just maintained anymore, it gets evolved with changing requirements and changing expectations. I digress!

Before I could really take any decisions, I wanted answers to those questions. I wanted to eliminate my personal bias, I wanted to take a puristic approach before it could be contaminated by my preferences. I wanted to treat the customer as a business. Of course, all this was in a discussion, so it was not pursued much. But I sure made it apparent to my friend that it was difficult to go ahead without more information.

And then he asked me, something I feel a lot of people believe in, that experts are supposed to know the information. I do not fully agree with it. Expertise and experience can help us understand, do better assumptions and verify, but they can never replace factual information. They can tell how something should be done, but not how it is being done. The expertise is in making sure that whatever information is available is gathered, and then making assumptions where it is not available. The expertise is in identifying faults, whether it is with what is being done or how something is being done, and making an attempt at improving it.

I think somewhere there we lost the motivation to continue the topic and proceeded on to other matters of life. We continued sipping our coffee but I am sure it kept lurking in his mind too. This thought was purely out of my experience, feel free to add to this.

Discussion [Participate or Link]

  1. Continuing On Pre-built Or Custom | iface thoughts said:

    […] This has been one of the most time-consuming and significant decisions in almost all software projects. It affects many things, with the maintenance getting affected the most. Sometimes hiring new people also revolves around the skills required for the third party tools (code blocks, libraries, frameworks, applications) used. And as with other things, there is no solution that works for all. It depends! […]

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.