Teaching, programming, and design

We often hear about “teaching kids to code” (see GNOME’s Coding Education Challenge, for example) and I’ve been thinking about what we might mean by that.

From my point of view, the pedagogical goals of teaching kids to code should be about helping them acquire important general skills, such as:

  • thinking analytically and algorithmically: break down a problem into individual steps and plan how those steps might be taken to get the result that you want;
  • iterative problem-solving: start with a rough, buggy approach to the solution and gradually test and refine it;
  • better understanding of an area of knowledge: for example, experimenting with the LOGO language was a much better way to understand deeper mathematical concepts than rote memorisation.

As I was considering this a few days ago, one thought came to my mind: “and what if we taught them to design?”

In other words:

What could be the pedagogical goals of teaching kids to design?
What important skills would they (hopefully) acquire?

I have some intuitions but no definitive answers yet. I’m writing about this here in the hopes that people might find it an interesting question to ponder. If you know good resources on this area, I would be thankful if you could share them.

(This topic was prompted by an ongoing re-read of Seymour Papert’s “Mindstorms”, a great book about the LOGO language and about education in general.)


This is an interesting topic and I’d like to share a few links here. In short, as it’s mentioned by Comodo at their Medium article I beleive teaching kids to design boost their creativity, their critical thinking skill and their ability to propose simple but effective silutions for solving complex problems they face in real life . Participating in design also improves their social skills because design is a social activity by itself.


Thank you, those are interesting resources with a lot of information.

I specially liked the last one, where they use personas to give kids a target user for their designs in order to get them to use their empathy and think about the needs of other people.

One resource from the world of architectural design is the book called Form, Space and Order by Francis DK Ching.
I hold no particular opinion about that book. It was a book used in the introductory years of school in architecture (and have it seen being referred in a lot of places). And as you may imagine it has many supporters and opposers.
It lays down some fundamental abstract principles that may be used in spatial design.

1 Like

Thank you very much, I will check it out.

Another architecture book that is very popular among designers is Christopher Alexander’s “Notes on the Synthesis of Form”. It seems that architects and designers often face similar problems.

Architects are designers. They are designing spaces.
There is a lot of literature on the theory of design in architectural practice. Some of it so old they are considered classics.
The problems overlap with other fields at a lot of places.
Another one of Christopher Alexander’s work is “A Pattern Language” which may feel familiar to architects and software developers.

1 Like

Empathy: You and @omid already mentioned designing for others e.g. using personas. This, I think is a great activity and introduces the idea of understanding needs and goals of others. Which does not need to happen in a typical design setting – I guess architecture (aka.: designing one’s home or school) might be closer to typical context children can relate to.

Negotiation: Balancing different needs is an important activity: Can everyone reach the hook for one’s coat? A bright green as wall color might be liked by some, but not by others… I think there would be excellent opportunities to learn how to consider different needs and learn a bit about ethics e.g. in accessibility.

Caveat: Often, learning general skills is promised by learning to program or to design or… However, the evidence is thin. Skills like “being creative” and “critical thinking” do not exist independent of the context of their application. See, e.g. “Why schools should not teach general critical-thinking skills” and ideas like activity theory or situated learning.

1 Like