Can Anybody Be A Programmer?

In 2014 the BBC announced that they would be supplying around one million year 7 students throughout the UK with micro-computers as a part of their Make it Digital campaign. The aim of this campaign is to inspire a new generation to ‘get creative with coding, programming and digital technology’ in a bid to address the ever growing skills gap in the UK’s technology sector.

Whilst it is undeniable that there is a desperate need of skilled digital workers, campaigns, such as Make it Digital, that encourage everybody to take up coding do raise the question ‘can anybody be a programmer?’

The logo representing the BBC Make it Digital campaign.

In theory the answer is most definitely yes. With the seemingly endless supply of online resources and detailed textbooks, it has never been easier to learn how to read, write and understand code. However there is more to being a programmer than simply being able to tap out a bit of code.

Programming is all about finding a solution to a problem, be it locating the cause of a fault in a system or developing an entirely new piece of software to address a real world problem. A key skill in any programmers arsenal is the ability to stand away from a complex problem and continue to break it down into smaller pieces until a solution can be created for each small part. Having the ability to see how a problem can be broken down does not come naturally to everyone but it is something that can be improved with practice.

Society has created this image that programmers huddle behind their computer screens and avoid communicating with other human beings, but this could not be farther from the truth. Communication is a vital part of any software development project, from asking questions to fully understand the problem in the first place to ensuring that end users will be able to understand the final solution. An unwillingness to communicate with others will do nothing but hinder the development process.

Whilst communication is important, a programmer does require some degree of self-sufficiency. Ultimately programmers must be expected to ask questions, so that their organisation can function efficiently, but they must also try everything in their power to find a solution before they ask these questions. After all, if a supervisor is doing all of the work it begs the question is there really a need for the programmer.

Coding is naturally very heavily dependent on logic, but it can be as much an art as it is a science. It is no use in believing that there is a single correct way to write code, the very best programmers have a level of creative curiosity and are willing to experiment with new tools. A lack of creativity can lead to tunnel vision where all coding problems are approached from the same angle, but all problems are unique and as such require unique solutions.

The software industry is constantly evolving, languages appear and disappear all the time; every programmer will encounter situations where their current level of understanding will prevent them from deciphering a solution. It is at these times where a difference between programmers and non-programmers is most noticeable. True programmers will not hesitate to learn new technologies if it means that they will find a solution, they expect to feel inadequate but they strive to increase their knowledge regardless.

There is nothing more disheartening than striving to complete a project, only to be met by problem after problem. It takes a certain personality to find the motivation to deal with frustration and negativity in a positive way. If every programmer were to discard a project when they felt demotivated, technology would not have progressed to where it is today.

The reason why programmers can achieve this level of motivation and perseverance is that they simply have a passion for programming. They write code because they enjoy it. Not because they think it will make them rich quick, or because they are forced to, and when a barrier appears that prevents them from reaching their goal they will do anything to overcome it.

So once again it is true that anybody can learn to code, yet ‘even if their brain is capable, it does not mean that they as a whole are.’ Here at Zircon our engineers are truly passionate about what they do. They don’t let frustration hold them back, and strive to provide our clients with a final solution that fits all of their needs even if it means that they must step out of their comfort zone and master a new skill.

More From The Blog

IR35, Here it Comes Again…

IR35, Here it Comes Again…

IR35, Here it Comes Again...In 2021 the reform to IR35 Off-Payroll rules is to be rolled out to the private sector. As before the reform will only affect companies that do not meet the following attributes: an annual turnover below £10m fewer than 50 employees or a...

Solving the Resource Conundrum

Solving the Resource Conundrum

Solving the Resource ConundrumPicture this. One minute all is fine and dandy, you have access to all the resources you could possibly need, then bam an unexpected challenge arises. Suddenly you find yourself lacking the capacity to meet the new need. What are your...

Quality – An Aid to Produce Consistent Rubbish

Quality – An Aid to Produce Consistent Rubbish

Quality - An Aid to Produce Consistent RubbishAnother year has passed, and myself and a colleague have hosted a BSI auditor for our annual ISO9001/TickITplus check-up, and in fact this was more than the regular check, in that it was our 3-year re-certification audit,...

The Hazards of Legacy Systems

The Hazards of Legacy Systems

The Hazards of Legacy SystemsBeing the owner of a software system with a dedicated customer base sounds like the kind of position one would like to find themselves in. At least until it gets superseded and you have to face dealing with a legacy system. Many developers...

How to Test Without Access to The Test Environment

How to Test Without Access to The Test Environment

How to Test Without Access to The Test EnvironmentIn many of our previous articles, we have expressed the importance of achieving a high standard of testing. Potentially blocking this achievement, several factors can come together to affect the quality of your...

The Technical Workshop – How To Make Them Work For You

The Technical Workshop – How To Make Them Work For You

The Technical Workshop - How To Make Them Work For YouAnyone experienced in product design will understand just how valuable a facilitated workshop can be. Bringing together a project's key stakeholders into a single space allows for the exploration of diverse...

Developing Software for Safety Related Systems

Developing Software for Safety Related Systems

Developing Software for Safety Related SystemsSoftware systems should always be both robust and reliable, however the moment you introduce a safety element, this need for reliability increases significantly. The level of safety required is governed by the severity and...

How to Choose an Outsourcing Partner

How to Choose an Outsourcing Partner

How to Choose an Outsourcing PartnerHaving recognised a need to outsource, and worked your way through the initial preparations, you are now in a strong position to seek out a suitable partner. Choosing an outsourcing partner is no trivial affair, so taking the time...