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.

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, track changes v +-----------------+ | VS Code, Project| | GitHub Sync | +-----------------+ | | Push changes to cloud Repository v +-----------------+ | GitHub, Collab | | Shared Code | +-----------------+ | | Actions, Jekyll build v +-----------------+ | GitHub Pages | | Showcase Project| +-----------------+


Week Code, Code, Code Tools and DevOps Collaboration
0 - Tools and Equipment Overview
- Pair Programming
1
2 - JS Calculator
- Build a Student Page
3

Sprint2: Introduction to Development with JavaScript

A key focus of this course is to make Web Games using JavaScript. These next few weeks we will cover the aspects of learning JavaScript, creating animations, and deploying the game to GitHub Pages.

Week Code, Code, Code Tools and DevOps Collaboration
4 - Agile Methodology
5 - Sprite Sheet Intro
- Calculator Reviews
6 - JS Mario Animation
- JS Basics Test

Sprint3: Building a Web Application with GitHub Pages for N@tM

Part of the process of becoming technically proficient is taking on challenges while coding. These challenges will often make a student feel uncomfortable. But with some vision, questions, and AI research, it is amazing what can be done. Our goal is to participate in N@tM with the other CS classes and other classes from the Electives Department.

Week Code, Code, Code Tools and DevOps Collaboration
7 - Game Project Ideation
8
9
10 - Alien World Background
11
12

Sprint4: OOP Programming Fundamentals

Students, in trios, will work on converting the Mario game into their blogs and learning OOP. There will be a lot of code and some former Tech Talks to support learning and teaching activity.

Week Code, Code, Code Tools and DevOps Collaboration
13 - Platformer Game v2.1
14 - OOP game levels, Part 1 files
- OOP game levels, Part 2 coding
15 - Animation Transitions
- Enemies
- Leaderboard
- Parallax / Scrolling
- Platforms
- Player elements
- Player preferences / Local Storage
- Mario | Enemies | Student
- Player | Student

Sprint5: Research, Teaching, and Game Innovation

The "Student Team" will have an algorithmic teaching assignment. The Teacher will be providing topics. During "Student Teach" weeks, all teams will be doing hacks and forming a more complete Mario game.

Week Code, Code, Code Tools and DevOps Collaboration
16
17

Sprint6: Create a Final Project and N@tM

Trimester 2 concludes with students presenting their project at N@tM. Each person within "Student Teams" will have their own specialty feature within the student project. Students should be able to talk about design, coding, and present features of their portion of the system.

Week Code, Code, Code Tools and DevOps Collaboration
18 - APIs
- OOP, Multiplayer
- Socket.io Multiplayer Game
19
20
21
22 - Course Descriptions
23
24