banner

One of the most frequent questions that newcomers, people who are far from programming, and one of the biggest stereotypes of our time ask: does a programmer need mathematics? And no one will give a complete answer to this question. This is due to the fact that there are many directions in programming.

Modern programming languages, which are very popular at the same time, now, can solve many problems very quickly, and their toolkit is specially made so as not to cause discomfort for developers in the development process.

Of course, most modern developers prefer to go more to Frontend, Backend and not to create problems with learning languages of any level.

Programmers who work in these areas and write in JavaScript, Python, PHP, etc. earn good money, work in high-level programming, know several technologies and do not perform complex mathematical calculations. Most of the time. It’s all good, especially when people know what they want. And when they are asked the question, “Do you need math?” they say that they only need basic math for this kind of work, but for more complex projects and technologies it is worth studying something even more complicated than the school curriculum.

And it is different when the same developers, who work only with high level and program sites, answer the same question. They say that the math is not necessary at all. Maximum is addition, subtraction, division and multiplication. And that you don’t need to go further than the law of combinatorics.

That makes sense. However, it is worth thinking about one important detail, which almost no one ever voiced. The fact that all computers and computers work with mathematics. And that at the origin of all programming is mathematics.

All software arithmetic is about numbers. Computers use a binary code (1 and 0). This is the code upon which systems run, from operating systems to neural networks. Anything that has to do with computation always interacts with numbers.

When complex calculations had to be done, pencil, paper and mind were used. But in the process of progress, realizing that such solutions require a lot of time. That’s why they started creating computers to automate certain processes. And for these processes to be automated, templates had to be developed. After all, all computerized machines work on the basis of previously created patterns. And so it turned out that the information space created today is the modernized patterns of the past.

Recall that all the people who created such things in the computational sciences always had a good knowledge of an unloved school subject. And modern computer technology hasn’t taken that science anywhere.

All complex low-level programming languages are based on mathematics, and modern high-level ones too, because they are based on nothing. And the higher the level of the language, the harder it is to create something complex and large.

Therefore often all try to avoid learning C/C++, Java and other similar languages, and prefer to go into web development, where the process of understanding of the direction and technology is easier, and pay is not worse.

Think about it, all the complicated stuff is written in low languages and includes mathematical knowledge. Of course you don’t need to learn an entire course of higher mathematics, but if you seriously want to create, for example, your own OS, write a cool framework, or a unique artificial intelligence, it will be almost impossible to do without a good mathematical knowledge and appropriate skills in the NLP.

Answering the question, “Does a programmer need math? “, I can safely answer, “Yes.” Whatever the programmer is and whatever he does, the more knowledge he has in the exact areas, the better it is for him as an expert.

This science should not be neglected, and it certainly cannot be said that only knowing addition, subtraction, multiplication and division will suffice.