11 ms·
> My kids are all on Linux computers That is great to hear. My kids are both on pi 4s, but we customized the Debian distribution quite a bit to optimize its ha
by dustfinger 3y ago
> My kids are all on Linux computers
That is great to hear. My kids are both on pi 4s, but we customized the Debian distribution quite a bit to optimize its hardware acceleration capabilities and to overclock the hardware as much as possible. The pi boots from a fast nvme usb drive and i/o peripherals are connected via a fast usb hub. They are cooled by the ice tower [1]. They are both using exwm [2] and do not require a mouse. They both type on plank mechanical keyboards from olkb. All of this customization they found quite exciting. Especially being able to mess with their own keyboards.
> I'm trying to wean them off iPads and consumption devices. But it feels like addictive apps can draw them back very quickly (looking at you, YouTube).
We do not own any ipads. Only desktop computers, and I own a couple of laptops, such as the librem 14 and the mnt-reform. Youtube is a bit of a problem, I agree. They need access to it for their schooling at the moment, but the use of it does need to be limited, and the content limited as well, or they will just start watching brain numbing junk. I have decided not to block anything on our network with the goal of establishing a sense of trust, but I also don't allow them to have free rein. It is an endless exercise in finding the right balance :-). To be honest, it is much more of a problem with my son, then it is with my daughter, who spends a lot of her free time drawing and writing and isn't as entertained by youtube videos.
As for teaching them to code, I have been giving them series of exercises and challenges that build up their skill with a few goals:
1. to build their own online mud (multi user dungeon)
2. to write their own compiler
3. to write their own operating system
4. to make their own computer
5. They each have come up with their own personal projects, so I tailor exercises to help them with problems that they need to solve
For our development environment, we use emacs + eglot [3], which is not surprising since the windows manager is exwm. I make them compile and debug from the command-line, because I want them to be competent with standard command-line tools. Fancy GUI-centric IDEs are distracting because all of the options are visible to them even though they lack the skill or need for such features.
I wanted this to be a happy experience, so I have never pushed them, but always challenge them to push themselves. I spend a few hours with them every weekend, then a couple of hours with them mid week to help them with challenges. But that is not how I started. I started with 1 hour first thing every morning Monday to Friday to teach them the basics and get them inspired. If they seemed drained, or I sensed that they needed a break, I just let them have a day off.
We also play erion mud [3] and sometimes hexonyx [4] because I wanted them to understand what a mud is all about and to build up interest. I am really into text-based games, so not surprisingly we play nethack (rogue like) [5]. I am also into interactive fiction and started them off on Adventure [6]. If you are interested in interactive fiction, then you might enjoy reading "Twisty Little Passages - an approach to interactive fiction" by Nick Montfort [7].
Full disclosure, I believe that the main reason I am able to pull this all off is that my wife and I home-school our children. It is a challenge though. Very few families where we are from are similar to us in our philosophy of technology and education.
[1] https://www.amazon.com/GeeekPi-Raspberry-Cooling-Cooler-Heatsink/dp/B07ZCW27VK/ https://www.amazon.com/GeeekPi-Raspberry-Cooling-Cooler-Heat...
[2] https://github.com/emacs-exwm/exwm https://github.com/emacs-exwm/exwm
[3] https://github.com/joaotavora/eglot https://github.com/joaotavora/eglot
[4] https://www.erionmud.com/ https://www.erionmud.com/
[5] https://mud.hexonyx.com/ https://mud.hexonyx.com/
[6] https://www.nethack.org/ https://www.nethack.org/
[7] https://quuxplusone.github.io/Advent/play.html https://quuxplusone.github.io/Advent/play.html
[8] https://www.amazon.com/Twisty-Little-Passages-Approach-Interactive/dp/0262633183/ https://www.amazon.com/Twisty-Little-Passages-Approach-Inter...
- 0xEF 3y agoHey, I don't know if your kids (or you) would be interested, but there's a few hacking games and what I'd consider educational games that they (or you!) might enjoy. [1]https://nandgame.com/ https://nandgame.com/ [2]https://microcorruption.com/ https://microcorruption.com/ [3]https://amar.bornofsnails.net/login https://amar.bornofsnails.net/login [4]https://overthewire.org/wargames/bandit/ https://overthewire.org/wargames/bandit/ Just though I'd toss those your way. I also love text-based gaming, so I'll be trying out the MUDS you linked. I used to play many moons ago, and definitely miss that era of my life. Was also big into the BBS scene in those days as well. And of course, who doesn't love Nethack? Ahh, the memories.
- dustfinger 3y agoThank you for those links, I played around with the first two and they are well done. I hope you enjoy the muds, we have been using tt++ with a custom script to split up channel conversations from the main story line thread. tt++ is a nice, no frills extensible mud client. The main site has a list of scripts [1] that you can download to get some ideas from. The tabs script [2] demonstrates a nice way to organize inputs on your screen. Just make sure you have a compatible version installed. [1]: https://tintin.mudhalla.net/scripts/ https://tintin.mudhalla.net/scripts/ [2]: https://tintin.mudhalla.net/scripts/windowtab.php https://tintin.mudhalla.net/scripts/windowtab.php
- xrd 3y agoThis is really incredible. Thanks so much for writing this all up!
- dustfinger 3y agoNo problem, and good luck!