Nowadays, programming has become a trend and is gradually being included in the exam. Various programming training courses are vying to open the door. Programming seems to have gradually become a compulsory course in the minds of parents. The era of “full-staff programming” seems to be coming quietly.
I am a high school student. I started to teach myself programming in junior high school. I know python, c, microcontroller and some simple things. Although I am a leader among my peers in terms of programming, I have vaguely felt the push back of the back wave.
I know a second grader. I have been coding for six years. Although I learned some simple things for children’s programming at the beginning, now I can play python, js, and Android very well. The single-chip microcomputer is even better, much better than me. More children are receiving programming education.
Classmates, teachers, and parents have already acquiesced that I would go this way, and I thought so before. However, this road seems to be a long one… I am at a loss and don’t want to take this road anymore (although this is still my hobby, even if I choose another job, I will not give up programming). No matter how good I learn it, in the current era of competition, I have a high probability of being a code farmer, that is, writing programs for people’s 996 drawing circuit boards.
My friend, with all due respect, you have this problem, which shows that you don’t understand the essence of programming. What is the essence of programming? It’s not mathematics, and it’s not all the programming languages that “I will appear on the stage”! The essence of programming is to model reality. OA is to model the enterprise. E-commerce is the modeling of transactions. AI is modeling the human brain. … Therefore, for a professional programmer, facing a specific need, the first thing to consider is not architecture, not coding, but thinking about how to use abstract computer language to build an abstract model to express the specific human world reality. Then, you come to think again, why do programmers keep chattering, endlessly arguing which computer language is better? Putting aside the hustle and bustle of business, what are the essential differences between different programming languages? What is the difference between C and C++? What is the mission of a scripting language (such as js)? Why was Matlab born? Looking at the essence through grammar, the essential difference between different languages is the way of describing reality, that is, the way of modeling. C is a process-oriented language. It believes that the world is composed of countless processes. The essence of data is storage and the result of the process. But in C++, everything is an object, and data and functions depend on the object to exist. Choosing the C language means choosing to use the process to model reality, and choosing C++ means choosing to use the object to model reality. The scripting language, as the name suggests, is to operate specific elements on a specific platform to make them “moving”. For example, the original intention of js is to manipulate specific dom elements in the browser to make them “moving”. In fact, in the early days of the web, js used most to implement various “special effects” in the page, including floating ads, scrolling subtitles, etc. Therefore, it can be said that the status of js in front-end development today is completely the result of unintentional intervention and a “betrayal” to the original intention. The reason why Matlab is favored by algorithm scientists is that Matlab’s programming paradigm is particularly suitable for modeling mathematical problems. The reason why we talk about concrete languages in a big circle is to prove that the fundamental purpose of a computer language is to describe the concrete world in an abstract way, that is, modeling. This is the same as writing. In a sense, professional programmers and professional writers are a kind of people, one writing in natural language, and the other using computer language. For writers, the soul of writing is not to make sentences, but to express the thoughts after the sentences. Therefore, those children who apply for composition classes are not more likely to become professional writers than those who read comics. For professional programmers, the soul of programming is not code and syntax, but the model it wants to build. Therefore, on the way to becoming a professional programmer, those children who are exposed to programming languages earlier do not have an essential advantage over other children.