INTRODUCTION TO COMPUTER SCIENCE (2020 FALL)
*** REMINDER ***
The course is particularly designed for the College of Management BBA program and the International Bachelor Program in Agribusiness (IBPA).
Their credits earned are accounted for the credits required for graduation.
Students who are from School of Electrical Engineering and Computer Science, School of Engineering,
School of Science and Department of Management Information Systems might not be approved to take this course and
the credits earned might not be accounted for the credits required for graduation.
*** REMINDER END ***
MUST DOWNLOAD & READ! CLASS SCHEDULE 2020 FALL & CODE OF CONDUCT
RECOMMENDED! Comments (both good and bad) from former students on DCard!
COURSE OBJECTIVES
The primary objective of this course is to provide introductory knowledge for student knowing how a computer and Internet work,
and how to write a simple program to instruct the computer to solve a problem.
Students will learn the basic working principles of computer technologies,
inlcuding (i) how a computer is organized and (ii) how Internet works.
Some advanced concepts regarding computer science will be introduced.
Moreover, students are expected to appreciate the great ideas contributed by the pioneers in computer science and
realize the usages of computer technologies in various areas such as in smart phones and cars.
LANGUAGE OF INSTRUCTION
The medium of instruction is English. All the teaching materials including handouts,
examination papers and assignments are in English.
PRE-REQUISITES
- Able to read, write, speak and listen in English.
- Skillful in using IE or other browsers to access the Internet, and search on the web.
- Able to edit reports using word processing software, like MS WORD.
COURSE CONTENTS
- Use of computer
- Personal: Word processing, financial management, file storage, email, information search
- Entertainment: Watch video, play music, online games
- Social networking: Facebook, LINE, WhatsApp, Weibo
- Professional: Photo/Film editing, fashion design, software development, scientific research
- Some skills in the use of computer and cell phone - Password setting, log-out, backup
- Breaking through products introduced by Steve Jobs - Apple PC, Macintosh, iTune, iPhone.
- Use of cell phone
- Personal: Telephone call, email, information search
- Entertainment: Watch video, play music, online games, take photos
- Social networking: Facebook, LINE, WhatsApp, Weibo
- History of Computer
- BBC Documentary 1991 Edition
- History of Telephone; History of iPhone
- Industrial Applications of Computer and Internet
- Hardware
- Computer, iPad, iPhone, iWatch
- VR/AR headset, Microsoft Hololens, Apple Glasses
- Printer, 3D printer, keyboard, monitor
- CPU, RISC, ARM, GPU and GPGPU
- Digital Systems
- Processor and Computer
- ASCII Code - Representations of characters in binary code
- Operating Systems
- Software
- Information (Data) Storage and Retrival
- Challenges in ISR - Minimize the memory stroage of a file (a collection of data) and miximize the efficient of file (or data) retrival
- Types of information - Text, audio, image, video, hypertext, document, data file, software
- File extensions - .txt, .mp3, .jpeg, .img, .mpg, .html, .doc (.docx), .ppt (.pptx), .pdf, .xls (.xlsx), .mdb (.accdb) .exe
- Structural data - Text, number, date/time, currency, yes/no, categorical data
- Database (Structural data) -> File -> Record -> Field -> Byte -> Bit
- Giant information base - World Wide Web
- Networking - Communications amongst computers and mobile devices
- Security
- Programming(*) - Building software/apps
- C Language
- C Programming (program code)
- Basic C features - Program structure, variables declaration and data types, IF statement, switch case, loops, File I/O.
- Source code, object file and executable file
- C Tutorial from Cprogramming.com, A Little C Primer
- Introduction to DevC, Examples
- Random number related examples: EG 1, EG 2,
EG 3, Poker card shuffling.
- Functions
- Other programming languages - C++, Java, Python, Scripting language, R Language
- Programming languages for scientific research - SPSS, SAS, Matlab, Mathematica, Maple
- Application program interface (API) - Set of instructions for a software to access application programs that are available over the Internet
- Programming language for database management - SQL (Structured Query Language)
- Advanced programming - Systems programming and network programming
- Algorithms(*) - Step-by-step procedure for solving problems
- Problem dependent - Usually, each algorithm can only solve one problem.
- Some problems
- Medium access control (MAC), message routing
- Data storage problem
- Sorting numbers in ascending order: Program code
- Finding roots of a function f(x)
- Jobs allocation problem
- 9-Balls Problem P1, P2, P3
- Complexity of an algorithm - Measure the efficiency of an algorithm and the difficulty of a problem
- Compared with Standard Operating Procedure (SOP)
- Advanced Topics in Computer Science (TBD)
ASSIGNMENTS/TEST PAPERS/REVIEW QUESTIONS
- Assignment 1 Due Date: September 11, 2020.
- Assignment 2 Due Date: September 18, 2020.
- Class Test I September 25, 2020.
- Assignment 3 Due Date: October 2, 2020.
- Assignment 4 Due Date: October 9, 2020.
- Review Questions I.
- Class Test II October 16, 2020.
- Assignment 5 Due Date: October 23, 2020.
- Assignment 6 Due Date: October 30, 2020.
- Assignment 7 - 2020Fall Mid-Term Exam. Due Date: November 13, 2020.
- Assignment 8 - Operating Systems, p.27-28, questions 1-22. Due Date: November 27, 2020.
- Assignment 9 Due Date: December 4, 2020.
- Assignment 10 Due Date: December 11, 2020. (If you could accept challenge, try this.)
- Assignment 11 Due Date: December 18, 2020. (If you could accept challenge, try this.)
EXERCISES
- Review Questions: Networking and Network Security
- Review Questions: The Internet Behind the Web
- Review Questions: History of Computer, Inforamtion Systems, E-Commerce, Digital Systems
- Review Questions: Digital Systems, Software, Operating Systems
- Review Questions: C Programming
ASSESSMENTS
- Assignments (Bonus) [-12% to 12%]
- Class Tests (Bonus) [-8% to 8%]
- Mid-term Examination [50%]
- Final Examination [50%]
TEACHING MATERIALS
- Lecture Notes available on Course Homepage
- Lecture Notes written on Blackboard
- Handouts to be distributed in the class
- Video on Youtube
- Articles on Wikipedia
- Articles from magazines
- Past Papers (Very useful for your examination!)