[SIGCIS-Members] Programmer vs. coder vs. sofware developer vs. software engineer

thomas.haigh at gmail.com thomas.haigh at gmail.com
Tue May 5 14:18:59 PDT 2020


Here is a sneak preview of our coverage of that story from chapter 13 of the
revised History of Modern Computing. As obsessive list-watchers may
remember, I've been working with Paul Ceruzzi on a new edition of his
classic overview history. The book is about to enter copyediting and
production at MIT Press. (more on the project at
https://www.mediacoop.uni-siegen.de/wp-content/uploads/Working-Paper-Series-
No-3.pdf)

 

The effect of all these new tools was to make the development of a major
interactive website a much cheaper and faster proposition in the 2010s than
it was in the 1990s, despite the enormously greater complexity of modern
websites. This put a huge premium on programmers able to work with the
particular blend of technologies needed for a project. Startups particularly
prized the "full stack developer" whose skills extended from operating
systems through databases, server code, and browser-based code, to interface
design, requirements analysis, and project management. Such creatures were
rare, some said almost non-existent, but the search for them signaled a
shift from the old corporate model of systems development with large,
specialized teams. 

The shift was accompanied by a tendency of skilled programmers to identify
as "coders," and a new industry of "coding boot camps." Back in the 1950s
"coding" had been identified as the most routine, and worst paid, aspect of
programming. That work was soon automated by software tools and the job
title dwindled during the 1960s. Title inflation followed - programmers were
called "analysts" or "software engineers". The programming staff at firms
like Google are usually called engineers, despite efforts by the engineering
professions to reserve the word for people with actual engineering
credentials. The word "architect" was eventually applied to almost every
part of the system development process, perhaps spurred by design expert Don
Norman's high profile appointment as Apple's "User Experience Architect" in
1993. This similarly enraged real architects. According to a 2010 report,
the "down economy has only sharpened their displeasure, as thousands of un-
and underemployed architects sift through job listings for software
architects, systems architects, data architects, and information architects:
in short, every kind of 'architect' except their own kind."[i] 

"Coder," in contrast, was an aggressively unpretentious identify celebrating
the practical business of sticking together computer instructions. Perhaps
IT development work has now reached a level of pay and respect that efforts
to appropriate job titles from better established professions will no longer
be necessary. A New Yorker article from 2014 suggested that elite developers
were the new rock stars or professional athletes, able to earn huge sums
negotiated by slick agents.[ii]

Tom

 

 

 

-----Original Message-----
From: Members <members-bounces at lists.sigcis.org> On Behalf Of McMillan,
William W
Sent: Tuesday, May 5, 2020 2:51 PM
To: members at sigcis.org
Subject: Re: [SIGCIS-Members] Programmer vs. coder vs. sofware developer vs.
software engineer

 

Thanks to those who sent suggestions for background info on this topic!

 

My own interest in the history of computing is really more about
understanding the present, and my concern about the use and misuse of
professional titles, though informed by history, leads to questions such as:

 

- Why do we call programmers and software developers coders nowadays, when
that term has long been used to label those with quite limited intellectual
involvement in software development, and even considered to be carrying out
a clerical task (as explained well in Nathan's book)?

 

- Why do we apply the term software engineer to those who can program, but
who really know very little about software engineering in the broader sense?

 

To me this suggests that our society, and the enterprises that create the
software we use, have extremely limited understanding of software
development and what it entails. This is a failure of those of us who teach
computing and software engineering and maybe of professional societies.

 

The risks to society are immense. Imagine if a machinist or even a
self-taught tinkerer could adopt the title mechanical engineer at will and
be tasked with designing the critical devices of our civilization. Or if
anyone with some knowledge of biochemistry could serve as a pharmacist?

 

Maybe SIGCIS members don't believe that this topic belongs on this list, but
I feel that historians might be better positioned to address it than many in
the technical and commercial communities who are consumed by immediate
demands, and who have very limited understanding of their profession's past.

 

OK, end of rant!

 

Thanks,

Bill 

 

________________________________________

From: Members [members-bounces at lists.sigcis.org] on behalf of McMillan,
William W [william.mcmillan at cuaa.edu]

Sent: Monday, May 04, 2020 11:28 AM

To:  <mailto:members at sigcis.org> members at sigcis.org

Subject: [SIGCIS-Members] Programmer vs. coder vs. sofware developer vs.
software engineer

 

Hello, SIGCIS folks.

 

The ruminations below might have little scholarly importance, but I think
the subject is interesting at least in regard to the culture of computing.

 

What do we call people who design and implement computer programs?

 

Nowadays, the term coder is used, maybe most often. My understanding is that
this used to refer to the job of translating a detailed flow chart, which
was created by a programmer, into an implementation language. I.e., the
coder was sort of like a human compiler who translated a detailed algorithm
into a computer language like Fortran, Cobol, or assembly language. The
coder didn't design algorithms.

 

Later, the coder dropped out of the loop and a programmer implemented
algorithms directly in a computer language (possibly after creating a flow
chart or pseudo-code).

 

The term software developer has been used, possibly implying that the job is
broader than just programming, including gathering requirements, testing,
and integration with existing systems.

 

Starting in the late 1960s, the title software engineer became common. At
least initially, this implied a very broad scope, as well as specialized
training in requirements analysis, system design, programming style,
verification and validation, risk assessment, maintenance techniques, UI
design, and other aspects of software development. I believe that Texas even
licenses professional engineers in software engineering, and a detailed
curriculum has been defined:

 <https://www.acm.org/binaries/content/assets/education/se2014.pdf>
https://www.acm.org/binaries/content/assets/education/se2014.pdf

 

The title software engineer implied that the person at least had a solid
university course specifically in software engineering, as well as a good
foundation in computer science or information systems.

 

The term systems analyst sometimes implies a similar role, though it might
mean something more akin to requirements analysis.

 

Currently, anyone who writes computer programs might identify as a software
engineer, even if he or she has no background beyond computer programming.
Companies use the title willy-nilly. This inflates the prestige of the job,
I suppose.

 

At the same time, we call developers coders, which to me sounds like it
deflates prestige.

 

What professionals call themselves does matter. If a medical assistant calls
himself a physician, the risks are obvious. If a physician (true software
engineer) calls herself a technician (coder), then at least confusion
results. Of course governments regulate the use of job titles in medical
professions, while software development as it exists today is very
libertarian.

 

Has there been much consideration of the common use of job titles in the
history of computing? Certainly there's been a lot of work in the history of
software engineering, programming, systems analysis, etc., but I'm asking
about the use and misuse of job titles by individuals and organizations.

 

Thanks.

Bill

 

_______________________________________________

This email is relayed from members at sigcis.org, the email discussion list
of SHOT SIGCIS. Opinions expressed here are those of the member posting and
are not reviewed, edited, or endorsed by SIGCIS. The list archives are at
<http://lists.sigcis.org/pipermail/members-sigcis.org/>
http://lists.sigcis.org/pipermail/members-sigcis.org/ and you can change
your subscription options at
<http://lists.sigcis.org/listinfo.cgi/members-sigcis.org>
http://lists.sigcis.org/listinfo.cgi/members-sigcis.org

_______________________________________________

This email is relayed from members at sigcis.org, the email discussion list
of SHOT SIGCIS. Opinions expressed here are those of the member posting and
are not reviewed, edited, or endorsed by SIGCIS. The list archives are at
<http://lists.sigcis.org/pipermail/members-sigcis.org/>
http://lists.sigcis.org/pipermail/members-sigcis.org/ and you can change
your subscription options at
<http://lists.sigcis.org/listinfo.cgi/members-sigcis.org>
http://lists.sigcis.org/listinfo.cgi/members-sigcis.org


  _____  

[i] {Hurley, 2010 #6635}

[ii] {Widicombe, 2014 #6625}.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.sigcis.org/pipermail/members-sigcis.org/attachments/20200505/b2b920ac/attachment.html>


More information about the Members mailing list