Usapcs Computers
Usapcs Computers
Syllabus
INTRODUCTION
The USAPCS Computer Syllabus is a comprehensive and structured document designed to guide
the teaching and learning of computer science concepts over a two-year period. It starts from the
very basics, making it accessible to students with no prior knowledge of computer science.
This is the first edition of the syllabus, crafted to bring structure and clarity to computer science
education at USAPCS. It emphasizes computational thinking and effective collaboration with
AI tools, preparing students to approach complex problems systematically and creatively.
Approach
The syllabus is structured to achieve the following goals by the end of the two years:
The emphasis is on practical implementation rather than rote memorization. Students will engage
in hands-on activities that prioritize creativity, critical thinking, and real-world problem-solving
skills.
Grading
In addition, attention to style (e.g., clean, readable code) and correctness (ensuring the code
works as intended) will also contribute to grading.
1. Logic: Does the project effectively solve the identified problem?
2. Complexity: Does the solution reflect substantial effort and depth of thought?
3. Cost-effectiveness: Is the solution practical and efficient in terms of resources?
Teaching Methodology
The syllabus is divided into two years, each comprising two terms, with ten weeks per term.
● Problem sets will be assigned every two weeks and will contribute 70% of the student’s
term grade.
● A final project, submitted at the end of each term, will contribute the remaining 30%.
This structure ensures that students consistently apply what they learn while working on larger
projects that integrate multiple concepts.
Lower 6 Content Summary
The Lower 6 curriculum is designed to equip students with essential tools and foundational skills
that enhance their day-to-day learning experience at USAPCS. This includes gaining proficiency
in tools like Gmail and Google Drive while introducing key concepts in coding and algorithmic
thinking. By the end of Lower 6, students should have a strong foundational understanding of
software development and problem-solving.
Week 2: Tools
PROBLEM SET 1
Week 3: Sheets
PROBLEM SET 2
Month 2
Week 5: AI
Intro to AI - History of AI
- Generative AI
PROBLEM SET 2
Week 7: Functions
PROBLEM SET 3
Month 3
Week 9: C
PROBLEM SET 4
Week 11 and Week 12: Final projects
FINAL PROJECTS
Upper 6 Content Summary
The focus of Upper 6 is web development, aimed at teaching students how to make their
software accessible to users through websites.
First Term:
Second Term:
● The focus shifts to back-end development, where students will learn to:
○ Use SQL for database management and data manipulation.
○ Work with Flask, a lightweight Python framework, to build and deploy
server-side applications.
This progression ensures that students acquire both the skills to create visually engaging and
functional user interfaces as well as the ability to manage data and build server-side logic for
full-stack applications.
First Term
Month 1
Week 1: HTML
Week 2: HTML
PROBLEM SET 1
Week 3: CSS
Pseudo-classes - Hover
- Transition
Week 4: CSS
Position - Fixed
- Absolute
- Relative
Display - Block
- In-line block
- Inline
PROBLEM SET 2
Month 2
Week 5: CSS
Grid - Explanation
- Implementation
Flexbox - Explanation
- Implementation
Week 6: CSS
Icons - Font-awesome
- Bootstrap
PROBLEM SET 3
Week 7: JavaScript
Week 8: JavaScript
Conditionals - Booleans
- If statements
PROBLEM SET 4
Month 3
Week 9: JavaScript