How necessary is maths for a programmer?

What you don't need maths for
You don't need maths for web development. To understand all the backend and frontend technologies, all you need is diligence and common sense, said the developers of Magenta Favorita IT company. To create complex and multifunctional applications, you will certainly need well-developed logical and structural thinking, but all mathematics here is limited to arithmetic.

Without deep knowledge of maths, it is quite possible to create serious applications. For example, you can:
  • write a CMS like Wordpress;
  • create a messenger like WhatsApp;
  • develop a CRM;
  • create an inventory and order management system;
  • run a task management system;
  • develop software for online and offline commerce.
There is an opinion that programmers must necessarily have a good knowledge of mathematics. Is this really the case? We discussed this question with developers who work at Magenta Favorita Portugal.

The existence of this opinion is due to the fact that earlier programming was mainly used for scientific purposes. In the early days of computer engineering, in the 1950s and 60s, programmers were exclusively mathematicians. The main tasks that computers solved at that time were mathematical. Naturally, in most people's understanding, mathematics and programming were closely related. Moreover, the people who developed computer engineering at that time taught their successors with an emphasis on mathematics.

Nowadays, this connection is no longer so pronounced. Every developer does not necessarily need to know higher mathematics, as it is not necessary in all programming areas. For example, mathematical models are used to find the shortest path in a navigator. However, not all programmers are engaged in development of navigation systems. Most of them are engaged in solving applied business tasks of different kinds: automation, development of mobile applications, SRM-systems, creation of websites, etc. You will agree that this work is not connected with higher mathematics. Knowledge at the level of secondary school is enough for its fulfilment. However, programming requires a certain type of thinking, logic, which is formed in the process of studying mathematics.
Where maths is essential
There are development industries where you need to create complex mathematical solutions from scratch. Programmers at this level have a very serious mathematical background.

Here are some examples of such industries:
  • machine learning;
  • computer vision;
  • game development;
  • financial software development;
  • robotics and automation;
  • simulation and modelling;
  • geographic information systems development;
  • networking and communications software development.

For example, game development requires knowledge of more than just maths and physics. Game development includes simulation of complex physical processes, realistic rendering of 3D graphics, development of artificial intelligence. Here you can't do without linear algebra, trigonometry, mathematical analysis, discrete mathematics and quaternions, optics, hydromechanics, etc.
So, we conclude. It is not mathematics itself that is important, but the ability to apply it. The more mathematics a programmer can apply, the better. The amount of knowledge of mathematics increases the probability of its application. Besides, the necessity of using it depends on what kind of development you do.

You don't have to study higher mathematics to become a programmer. If you have a developed logical thinking, you will be able to cope with a large number of tasks. If you are good at maths, you can master branches of development that are not available to others. There are certain tasks that require from developers the highest knowledge of mathematical analysis, differential equations, numerical methods, etc., but their range is rather narrow and their prevalence is extremely low. However, such specialists are highly valued and can count on excellent working conditions, summed up Magenta Favorita specialists.
Other company cases
Show more