Course Goal: An introductory course for the (new) undergraduates in the computer science department. The first half covers the core CS fundamentals required by the department — data manipulation & abstraction, Boolean and sequential logic, and computer arithmetic (ALU) — building a solid foundation in how computers work at the hardware level. The second half extends beyond the department requirement to give freshmen an early, full picture of the field: software tools and project workflows (Python, Git), computer architecture, operating systems and networks, databases, and a bridge from machine learning to artificial intelligence. Alongside the technical content, students are encouraged to begin exploring their own career direction and professional development early on, so that internship-ready technical skills grow alongside a clearer sense of their own career direction.

Lecturer: Winston Hsu (office: R512, CSIE Building)

TAs:

Time: 9:10am ~ 12:00pm, Monday

Location: RM 101, CSIE Building

Info: 課號CSIE1000; 課程識別碼: 902 10720

Assessment (tentative):

  • Assignments: 25–30%
  • Midterm Exam: 30–40%
  • Final Exam: 30–40%
  • Class Participation: 5%

Exam Policy: Midterm and Final exams are closed-book, no electronic devices.

Homework Policy: Homework is meant for practice — please complete it by your own hand. Discussion with others is fine, but the work you submit should be your own.

Requirements: 限學號單號且限本系所學生(含輔系、雙修生) (總人數上限:85人)

Textbook (digital copy available):

Reference:

  • Computer Science: An Overview, 12th Edition, by J. Glenn Brookshear
    • Used for the major topics for computer science in the latter half lectures (need not buy)

Resources:

  • The lecture slides, homework descriptions, and datasets will be posted in NTU COOL. Only the students registered for the lecture can access them.
  • We will also host the discussions (questions) in NTU COOL as well.
  • The icon indicates that the related resources are ready for download.

[Course Outline]

  • [09/07] Week 1 – Introduction for the topic and course planing09/07]
  • [09/14] Week 2 – Data and Number System
    • Coverage: (1) Harris: Chap. 1.1-1.5, (2) Brookshear: Chap. 1.1, 1.2, 1.4-1.7, (3) Nisan: Chap. 2.1
    • HW #2 assigned
  • [09/21] Week 3 – Boolean Logic (I)
    • HW #3 assigned, HW #1 due
  • [09/28] Week 4 – Holiday (教師節,no lecture)
    • HW #2 due
  • [10/05] Week 5 – Boolean Logic (II)
    • HW #3 due
  • [10/12] Week 6 – Sequential Logic (I)
    • Coverage: chapter 3 (partial) from [Harris] (except Sec. 3.2.7., Sec. 3.5)
    • HW #4 assigned
  • [10/19] Week 7 – Sequential Logic (II)
  • [10/26] Week 8 – Holiday (光復節,no lecture)
  • [11/02] Week 9 – Arithmetic Logic Unit (ALU)
    • Coverage: Harris Sec. 5.1-5.3, except prefix adder, 5.2.7
    • HW #5 assigned, HW #4 due
  • [11/09] Week 10 – Midterm Exam
    • Scopes: Week 2 to Week 7 – Sequential Logic (II)
  • [11/16] Week 11 – Software Development Workflow: Python + Git
    • HW #6 assigned
  • [11/23] Week 12 – Computer Architecture + Machine Language
    • Coverage: Nisan and Schocken Sec. 5.1-5.4
    • HW #7 assigned, HW #5 due
  • [11/30] Week 13 – Operation Systems + Networks
    • Mainly covered by the lecture slides; requiring no textbook
    • Suggested reading: Operating System Tutorial from TutorialsPoint
  • [12/07] Week 14 – Data and Database
    • HW #8 assigned, HW #6 due
  • [12/14] Week 15 – From Machine Learning to Artificial Intelligence
    • HW #7 due
  • [12/21] Week 16 – Final Exam
    • HW #8 due
    • Scopes: Week 9 to Week 14 – Data and Database