Programming and the Development of Computer Thinking


Sometimes we say programming, coding or robotics. We even make competitions! These are components of a 21st century skill: the development of computer thinking. This file, contrary to what one might think, is not only for geeky teachers, but for all those who want to explore what the world of education might look like in the future!

Coding, programming and robotics

Coding and programming

In education, these two terms tend to be used in an equivalent way, which is not traditionally the case in the field of computer science.

Programming often refers to analyzing problems and solving them with algorithms, then translating them into one of many existing programming languages. Those who occupy this function professionally are programmer-analysts. The function of programmer (without the analysis part) existed when the first computers arrived in the 1950s and has almost disappeared today. Note that, in general, algorithms are problem solving methods using different stages of processing a certain number of data.

In general, when we speak of coding, we refer to the fact of translating an existing algorithm into programming language. In short, the task of coding is more a translation operation than reasoning in itself. In this file and generally in education, the term programming is privileged.

Whether we are talking about coding or programming in a school setting, the important thing in terms of pedagogy is this: the more the task involves a large portion of analysis, the more we aim at using metacognition and developing skills in problem solving. And that’s where the relevance of programming in school context lies! We will come back to it.


Robotics is one of the ways to apply programming concepts. In a pedagogical context, it makes it possible to concretize certain notions that would often be much more abstract if they were taught in a formal or traditional way. In addition, some robotic applications used in schools require little or no programming skills.

Teaching programming concepts through robotics is a good starting point and prepares students to move to a more formal level of programming.

An interesting aspect of robotics is the variety of input devices (light sensor, distance sensor, temperature probe, etc.) and outputs (motor, light, sound, etc.) possible. There is also a motivational element for the student to see directly and concretely the results of his programming through the actions of a robot.


Wanting to make programming learning accessible is an idea that does not date from yesterday. For example, in 1964, BASIC was invented to introduce university students and has long been used to show the basics of programming.

The idea of ​​formally teaching this subject is not new either. Just think of the Logo language. The earliest versions of this language were developed in the late 1960s, and school-based experiments were conducted in the 1970s in a few schools in the United States. It was in the 1980s, however, that attempts at scaling up took place, particularly in grades 5 and 6, including in Quebec.

In Quebec, there has been no widespread deployment of formal programming instruction, other than the ISI (Introduction to Computer Science) training program created by the Quebec Ministry of Education in 1982. These elective courses were offered to fourth and fifth graders, but have virtually disappeared from schools. Moreover, without being the official reason for this disappearance, the cost of computers has long been a hindrance to the implementation of programming courses in Quebec schools.

Why are we talking about it now?

For several years, the growth of companies in the field of information and communication technologies (ICT) has created a demand for specialized workers in all sectors of computer science, particularly in the development of software, video games and communication solutions for individuals or businesses. The labor shortage anticipated by several economic analysts in the field of science, technology, engineering and mathematics (which is grouped under the acronym STIM, or STEM in English) is putting pressure on governments and systems education. In 2012, Microsoft has also suggested different avenues to strengthen training in STIM fields, particularly in the field of IT. One can read more by reading A National Talent Strategy: Ideas for Securing U.S. Competitiveness and Economic Growth.

Whether this anticipated shortage becomes reality or not, the idea of ​​adding programming to primary and secondary education is already having an impact. For example, big companies like Google, Microsoft or Microsoft Top and Facebook are funding the non-profit organization, whose main goal is to promote learning about programming in schools.

Notwithstanding the desire of large companies to have their labor needs met, it must be recognized that the ability to solve problems and express solutions in a computer language is becoming increasingly important in the range of most useful skills in the job market.

On a larger scale, it is a collective awareness that is taking place: new skills need to be developed among students. For example, it is becoming increasingly important for young people to develop an understanding of the tools they use on a daily basis to understand how they work, to maximize their use and to develop a critical look at this same use. In a way, it is a high level of numerical literacy that occurs in the development of computer thinking.

Motivation, Interdisciplinary and Digital Literacy

The new needs of the labor market coincide with other human factors which constitute an unprecedented educational opportunity. The attraction of young people (and not so young) for video games is a striking example. Indeed, the design of games through programming is an interesting springboard for individuals, both motivational and educational. These are learning that detonate with what students are used to doing in class. In addition, the possibility of concretizing certain theoretical contents through programming is particularly pleasing to boys. These learning situations lend themselves particularly well to interdisciplinary and transversally. On its own, learning a programming language allows the development of a series of skills that can be applied in several fields. For example, computer tasks fit naturally with those in math and science courses. Many creative teachers even extrapolate these ties in in history and in other subjects.

Does the omnipresence of digital in everyday life alone not constitute a valid reason to question what is behind the screen to understand how it works, and thus to evacuate the magical conception that we are to give to these machines? Precisely, the programming courses can reduce the effects of a potential “technological fetishism” (attraction for the “gadget”) and allow to keep a critical distance to the tools used daily.

Author Bio:

Article writing done with Sonam SID from SID Blog Marketing, expert in article research and writing thousands of articles weakly, you can find Sonam SID through her profile.

Leave a Reply

Your email address will not be published.