INTRODUCTION TO COMPUTER SCIENCE MUST READ! Class Schedule & Code of Conduct Instructor: Office: Time: Classroom: Email: URL:
Professor John Sum, Institute of Technology Management Room 821, CSSM Building Friday 09:10-12:00 CS121, CSSM Building
[email protected] (for general enquiries)
[email protected] (for assignments submission) web.nchu.edu.tw/~pfsum/CS/cs_index.html
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 course is particularly designed for undergraduate students from the College of Management and the International Bachelor Program in Agribusiness. The medium of instruction is English. All the teaching materials including handouts, examination papers and assignments are in English.
PRE-REQUISITES 1. Able to read, write, speak and listen in English. 2. Skillful in using IE or other browsers to access the Internet, and search on the web. 3. Able to edit reports using word processing software, like MS WORD.
COURSE CONTENTS 1. 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 2. 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 3. Some skills in the use of computer and cell phone - Password setting, log-out, backup 4. Breaking through products introduced by Steve Jobs - Apple PC, Macintosh, iTune, iPhone. 5. History of Computer Lecture Notes (800K) BBC Documentary 1991 Edition Part 1, Part 2, Part 3 Part 4, Part 5, Part 6 Part 7, Part 8, Part 9 6. History of Telephone; History of iPhone 7. Industrial Applications of Computer and Internet Information Systems (4.5M, Not updated yet!) E-Commerce Amaazon Fulfilment Center 8. Hardware Computer, iPad, iPhone, iWatch, VR/AR headset and Google Glasses Printer, 3D printer, keyboard, monitor CPU, RISC, ARM, GPU and GPGPU Digital Systems - Basis of a computer ASCII Code - Representations of characters in binary code Number representation and precision error IBM In-Memory computing 9. Operating Systems 10. Software General concepts Program 11. 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 12. Networking - Communications amongst computers and mobile devices Lecture Note Brief History of Internet (2009 Version) TCP/IP Explained 13. Security Information Security by Alan Song Security Technologies Part1/2, from Prof. Messer. Security Technologies Part 2/2, from Prof. Messer. Question: Connected or not to be connected? 14. Programming(*) - Building software/apps C Language C Programming and Review questions 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 15. 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) 16. HTML A Beginner's Guide to HTML from UIUC NCSA. Sample HTMLs John Sum Homepage Joe Liu, Michael Chan, Jacob Sang, Mr. Tsai ±i¥Í¿«, ªLÞ³, ¸§B«°, ³\õºõ Beyond HTML - Scripting language, XML, Web 2.0, API and others 17. Advanced Topics (Tentative) Mobile Ad Hoc Networks Artificial Intelligence and Machine Learning Cloud Computing Social Commerce
ASSIGNMENTS 1. 2. 3. 4. 5. 6. 7. 8. 9. 10.
Assignment 1 Assignment 2 Assignment 3 Assignment 4 Assignment 5 Assignment 6 Assignment 7 (C programming assignment) Assignment 8 (C programming assignment) Assignment 9 (C programming assignment) Assignment 10 (HTML assignment)
EXERCISES 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12.
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 Questions on BBC Documentary C Programming Exercise (Prepared by Luke) Review Exercise 1 Review Exercise 2 (Prepared by Alan Song) Review Exercise HTML (In Chinese, extracted from the problem pool and edited by Alan Song) Review Exercise WORD (in Chinese, extracted from the problem pool and edited by Alan Song) Review Exercise EXCEL (in Chinese, extracted from the problem pool and edited by Alan Song)
ASSESSMENTS 1. 2. 3. 4.
Assignments (Bonus) [10%] Class Tests (Bonus) [10%] Mid-term Examination [50%] Final Examination [50%]
TEACHING MATERIALS 1. 2. 3. 4. 5. 6. 7.
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!) 2012 Fall: Mid-term Examination, Final Examination 2013 Fall: Mid-term Examination, Final Examination 2014 Fall: Mid-term Examination, Final Examination 2015 Fall: Mid-term Examination, Final Examination 2016 Fall: Mid-term Examination, Final Examination