Skip to main content

Real Problem-Solving: Intro to Swift in Junior High School

In this Grade 8 ICT Elective, students used Swift Playgrounds on iPad to design and build simple apps that solved real student problems — like a classroom timer or a quiz randomizer. Rather than learning to code in isolation, students began by identifying everyday challenges they actually cared about, then used computational thinking to build something useful. The project moved students beyond textbook exercises into the role of young designers, engineers, and problem-solvers.

Grade Level - Grade 8

Subject - ICT Elective (Club)

Primary Goal - Apply computational thinking to solve a real, self-identified problem

Key Skills - Variables, functions, loops; empathy, prototyping, peer feedback, iteration

Tools That Made Thinking Visible

Technology was used across the full design thinking journey — not only at the end.

Freeform served as the students’ thinking and planning space — defining the problem, sketching the app, mapping logic, and documenting revisions.

Swift Playgrounds became the prototyping and building space, where students transformed plans into working app prototypes using guided lessons and open-ended creation.

Keynote was used for the final Share. Students created slide decks to explain their problem, showcase their prototype, and describe improvements made after peer testing.

Thinking Before Coding

Before writing a single line of code, students started with empathy — identifying problems that frustrated them or their classmates. Using Freeform, they mapped out app ideas, sketched wireframes, and outlined what their app needed to do. This visual thinking stage helped students clarify the problem before attempting to solve it in Swift Playgrounds.

From Sketch to Swift

Students evaluated their ideas as wild, doable, or most feasible before building. They then applied foundational coding concepts — variables, functions, and loops — in Swift Playgrounds to construct their first prototype. For many students, this was the first time a coding lesson felt immediately useful and personally meaningful.

Testing revealed real problems to solve: timers that reset too quickly, randomizers that repeated values, buttons that triggered the wrong action. Each bug became a learning moment that pushed students to revisit their logic and improve their code.

Improving Through Peer Feedback

Students paired up for a “peer demo” stage — demonstrating their app and giving structured feedback using the format: kind, specific, and helpful. Revisions showed authentic engineering thinking: adjusted logic, redesigned unclear interfaces, and improved features that did not behave as expected. Rather than submitting only a finished product, students showed how their design changed through evidence, feedback, and iteration.

 

What Students Discovered

Students learned that coding is not just about syntax — it is about thinking clearly, organizing ideas, and improving solutions through evidence and iteration. Connecting abstract concepts like variables and loops to a problem they defined themselves made the learning immediate and meaningful. Students also practiced empathy, collaboration, and communication skills that extend well beyond any single subject.

Why This Matters

This project helped students experience coding as meaningful and connected to real life. They used computational thinking to understand a problem, Swift Playgrounds to build a solution, Freeform to organize ideas, and Keynote to communicate their learning. Most importantly, students discovered that with the right tools and the right questions, they can design and build something that matters — to themselves, and to the people around them.

Students moved from passive consumers of technology to active creators. The lesson showed that meaningful coding education does not require a computer lab or advanced curriculum — only a real problem, a clear process, and tools that make thinking visible.

0 replies

This post contains content from YouTube.

If you choose to view this content, YouTube may collect and process certain personal data. You can view YouTube’s <a href="https://www.youtube.com/t/privacy" target="_blank">privacy policy here<span class="a11y">(opens in new window)</span>.</a>

This post contains content from YouTube.

You have rejected content from YouTube. If you want to change your consent, press the button below.