Points Link

AP CSA COURSE OUTLINE

  • Methodology.
    • Project Based Learning (PBL)
    • AP Classroom. The 10 Units of AP Computer Science A
    • Code.org curriculum challenges
  • Key Principles
    • Leaning to Code
      • Mini Labs on PBL, AP, and Code.org challenges
      • Programming, Algorithms, Databases, and APIs
      • Team and Individual Project will highlight all 5 Big Units, either academically or in interest fashion
    • Succeed on Exam
      • Work with AP MCQs and Create Performance Task
      • Work with Code.org segments to complement Test Prep
      • Student led Paper FRQs and MCQ analysis exercises
    • Preparing for Internships, “Real World”
      • Follow practices to becoming a software engineer
      • Collaboratively Build, Deploy and Host Web Pages
      • Establish “Real World” Scrum Team projectsPreference with Customer/Sponsor
      • Follow Agile methodology using GitHub, Issues and Projects tools
    • Become a Blogger
      • Build individual GitHub Pages Web Site to _post Notes and Learnings
      • Learn to publish and share what you have learned

“Real World” Projects

You, your pair, and your Scrum Team will collaboratively Build, deploy and host Web Site. This Web project contains Technicals learned throughout the Trimester. This will be done in increments. Each Monday an assignment will be given and the next week it will be under Live Review.

  • Feature Considerations for Project
    • Project Requirements
      • A fun zone, unique idea(s)
      • Educational zones that capture every key learning objective
      • A location that highlights individuals, jobs, and technical capabilities (About Us)
    • Project Technicals
      • Managing PBL Requirement for Project (Issues, Scrum Board)
      • Use of “Python Functions and Classes” in backend.
      • Use of “JavaScript” or “Jinja2” in frontend
      • Data Structure exchange between frontend and backend “SQL” or “MongoDB”
  • Individual GitHub Pages considerations for Big Ideas 1 - 5
    • Each week we will be studying Big Ideas in Collage Board Test Prep and PBL Tech Talks
    • GH Pages should be used like notes to capture PBL, Python, JavaScript key learnings each week!
    • BTW, using GH Pages will make you Code and Blog at the same time. Jupyter Notebooks using Python and Markdown will enable running code in notes, the Teachers like running code! Jupyter Notebooks can also do JavaScript, Bash and other languages.

Establish PBL and Comp Sci attitude

Watch a video How I Would Learn To Code

  • Attitude. An Agile mindset is not knowing the answer, making lots of mistakes and performing iteration. A successful grade is dependent on making mistakes, research, asking questions, and iteration.
  • Suggestion. Please bring a personal laptop to class daily. The Internet and AP Classroom web site will be considered a text book.
  • Requirements. Everything will be distributed electronically. All code you develop will be delivered to the Cloud. No paper!
  • Grading guidelines. There will be key technical objectives which will require producing tangibles. Essentially, it is impossible to be late with work if you work consistently attend class, work in class and turn in progressive tangibles each week. Thus, failure to have work will result in a 10% deduction. Additionally, late work must be defended in office hours.
    • High “A” is very tough to achieve, something beyond the given tangible requirements. Something that exhibits an unforced desire to learn and Code/Code/Code.
    • Low “A” is consistency in producing tangibles toward Team Project and Individual GH Page according to Issues and Scrum Board plans. Plans must be consistent with key objectives and technicals.
    • “B” is having flaws in consistency or tangible shortcomings, but mostly on track. A flaw would be mostly working code, attempts, but incomplete.
    • “C” is a lack consistent effort, lacking tangibles. Lack of producing working Code.
    • Below “C” is composed of Slash/Slash/Slash offenses. Lack of attendance, disruptive behaviors, doing work from other classes during CompSci class time, paper visible in class, and turning in tangibles that you can’t represent in live review.
    • Zero is a result of plagiarism. The Teachers will likely miss first offense of plagiarism, thus any offense will result in an inquiry on previous work. Remember this is an effort based class.

Assignments and Work

  • Assignments mostly Due either Friday or Monday at the start of class (canvas is official record for point guidelines and synergy for points received)
    • Live Grading, all grading is complemented by Self/Crossover assessments. Teachers are passionate about quality crossover reviews. This a big part of your personal learning. Taking a review lightly is taking your grade lightly, as poor review will cause a reduction in your own points.
    • Always prepare Review Ticket (GH Issue) using canvas assignment as a guide
  • Trimester starts with 5 point seed (highly engaged +, extra activities +, distracted -)
  • There will be about 50 points per trimester, we will save a big chunk of points for the last few weeks of Trimester. Don’t get comfortable, keep working your CompSci muscles.

PBL Sprint 0 / Week 0

Learning outcome. Getting adapted to the Agile mindset used in Computer Science. Additionally, getting introduced to GitHub and showing usage of VSCode. Building a personal and running Fastpages/GitHub Pages.

  • Wednesday - “Introduction Sprint”. Pick pair share partner, Pick crossover pair, Establish team of four. Based off of modulo mathematics (remainder) there can only be 3 teams of 5 maximum. Spend some time talking and getting to know each other. Consider key roles in Project Teams as Scrum Master (Issues, Scrum Board), DevOps (GitHub, Deploy, .gitignore, requirements.txt), Frontend Developer (HTML, Jinja2, Javascript), Backend Developer (Flask, Python)
  • Thursday - Review “Tools and Equipment”. Bringing your laptop. Setup Fastpages and Tools and push code to your Repo and track updates of Fastpages to deployment.
  • Friday - Start with Pair Share coding. Spend 25 minutes at keyboard finishing installation and performing fastpages coding, while Pair Share observes and consults. Next 25 minutes Pairs reverse roles.

Equipment, accounts and tools

  • A laptop, that you bring to class every day with the Development Tools installed on it.
  • GitHub Account, VSCode will be used to push/pull changes. GitHub is where we store and share code in the cloud, think of Google Docs but for Code.
  • GitHub Pages will be used to host your personal web site, notes, and experiences. Building pages will teach Markdown, HTML Fragments, and JavaScript.
  • Jupyter Notebooks will be used in conjunction with GitHub Pages to build running Python Code in your Technical Notes.
  • Slack Account, install App on Laptop, get used to reading announcements. Slack is the tool will use for messaging, we have been averaging 50K messages per year.
  • Python is the key language you will be using in this class. Flask, Jinja2, HTML, CSS, JavaScript are the key supporting technicals you will be using to enhance your learning.
  • VSCode is the code editor we will be using in this class. VSCode is more than and editor, this type of tool is often called an Interactive Development Environment (IDE).
  • AWS is used for deployment, an AWS account will be provided by Teacher. AWS Cloud Computing and Servers will be used to Deploy and Support projects on the internet.