Today developers must work with teams spread across multiple continents, where people speak different languages and often have different character sets. They also have to work with some code that is new and some that could be decades old. Working as a team and making sense of it all is only part of what it means to be a programmer today.
The work involved in software programming—whether it be for an Oracle NetSuite integration, or Salesforce.com development project—is markedly different than it was even five years ago. Anyone that has had considerable time off would likely be unable to function in the today’s programming world. Things are changing faster than ever.
Here are 5 technologies transforming the very nature of programming. They are changing how developers work with each other, and how they code.
It used to be, that when a programmer checked in code to a repository, it would take a few hours before it was processed. But not anymore. Code repositories are now tightly linked to continuous build systems that recompile code, scrutinize architecture, initiate hundreds of tests, and start flagging every potential error. Programmers are almost instantaneously sent emails or text messages from the continuous build mechanism telling them what needs to be fixed.
The earliest computer languages were designed to make it easy to do anything with a computer. The latest languages however, make it hard to do anything other than just the right thing. This is because over the years the programming community has learned how people make mistakes. As a result, some of the language designers are now putting up guardrails to keep programmers from going down the path of bad code.
These guardrails can be annoying to talented programmers who instinctively avoid the bad techniques. But many coding teams enjoy the discipline and added structure of the newer languages.
The first databases saved developers years of effort by offering a standard way of sticking information in big tables. Today’s databases do that, but also much more, such as maintaining social networks, tracking locations and storing images. They do all of this while spreading the load over clusters of machines that may live on different continents.
Reusing the work of others may not be a new idea, but it plays an unusually important role in the world of software development. Very little programming begins from scratch these days. The favored approach is to take the right framework, research the API, and start writing “glue code” to link together the parts of the API that make the most sense for the job. Web pages aren’t built out of HTML or CSS anymore; the coding begins with Ext JS, ExpressJS, or some other code that serves as a foundation. As such today’s programmers could be considered framework-tweakers, or experts in augmenting a particular software such as Microsoft Dynamics.
A close cousin to the framework is the library, a collection of routines that today’s coders can’t live without. Is it possible to write code for the browser without using jQuery? Does anyone even remember there is a built-in function called GetElementByID? Probably not. Libraries like jQuery remember for you.
People talk about their favorite languages, but that conversation says little about how they program. If you are looking to hire someone, you may want to ask about library knowledge. The game programmer may use C++, but the real question is whether the coder knows Allegro, Unity, Corona, etc. Knowledge of the library is as important as knowing the ins and outs of the language itself.
All technology is evolving—changing to meet the increasing expectations of what devices, objects and applications can do. But behind that technology is a bretheren of programmers that are also evolving—helping each other, learning from one another and pushing the world’s tech faster and farther than many ever dreamed possible.
We say, keep up the good work.
About Oliver Parks
Oliver Parks Consulting offers search-based recruitment solutions to the technology sector, specialising in the ERP, CRM, CMS, ECM, BI and Open Source Technology spaces. The firm’s multilingual consultants operate in narrowly-defined niche market segments, enabling them to gain extensive knowledge of the people and companies operating in each technology. Oliver Parks has a proven track-record with more than 100,000 candidates worldwide and more than 300 clients globally.