I think it makes sense that people who don't have actual experience in making projects in a specific language won't be aware of details such as the value 0 being the default in a certain kind of field in a certain language which makes it a good flag for "data unknown".
This is not a problem specific of teenage programmers - it is natural for just about everybody to not really know the ins and outs of a language and best practices when programming with it, when they just learned it and haven't actually been using it in projects for a year or two at least.
What's specific to teenagers (and young coders in general) is that:
- They're very unlikely to have programmed with COBOL for a year or two, mainly because people when they start tend to gravitate towards "cool" stuff, which COBOL hasn't been for 4 decades.
- They haven't been doing software engineering for long enough to have realized the stuff I just explained above - in their near-peak Dunning-Krugger expertise in the software engineering field, they really do think that learning to program in a given language is the same as having figured out how to properly use it.