@deadalnix @pirpa I agree that learning to code can result in valuable skills relating to the practice of trial and error and the application of scientific method (such as by tightly controlling tiny changes through numerous iterations to get closer to the source of a problem).

In my article I was attempting to highlight the importance of Free Software to the teaching of coding, not just he benefits of learning to code itself. However Free Software is especially beneficial in terms of the skills that you mention also - working collaboratively is intrinsic to common Free Software development approaches, and this can teach students to identify problems in their programs and experiments as efficiently as possible by utilising the expertise of a broad network of developers. Free Software also strongly encourages the use of best practice in problem finding and resolution techniques, in a way that non-Free Software development cannot accomplish. The typical Free Software patch peer-review process is an important part of this efficient collaborative effort.

So I agree with you both that the skills you describe are also an important aspect of teaching computer science in schools. I also believe that the use of Free Software systems and methodologies in classrooms is the most beneficial way to teach them.