"User" was first regularly associated with the concept of narcotics starting in the first half of the 20th century. By the 1950s in the US, "drug user" became a legal term with a specific definition.
In sources prior to that (or at least those visible in Google Books), "users" tends to refer to either users of public roads or, earlier on, users of property. As "utilize" would be an appropriate verb to describe these people's engagement with roads/property, this usage seems straightforward.
My hunch is that the word "user" was a convenient, sanitized noun that would cover any drug and any manner of attaining a high. Separate legal categories of "drug injectors" and "drug inhalers", etc., would have been needlessly complicated and, from a legal point of view, an unnecessary distinction.
Software is similarly utilized in many different ways. The term "user" enables us to refer to one group of consumers, rather than having to group users based on what type of software they use or how they use it.
customer
implies a person who is paying.. I don't think it would apply to software development as a LOT of things are done for freecustomer
is not theuser
, though thereuser
is usually replaced byconsumer
.