Why is this place so full of people who want to spend their time re-implementing these sorts of layers? Is it really just misguided masochism? Why do people want to faff about doing things like this instead of writing actual games?
I don't think it's masochism. It's a combination of being new (to programming) and being young. Quite a few of the people starting like that will get shell-shocked and give up programming. Others will learn when to pick their battles and not try to reinvent every wheel and tiny cock and gear in the future. Some will decide that they like the fiddly engineering bits more than the game programming and we get people to work with the fiddly engineering bits. It's win-win for everyone. Well, except for the people completely giving it up.
I think it's fair to give people warning what they are about to get into, but if they want to dive head-first into the water, I'm not going to stand in their way. I did so too when I was much younger. It makes you appreciate having a mature and well-tested library for a boring task that still needs to be done.