Software Architecture has ethical consequences

Source: Internet
Author: User

?

Software Architecture has ethical consequences

Michael Nygard

The ethical diMEnSion in software was obvious when we were talking about civil rights, identity theft, or malicious software . But it arises the less exotic circumstances. IF programs is successful, they affect the lives of thousands or millions of people. That impact can be positive or negative. The program can make their lives better or worse-even if just in minute proportions.
Every time I make a decision on how a program behaves, I am really decid-ing what my users can and cannot does, in ways More inflexible than law. There is no appeals court for required fields or mandatory workflow.
Another-think about it's in terms of multipliers. Think the last major of Internet worm, or when a big geek movie came out. No doubt, you heard or read a stories about what much productivity this thing would cost the coun-try. You can always find some analyst with a estimate of outrageous damages, blamed on anything that takes people away from th EIR desks. The real moral of this story isn ' t on innumeracy in the press, or self-aggrandizing accoun-tants. It's about multipliers, and the effect they can has.
Suppose you has a decision to make about a particular feature. You can do it with the easy-to-a day, or the hard-on-the-week. Which should do it? Suppose that's the easy-to-do makes four new fields required, whereas doing it's the hard-to-do makes the program smart enough to Handle incomplete data. Which should do it?
?
?? Required fields seem innocuous, but they is always a imposition of your on users. They force users to gather more information before starting their jobs. This often means they has to keep their data in post-it notes until they ' ve got everything together at the same time, res Ulting in lost data, delays, and general frustration.
As an analogy, suppose I ' m putting-a sign on my building. Is it OK to mount the sign just six feet up in the wall, forcing pedestrians to duck or go around it? It's easier for me-to-hang the sign if I don ' t need a ladder and scaffold, and the sign wouldn ' t even block the sidewalk. I get to save a hour installing the sign, at the expense of taking II seconds away from every pedestrian passing my stor E. Over the long run, all of those two-second diversions is going to add-to-many, many times more than the hour that I Saved.
It's not ethical to worsen the lives of others, even a small bit, just to make things easy for yourself. Successful software affects millions of people. Every decision you make imposes your would on your users. Always be mindful of the impact your decisions has on those people. You should is willing to bear large burdens to ease theirs.

Software Architecture has ethical consequences

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.