Course Overview
This course offers a foundational understanding of computer science and programming. Students will explore key areas, including computer systems, programming fundamentals, data structures, algorithms, web development, operating systems, security, and AI. Through lectures and hands-on projects inspired by real-world applications in fields such as biology, finance, and gaming, students will gain hard skills of coding, and soft skills of problem-solving, and algorithmic thinking.
- Credits: 2
- Prerequisites: This course is designed for beginners with no prior programming experience. A basic familiarity with computer usage is recommended, but no specific courses or technical skills are required.
- Course Website: https://ismaelali.net/?page_id=751
Course Learning Outcomes
- Gain a broad and robust understanding of computer science and programming.
- Identify and describe the basic components of computer systems.
- Apply core coding concepts and fundamentals practically.
- Write simple programs using pseudocode, Java, C++, and Python.
- Develop basic web pages using HTML, JavaScript, and CSS.
- Select appropriate data structures and types for specific applications.
- Demonstrate problem-solving skills using algorithmic thinking.
- Implement basic searching and sorting algorithms.
- Understand fundamental concepts in operating systems, security, and AI.
Course Schedule
Week | Topic |
1 | Introduction to Computer Science & Course Overview |
2 | Basics of Computer Systems: Hardware and Software |
3 | Computer Architecture and Microprocessors |
4 | Introduction to Programming Fundamentals with Scratch |
5 | Programming Concepts: Variables, Conditions, Loops |
6 | Introduction to Data Structures: Arrays, Lists |
7 | Midterm Exam |
8 | Web Programming: HTML Basics |
9 | JavaScript and CSS Essentials |
10 | Operating Systems: Basics and Functionality |
11 | Introduction to Computer Security and Cryptography |
12 | Computer Networks Overview |
13 | Introduction to AI and Basic Concepts |
14 | Final Exam + Project Presentations |
Course Assessment
Quiz 10% + Midterm Exam 20% + Projects 40% + Final Exam 30%
Course Materials
- Textbooks:
- Computer Science Illuminated by Nell Dale and John Lewis
- Python Programming for Beginners by Michael Learn
- HTML, CSS, and JavaScript All in One by Julie C. Meloni
- Software and Tools:
- Scratch (Free, web-based)
- Text editor or IDE (e.g., Visual Studio Code, available for free)
- Access to Python, Java, and C++ compilers (recommended downloads will be provided)
- Additional Resources
- Online Tutorials: Codecademy, Khan Academy, and freeCodeCamp offer supplemental tutorials on programming concepts and web development.
- Tutoring Services: [Provide information on institution tutoring services if available]
- Discussion Boards: A discussion forum will be available through the course platform for questions, clarifications, and collaborative learning.
Prerequisites
This course is designed for beginners with no prior programming experience. A basic familiarity with computer usage is recommended, but no specific courses or technical skills are required.
Teaching Methods
This course will use a combination of lectures, interactive discussions, tutorial sessions, and project-based learning. Emphasis will be placed on hands-on experience through coding exercises, small group activities, and real-world projects to reinforce learning.
Course Policy
- Illness: If you are absent due to illness as a valid excuse, please notify me of your situation at ismael.ali@edu.krd.edu before (or immediately after) your absence.
- Course and Exam Schedule: Student is responsible of constantly following up the schedule for any updated material or any type of assessments, such as exams/projects.
- Etiquette: Attend all the session to be able comprehending the course material. Submit all assignments on-time, no excuse for late submission, except valid illness report.
- Late Attendance: No student should enter the hall 10 minutes after start time of the session.
- Late Work Policy: Assignments submitted late will incur a penalty of 10% per day, up to a maximum of 5 days. After 5 days, late submissions may not be accepted without prior approval from the instructor.
- Academic Integrity and honesty: All students are expected to adhere to the highest standards of academic integrity. Plagiarism, cheating, or any form of dishonesty will not be tolerated. Violations may result in penalties, including a failing grade or further disciplinary actions.