For kernel dev it would be a disaster, there's too much implicit action, and abstractions that have unknown runtime cost. The classic answer is that everyone uses 10% of its features over C, but nobody can agree on which 10%.
As someone forced to get up to date with C++ recently, at this point it's a language in full identity crisis. It wants so badly to be Rust, but it's got decades of baggage it's dragging along.
One thing I'd like to suggest is get most of their forward facing apps as Flatpak and let them install software that way instead of using the system package manager (even if it has a GUI). This jibes with others suggesting an immutable base system.
Obviously this may be more of a concern for older kids, but my kid started with Linux and it did fine... Right up until Discord started breaking because it was too old and they didn't want to tangle with the terminal. Same thing when Minecraft started updating Java versions. Discord and Prismlauncher from Flatpak (along with Proton and Steam now) would have kept them happier with Linux.
As for internet, routers come with parental controls these days too, which have the added advantage of being able to cover phones (at least while not on mobile data). Setting the Internet to be unavailable for certain devices after a certain time on school nights may be a more straightforward route than DE tools.