CSCE 101 - Introduction to Computer Concepts
a. Bulletin description: History, application, and social impact of computers; problem-solving,algorithm development, applications software, and programming in a procedural language. Open to all majors.
1. Demonstrate the ability to find a solution and write an algorithm when given an English description of a task to be accomplished (that is, a problem statement)2. Demonstrate the ability to write, execute, test, and debug computer programs in a high-level language3. Demonstrate the mastery and use of the concepts and proper terminology related to computer science
a. Introduction/Computing/Hardware/Software/Creativity/Applications (2 hours)b. Computing/History/Global Impact/Society/Ethics/Privacy/Benefits/Problems/Creativity/Future (3 hours)c. Programming/Languages/Introduction to programming (2 hours)d. Abstraction/Data/Information/Variables/Data types (3 hours)e. Algorithms/Problem solving/Creativity/ Procedural Abstraction/Pseudo-code/ Logical flow (4 hours)f. Conditional logic (if/else, not, and/or) (3 hours)g. Loops (2 hours)h. Arrays (2 hours)i. Debugging/Testing (2 hours)j. Number systems/binary/octal/hexadecimal/decimal/conversion/binary arithmetic/data representation/gates (3 hours)k. More data structures/Sorting (2 hours)l. Security (2 hours)m. Networks/ The web/The internet/History/Browsers/Search engines/Programming for the web (4 hours)n. Computing topics/Database/Artificial intelligence/ (2 hours)o. Reviews and Examinations (6 hours)
Two Tests 40%Final Exam 20%Lab 30%Quizzes/Homework 10%Lab Grades - You must pass (average on must be >= 60) the lab portion of the course in order to passthe class.The grade is calculated using the standard curve:A: 90-100,B+: 87-89,B: 80-86, C+: 77-79,C: 70-76,D+: 67-69,D: 60-66,F: <60
Week 1: Introduction to computing, History of computing, Categories of computers, Hardware/Software, Applications, Creativity, Computer Languages, Generations of programming languages, Markup languages, Introduction to App Invertor, Ethical issues/Security issues and issues in the news to be included throughout the semester.
Week 2: More App Invertor, objects, properties, methods, events, computer languages, low level languages, assembly language, introduction to binary, high level languages, compilers, assemblers, interpreters, object-oriented overview, problem solving, algorithms, pseudo code, programming logic, programming constructs, general program design/testing/debugging.
Week 3: Manipulation of variables and preforming calculations using App Inventor, storage and processing hardware, computer components (disassemble a computer in class or show the pieces from the one already disassembled.) stored program concept/Von Neumann architecture, RAM/ROM, secondary storage devices, touch screens, Non-Von Neumann architecture, Storage devices and techniques.
Week 4: Introduction to accessing web resources using App inventor, problem solving, data/information, from the problem to the algorithm, pseudo code, moving from the algorithm to the code, logic flow, debugging techniques, testing, variables, data types, storing data for later use, assignment, retrieving data, I/O, execution, interpreted/compiled, test data, analyzing the output, errors syntax/logical, debugging.
Week 5: Introduction to sprites and games in App Inventor, problem solving, programming examples, programming logic, mathematical calculations. Number systems, back to binary, octal, hexadecimal, conversion, binary arithmetic, data representation, analog, digital, binary representation, ASCII, Unicode, compression, representing numbers/text/audio/graphics/video.
Week 6: Test review, test 1
Week 7: Using the clock to manage events in App Inventor, problems requiring decision making, managing events, Networks, the web and the internet, browsers, history, search engines, URLs, domain registration, E-mail, privacy/security/spam, wikis, social networks, ubiquitous computing, Moore’s Law, cables, throughput, bandwidth, types of networks, internet connections, packet switching, protocols, TCP/IP, wireless technologies.
Week 8: Solving more complex problems requiring decision making using App Inventor, System software, Operating systems, Memory management techniques, process management, CPU scheduling, file systems, directories, utilities, disk cleanup, backup, encryption, compression, software licenses and copyright laws, commercial software, freeware, shareware, open source, terms of use, pros and cons of open source, software copyright issues, ethics.
Week 9: Develop algorithms for the next App Inventor project, solving problems requiring loops, logic flow, debugging, Data and information, Database Systems, designs, features and benefits.
Week 10: Test review, test 2
links, applying style with CSS, CSS format, properties, testing considerations.
Week 12: Algorithm to implementation using App Inventor, data types, storing and retrieving data, logic flow, Information Security, software design and testing issues, bugs and procedural errors, patches, computer criminals, hackers, professional crime rings, spies, cybercrime, social engineering, privacy policies and user rights.
Week 13: Implementation and testing, Information Security continued, confidentiality, integrity, availability, cryptography, biometrics and identification, physical features, pros and cons, use with RFID tags, password selection rules, security software (antivirus, antispyware, firewalls, intrusion detection/prevention software, etc.), scams, cyber stalking, online resources, legal deterrents, privacy laws, electronic surveillance laws, DRM, security issues with social media.
Week 14: Converting binary/decimal with App Inventor, General computing topics, Artificial intelligence, Turing test, Knowledge representation, Expert systems, Neural Networks, Natural language processing, Robotics, Examples of AI systems, other computing topics, the future of computing, Future privacy and security issues, Review for the final exam.