There are myths everywhere. You can hear a lot of stereotypes about programmers, which are in fact far from reality. And the main thing is that these prejudices are not harmless at all!
Even within the IT industry itself there are often misconceptions. For example, there are engineers who believe that “Scala is more productive than Java”. Although in reality, it all depends on what problem to solve and from which side to look.
Let’s discuss the 6 most common myths that are associated with software development.
- Programmer is not a creative profession.
I dislike this statement most of all. Many people mistakenly think that code writing is just a translation of a task solution into the language understandable to a machine. But it is not that simple!
Yes, programming requires logical thinking and knowledge of many technologies. However, it is a kind of art too. Not everyone can create elegant code and notice its beauty.
The creative aspect of programming also manifests itself in optimization. The novice IT-specialists strive simply to create working code which would perform the task. But with time, when a certain amount of experience is accumulated, the developer begins to use various tricks and tricks to speed up the program and save resources.
- Programmers lack “agile skills.”
How do most people picture the typical developer? A loner spending all day in front of a computer, writing code without taking a break from the screen. But in reality, the programmer has to interact with a lot of different specialists: from managers to designers. Plus communication with customers and users. All this requires good communication skills and empathy.
And now that so many social networks, blogs, and online magazines have appeared, IT people are increasingly writing articles, recording videos, creating podcasts, and publishing a lot of other interesting and useful content on the Web. So it’s time to break that stereotype!
- Every programmer wants to be a manager!
Even if you are a good programmer, it does not mean that you can be a good manager. Software development and management are different fields, and each requires different skills. It is like in sports: not every sportsman can teach his craft to other people.
Of course, every company has its own rules. And now everything is changing at an enormous speed. So the options for the career of a programmer and a manager can be very different. But most often developers go to technical managers, chief engineers and so on. And managers become engineers or heads of departments.
- The bigger the team, the faster the development.
Not for nothing it is believed that the best work teams of 4-8 specialists: a couple of programmers, managers, and optionally a designer. Most companies use exactly this principle, which means that it has proven effective in practice.
Only in a mechanical process is it possible to speed up the process by increasing the number of employees. As, for example, in the case of data entry. But software development is a more complex and individual process, in which the main thing is not the number of participants, but their quality.
- The release has taken place, which means that the work is over.
Each program is a living organism which grows, develops and certainly changes over time. The environment is also subject to change: new trends in the market, in technology, etc. Users, too, may need new functions and features.
In other words, development is a constant struggle, taking place in a highly competitive environment. Look at Apple: The company has been around for over 45 years. And all because it diligently maintains and nurtures user interest, adapting successfully to the inevitable changes.
Product release is not the finish line, but the beginning of a new and interesting journey. After all, the program needs further support, and bugs arising in the process of operation also need to be eliminated. New needs arise with enviable regularity, the code becomes useless without optimization, the security must be constantly updated… As you have already understood, the work by no means can be considered as finished at the release.
- Machine learning is the same as artificial intelligence.
The concept of artificial intelligence is much broader, because machine learning is just one subset of it. The former covers other areas, including natural language processing and computer vision. And machine learning deals only with areas with large data sets. However, the goal of both is the same: to create an intelligence that surpasses human intelligence.
Add comment