this post was submitted on 17 Sep 2024
139 points (99.3% liked)

Asklemmy

43396 readers
1727 users here now

A loosely moderated place to ask open-ended questions

Search asklemmy 🔍

If your post meets the following criteria, it's welcome here!

  1. Open-ended question
  2. Not offensive: at this point, we do not have the bandwidth to moderate overtly political discussions. Assume best intent and be excellent to each other.
  3. Not regarding using or support for Lemmy: context, see the list of support communities and tools for finding communities below
  4. Not ad nauseam inducing: please make sure it is a question that would be new to most members
  5. An actual topic of discussion

Looking for support?

Looking for a community?

~Icon~ ~by~ ~@Double_[email protected]~

founded 5 years ago
MODERATORS
 

I am a student in Germany myself and got the rare chance to influence the education about CS/responsible use of technology people get in a special course I will give for the interested in my school this year.

The students will be eight grade and up, and it is a reasonable assumption that I will not have to deal with uninterested students (that and the probably small course size gives me an edge over normal courses beyond my actual planned lessons).

My motivation for investing substantial amounts of time and effort into this is my deeply hold belief that digital literacy is gonna be extremely important in the future, both societally and personally. I have the very unique chance to do something about this, even if only on a local level, and I’m gonna use that. I fail to see the current CS classes in German "high schools" (Gymnasien), and schools with our specialization (humanism) especially, provide needed education. We only had CS classes from grade eleven—where you learn Scratch or something similar and Java basics (most don’t really understand that either, or why you should learn it (a circumstance I very much understand)).
This state of affairs, and the increasing prevalence of smartphones instead of PCs means most students lack any fundamental understanding of the technology they’re using everyday.
My reason to believe that I’d be better at giving CS lessons than trained teachers is that these have to stick to very bad specific guidelines on what to teach, and a lack of CS graduates wanting to become teachers means our school has not a single one who studied any CS (I did).

Some of my personal ideas:

  • how do (basically all) computers work hardware-wise (overview over parts)
  • what is a computer/boot chain/operating system/program
  • hand out USB drives/cheap SSDs to students that they can keep (alternative: a ton of VMs and Proxmox users of one of my hosts) and have everyone pick and install their Linux distro of choice (yes, this is gonna be painful for all involved, but is also—as I suspect many of you already know—extremely rewarding and can be quite fun)
  • learning some "real" programming (would probably teach Python), my approach would be to learn basics and then pick projects and work alone or together (which is useful for learning Git/coding in a remotely readable way)
  • some discussion of open/closed source, corporate tech, enshittification, digital minimalism and philosophy of technology (which would be okay because, you know, humanistic school…)
  • maybe some networking (network stack, OSI, hacking Wifi networks…)

What are your thoughts and suggestions? Took me some time to get to an agreement with the school over this, so I’d like to do my absolute best.

Possibly relevant questions: what fundamental knowledge about tech do you suspect to be still relevant 15 years from now, what would you like to have learnt, what would you find interesting as a student this age…

you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 2 points 1 day ago

I love all the ideas you have! Explaining how computers work, on a basic technical level, is something everyone should know nowadays.

I would suggest to focus the programming on something small, fun and instantly rewarding. Something like Snake in Pygame is not overly complex and you can take it step by step, so that every student will have something to show at the end, with varying levels of complexity. I would advise against using templates for projects, a lot of courses do but in my opinion it makes it harder for the student to replicate the work on its own later on.

In terms of networking, setting up a small test network with a WEP access point, a WPS access point and a WPA2 access point and letting the students (in groups, probably) try to figure out how to access/crack the passwords for them. (WEP and WPS should be easy, but WPA2 would require the deauthing exploit, which is a tad more complex).

Also the idea of cheap usb drives, which they can put on a live distro (or make it come with one) is a great way to start the lesson. This way they can have a setup that's detached from the usual limitations school pc's give. (if that's still a thing).

Do make sure to teach them the ethics around hacking, cracking and downloading. From what I remember, Germany used to be decently lax on all three, but started to crack down on it in the past 10 years. Teaching responsibility and what the consequences are is very important.