What is Building Rainbows?

Building Rainbows is a computer science curriculum using Apple’s Swift programming language.  In these pages, you will find lessons, sample problems, videos, programming examples, Swift Playground Books and our thoughts on computer science.

Why is learning computer science so important?

    • Innovation – computer science is the future.  From robots that mow our lawns, to self-driving cars, movies that stretch our imaginations, virtual worlds that expand the imagination and social media tools that keep us more connected than ever, the future belongs to those who speak the language of computer science.
    • Success – more than any other time in history, there are far more dreams than there are people with the expertise needed to fulfill them.  There is a serious lack of well-trained computer scientists to fill the demand and experts predict the demand for well-educated computer scientists will continue for decades.
    • Confidence – learning computer science gives you a leg up on the competition.  A well-trained computer scientist embraces challenges with the confidence that they are ideally-suited to tackle any challenge that comes their way.
    • Creativity – computer science empowers us to create the unexpected.
    • Expertise – well-trained computer scientists are are problem solvers.  In addition, the logic and problem solving skills gained while learning computer science extend to other life skills like critical thinking, mathematics, science and active reading.

The earlier that children learn the fundamental topics of computer science, like sequences and conditionals, the more deeply they absorb these concepts.  Learning to program and exploring the ideas of computer science is like learning a second language, the earlier you start, the easier it is to master.

Computer science is more than just programming.  When a student studies computer science, they learn problem solving skills, computational thinking, algorithm development, number systems, abstraction, idea mapping, data representation, structured thinking, and iterative refinement of ideas, skill sets and solutions.

Why Swift?

While our curriculum will engage students in all facets of computer science, we will also be learning to program a computer.  The programming language we are using is Swift.  Swift originated at Apple, and has since been made open source. It is an extremely powerful programming language, but is easy enough for a beginner.  The language was designed to progressively disclose complexity as the student’s skill grows.  Swift is the programming language of choice for developing iOS applications for the iPhone, iPad, Apple TV and Apple Watch, making it inspiring for students of all ages.  Swift is a fast, powerful, safe, modern and elegant programming language with a burgeoning set of learning tools that make learning engaging and enjoyable.

Staff:

Our curriculum staff has years of industry experience developing software used by the public and years of experience teaching thousands of young people the concepts and skills of computer science.

Bill Chapman - Building Rainbows

Blog

Thoughts and observations about Computer Science and Swift
AppleEDU

Haiku Playground Challenge

Learning objectives:   Working with Strings – concatenation Working with 1-D arrays – accessing elements, count Multidimensional arrays – 2D- and 3D-arrays, accessing elements, count Traversing arrays – for-loops and nested-loops Ragged- or jagged-arrays;  definition, Read more…

Get in Touch