Advanced Computer Projects Syllabus
Advanced Web Projects uses the same syllabus but focuses on web-based skills
Robotics Projects uses the same syllabus but focuses on engineering, Electronics, AI & Autonomous Robotics, and physical computer science (Microcomputers & Microcontrollers).
This is an independent study style course where you can pursue a computer science topic of your choosing.
Advanced CS Projects is a course designed to allow students the opportunity to go in a direction of their own choosing. You're encouraged to to pick 1-3 projects to cover the entire 18 weeks of class. They should generally be connected in some way, but they don't have to be.
The most difficult things about doing an independent project are:
Coming up with ideas
Having resources to direct learning
Making the most of your time
I can help you with 2 of those 3, but staying focused is something you have to do on your own.
Document your progress - regardless of which course you're doing.
Google Doc
Google Slides
Google Site (preferred as a portfolio of work)
Share progress regularly with Mr. Birkel
Present work/learning/project @ end of semester
The "Advanced Projects" menu item has sub menu items that cover some of these topics.
The most frustrating thing I see on projects is low attention, low effort, low results. This results in a low grade. You get out of this what you put into it.
America's Test Kitchen is a business that researches recipe perfection. It's amazing what they go through in order to come to that "perfect" recipe.
Like a good recipe, your program needs to be tested, improved, perfected. How can you make your program better?
Test - You need to run the program multiple times to ensure it works as expected.
Debug - look for ways your program could break (assume people are going to do the unexpected and find ways to catch or prevent that).
Improve
Can you make the program more user friendly?
Can you make the program more efficient?
Can you make the program more interactive?
Can you make the program more interesting?
Here's content America's Test Kitchen sent me in an email (apperently I unknowingly signed up for a newsletter...):
--------------------------------------------------------------------------------------------------------------------------
You’ve heard us mention that our recipes are “failproof” and that they’ve been “rigorously tested.” But what does that mean? It means that every recipe you find (and enjoy) from our family of sites, cookbooks, magazines, and television programs has been thoroughly researched and developed by our test cooks and food scientists to be the very best version it can be. As you can imagine, making the slightest change to even one variable can have a huge impact on a recipe.
It’s not uncommon for our recipes to be tested anywhere between 40 and 75 times.
The test kitchen process
But we can’t take all the credit for our recipes. We also rely on our home recipe testers, a group of about 50,000 home cooks, who volunteer to make the recipes we’re developing. Their feedback provides critical insights to what is and isn’t working with the recipes. Are the instructions clear? Did the recipe come out as expected? What should be changed? We then return to the kitchen and use their feedback to keep refining the recipe until we are confident it’s the best it can be. Translation: Our testers give their seal of approval.
The test kitchen in action
Develop a mobile app (Android Studio)
Develop a game (Gamemaker, Unity)
Learn a new programming language (C++)
Go deeper in a programming language you already know (Java, Python)
Learn 3D Modeling & Printing
Cyber Security Principles (Potential College Credit)
Cyber Challenges (CTFs)
Programming Challenges (George Fox University)
Develop a website for someone.
Learn a new content management system (Wordpress)
Learn a new web language (php, jquery, ruby, typescript, go)
Develop Web Apps (HTML, CSS, JS) - beyond what we covered in class. Focus on HTML Canvas or some of the other tools listed at the bottom of Web2 that we never got to.
Learning a new Web-Based tool (Servers & Data Bases)
Focus on tasks a specific web-career would focus on (server-side scripting, client-side scripting, database management)
Learning to code a theme/plugin/module for a Content Management System like Wordpress
College Credit Opportunity through Chemeketa - Talk to me about this (may or may not be available)
Microcontrollers (Arduino), Microcomputers (Raspberry Pi), & electronic circuits
AI
Autonomous Robotics & Sensor Exploration
Different Robotics Providers - VEX vs Lego vs Basic Stamp vs Arduino vs...
Google Doc - Advanced CS Project Ideas (Contains a list of Online Learning providers as well)