It is very sad that we need to take two entry level programming language classes in the first year. My university does not allow me to remove it as it's the pre-requisite of pretty much everything else. And I can't "prove" that I know Java, which I didn't but I'm confident that I can get the basics going in one day and the basic-medium stuffs in a week because I already know some C, C++ and Python.
The only class that I think should teach programming languages should be a PL class. An introductive one usually teaches three or more languages in one shot with each an example of a paradigm.
BTW the zero-credit courses sound like an excellent idea. Students do not get credits but still get education out of them. It's a great practice.