Advanced
40 mins
Teacher/Student led
+80 XP

Strand 3 Challenge Build

Plan, build, document and test a small Python program solving a problem you choose. Have it tested by a classmate from outside your group and make one improvement based on their feedback. Note any ethical or legal issues.

Teacher Class Feed

Load previous activity

    1 - Start ~4 mins

    Illustration for StartYou have written Python, documented it so someone else can follow it, and analysed code that was not your own. Today you put all of that together.

    You will plan, build, document and test a small Python program that solves a problem you choose. Then you will watch someone who did not build it try it out, and use what you see to improve it.

    2 - Set up Your Challenge ~6 mins

    Your challenge build process

    Pick a small problem a short Python program could help with. Keep the scope small enough to finish today: a short program that works and is tested beats a big idea that never runs.

    Stuck for an idea? Try one of these, or invent your own:

    • a GAA score helper that works out the total from goals and points
    • a packing advisor that suggests a jacket or raincoat from a temperature and a yes/no rain answer
    • a short quiz on a subject you care about, with a running score
    • a fixtures or shopping list you can add to, show, and search
    • a tip splitter that divides a bill in euros between a group

    Your finished build must:

    • solve one clear problem with input, a decision or a list
    • use clear names and comments, and run without crashing on normal use
    • be tried by someone who did not build it, then include one change from what you saw

    Before you code, write a short plan (pseudo-code or a quick flow chart). Note one data or fairness question your program raises. Example: for a GAA scorer, should a player's name be stored with their score?

    3 - Hands-on: Build and Document ~16 mins

    Start here. Open a new Python file and build from your plan. Hit Must before the freeze. That alone is enough to go to the swap.

    Must (hit these before the freeze):

    • the program runs end to end on the normal path
    • a top comment names what it does and any ethical or legal note
    • your plan is still visible (on paper or in that top comment)

    How to get there:

    1. Put a short comment at the top: what the program does, and any ethical or legal note you spotted.
    2. Code the core path first so it runs end to end on normal, expected inputs.
    3. Add clear names for variables and any functions. Comment the parts that would confuse a classmate.
    4. Test it yourself. If something breaks, use the debugging routine: read the error, find the line, form a hypothesis, test it.
    5. When your teacher calls freeze on new features, stop adding features and polish what you have so a stranger could try it without you talking them through it.

    Need a start? Write each line below as a comment in your file, then fill the code under it.

    1. Ask the user for one input (a number, a word, or a yes/no answer).
    2. If a condition is true, do one thing; else do another. Or put values in a list and show or search the list.
    3. Print a clear result in a full sentence.

    After the freeze (only if Must already runs):

    • clear names and comments on the main steps
    • you have tried at least one awkward or empty input yourself

    4 - Hands-on: User Test and Improve ~8 mins

    Test with someone who did not build your program. Keep to this pace so you finish the improve step:

    1. Swap seats or devices with your assigned classmate. Do not explain how your program works.
    2. Silent try: watch them use it for about two minutes. Notice where they pause, what they type, and what confuses them. Stay quiet on the first attempt.
    3. Feedback note: write one thing that worked and one thing that did not.
    4. One fix and re-run: take your own program back. Make one improvement based on what you saw (clearer wording, a better error message, a missing case, or a comment that would have helped). Run it once more to check the change.

    Done looks like:

    • someone else has tried your program without a guided tour
    • you can name one thing they struggled with or liked
    • you have made and re-tested one change from that observation

    If the program crashed for the tester, your one improvement is to fix that crash. Use their first action as the case you reproduce and repair, then re-run.

    5 - Make Sense ~3 mins

    A program that only works for its author is not finished. Watching a cold user is how you find the gap between what you meant and what the code actually does.

    Documentation, clear names and a short ethical note are part of the build, not extras added at the end. They are what let someone else run, judge and trust your work.

    123learn · Online learning platform

    Unlock the full learning experience

    You're previewing this lesson. Get full access to this lesson and hundreds more — each one ready to teach, with interactive activities, printable resources and pupil progress tracking built in.

    Hundreds of curriculum-aligned lessons
    Interactive activities in every lesson
    Printable resources & progress tracking
    Copyright Notice
    This lesson is copyright of Coding Ireland 2017 - 2025. Unauthorised use, copying or distribution is not allowed.
    🍪 Our website uses cookies to make your browsing experience better. By using our website you agree to our use of cookies. Learn more