For app and web developers, the world at the end of the decade is very different from the one that began it. Sure, change is inevitable, but the way the discipline(s) have evolved in just a matter of years (arguably the most significant changes came in the latter half of the decade) is a mark of how technologies, business needs, customer expectations, and harsh economic realities have conspired to shape and remould our notion of what software development actually looks like.
Full-stack, cloud-native, DevOps (and maybe even ‘NoOps’): all these things have been shaping the way app and web developers work over the last ten years. And in 2019 it feels like that new world is beginning to settle into a specific pattern. Many of the trends and technologies that really defined 2019 are, in truth, trends that have been nascent and emerging for a number of years.
Cloud and microservices
When cloud first emerged – at some point much earlier this decade – it was largely just about resource efficiency. The idea was to ditch your on-premises servers and move instead to a model whereby you rent server space from big vendors.
Okay, perhaps that’s a somewhat crude summation; but it’s nevertheless the case that cloud was primarily a field dealt with by administrators and IT professionals, rather than developers. Today, of course, the cloud is having a very real impact on the way developers work, giving a degree of agility and flexibility in how software is deployed and managed.
With cloud partnering nicely with microservices – which allow developers to break down an application into constituent parts – it’s easy to see how these two trends are getting many apps and web developers excited. They shorten the development lifecycle and allow developers to get closer to their code as it runs in production.
Go and Rust
Both languages share a similar history (as this article nicely details); at a fundamental level, moreover, both also aim to build on C++, but with accessibility and safety in mind ( C++ has long had a reputation for being both complicated and sometimes vulnerable to bugs and security issues).
It’s impossible to talk about web and application development without mentioning WebAssembly. Arguably the full implications of WebAssembly are yet to be realised (indeed, at ReactConf 2019, Richard Feldman suggested that it was unlikely to initiate a wholesale transformation of the web – that, he believes, will take a few more years), but 2019 has been a year when it has properly started to make many developers sit up and take notice.
If 2019 was the year more developers decided to take note of WebAssembly, 2020 will be the year when we start to see increased adoption.