2

Recently a junior team member was asked to use a survey tool to act as a system by which fuel delivery drivers could submit their Bill of Lading to our dispatch team for record collection after delivering fuel.

Every fiber of my being screams that this is wrong. This is not a survey, this is a replacement for an enterprise transactional system, likely with laws that pertain, of which my team has no knowledge.

Is there a well established principle that states that using a tool for an unintended purpose is bad, and explains why? I have tried to find this already and failed for days.

To clarify, I am not looking for opinions on whether my opinion is correct. I am looking for documented, widely accepted guidance.

Dalija Prasnikar
3122 gold badges6 silver badges15 bronze badges
asked Aug 6 at 16:54
6
  • 2
    en.m.wikipedia.org/wiki/Law_of_the_instrument Commented Aug 6 at 17:27
  • 1
    @Steve: that's the answer! Why not post it as such? Commented Aug 6 at 17:47
  • 1
    Also: if all you have is a hammer, everything looks like a nail. Commented Aug 6 at 17:48
  • 1
    I don't get it. Survey tool is basically like Google Forms, a frontend to table data. Table data is used to solve a myriad of problems, why not yours specifically? Why do you think transactional system is a requirement? Commented Aug 6 at 18:48
  • 7
    Beware, throwing the name of such a principle into a discussion will probably lead to the opposite of what you intend. A survey tool is not necessarily the wrong kind of tool just because this use case is not among its original purposes - if the survey tool is quite flexible, it may still be an option (maybe it works transactional?). You need to explain why this specific survey tool lacks to fulfill some mandatory requirements of this specific use case. If you think there might be legal reasons, inform yourself about them. Commented Aug 6 at 22:56

7 Answers 7

5

Is there a well established principle that states that using a tool for an unintended purpose is bad?

No. In fact there are many examples where a tool turns out to be very useful for a purpose the original designers did not envision.

The principle you should follow is use the right tool for the job, which means you should use the tool which solves your problem and have the best cost/benefit balance.

That said, if there are some specific laws or regulations you are required to follow, you should be sure the tool to choose can accommodate that.

answered Aug 7 at 6:28
4
  • 2
    Fully agree. There are many examples of clever (ab)uses of tools. The GPL and in general the whole idea of Copyleft is a clever abuse of the tools of copyright. Long Polling was a clever abuse of HTTP, before WebSockets existed. Using ECMAScript as a VM was a clever abuse until WebAssembly existed. Using GPUs to do general-purpose computation started as a clever abuse of programmable shaders. The entire hacker culture (in the original meaning of the word) was based around the creative exploration of the boundaries of complex systems, often including clever abuses. Commented Aug 7 at 9:21
  • 1
    Heck, the WWW is a clever abuse of a document sharing system for scientists at CERN. Commented Aug 7 at 9:22
  • ... and using MS Excel (or other spreadsheets) as a poor mans database can be a clever abuse as well - though there were certain cases in the past where it turned out not to be so clever ;-). Commented Aug 7 at 9:30
  • 1
    I upvoted this answer. Let me add this: I think is a term which describes the mindset of "using a tool for an unintended purpose is bad" - I would call this dogmatism - but that's indeed not a software engineering principle. Commented Aug 7 at 9:35
3

Just repeating the link I put in the comment:

en.m.wikipedia.org/wiki/Law_of_the_instrument

The Wiki page shows a number of related terms and areas of application.

answered Aug 6 at 17:53
9
  • 2
    @GregBurghardt, what's the term for when someone draws you into something then heaps on extra demands? 😂 Commented Aug 6 at 18:17
  • 1
    🙄 Lately I've been calling it "that thing I have to do 8 to 5, Monday through Friday to earn a paycheck." Commented Aug 6 at 20:11
  • 1
    Would it help if I explained those extra demands? We prefer answers that are useful even after the link rots. Commented Aug 7 at 1:45
  • 1
    @JacquesB its meant in a negative way. You point out "when you have a hammer..." as a criticism when you see it happening Commented Aug 7 at 9:01
  • 1
    @candied_orange, problem is I don't have anything I want to say in my own words, it's difficult to boil down the full richness of the info in the link (which lists a variety of synonyms and scenarios), and one name/keyword for the concept is stated in the link text (so can be followed up even if the direct link rots). I thought it was only worth a comment to begin, but then followed Greg's urging to make that comment an answer. I promise not to do it again, but I'm also hesitant to just remove the answer now that it's accrued it's own upvotes and series of potentially useful comments! Commented Aug 7 at 11:21
2

Using a tool for an unintended purpose is hacking. Hacks are not necessarily bad. But a hack has all the same risks as designing the tool in the first place.

Using bespoke tools has the benefit of leaving those risks for the designer to assume. When you hack, you take on that responsibility.

So you can use a screwdriver as a pry bar or go buy a pry bar. Either way it can go wrong. When it does you may need to explain yourself. It’s about what you’re comfortable being responsible for.

answered Aug 7 at 10:21
1

One factor to consider is legal liability. Say the tool malfunctions, it deletes, alters, or duplicates reports, could you get sued? Or incur other penalties or damages? If so, could you sue the tool provider in turn to recover damages?

Chances are that an off the shelf tool assumes the least amount of legal responsibility they can. If it goes to court and it decides that whatever tool you are using is inappropriate there is a chance that the penalties will be higher.

This is a common consideration for medical software and other medical devices. In this case the documentation should state the intended use, and any "of label" usage shifts the liability to the doctor or patient that decided on that usage. I would expect a similar situation in other areas with highly formalized rules.

answered Aug 7 at 13:05
0

The employee can use the survey tool, which produces cost X and benefits Y. If your company uses the survey tool already, and the drivers use it already for surveys, the cost may be low or zero.

Or you buy or create a new tool specifically for that purpose. That will have more cost, including training cost for the drivers, and may produce more or less benefits.

You pick the method that maximises benefit minus cost.

Hans-Martin Mosner
18.4k1 gold badge36 silver badges47 bronze badges
answered Aug 7 at 7:24
-2

Is there a well established principle that states that using a tool for an unintended purpose is bad, and explains why?

"Every fiber of my being screams" ... requirements. First, read this book:

201 Principles Of Software Development by Alan M. Davis. I. Love. This. Book. Organized into sections each principle has a one page treatment. There are 23 requirements principles for example. Concise and pithy these will get you going.

Second, maybe you can talk up how this (inappropriate) tool is a prototype. If anything seeing where this tool falls short is a great way to discover requirements.


Is there a well established principle that states that using a tool for an unintended purpose is bad, and explains why?

Requirements is software principle and the explanation. Specific needs for a specific problem. Solutions are assessed against the requirements which tends toward avoiding the "hammer-nail" pitfall; a mistake but not a software engineering principle.

answered Aug 6 at 18:04
2
  • "Every fiber of my being screams" ... requirements. — to the down-voters: this. So much this. The question is an X/Y problem where the assumption is if you can point to a design pattern or best practice then the other person will see it your way. Getting the requirements will show the junior dev that a survey is the wrong tool, or confirm that it is the right tool. You need requirements, and you need a subject matter expert to communicate them. Commented Aug 7 at 2:32
  • "Requirements (analysis)" surely has something to do with the OP's problem, maybe it can lead to a solution of their issue, still this term is not a "design principle referring to using a system for it's intended purpose". And as it is currently written, this answer does a really bad job in explaining how it relates to the OPs question, and the reference (advertisement) to a book instead of presenting an own explanation does not make it better. That's why I downvoted it. Commented Aug 7 at 7:27
-2

There is a psychological effect describing the power of habit that could spring the principle of "use the right tool for the job", the effect is called Eistellung effect:

Einstellung (German pronunciation: [ˈaɪ̯nˌʃtɛlʊŋ] i) is the development of a mechanized state of mind. Often called a problem solving set, Einstellung refers to a person's predisposition to solve a given problem in a specific manner even though better or more appropriate methods of solving the problem exist.

(according to wikipedia)

When a way of acting tuns to a habit it is going to seem the right tool for every job, it can also resemble the psychological prison that the attempt to escape from it tuns it to psychological clojure.

answered Aug 7 at 4:12
1
  • 1
    As it’s currently written, your answer is unclear. Please edit to add additional details that will help others understand how this addresses the question asked. You can find more information on how to write good answers in the help center. Commented Aug 7 at 5:23

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.