Featured, Theory
comments 9

“from 0 to C” – Teaching programming using a tangible approach

from-0-to-c_5-credits-hello-savants copy

Created by Ubi de Feo, “from 0 to C” is a series of workshops that aim to teach programming using a tangible approach. Learning how to program requires pragmatic thinking and “advanced problem solving” and through the use of tangible, hand-made objects, the team behind the project try to establish a clear understanding of how a computer works and what a programming language actually is.

With the increase of interest in coding, trying to sometimes teach programming to designers can indeed be a challenging task. There are many tools available already that CAN readers are very familiar with. Aimed primarily at designers, Design by Numbers, Processing, openFrameworks and most recently Cinder are all frameworks designed to create a bridge between complicated layers of code into easier to understand and apply scenarios. To those learning these tools, it is often that difficulties arise even before the creative process begins. This could partially be blamed on the lack of understanding underlying principles of how computer works and the logic of programming languages.

The concept of “from 0 to C” is simple: take a bunch of common tangible objects and organic materials such like M&Ms, Ping-Pong balls and wood, mix them with a group of non-experts willing to learn how to program but not to spend 3+2 years in a computer science university, forget about computer screens and keyboards and bake it for 1, 2 or 5 days (depending on the type of workshop).

From 0 to C’s goal is to create a thorough understanding of what a programming language actually is in terms of the mathematical and logic structure at its core. Making something that initially feels very abstract becoming clearer and more logical.

During the workshop the participants are asked to physically perform tasks involving a subject, an object and an action, and afterwards to rationalise the logic of these sequences in order to translate them in code.

Ubi hopes to take this approach into schools and universities teaching the core basis of programming. I indeed hope so as it seems like a fantastic way to introduce programming. I hope we can get Ubi to Resonate.io next year.

Project Page / More Info

(thanks Régine)

  • bob

    Sure beats learning to program using Scheme

  • http://www.facebook.com/ubi.defeo Ubi de Feo

    @bob: hahahhaha. thanks, not sure I can catch a compliment there ;)

  • @ImranNazirMir

    Well done on your brilliant initiative. I remember being an electronics and computer science student in the early nineties at a Russel Group University. As a geek you were practically an outcast, you couldnt get dates(of the non-fruit variety), didnt get invitied to all the cool parties the arty(short for ‘the arts’) students went to and hence had little chance to develop social skills that get the ‘arties’ ahead. However, we still loved designing our gate arrays, developing algos and mastering binary arrithmetic. CompSci & ElecEng was still a niche but neccessary subject with few broad creative outlets. Now im amazed by the change. All the suited and booted air kissing types with continental accents, perma-tans and crucially the broad ideas want to know you. Even my fellow geeks have begun sporting ‘cool’ hircuts, designer frames and ass hugging jenes; or where they already cool and just wanted to be a bit more geeky because it was ok, and there was money to be made?

  • @ImranNazirMir

    Well done on your brilliant initiative. I remember being an electronics
    and computer science student in the early nineties at a Russel Group
    University. As a geek you were practically an outcast, you couldnt get
    dates(of the non-fruit variety), didnt get invitied to all the cool
    parties the arty(short for ‘the arts’) students went to and hence had
    little chance to develop social skills that get the ‘arties’ ahead.
    However, we still loved designing our gate arrays, developing algos and
    mastering binary arrithmetic. CompSci & ElecEng was still a niche
    but neccessary subject with few broad creative outlets. Now im amazed by
    the change. All the suited and booted air kissing types with
    continental accents, perma-tans and crucially the broad ideas want to
    know you. Even my fellow geeks have begun sporting ‘cool’ hircuts,
    designer frames and ass hugging jenes; or where they already cool and
    just wanted to be a bit more geeky because it was ok, and there was
    money to be made?

  • p2pu_dirk

    Looks great, any idea under what license these examples will be shared? Holding thumbs for a CC license…

  • Ubi de Feo

    hi there
    sorry for the very late reply, I ended up here accidentally and didn’t know there were two comments after mine :D

    my plan is to release all the designs and the notes I’ve been taking over the past two years and have people join the project to make it better and better :)

  • http://thesystemis.com zach lieberman

    Ubi I’d be super happy to help out w/ this, please ping me(!) — we’re interested in how we can use this approach in SFPC and have been doing some similar work, would be great to have some place to trade notes about what works, etc.

  • Ubi de Feo

    hey Zach!
    been trying to reach you over twitter but I guess you must receive a lot of mentions :)
    I’d love to share my material with you guys.
    let’s connect somehow.
    looking forward
    u

  • Diana Ofelia Flores Cruz

    Hi, as college teacher at Mexico, i’ve seen that lots of Computer Science students are struggling to get the basic principles of programming. I’m chemical engineer, but i’m familiar with programmation and now i’m very interested in helping them to understand the logical/mathematical concepts, when i saw this post, i thought “This is EXACTLY what i’m looking for!!!” Are there some didactic materials, a handbook or something? Of course i’ll give the credits, report the results, give feedback or more ideas to teach programation basics.

    Thanks in advance!