CSSE | CSP | CSA | Readme | About |
Computer Science and Software Engineering
Sprint1: Tools and Software Development Processes
By the end of Weeks 0-3, students will have gained practical experience in blogging, coding with Jupyter Notebooks, and GitHub Pages; learning will begin with Linux, Markdown, HTML, and JavaScript. Students will establish a foundation using essential tools and software development processes to support their coding journey. Weeks 0-3 will provide a quick foundation, prior to students starting their College Articulation Credit and Game Development journey.
Illustration
+-----------------+ | Laptop, OS | | Tool Setup | +-----------------+ | | VS Code, Markdown, Jupyter Notebook, JavaScript (.md, .html) v +-----------------+ | VS Code, Develop| | Code Editor | +-----------------+ | | Write code, make, run localhost, test, debug v +-----------------+ | VS Code, Git | | Version Control | | +-----------------+ | | Commit local versions, comment, show changes, reset branch v +-----------------+ | VS Code, Project| | GitHub Sync | +-----------------+ | | Push changes to GitHub cloud Repository (repo v +-----------------+ | GitHub, Collab | | Shared Code | +-----------------+ | | Tracking GitHub pages Actions, understanding Jekyll build files v +-----------------+ | GitHub Pages | -> Highlight languages, coding, and course skills, with Awesome Style | Showcase Project| -> Share project with the world +-----------------+
Week | Issues | Code, Code, Code | Collaboration |
---|---|---|---|
0 |
- Sprint 1 - Objectives |
- Tools and Equipment |
- Homework - Popcorn Hacks |
1 |
- GitHub Pages Playground |
- Learning Habits - Learning Habits - Learning Habits |
|
2 |
- Boolean Lesson 2 |
||
3 |
- Pair Showcase |
Sprint2: Introduction to Development with JavaScript
A key focus of this course is to make Web Games using JavaScript. These next few weeks we start covering object-oriented programming in JavaScript. Topics include control structures, data types, input/output, operators, classes, methods and parameters, basic inheritance, and documentation practices.
Week | Issues | Code, Code, Code | Collaboration |
---|---|---|---|
4 |
- Sprint 2 - CSSE 1 Objectives - JavaScript Teaching Prep |
- DOM Updates - JavaScript Data Types |
- JavaScript Variables - JavaScript Variables Homework - JavaScript Variables Popcorn Hacks |
5 | |||
6 |
Sprint3: Building a game with GitHub Pages for N@tM
Part of the process of becoming technically proficient is going beyond fundamentals by taking on a project challenge while coding. A challenge with some vision, questions, AI research, and more allow amazing things to be accomplished. Our goal is to participate in N@tM with the other CS classes and other classes from the Electives Department. We should have a blog, progress in a game, and a series of lesson hacks to show off.
Week | Issues | Code, Code, Code | Collaboration |
---|---|---|---|
7 |
- Sprint 3 - CSSE Objectives |
- Gaming Intro |
|
8 |
- RPG Hacks |
||
9 | |||
10 | |||
11 | |||
12 |
Sprint4: Planning, Exploration, and OOP Programming
Students, in trios, will work on Platformer Game and study OOP. There will be a lot of code, some Tech Talks, and some Teaching assignments provided to learn the code.
Week | Issues | Code, Code, Code | Collaboration |
---|---|---|---|
13 |
- Sprint 4 - CSSE Objectives |
- Agile Methodology Intro - OOP game levels, Part 1 files - OOP game levels, Part 2 coding |
|
14 | |||
15 | |||
16 |
Sprint5: Platformer Game Help System
The Teacher will be providing topics. All teams will be building a help system covering the key topics in the platformer game. The task of forming a help system will help your team become expert in a topic and prepare you for final sprint. For now, don't try to code in the Platformer game, but try to make Jupyter Notebooks with help and hacks suggestions on your topic.
Week | Issues | Code, Code, Code | Collaboration |
---|---|---|---|
17 |
- Sprint 5 - CSSE Objectives |
- Game Help - Platformer |
- Platform | Elevated - Enemies | Collision - Backgrounds | Theme | Messages - Player | Animation | Collision - Local Storage - Game Over | Transitions | Leaderboard |
18 |
Sprint6: Create a Final Project, starts with "Student Teaching", concludes with N@tM and qualifies for College Credit
Trimester 2 concludes with students presenting their project at N@tM. Each person within "Student Teams" will have their own specialty within the student project. Students should be able to talk about design, make a plan, code, blog, and present features of their portion of the system.
Week | Issues | Code, Code, Code | Collaboration |
---|---|---|---|
19 |
- Sprint 6 - CSSE Objectives (Final) |
- Objects, Instance Data |
|
20 |
- Finite State Programming |
||
21 |
- Single Responsibility Principle |
||
22 | |||
23 | |||
24 | |||
25 |