You raise an important point. These skills are very important, but they are barely raised when we teach scientists how to copy and paste python snippets. In a British university it's even harder to acquire these skills because the course is often set in stone (e.g. I wrote my first - not very good! - compiler several years ago now but I still have to take Introduction to Python in effect twice)
When I was 15/16, I was very lucky to have a computing teacher who - although he didn't teach us much actual programming - absolutely drilled into us the importance of a program's quality and aims. The absolute basics go a very long way: Should this function be smaller, is this logic simple etc.
When I was 15/16, I was very lucky to have a computing teacher who - although he didn't teach us much actual programming - absolutely drilled into us the importance of a program's quality and aims. The absolute basics go a very long way: Should this function be smaller, is this logic simple etc.