It isn't just that modern computers are 'completed.' They are essentially closed off. The old machines some of us grew up with powered up to a programming interface. A prompt at which you could start typing in a BASIC program for the most part.
Modern software systems have abstracted things completely away from this sort of interface, for better in the case of usability but for worse in terms of prodding a young new user to actually learn to program it. There are huge abstract toolchains that have to be installed and a budding programmer can only write code at the topmost layer of the abstraction. No kid is going to write an 'Android app' straight out of the box after reading a few chapters in the introductory manual that comes with an Android device.