CSC321.01 2016F, Class 18: Codes of Ethics, Revisited
=====================================================

_Overview_

* Preliminaries.
    * Admin.
    * Upcoming Work.
    * Questions.
* Writing prompt.
* Codes of ethics, revisited.
* Planing for the paper.

Preliminaries
-------------

### Admin

* 10/10 PSA.
* Q on 10/10.  No one has received schedules.
    * Suggestion: Sam should host a game night.  Sam will consider.
* Q on class timing.
    * The 322 model is inconvenient for people doing 321 and 322 across
      different semesters.

### Upcoming Work

* Reading for Friday:
    * Wikipedia on UML.  <https://en.wikipedia.org/wiki/Unified_Modeling_Language>
    * SaaS: 11.2 (Just enough UML)
* Reading Journal for Friday (due Thursday at 11pm)
    * Subject: Reading Journal for Class 19 (Your Name)
        * What do you see as particular values of using UML?
        * What challenges do you see in using UML?  (That is, why
          might teams choose not to use UML.)

### Good Things to Do

See <http://www.cs.grinnell.edu/~rebelsky/s2d@g/>

* Grinnell Prize Events this week.  (Too many to list.)
* Book sale!
* Voter Registration.

### Questions

Writing Prompt
--------------

Write a short essay reflecting on some ethic of software engineering (e.g.,
ethics of software engineering as a service).

Due: Friday, two weeks after break.

Parameters

* Address your question from the perspective of a software engineer or entrepreneur (not a user).
* Write approximately 400-800 words. Your essay should be tight: Don't waste words!
* Cite at least two of the assigned readings (from the two sets of readings) and at least three additional sources.
    * Your additional sources could be our textbook or a reading from another, relevant class.
    * Your additional sources could be a research article, magazine article, news article, or even a substantial blog post. The ACM magazines are all good sources, depending on your topic of interest.
* Use APA or ACM style for your citations.
* Use a 10-12 point font and double spacing (about 2-3 pages). Do not use a separate cover page.
* Submit the final version of your essay via email to me by 11:00 p.m. on November 24.
* You will have the opportunity to revise your essay once.
* I will retain a copy of the final version of your essay for the departmental 
  discussions on writing in the CS curriculum and ethics in the CS curriculum.

Codes of Ethics, Applied
------------------------

Where should ethics of computing professionals fit within the Grinnell CS
curriculum?

* We are doing a very abbreviated version in this class.  (We are reading
  some particular pieces, but not particularly deep pieces.)
* Should we regularly ask people to evaluate their work in terms of the
  ACM code of ethics, or to assess the work of others?
* If we introduced it more in 151 and 161, we might attract a wider 
  variety of people.  (E.g., noting that there is confirmation bias across
  the Internet.)  Talk about the implicit outcomes of the things you can
  do and can see.
    * Do it early and intersperse it.
* It needs to be introduced somewhere.  Here is good.  But a separate
  ethics elective would be better.
    * Maybe a joint CS/Philosophy course.  (Or does TEC 154 do that?)
* Add selected ethics courses to each course.  (E.g., emphasize the
  ethics of citation and documentation in 151, ethics of low-level code
  in 161, computing for the common good in 207, ...)
* Applied ethics vs. philosophical foundations.  
* Or mandatatory lectures.
* Ethics extra (as an extra credit thing).  
* CS Table seems to be applied ethics, rather than deep ethics.  So we
  should look at deeper ethical foundations.  If you are going to talk
  about computing for the common good, you need a deeper understanding
  of the common good.
* Worry: 151 and 161 are really packed.  Can we really add something?
  So a separate course.
* Could we require an ethics course from outside the department, or evolution
  of technology, or ...?
* Is it ethical to require ethics?
* Many people won't go to exra sessions.  And is a few hours enough.
  Grinnellians are busy.
* Integration into the curriculum makes it more available to a lot of
  students and shows the value.
* It's valuable down the road, so even if students don't see it as 
  valuable now, they'll realize it down the road.
* More CS heroes ... maybe posters and such.  "This is a Grinnell Computer
  Scientist" and how they make a difference in the world.
* Claim: We can fit one class in ethics in 151.  
* Maybe 321 is the best spot for ethics, since it's the first time that
  you are really dealing with clients.  (Maybe earlier in the semester.)
    * But lots of other classes deal with ethical issues.
* CSC 207 is often what people use as the basis of internships, so it's
  important that they get it there (or before there).
* Focus on the ethics related to their context!

Suppose you had one day of 151 and wanted to help students learn ethics.
What would you do?

* Talk more clearly about how documentation and academic honesty are 
  ethical issues, and then revisit throughout the semester.
* Have students read the ACM code of ethics, and throughout their 
  career ask them how the code of ethics applies.
* In order to take this seriously, people need concrete examples.
  (Applied ethics.)  So pick a few case studies and discuss the
  case studies.  The purpose is to get their attention.  Take a day
  in each class.
* Example of Jerod having students talk about the academic honesty
  handbook.  (What are relationships between academic honesty and
  ethics?)
* Teaching ethics could help students see how the 151 stuff fits in
  a broader context.

What do you see as issues in the ethics of SaaS?

Preparing for Essay
-------------------

Five minutes of personal brainstorming, than group sharing.
