CSCE 190: Computing in the Modern World (Spring 2010)

Corequisites: CSCE 145, 204, 206, or equivalent

Meeting time and venue: T 1530-1620 in 300M B213

Instructor: Marco Valtorta
Office: Swearingen 3A55, 777-4641
E-mail: mgv@cse.sc.edu
Office Hours: MWF 11-noon, or by previous appointment.

Syllabus

Grading Policy

Reference Materials:

Current Departmental Syllabus

Objectives

This course is intended to provide you with the bigger picture of how computing fits into the modern world and why there is more to "computing" than just "programming." Unlike nearly everything else taught in the department, this will not be a highly technical course. We encourage you to participate in the discussions and ask questions. The course will involve several other faculty members at the department and external professionals working in the fields of computer science, computer engineering, and computer information systems.

Outcomes

Questionnaires

Beginning of course questionnaire, with answers to the factual questions.

Notes

  1. Computing Curricula at USC
  2. Computer Security and Information Assurance, lecture by Dr. Csilla Farkas, given on 2010-01-26
  3. Artificial Intelligence
  4. The CEC Satellite Office of the USC Career Center
  5. Trends in the Infrastructure of Computing: Processing, Storage, Bandwidth, lecture by Dr. Jason Bakos, given on 2010-02-16
  6. Computing Challenges in Robotics by Dr. Jason O'Kane, given on 2010-02-23
  7. Research Methodologies in Computing, lecture given on 2010-03-01
  8. Some Pattern of Reasoning and Bayesian Networks, lecture given on 2010-03-16
  9. Notes from lecture of 2010-03-16
  10. Two Examples of Uncertain Reasoning with Bayesian Networks (Icy Roads and Wet Lawn), used in the lecture given on 2010-03-16
  11. Introduction to Logic Programming, used in the lecture given on 2010-03-23
  12. Introduction to Functional Programming, used in the lecture given on 2010-03-30
  13. Key Traits of a Good Software Developer, lecture by David Dunn, Founder and CEO of VC3, 2010-04-20

Quizzes and In-class Exercises

Homework and Projects

Points per assignment.
  1. (HW1, due Tuesday, January 19, 2010) Write an essay about definitions of Computer Science. Search for several of them. Choose at least three of them. Write a 3-page essay, double-spaced, in 12-point font, in which you describe the definitions you chose, compare them, and conclude with an argument for one of the three definitions and, if you like, your own improvements to that definition. References must be listed after the conclusion and cited in the main text. Quote appropriately. Do not plagiarize!
  2. (HW2, due Tuesday, February 2, 2010)
    1. Argue against internet censorship at the national level. Write a 1-page essay, double-spaced, in 12-point font.
    2. Argue in favor of internet censorship at the national level. Imagine that you are a government official in a foreign country and need to justify your country's policy of internet censorship for the general population. Write a 1-page essay, double-spaced, in 12-point font. You may like to search for information on the censorship policies of countries that actually do it and see what justifications they give. (You may feel that internet censorship is bad, but please do this assignment as requested.)
    3. Turn in your work, containing both essays, as a single stapled document.
  3. (HW3, due Tuesday, February 9, 2010) Write a 2-page essay, double-spaced, in 12-point font, as follows. Read Turing's original paper on AI: Alan Turing. Computational Machinery and Intelligence. Mind, 59, 433-460, 1950. List the arguments against artificial intelligence written in section 6 of Turing's paper. (The paper is linked to the course web site.) Choose three of the arguments and describe them in detail. Do you agree with Turing's conclusion? Argue for or against.
  4. (HW4, due Tuesday, February 16, 2010) Choose a company where you would like to apply for a position. Write:
    1. A one-page overview of the company
    2. A one-page overview of the position that you would apply for
    3. A one-page resume geared towards that position
    4. A half-page essay on what you need to learn or do to be competitive for the position
    5. Attend the SET Career Fair on Monday, February 15 and write a half-page essay describing your experience
    6. Register on Jobmate at the USC Career Center. Write a statement that you registered on the first page of your homework submission document.
  5. (HW5, due Tuesday, April 20, 2010) Choose three topics of professional interest from ACM TechNews archives. Each should include a non-trivial ethical issue and a non-trivial technical issue. For wach topic, write a 1-page, single-spaced paper in which (1) you summarize the topic (with appropriate references), (2) you describe the main technical issue(s) that was solved, (3) you describe at least one ethical issue raised by the topic, (4) you identify one issue that makes practical (commercial or otherwise) application difficult, (5) you identify one technical issue that you would like to contribute to solve and would advance the state of the art in the area of the topic you chose.
  6. Make sure that you have grades for all homework assignments: (1) check blackboard; (2) submit late; (3) resubmit for better grade, although I do not guarantee that I will change previous grades!

Lecture Log

The USC Blackboard has a site for this course.

Some Useful Links

  1. Norman Matloff's Introduction to the vi Text editor
  2. Norman Matloff's Unix Tutorial Center
  3. New USC and CEC Student E-Mail System!
  4. ACM Citation Style and Reference Format. (Note that this does not specify how to refer to web documents.)
  5. IEEE Citation Style Guide
  6. Another IEEE Citation Style Guide
  7. Two papers related to the presentation on cybersecurity and information assurance by Dr. Csilla Farkas:
    1. Bruce Schneier, "U.S. enables Chinese hacking of Google," CNN Opinion, Jan. 2010.
    2. Monica Chew Dirk Balfanz Ben Laurie, "(Under)mining Privacy in Social Networks," in Proceedings of Web 2.0 Security and Privacy 2009.
  8. Information Systems Security Association
  9. Alan Turing's ``Computing Machinery and Intelligence,'' Mind, 49 (1950), pp.433-460 , in HTML format.
  10. A panel discussion about Artificial Intelligence, from the Charlie Rose show
  11. Career-related links
    1. Career Center at CEC
    2. Career Center at USC (main site)
    3. ACM Career and Job Center
    4. ACM CareerNews
    5. ACM Computing Degrees and Careers Guide
  12. Links concerning professional codes of ethics
    1. The ACM Code of Ethics and Professional Conduct
    2. The Software Engineering Code of Ethics and Professional Practice
    3. The Ten Commandments of Computer Ethics (from the site of Computer Professional for Social Responsibility)
    4. Gotterbarn, D. and Miller, K. W. 2004. Computer ethics in the undergraduate curriculum: case studies and the joint software engineer's code. J. Comput. Small Coll. 20, 2 (Dec. 2004), 156-167.
    5. Local copy of the above.