CSE 151 Computers, Computer Science, and Society (3 credits)

Catalog description:

Perspective on the potential and limitations of computing technology. Topics include problem-solving in computing, computers as thinking machines, and the impact of computing on societies. Exposes students to programming languages and various computer tools.

Prerequisite:

None

Course Objectives:

  • Develop an understanding of the field of computer science.
  • Understand binary representation of information.
  • Understand a model of computation and its implications.
  • Experience the use of computer programming tools to illustrate the power and flexibility of computer problem solving paradigms.
  • Develop a perspective on the potential of computing technology.
  • Discuss ethical issues relating to use of computers in society.
  • Understand the impact and relationship of computing on societies.

Miami Plan:

MPF - Group V foundation course

Required topics (approximate weeks allocated):

  • The discipline and history of computer science (1)
  • Technology and world views (.5)
    • the influence of technology on individual's and society's world view
  • Information representation (1-2)
    • binary and hexadecimal number systems
    • numbers, text
    • images, sound
  • Models of computation (3-4)
    • Boolean logic
    • machine architecture
    • Turing machine
  • Problem solving (4-5)
    • algorithms
    • computer programming - machine, assembly, high-level languages
    • program translation
  • The potential and limitations of machines (1-3)
    • artificial intelligence, speech recognition, virtual realities
    • emerging technologies
  • Ethics (1)
    • sets of ethical principles
    • application of ethics to computing technology
  • Impact of computers on society (1)
  • Exams/Review (1)

Course Outcomes

1: To have an appreciation for the history of computing.

1.1: The student can describe the key events and people in the history and development of the field of computer science.

2: To have a working understanding of computing hardware.

2.1: The student can distinguish among components of typical computer hardware.

2.2: The student can apply the rules for Boolean logical operators.

2.3: The student can distinguish between switches, gates, and circuits.

2.4: The student can combine gates to create simple circuits.

2.5: The student can explain the fetch-execute cycle for a single processor.

3: To be able to apply computer languages and algorithms to solve problems.

3.1: The student can demonstrate the process of developing high level algorithms using pseudocode or flowcharts.

3.2: The student can design a web page that displays static information.

3.3: The student can create a web page that displays static information.

3.4: The student can use a high-level programming language to perform a basic task.

3.5: The student can work with other students to create web pages or a computer program.

4: To be able to describe the implication of computer technology on society.

4.1: The student can describe the ethical issues relating to use of computers in society.

4.2: The student can describe the impact of computing on societies and different cultures.

4.3: The student can describe the different forms of intellectual property rights.

4.4: The student can use a scripting language to create a dynamic web pages.

4.5: The student can use a simple assembly language to perform a basic task.

4.6: The student can collaborate with other students to fully describe the implications of computer technology on society.

4.7: The student can describe current events related to computer technology.

5: To be able to describe significant concepts in computer science relevant to modern society.

5.1: The student can describe the major concepts in some fields of computer science, such as, computer architecture, networks, database systems, encryption, game engines, operating systems, digital circuits, pattern recognition, speech recognition, virtual reality, and robotics.