CS 475 - Spring 2021

Please check back periodically. During the course of the term, I will add reading assignments, suggest discussion questions to help you prepare for class, and upload handouts.

General information

Here is the course syllabus.
Here are some tips on critical reading to help you prepare for class discussions.

Schedule

W 1/20
  1. Why do computer scientists write? Why do we read what they write?
  2. What is computer science?
  3. How has your study of computer science helped you to think and understand the world?
  4. What has been your most useful (or favorite) non-computer science class? Why?
  5. Why did you major in IT or CS? What are the benefits?
F 1/22, M 1/25 Let's briefly talk about courses in the CS department that you took, that perhaps other people in the class have not. In other words, we will review what might be called the "computer science knowledge base." Along the way, we can see what major concepts recur in several classes. I have decided to assign teams representing each intermediate or advanced course. Your group will have roughly 5 minutes to tell us what are the major ideas and activities in the course. The teams are as follows. Generally, each of you is on two teams. Check your e-mail to see which teams you are on.
  1. CS 231 Computer Organization
  2. CS 261 Discrete Structures
  3. CS 270 Computational Humanities
  4. CS 271 Morals, Law and Society in a Digital Age
  5. CS 272 Big Data
  6. CS 341 Database Management Systems
  7. CS 346 Operating Systems
  8. CS 347 Human-computer Interaction
  9. CS 348 Game Programming
  10. CS 361 Information Structures
  11. CS 362 Information Security
  12. CS 364 Compilers
  13. CS 461 Computational Theory
W 1/27

To help you prepare for this discussion, please look over these documents:

The 4 thinking hats written by Dr. Abernethy.

A list of desired qualities mentioned by graduate schools on their recommendation forms.

  1. What do graduate schools and employers look for? (Hint: Someday you will write a book. What will it be about?)
  2. What is the technological message in "Singin' in the Rain" ?
  3. Consider the career of someone now retiring, e.g. 1978 to 2021. What has been the biggest change in that person's working life? What kinds of adaptations have been necessary? For example, Blockbuster Video lasted 1985 to 2010.
  4. What is our reputation? Has it changed?
  5. How do we become good ambassadors of our discipline?

There are whole books on the nature of working with people. If you are interested in learning about this subject in much greater depth, here are a couple of practical titles: How to Win Friends and Influence People (1936) by Dale Carnegie and Managing with Aloha (2016) by Rosa Say.

F 1/29 Please form teams of 2-3 people. Select a decade of computer history. For example, consider:
  1. What important pieces of hardware and software were made in the period?
  2. Consider long term influences, legacies that continue long after the period. What trends came about?
  3. Did anything get discarded?
  4. How do we look up this information?
M 2/1 Let's look at how the undergraduate computer science curriculum has evolved. Our professional organizations, ACM and IEEE, recommend a common curriculum. The first proposed curriculum was published in 1965, with revisions in 1968, 1978, 1991, 2001, and 2013. Please review these documents to prepare for the following discussion questions.
  1. What was the impetus for creating a recommended curriculum? What motivated the revisions?
  2. How have the recommended introductory and programming courses changed over time?
  3. What other core or required courses for the major have the curricula recommended?
  4. What elective courses did each curriculum highlight?
  5. What non-CS courses did the curricula expect students to take?
  6. Between 1965 and 2013, what has not changed? What has disappeared? What has taken its place?
  7. What do you find surprising about the changes?
  8. Select your favorite college other than Furman. When did they begin teaching computer science?

You might find this data table interesting. It shows the number of people earning degrees in computing in the US from 1971 through 2018. Notice the up and down trends.

W 2/3, F 2/5, M 2/8 Since this is a writing and research course, it is worthwhile to briefly examine various areas of research in computer science. Research is the bread and butter of major (R1) universities. This document, which I found from an R1 computer science department, identifies many research areas. For each area, major conferences are listed. In case the link above fails, here is an archived version of the document.

I would like each of you to select one area listed in that document, and report to the class:

  1. Look for recent proceedings or Web sites of the top tier conferences identified in the document. Which colleges are active in this area? For example, in the most recent conferences, which colleges published papers in the top-tier conferences?
  2. How difficult is it to publish in these conferences? In other words, the number of accepted papers versus the number of submissions. You can usually find this information in the preface of the proceedings or in a welcome message on the conference Web site.
  3. What is the name of an IEEE or ACM journal that publishes articles in this research area? Try to find at least two. Hint: You might find names of journals if you look at bibliographies of papers.
  4. For how long has this research area existed?
  5. How much does it cost to attend a (top tier) conference in this area? How much does a journal subscription cost?
W 2/10 Let's read some articles!

The first one we will discuss is: The Fortran Automatic Coding System, Western Computer Conference, February 1957, 12 pp.

F 2/12

No Silver Bullet: Essence and Accidents of Software Engineering, Computer, April 1987, pp. 10-19.

M 2/15

A Spiral Model of Software Development and Enhancement, Computer, May 1988, pp. 61-72.

W 2/17

What Is Your Software Worth?, Communications of the ACM, September 2006, pp. 61-72.

F 2/19

Why Google Stores Billions of Lines of Code in a Single Repository, Communications of the ACM, June 2016, pp. 78-87.

Topic due today. In 1-2 paragraphs, describe the project you want to work on this term.

M 2/22

Hypnotized by Lines of Code, Computer, January 2021, pp. 42-48.

W 2/24

Understanding Search Engine Optimization, Computer, October 2015, pp. 43-52.

F 2/26

Big Data's Big Unintended Consequences, Computer, June 2013, pp. 46-53.

Bibliography is due today. Identify five quality references to support your research project.

M 3/1

Who am I? Analyzing Digital Personas in Cybercrime Investigations, Computer, April 2013, pp. 54-61.

Research Strategy Sessions:
Please make an appointment this week so we can discuss your individual research project. Let's plan for a 30-minute appointment. I am available 8:00 a.m. to 5:00 p.m. on Tuesday and Thursday this week. We'll meet over Zoom using the Office Hour appointment code.

W 3/3

Blockchain Technologies: the Forseeable Impact on Society & Industry, Computer, September 2017, pp. 18-28.

F 3/5

The Emergence of Edge Computing, Computer, January 2017, pp. 30-39.

M 3/8

Strategic Thinking, by Jim Blakley, 2006. We don't have time to read all of it, so focus just on the "Analysis" section, pages 11-44. This reading assignment is a little long, but I will make up for it on Friday!

Announcements:

  1. Starting next week, each of you will select an article and moderate discussion. Suggested articles can be found on our Box account. When it is your turn, you must announce 48 hours in advance what the article is so everyone will have time to prepare.
  2. In support of your research project, I would like each of you to prepare an extended abstract of 500-750 words describing what progress you have made, e.g. describe related work, what analysis you are working on, and preliminary findings. The deadline for this report is March 31.

F 3/12

Technology Addiction, Health Matters, University of California - San Diego, 2014.

M 3/15

"The History of Digital Spam," Communications of the ACM, August 2019, pp. 82-91.

W 3/17

"Cloud Futurology," Computer, September 2019, pp. 68-77.

As you read, focus on the historical development of the cloud, its applications, and its future opportunities.

F 3/19

"Peering Into the Pandemic End Game," IEEE Spectrum, January 2021, pp. 22-25.

"This Is How to Vaccinate the World," IEEE Spectrum, January 2021, pp. 32-37.

M 3/22

"The Life of a Data Byte," Communications of the ACM, December 2020, pp. 38-45.

W 3/24

"Toward Smart Manufacturing: Key Technologies and Trends Driving Standardization," Computer, April 2020, pp. 46-50.

F 3/26

Sections 2.5, 2.6, 2.8, 2.9, and 2.10 from Ethics of Artificial Intelligence and Robotics, Stanford Encyclopedia of Philosophy.

M 3/29

"Does Facebook Use Sensitive Data for Advertising Purposes?", Communications of the ACM, January 2021, pp. 62-69.

W 3/31

"On-skin Interactions Using Body Landmarks," Computer, October 2017, pp. 19-27.

M 4/5

Wearable technology:

"Bypassing Paralysis," IEEE Spectrum, February 2021, pp. 28-33.
"Look into My Eyes," IEEE Spectrum, August 2017, pp. 38-43.

W 4/7

"Real-Time Video Analytics: The Killer App for Edge Computing," Computer, October 2017, pp. 58-67.

F 4/9

"IT Risk and Resilience - Cybersecurity Response to COVID-19," Computing Edge, October 2020, pp. 12-18.

M 4/12

"Green AI," Communications of the ACM, December 2020, pp. 54-63.

T 4/13

Furman Engaged poster presentations, 10:45 - noon.

W 4/14

Using Coevolution to Understand and Validate Game Balance in Continuous Games, GECCO '08: Proceedings of the 10th Annual Conference on Genetic and Evolutionary Computation, July 2008, pp. 1563-1570.

F 4/16

General discussion of some recent issues in computing.

M 4/19

Presentations begin!

  • Optimal team composition
  • Offensive strategy in basketball

Senior dinner tonight

W 4/21

  • Self-driving cars and urban inequality
  • Fourth industrial revolution

F 4/23

  • A.I. and the workforce
  • Programming languages at work

M 4/26

  • Emotion recognition
  • Whiskey recommendation system

Note: Final draft of paper is due on Tuesday, 4/27.

S 5/1

  • Divide-and-conquer for dominating sets of vertices
  • Moore's Law and Beyond
  • Replacing Your Doctor
  • Journalistic Vocabulary and the GRE
  • NBA Three-Point Shots

     

Here are a few statistics about the status of the computing profession that may interest you.