From the outset 2014 was proclaimed by many to be the Year of Code, with this valuable skill, despite its scant availability in the UK, deemed to take the limelight throughout the year. The topic proceeded to gain huge media traction, which was then aided by the addition of coding to the UK educational curriculum in September, a move that was widely applauded.
This was a really positive advancement for the IT industry as a whole, and even though the attention might take a few years to change businesses, by introducing a wider range of talent with a more sophisticated set of skills it is a definite step in the right direction towards addressing the current shortfall. Partnered with instruments like Raspberry Pi, these developments will go a long way to spark the interest and engagement of young people in the mechanics of computing early on in their intellectual development. This should help to sustain a passion for this topic into their teenage years and beginnings of professional life.
> See also: Mind the gap: solving the skills shortage in software development
The importance of this adoption is on a par with the excitement that it creates- it is changing how we think about IT in the UK. Increasingly, we are now looking at the possibilities that apps and software present, rather than the maintenance of desktops, laptops, and printers etc that are spread around offices.
This is all great news for the industry, but we must stop and reflect momentarily. Even though coding skills are being widely adopted by society, this growth does not, unfortunately, necessarily equate to a growth in quality. Considerations must be made as to whether the sheer amount of programmers, and the standard of code they produce, weakens the contributions to open source projects, for instance, as an area which has seen great progress over the past few years.
Driving is a brilliant analogy in this case; millions of people in the UK are legally allowed to drive as they have met all the requirements, by passing the theoretical and physical tests, buying their vehicles and paying the road tax that maintains the roads that they drive on. However, when coding, you do not need a licence, merely the tools and ability to do so. An absence of formal regulation is a positive aspect to coding which attracts people – you can be a self-starter – and can create a range of software and applications with no criteria that enforces the need for a formal qualification.
The clear difficulties this brings are all too familiar to the coding community already, even for those open source projects which have a gatekeeper to monitor contributions. In these cases, the filtering of code is a challenging task that is also not altogether effective, as not all mistakes can be avoided and some will still slip through. This causes an aggregation of minor errors to accumulate and form a much larger problem. When considering the sheer volume of code that is being produced, and the importance of its content, this can result in a major issue.
For example, a glitch in a video game is annoying enough for the player, but if the code is within an important piece of financial software, or in the hardware of some hospital apparatus, there are notably higher implications. Whilst the mistakes must be found and fixed, what is more essential is that the individual is educated about them, why they matter and what the consequences of them are. Up until now, the skills drive has been focusing on driving up numbers instead of taking quality control into account.
> See also: The computing curriculum countdown: teachers need more confidence in coding
It is both exciting and a sign of major progress that there has been such a growth in interest around this skill, but we must also ask of the industry what the impact on the quality of future code will be. Code must be built for the long term, without any signs of corruption or flaws as time goes by. The IT industry often talks of the issue of legacy applications or hardware, and acknowledges that yes, this is a problem, but it is also a demonstration of their build quality that they still dominate many sectors, and we must ask whether the same can be said for the code being developed today.
Whilst it is great that, thanks to the events of 2014, the world of programming has been brought into the spotlight like never before, in 2015 we need to step back and take stock to ensure that what we are developing will stand the test of time.
Sourced from Richard Walker, Director, Coverity