![]() |
|
![]() |
| I ordered 1 of all your available decks a few months ago, my daughters are too young for them still, but I think they are great, and I can't wait to bust these out in 8+ years |
![]() |
| The great thing about this game is that whoever knows UUoC will be the winner.
cat file.txt | tr a-z A-Z | sort (loser) tr < file.txt a-z A-Z | sort (winner!) |
![]() |
| Are kids these days actually able to grasp things like this? I don't have kids and am never around them, so please take this question as genuine and in good faith. |
![]() |
| I think it depends a lot on the kid and the parent, I am teaching my daughter since she was 10, and I try to spend time every day doing something, you can see our progress here: https://github.com/jackdoe/programming-for-kids/blob/master/...
It is difficult because I have to compete with snapchat and google/meta for her attention, and school is quite exhausting. Snapchat has this super annoying 'streaks' and the more friends you have the more streaks you have to keep alive, so you have to send like 400 messages per day.. its non stop. I teach her that there are 100_000 developers and psychologists and product owners and etc, that they go to work every single day thinking how to extract the most value out of her attention, and she has to constantly be aware of what is the "algorithm" making her do. Unix Pipes she got quite quickly, but doesn't use often, but the idea of one program reading another program's output she got. Also grasping the command line was not that difficult. But I used quite some tricks to help. For example her windows PC I change the shell from explorer to cmd.exe, so it boots in cmd, so she has to navigate and also fix it. I also make scavenger hunts on her filesystem so she has to look for a file using dir and cd and etc, also https://overthewire.org/wargames/bandit/ I bribed her with robux for passing each level of the bandit game I want to teach her how computers work and how to make them do what she wants. From what is a register, to an instruction, to a program to a process. Kihon no Kihon as they say. But in the process I also teach her how to break things down and how to think and most importantly how to learn. I teach her about the heart of things, so there is no mystery between the keyboard press and the letter appearing on the screen, or how chatgpt predicts the next word (I am working on a RNN board game with 3 neurons and you have to teach it to count https://punkx.org/move-37/rnn.pdf [work in progress]) So in the end I am not sure if it matters what you teach your children :) |
![]() |
| > what a file is
What is a file, what is a program, how programs run and how programs communicate, is not understood by most people (including most CS students). > Honestly I don't find that too bad. I understand what you mean, it is the same with most technology, users just use it, as your example of cars, or even furniture, or forks and spoons, or language, I am not even sure it is related to complexity. But I disagree on what it means to use a computer, because unlike other machines, it does what you make of it (now even more, with llama 3.1 out), I think to use a computer means to program it. Somehow in the last 30-40 years, user interfaces gave up on their users. You dont own your programs, your files or in many cases even your computer, it doesnt start the programs you want(iphone for example), and you cant debug other programs (e.g. in case of macos you cant gdb -p into signed programs unless you disable the system's integrity protection). Somehow we managed to squeeze all the fun out of it. As John Carmack says: the distance between what it is, and what it could be, is the opportunity, and I am sure people can have way more fun programming :) This commodore 64 user guide: https://www.youtube.com/watch?v=J9WnHuGjZ38 is my inspiration. |
![]() |
| There was a post on HN some time ago about a candidate for a senior IT role, who wrote code in MS Word.
I can't find it right now. Maybe I should try Bing search |
btw, you might also like https://punkx.org/overflow/ which is a buffer overflow riscv assembly board game, or depending on your kid's level you can also play snakes and ladders with gotos https://punkx.org/overflow/build/snakes-and-ladders.pdf
Also if you have kids, I would recommend you print https://punkx.org/panic/ which has amazing pranks that fit in one poker card (e.g. randomly hitting backspace or space every 30 seconds, or pressing W randomly if minecraft is open)
I am donating a lot of the decks to teachers and schools, so if you are interested send me an email.
PS: I am in London for 1 more week, so if you order decks now the shipping will be delayed, but I will make sure I add 1-2 extra decks in the package because of it.
PPS: the unix pipes expansion deck is all about process substitution, but I don't think its useful for kids, though I think it contains nice puzzles