Readit News logoReadit News
throwaway47292 commented on Show HN: C Pointer Game – Pointers, Arrays and Strings for Kids   punkx.org/c-pointer-game/... · Posted by u/throwaway47292
throwaway47292 · 3 years ago
I made this game so I can teach my daughter C, particularly thinking about how things exist in memory, while traveling and having dinner or waiting for the bus.

Just grabbing a few cards and looking for where they exist in memory is a fun challenge, but also helps to understand and not be scared of the very overloaded []()* syntax in C.

throwaway47292 commented on Show HN: The Unix Pipe Card Game – teach kids basic Unix commands   punkx.org/unix-pipe-game/... · Posted by u/throwaway47292
Zhyl · 3 years ago
There's a typo on the instructions page. The example has 'rises' but the rest of the explanation uses 'raises'

I love this as a concept, though.

I think if I were to expand this I'd maybe have pre-defined strings for the greps, cards with results on, number pre-selected etc. This makes it more of a 'find the card' or 'matching' game than a problem solving game, but it would make it more kids-card-gamey

throwaway47292 · 3 years ago
Oh! Because of the slow and costly printing process I read it like 50 times, and yet..

Its amazing how your brain just sees what it wants to see.

throwaway47292 commented on Show HN: The Unix Pipe Card Game – teach kids basic Unix commands   punkx.org/unix-pipe-game/... · Posted by u/throwaway47292
1MachineElf · 3 years ago
>And I am trying to make it like a 'scavenger hunt' experience for my daughter, I will put special codes in various places in the programs or on the file system with different difficulty, and I can challenge her to find them.

This is brilliant. I really admire the lengths you go to so that your kids can be engaged. Sounds like this has the potential to be quite fun and exciting.

throwaway47292 · 3 years ago
I really enjoy finding new ways to introduce her into how computers think, in the same time, I have to constantly level up my game, as I am competing with tiktok, instagram, youtube, netflix.. etc. So I have to come up with new incentives, and more and more interesting projects, e.g. I printed a tshirt with some of her code, or made a huge poster with one of the turtle images she made (https://github.com/jackdoe/programming-for-kids/blob/master/...), or sometimes its pure bribery, like buying robux.

When I was her age, I spent hours just reading random man pages, pretty much because cartoon network was showing the same episode of dexter's laboratory for the 25th time.

The kids her age are growing in a strange era, programs will control their life, wether they want it or not, so it will be great if they can debug :)

throwaway47292 commented on Show HN: The Unix Pipe Card Game – teach kids basic Unix commands   punkx.org/unix-pipe-game/... · Posted by u/throwaway47292
1MachineElf · 3 years ago
The photo at the bottom appears to be some small ergonomic keyboard (maybe an Atreus?) built into stained wood along with a screen. Perhaps it is a cyberdeck? Curious to know more.
throwaway47292 · 3 years ago
Ah! I didnt mean to show it off, just my desk is a mess..

Yea its a cyberdeck I am building with hardwired Atreus directly connected to pi zero gpios and using libuinput to make a software keyboard, which works amazing btw.

I am making it to init directly into getty without login (with busybox init), so it boots directly in usable /bin/bash in only 2-3 seconds, and all the available programs are simple python programs (ls, cp, mv, a basic line editor, touchtyping game, hangman etc) and the keyboard itself is a simple python program that basically scans the matrix and emits events to uinput. The frame is from plywood.

And I am trying to make it like a 'scavenger hunt' experience for my daughter, I will put special codes in various places in the programs or on the file system with different difficulty, and I can challenge her to find them.

The goal is to have < 50$ scavenger hunt computer kit (thats why I cant afford teensy or something)

This is just the prototype to see how it feels to write code using line editor, and also to test the effect of thinking of the keyboard as a program with a nested for loop, on her thinking about 'what happens when you press a key'

    for r in rows:
        send(r, 1)
        for c in cols:
             v = read(c)
             if v == 1:
                  # (r,c) is pressed
        send(r, 0)

I just uploaded those to show you how it looks, but again, its just to test the software and the screens size:

https://github.com/jackdoe/programming-for-kids/blob/master/...https://github.com/jackdoe/programming-for-kids/blob/master/...

throwaway47292 commented on Show HN: The Unix Pipe Card Game – teach kids basic Unix commands   punkx.org/unix-pipe-game/... · Posted by u/throwaway47292
OakNinja · 3 years ago
Maybe you could run all the decks as a kit on kickstarter?

I would love to buy all of them as a set, and I believe a lot of others would as well.

throwaway47292 · 3 years ago
I am halfway done with the C deck, as we are switching to C soon, and I will setup a kickstarter after, should be done around December.

I want her to know why x[3] and 3[x] are the same thing.

    int x[3];
    2[x] = 5;

    printf("%d %d\n", 2[x], x[2])
A lot of people struggle with

    x = 5
    y = 6

    y = x

    x = 7
    print(y)
and

    x = [1,2]
    y = [3,4]

    y = x

    x.append(5)
    print(y)
There is something magical in understanding how the computer uses its memory, its almost as if you walk out of a mist.

I think it will be very valuable to have a set of 4 decks: python, machine code, unix pipes and C, so that the decks compliment each other. In the machine code deck there are few cards that have pointers (e.g. https://punkx.org/4917/play.html#43), and they can be used to help with the C deck for example.

Then its LISP.

u/throwaway47292

KarmaCake day735August 14, 2021
About
trying to teach my daughter how to code, https://github.com/jackdoe/programming-for-kids

if you have good ideas on programming pedagogy shoot me an email at programmingtime@fastmail.com

thanks!

View Original