DEV Community

loading...

Is it valid to ask end-users (desktop) to install JRE, Chrome, or programming languages?

Pacharapol Withayasakpunt
Currently interested in TypeScript, Vue, Kotlin and Python. Looking forward to learning DevOps, though.
・1 min read

What about telling them not to use IE?

Discussion (4)

Collapse
savagepixie profile image
SavagePixie • Edited

I think these are two different questions. In the title, you're asking your users to install one specific thing in order to use your product. In the body, on the other hand, you're asking them not to use one specific thing. So while in the first question they need X to use your product, in the second they need anything but X, which is far less restrictive.

In the end, it all depends on your product and your target audience. If there are other competing products and yours is more restrictive, that'll probably cost you users. If your product meets a very niche need of a very specific group, then it's probably easier to get them to install a specific product in order to use yours.

In general, though, I think the less restrictive you are the better. Unless, of course, your target audience already meets your requirements. It's one thing to make a website that only runs on Internet Explorer and throw it to the open world. But if your website is intended for a community that already uses Internet Explorer, then it's a whole other matter.

Now, if you're asking about ethical or moral implications, I think that so long as you're upfront with your product's requirements and allow the users to make an informed choice, asking them to use/not use X to use your product is fine. (Don't advertise your product as "running on almost every OS" if it only runs on MacOS and PonyOS)

Collapse
thijs0x57 profile image
thijs0x57

Depends on the project. If you are a government you should make the product compatible with almost anything. If your target group are developers I think you could say that they should use newer and updated browsers for optimal usage.

Collapse
v6 profile image
πŸ¦„N BπŸ›‘ • Edited

This is sort of a variant of the accessibility question. And it's a matter of product management.

It's "valid" to ask them to install a non-PKCS#11 compliant HSM, sacrifice a newborn Le Potato under the full moon in homage to an obscene Aztec ritual, follow well reasoned production hardening guidelines, and (more likely) in the ultimate frustration of access, ask them to pay millions of dollars.

The motivations for such things can range from well meaning avoidance of "foot guns" in products, all the way to intentional effort$ at incompatibility.

Are they gonna do it? Maybe.

Is it a good idea? Not if it can be at all avoided, because it's better for everybody if things just do what they say on the tin. That's the motive behind many of the principles of the design of Python, HashiCorp Vault, and toys whose manufacturers thoughtfully include a warranty and some cheap batteries in the blister pack. If your application has misleading defaults and is easy to accidentally use wrong, those failure modes aren't your fault. And unless we want to make some sort of huge chilling effect on the industry, we shouldn't consider them your fault. But some schmawt boiz at companies like HashiCorp still consider those failure modes annoying and common enough to be worth coining the term "foot guns."

See, it just so happens that it's also valid for all them users to tell the devs to "The power of Stallman compels thee! Go back to the subreddit from whence thou came, demon!"

Collapse
karandpr profile image
Karan Gandhi

The best thing you can do is create an instruction manual for your application. You can mention your application requirements in prerequisites section. And mention that IE is not compatible in "Dos and Don'ts" section.