Software developers have a responsibility not to harm users
Share on Twitter.
Get the most reliable SMTP service for your business. You wished you got it sooner!
October 10, 2014
On any given day, software developers should not be content with just writing code that works well and
is user-friendly-- they also have a responsibility not to harm their users, say Agile development
experts Martin Fowler and Erik Do¨Rnenburg, speaking at the Goto Aarhus conference in Denmark last week.
Fowler was among the signatories of the 2001 Agile Manifesto, part of the movement to promote
incremental and collaborative software development rather than setting an industry specification and
then throwing it over to programmers for coding.
As a software firm, Agile has been influential, to the extent that most software projects
today claim to adopt it, but Fowler says that his biggest disappointment is that software is
still mostly designed by analysts rather than being truly collaborative.
A key Agile concept is that all stakeholders participate in the process, including the users.
Creating software that encourages users to do things that aren’t in their interest is not Agile.
It is a “dark pattern”, says Fowler. Examples include ecommerce sites that add insurance to your
purchase without asking, or printer drivers that refuse to print even when there is ink in the
cartridge because the vendor thinks you should buy a new one after a certain number of pages.
“The developer who wrote that code is every bit as responsible as the person who told them to do
it. You have a choice. You have a responsibility to ensure that your users are well treated and
to reject dark patterns,” says Fowler.
“We have a whole profession of people writing software and doing enormous things to change the way
we live in the world,” he added.
Spending a bit more on ink is one thing, but the more serious issue is the emerging surveillance
culture, argue Fowler and Do¨Rnenburg.
“What we do online is often tracked to a pretty high extent at times, and a lot of it by commercial
organizations,” says Fowler. Privacy is constantly undermined. “We are trained to think that privacy is
a special need. The default is everybody can observe everything. Privacy should be the default. The
tracking should be something that is out of the norm,” says Do¨Rnenburg.
“And worse, most people think this doesn't matter when it really does, either because they have nothing
to hide, or simply because they believe they aren't interesting to those who might be observing them. This
is a false argument, they argue, because there are people for whom it does matter-- “the kind of people that
annoy and bother those that are powerful. One example is an investigative journalist,” says Fowler.
He added “Those people are essential to the operation of a free society. If we don’t have investigative journalists
rooting out corruption, how do we know how to vote intelligently?”.
One of the core problems is that so much data passes through the internet without encryption. “The
responsibility is on us as a profession, says Do¨Rnenburg. “It is simply naïve that we created protocols
like email and HTTP that transmitted everything in plain text. We as technologists have taken the easy
way out. Then we blame the users and tell them to install this or that plug-in. We need to make it so
easy to use that normal users do not need to do anything special.”
Fowler and Rnenburg are promoting an open source project called Pixelated which does encrypted
email. Another issue is centralization, they say. “If you look at the history, first everything was
heavily centralized in the mainframe era, then we had a level of decentralization with the client-server
model , and then with the cloud platforms you’re going back to a different kind of centralization,” said
ThoughtWorks CTO Rebecca Parsons.
“When you are looking at a surveillance surface, there are only a small number of places to go to.
With email, with Salesforce, you’re getting a massive centralization there. So you have to ask yourself--
is that a good thing after all?”
Parsons added that “the extent of decentralization is something that can be considered when
architecting a solution to a problem. You can use peer to peer architecture rather than a more
Source: The Goto Aarhus Conference.
Get the most dependable SMTP server for your company. You will congratulate yourself!
Share on Twitter.