NCSS Challenge with a twist

I mentioned in my previous blog post (April 2020) the intent to share more resources to help computing teachers challenged with the uncertainties brought by the COVID-19 pandemic. Months later, the uncertainties are still there and I have yet to share more resources!

One day I’ll share my year 10 Data Science project and year 11 Software project. What I’d like to share now is my year 10 coding project because it incorporates Grok Learning’s NCSS Challenge. I’ve been using the challenge for years and always as part of an assessment. Nowadays, teachers can even claim participation as accredited training. That means doing the NCSS Challenge in Term 3 is accredited PD, covers teaching/learning/assessment of software programming unit (IST) with 24/7 tech support, and good for face-to-face as well as off-campus scenarios. That’s a WIN-WIN-WIN-WIN !

Here’s what I’ll be doing with year 10s.

 

Computational thinking is an approach to solving problems: designing solutions or algorithms that can be implemented using code. Are you good at understanding problems and creating logical solutions? Can you automate solutions by writing code?

Task:

Technical skills in focus for this task are algorithm design and representation, error correction, as well as coding solutions. The twist is that you will code and evaluate someone else’s design.

 

Part A – NCSS Challenge

NCSS Challenge begins on Monday 27 July 2020. You can choose either the Intermediate or Advanced stream. Completing the challenge constitutes training for algorithm design and coding. Completion rate will be marked accordingly.

The first three weeks of NCSS challenge will be used to practice for Part B of this task. That is, before our third lesson of the week, you must share to the class pool at least one of your algorithms for an NCSS Challenge problem that week. Algorithms should be desk-checked and represented either as pseudocode or flowchart. It should also have a test plan comprising expected output for test cases, including an educated guess of what the hidden test case(s) could be.

On the third lesson of the week, you will choose someone else’s algorithm to write python code for. You will also evaluate the quality of their solution design and test plan.

Timeliness and completeness of submissions will be marked. Quality of submissions will not be marked as you refine assessable skills. Use every opportunity for formative feedback to do well in Part B.

Part B – Algorithm design and coding challenge

  1. On 17 August 2020 (week 4 of NCSS Challenge), you will be given a list of Problems with 3 levels of difficulty to choose from. Choose one problem to design an algorithm for.
    1. Represent your algorithm as pseudocode AND flowchart
    2. Create a test plan with test cases and expected output
    3. Desk-check your algorithm
    4. Submit in Canvas Class Tasks designed solution by Wednesday 26 August 2020

You can submit earlier or do multiple submissions. For example, you may attempt several problems of increasing difficulty as you gain confidence and competence.

  1. From the list of available algorithms other than yours, choose one to code. It can be the same problem you designed for. The teacher will give you the documented design.
  2. Evaluate the design. Was it accurate or did you have to deviate from the documented algorithm to solve the problem? Were all test cases provided? Were the expected output appropriate? Was the desk check accurate? Substantiate your evaluation with specific details.

 

For both design and coding, difficulty level impacts marks. You may choose different levels for design and development, e.g. if you are more confident designing algorithms versus writing and testing code. Excellent completion of simple problems could still earn an ‘A’.

 

SUBMISSION: 

Weekly Part A submissions will be in our Microsoft Teams site where it is easy to share documents.

Design for Part B should be submitted in Canvas Class Tasks by 26 August 2020.

Submit the following Part B components to Canvas Assessments for marking:

  1. Algorithm solution and test plan
  2. Python code
  3. Evaluation of algorithm solution

 If you attempted several levels, please submit the highest level completed.

 

I’m still wondering what to do with year 9s but it will also involve NCSS Challenge. I really liked what I did last year which culminated in a feature post on Grok Learning blog (!!!!!). I have keen coders in this cohort so it’ll be a different experience again.

For more on how I use NCSS Challenge, check this post. Or you could always contact me here or on Twitter if you’d like to discuss further. I’d love that!

COVID-19 and Grok Learning

The COVID-19 pandemic has challenged many teachers including me with shifting from face-to-face on-campus teaching to an off-campus combination of synchronous and asynchronous learning. I thought I’d do my bit for the computing teachers community by sharing my resources.

My first (hoping to share more) installment is for IST. This one is for my year 9s for the Internet and Web Development option. I always run this unit in line with Grok Learning Web.Comp. That it suits off-campus learning is a bonus. Thank you Grok Learning!!!

The Task

In groups of 3, students will design and develop interactive websites. There are deliverables for the team as well as team members. They all have to do Web.Comp to upskill and then apply immediately to their project. Here’s the complete task including schedule and rubric mapped to outcomes (see below). I keep my rubric simple with specific criteria on what I’m looking for.

 

In groups

  • Choose their own topic inspired by pages from our school diary. It covers study skills, well-being, school history. This content is relevant more than ever and I do not have to worry about allocating time for research which really isn’t the focus of my assessment.
  • Choose their own audience; specific is best, e.g. year 9 student who loves checklist
  • Decide on a Site Map, i.e. what pages and features to include
  • Decide on a joint Style Guide

Individually

  • Find their own inspiration before contributing back to the team
  • Define one success criterion based on the Web Content Accessibility Guidelines (WCAG); #a11y is a thing! and a practical way of engaging with ethical issues
  • Create a prototype so they can refine their Style Guides prior to submission – and see the cascading bit on CSS in action (and likely frustration but that’s all part of learning!)
  • Log progress (Medals and Missions) for self-regulation purposes as well as to help me keep track of their progress (evidence of engagement and understanding, in teacher-speak)

 

a bit more context

I’ve asked my students to do Grok Learning’s Intro to HTML/CSS course late last term. Most have done about 50% of the course and all of them are familiar with the interface. This is why I chose Advanced stream.

My off-campus classroom is in Microsoft Teams, with a channel for Virtual Lessons. This worked well at the end of last term. Now, I’ve added breakout channels (this post from Alice Leung is helpful if you want to learn how I set it up plus a few other tips there) for each project team as I intended this task to be group work. I considered using GitHub but since I haven’t walked my students through setting it up – and I’m not all that confident in trouble-shooting, I decided to stick to files in Teams. I’ll have to show them how to sync so they can do offline development.

I usually do backward-planning, i.e. starting from outcomes and then create learning experiences accordingly. Here are the outcomes I intend to assess:

5.2.2 Designs, produces and evaluates appropriate solutions to a range of challenging problems

5.2.3 Critically analyses decision-making processes in a range of information and software solutions

5.3.2 Acquires and manipulates data and information in an ethical manner

5.5.1 Applies collaborative work practices to complete tasks

Here’s my planned Term 2 schedule including weeks before and after the assessment and Web.Comp. Not sure what the NSW plan of staggered return will do to this plan but I think it might just be resilient enough!

 

Old posts that could be useful

Here’s a post I wrote for more on how I use Grok Learning in my teaching. Grok Learning is free until July. That’s another bonus!

Here’s a post on how I do my backward planning – this one’s on a unit for Year 11 Software Design and Development.