INTRODUCTION TO COMPUTER SCIENCE (2021 FALL)
*** REMINDER ***
The course is particularly designed for the College of Management BBA program (excluding the BBA in MIS) and
the International Bachelor Program in Agribusiness (IBPA).
Their credits earned are accounted for the credits required for graduation.
Students from other programs might not be allowed to take this course and so
the credits earned are not accounted for graduation. Please consult your department office for further information.
*** REMINDER END ***
MUST DOWNLOAD & READ! CLASS SCHEDULE 2021 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 level knowledge for students on the working principles of a computer and the Internet;
and how to instruct (i.e. program) a computer to solve simple problems.
Students will learn the basic working principles of computer technologies,
inlcuding (i) how a computer is organized and (ii) how Internet works.
Certain advanced concepts regarding computer science will be introduced.
Moreover, students are expected to appreciate the scholars who have contributed great ideas in computer science and
the area of information and communication technology (ICT).
Students are expected to learn not to abuse the usages of such technologies.
MEDIUM OF INSTRUCTION
The medium of instruction of this course is English. All teaching materials including handouts, test papers
examination papers, assignments and supplementary materials are in English.
PRE-REQUISITES
- Able to read, write, speak and listen English.
- Skillful in using browsers, like Chrome, Safari and Edge, to access Internet searching for information on the web.
- Able to edit reports using a word processing software in Windows, MacOS or on a cloud, like MS WORD, Latex, PAGES and Google DOCs.
COURSE CONTENTS
- Computer Everywhere
- 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.
- (*) Some application software require Internet access for connecting to enable their usages.
- 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.
- (*) Almost all application software require Internet access to enable their usages.
- Home network
- Internet connection for the use of advanced features, like voice assistant and web search.
- Home devices and appliances are connected via wireless communication.
- Amazon ECHO, Google HOME.
- (*) Internet access is required.
- Personal network - Cell phone, bluetooth earphone/mic, notebook computer, pad and other mobile devices.
- History of Computer
- BBC Documentary 1991 Edition
- History of Telephone; History of iPhone (2017 Edition);
History of iPhone (2021 Edition)
- 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.
- Processor and Computer (Supplementary).
- ASCII Code - Representations of characters in binary code.
- System of units.
- 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
- Algorithm(*)
An algorithm is a step-by-step procedure for solving a problem. It is the procedure to be implemented by a computer program.
The actual implementation of an algorithm is programming language dependent. Some algorithms could be easily be implemented by one programming language but
they could be hardly be implemented by another programming language.
- Problem dependent - Usually, each algorithm can only be designed to solve one problem.
- Some problems
- Medium access control (MAC), message routing
- Data storage problem
- Sorting numbers in ascending order: Program code
- Finding the roots of a function f(x)
- Jobs allocation problem
- 9-Ball Problem (One abnormal ball)P1, P2, P3
- 9-Ball Problem (N abnormal balls)
- Complexity (Computational compelxity and memory complexity) - Measure for the efficiency of an algorithm and the difficulty of a problem
- Compared with Standard Operating Procedure (SOP)
- Advanced Topics in Computer Science (TBD)
- Nanotechnology
- AI and machine learning
- Brain machine interface
ASSIGNMENTS/TEST PAPERS/REVIEW QUESTIONS
- Assignment 1 Due Date: September 17, 2021. (Answers/Solutions)
- Assignment 2 Due Date: September 17, 2021. (Answers/Solutions)
- Assignment 3 Due Date: October 1, 2021. (Answers/Solutions)
- Assignment 4 Due Date: October 8, 2021. (Answers/Solutions)
- Assignment 5 Due Date: October 15, 2021. (Answers/Solutions)
- Assignment 6 Due Date: October 22, 2021. (Answers/Solutions)
- Assignment 7 Due Date: November 5, 2021. (Answers/Solutions)
- Assignment 8: Re-do 2021 Mid-Term Exam. Due Date: November 19, 2021.
- Assignment 9 Due Date: December 3, 2021. (Answers/Solutions)
- Assignment 10 Due Date: December 10, 2021. (Answers/Solutions)
- Assignment 11 Due Date: December 17, 2021. (Answers/Solutions)
- Assignment 12 Due Date: December 31, 2021. (Answers/Solutions)
- Assignment 13 Due Date: January 7, 2021. (Answers/Solutions)
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!)
- Model answers for the past exam papers. (Updated: 2021Fall mid-term, 2015-2020Fall final exams are included.)