The Software Programming curriculum is listed below for ages 10+.
1. Web Programming I (WEB01) – Introduction to Computers and Web Development
Step into the world of computers and learn web programming by completing multiple projects with increasing complexity. Build critical coding knowledge that will serve as the technical base for further programming languages. Start individual Digital Portfolio.
- Understand information flow, Internet and website architecture and elements – learn how web pages, servers and browsers function.
- Design, plan, implement and present multiple web page projects that increase in complexity.
- Code concepts and practice – inputs, variables, data processing and functions as well as debug and test code
This course also introduces Project Based Learning skills by guiding students through increasingly complex projects.
- Create an HTML web pages on a topic of choice
- Create a simple project plan for the work
- Design the web page on paper
- Learn to get around in the Eclipse IDE (Integrated Development Environment)
- Create a web page using HTML tags – test and debug the project
- Upload web page to the StairWay5 Student Portfolio website
- Create linked web pages on a topic of choice and extend them using CSS
- variables, functions, conditional statements, loops
Demo, discussion, feedback and reflection will occur at the end of each project and class in order to ensure all students understand the concepts covered and practice the 5 core skills.
- Review basic code concepts and syntax – inputs, variables, data processing and functions
- Review how to debug and test code
- Understand and practice how to use variables, data types, operators
- Develop pseudocode and computational logic to meet design objectives
- Develop custom functions to meet design objectives
Digital Portfolios will be updated with all student work during this course.
3. Java Programming I (JAVA01) – Introduction to Java Programming
Students will also learn about different kinds of software applications, connected applications, servers and other current and upcoming technology architecture such as machine learning and AI. The following skills will be practiced through completing multiple projects.
- Building Java applications within the Eclipse IDE including compiling, debugging and testing code
- Coding concepts and syntax – variables, operators, conditional statements, loops, objects and functions. Reusable code and APIs will be introduced.
- Software development by designing, planning, implementing multiple Java-based applications
- Software Development Life Cycle (SDLC)
- Learn and practice Requirements Analysis, Design, Planning, Coding, Testing and Deployment phases
- Different types of SDLCs
- Information Technology (IT) management and introduction to coding in teams
- Learn and practice roles such as Business Analyst, Project Manager, Architect, Tester and Programmer
Successful completion of WEB02 is a required prerequisite. Course is targeted to be offered in Fall 2019 or Spring 2020.
4. Java Programming II (JAVA02) – Intermediate Java Programming and Introduction to Databases/SQL
Introduction to Databases and SQL. Design and implement simple databases to achieve programming project goals. More advanced Java coding concepts and algorithms will be covered along with software development life cycles principles of requirements, design, coding, testing and deployment.
Successful completion of JAVA01 is a required prerequisite. Course is targeted to be offered in Summer 2020.
5. Java Programming III (JAVA03) – Full Stack Programming with Java
Complete the programming portfolio by advancing to full stack programming by combining a Web Front End, Java Back-End with a Database. Design solutions for real-world problems and learn how software is used in Business and develop an Business Plan to implement student-designed solutions.
Gain more hands-on experience by completing multiple projects covering the following topics:
- Data architecture and analysis – how to build a database
- Getting data in and out of a database with SQL programming
- Integrating Java and SQL to build an application
- A look into other programming languages – syntax, common structures and algorithms and the future of computing
- Coding in teams – GitHub and other tools to support the SDLC
- IT and Business Management
Successful completion of JAVA02 is a required prerequisite. Course is targeted to be offered in Fall 2020.
Advanced courses such as AI, Machine Learning and Mobile application development will be offered in the future as students complete foundational work.