Think about it for a moment. You are reading this text on a computer, a mobile phone or a tablet. It is likely that your work is related to computer science to a greater or lesser extent and, nevertheless, the bulk of the population does not know the programming languages that control these devices.
Would you be able to program a simple tool that would allow you to automate emails to your customers? Or an application capable of recording at what times you enter and leave home and work, taking into account your location via your mobile’s GPS? If the answer is negative, you are one of those many people who do not have basic knowledge about programming languages. But is it necessary to acquire this knowledge during our training? Should programming languages be taught in any career, from the most technical to the humanities?
“I think everyone in this country should learn to program.” The phrase is not said by any person. It’s from Steve Jobs, in a television interview that you can consult under these lines. “Learning to program teaches you to think. It’s like studying law, I’m not saying that everyone has to be a lawyer but it’s useful because it helps you think in a certain way, in the same way that programming forces you to think of another. Everyone should take one or two years of their life learning to program,” said the founder of Apple. A few days ago he was his successor at the head of the company, Tim Cook, who said that “programming is more important than learning English.”
Some countries seem to have taken the words of Steve Jobs seriously. The Chinese government approved last year a plan for children to start studying programming from six years to which, over the years, will be added notions in different languages. The plan does not stop there since it pretends that, from the age of 11, the students also receive robotics classes.
Programming languages or computer programming?
Federico Peinado, professor of the Faculty of Computing of the Complutense University of Madrid, considers that the question can lead to deceit since it is necessary to distinguish between two very different scopes at the time of considering if the programming should be taught in the classrooms of obligatory way.
“Computer programming is a discipline in which it would be interesting for everyone to be trained as it explains how a machine thinks, how orders are given and how it is programmed to automate processes and help us to perform tasks,” he explains.
Faced with this discipline, Peinado believes that the study of programming languages is focused on a more specific audience that does not have to be familiar with some very technical tools. “I think it would not be appropriate for all careers to have a textual, object-oriented and structured subject such as Java.”
For the professor at the Complutense University, “it makes sense” that this knowledge is taught in careers where future graduates will need those skills to carry out their work. ” I do not see a dentist or a doctor studying programming because it would not be useful, I do not see it related,” ditch.
Faced with the skepticism of Peinado, other professors from other fields believe that these studies should be taught not only at the University, but even before, at the institute. This is the case of Mar Marcos, a professor in the communication faculty of the Complutense, who gives concrete examples in this regard. “Often with video editing or photography programs students can not determine problems because they do not even have a basic orientation,” he illustrates.
For Marcos, the “simple fact of knowing how to mess with a computer would be very important ” and gives the example of the schools in which robotics is taught as the model to be followed within the educational community: “You should start teaching in Baccalaureate. Even before. ” An opinion that also shares Peinado, although with nuances: “Yes I think that computational thinking should be taught at a level below the University so that we all have a basic training as we have in general culture and that is why we study mathematics, language or social.”
You may also like to read: 25 years of opening to the world of the World Wide Web: Thus were their first steps in 1991
A final testimony on this point helps to highlight both positions. Ricardo Galli, founder of Menéame and also a doctor in Computer Science is a supporter of learning programming languages but in a very specific environment: “It is very visible in IT students: they leave the course after the first year because they leave a scientific baccalaureate ** without having any idea of programming”**.
Galli goes further to point out that “the vast majority of students do not know what an algorithm is ” and go to other sciences, such as “statistics, physics or chemistry”, to indicate the training that students receive in these areas. and that allow them to leave better prepared to the university environment.
The future happens? For programming
Even within the professional circles dedicated to engineering, computer science or systems administration, the question is with supporters and detractors. Omar Miranda, network administrator at Claranet, argues that in his more than ten years of professional career he has programmed “on a few occasions”. Miranda recalls that “a network administrator” can perform his work without having knowledge in programming languages but also points out the importance of having a basic training: “Yes it is good to at least understand the programming language to, for example, make scripts -small programs to automate tasks- that help you in your day to day life”.
But Miranda points to a new practice that aims to bring together knowledge in all these areas to end with that dichotomy within the field of information technology. “The trend is called devops and it wants all the professionals in the sector to be able to program to automate all the possible processes”.
DevOps, which is an acronym for the words development (development) and operations (operations), aims to implement a culture in which the development of software and systems management is done in an integrated manner which will have a positive impact on computer companies by allowing them a greater speed in the development.
Beyond the specialization in programming or another area, the IT environment is committed to the convergence of disciplines. The devopsphenomenon is a good example.
A final case shows the extent to which knowledge in programming is necessary to carry out certain professional projects. Sharing Academy is a platform developed in Barcelona that aims to act as an intermediary between university students who master specific subjects with those who need reinforcement.
Created by Jordi Llonch, a former airplane pilot who decided to start his own company, Sharing Academy was born in part thanks to the problems his creator had with programming. “Sharing Academy arose because I was not able to advance with the programming subject and I needed a private teacher”, explains Llonch.
Although the head of Sharing Academy admits that he is not passionate about programming – “you should have seen the first version of the platform”, he jokes – he also admits that everyone in the company “has some notions of programming” given the technological component of his professional sector.
“All the people who make decisions about the product have basic knowledge because, even if they do not program, it is necessary for these people to understand the technical implications and resources required to implement a new functionality,” he explains.
“The programming subjects account for 18% of the offer in those grades where it is taught and occupy the first position”
Llonch ends by putting an example of his company. Its marketing director, who at first was only responsible for the dissemination and recruitment of users, “has learned to program to be more agile.” According to Llonch, now that person not only saves the company time and money, but does so by “being aware of the resources needed to perform certain tasks.”
According to Sharing Academy, the programming subjects account for 18% of the offer in those grades where it is taught and occupy the first position, followed closely by mathematics, with 16% of the total demand. In front of the voices that explain the benefits of knowledge in programming languages, Federico Peinado makes a final call to prudence in this regard: ” There is a certain mysticism that surrounds computer science and there is a certain ignorance. It is good to learn so that it is understood that it is not black magic. It is good to know what happens underneath in a computer but at an expert level only experts will know “.
Also from the scope of the company, Ricardo Galli launches a final reflection, since he does not believe that knowing how to program should be mandatory in any productive sector. “All technical careers have programming things, physicists, chemists, biochemists or anyone with a minimal treatment of statistics for years.” It would be unthinkable to do physics without knowing how to program but, for example, I do not see a journalist who needs that knowledge unless you are going to work with data.”