Get with the program: five ways cloud tools make life easier for developers
Developing software is no easy task, but technological advances that make scaling up and collaboration seamless are boosting productivity and making product rollouts and updates much more efficient
There’s a funny and rather apt “spot the difference” Microsoft Visual Studio advert that used to run in computing magazines.
On the left of the image is the desk of an “unhappy” software developer. It’s the middle of the night; beneath the gaze of a single desk lamp, piles of screwed up paper litter the scene, and yellow sticky notes hang off the computer screen.
The right-hand side shows the “happy” software developer’s desk, clean and neat, with a calendar full of social appointments and a sunny day outside.
The message was clear: if developers used C++, a popular programming language that can develop software, no matter the platform, they would reduce their stress.
Almost 20 years later, technologies have moved on, yet software developers continue to face many of the same challenges – how do you handle the entire lifecycle of creating a product for your customer, from designing the software, getting it to work and making it secure, to deploying and maintaining the finished product?
Scaling up and down is frictionless
Cloud platforms can make the life of a developer much easier – from planning, writing, editing and debugging their code, through to delivering it live to their customers – even when they’re not sure what the final demands are likely to be.
Previously, once software firms delivered applications and services to their customers, they would have to guess how much infrastructure they needed to support the delivery and maintenance of the product.
This problem could be further compounded by the fact that the customer might also be struggling to keep up with widely fluctuating demand from its end users.
Azure’s scalable cloud platform remedies this by hosting the developer’s software and automatically scaling as demand decreases or increases, so that developers can concentrate on what they do best – software development.
Take the case of Live Tech Games (LTG), for example. The company faced challenges supporting 10,000 users playing its live football tournament multiplayer mobile games concurrently online, and needed to increase that number to 500,000 users.
“During the 2022 Fifa World Cup, in partnership with ITV, we ran more than 30 live tournament games with thousands of players joining and playing against each other all at once – and thanks to Azure, everything ran perfectly,” said LTG’s co-founder and co-CEO Samuel Worsley.
Developing and debugging can be done all in one place
Software development is a complex process, especially when you have many cooks involved and everyone, including your boss, has a different idea of which coding language the software should be written in.
“If you love to work in one specific programming language and your colleague likes to work in a different one, it doesn’t matter with Visual Studio,” says Denise Dourado, director of digital and application innovation, data and artificial intelligence at Microsoft UK.
Visual Studio is an “integrated development environment” where a developer has one place they can write, edit and debug their code instead of jumping from tool to tool.
“Without Visual Studio, you’d end up having to design the code in one place, then debug it somewhere else … it would take much longer to deliver your debugged code, as opposed to doing it in one place,” says Dourado.
The worst thing for a developer, she says, is as you switch from one tool to another, you’re worrying about what happens to your code, and the development process takes a long time.
Auditing software is straightforward
So you’ve built the software, but now you need to deploy it and maintain it, which can be a huge headache. This is where Azure DevOps Services comes in.
Azure DevOps can be used by multiple people working together in collaboration and they can track any changes made to their software’s source code and release it to their customers in a live environment.
Added to that, during this time of global economic uncertainty, there’s a real need to cut costs and increase efficiency, while still delivering added value to your customers, whose businesses are undergoing significant digital transformations.
Mobile operator Vodafone found it had far too many computer systems across the company and many different code repositories for all its software. Some of its control systems even relied on Word documents to manually track source code changes.
“At that time, we were a long way off being able to automatically roll back a deployment and see specifically which line of code had caused a problem, link it back to the developer or see why we were doing it,” says Ben Connolly, head of Digital Engineering, Vodafone.
“That’s been revolutionised by the power of Azure DevOps. Now, it’s all pipelines and it’s way better audited than anything we used to have.”
Productivity boosted
Artificial intelligence (AI) is also increasingly helping to solve developer headaches. GitHub, the world’s largest code repository and social software development community is harnessing AI in the shape of GitHub Copilot.
“GitHub Copilot provides enhanced capabilities to developers, such as making suggestions for code improvements, identifying common coding errors and helping developers understand codebases more quickly, especially if they are new to a project,” adds Dourado.
GitHub says that 46% of new code is now written by AI and overall developer productivity has jumped 55%, with 75% of developers on the platform reporting that they are able to focus on the more creative parts of software development.
Software development has been democratised
Microsoft wants to take things one step further by “democratising” the IT industry and enabling people without a software development background to be able to build software too, says Dourado. “It’s bringing in users from a business environment and giving them the ability to build programs without necessarily having to understand the code,” she adds.
She also sees benefits for computing professionals who’d like to use AI, but don’t know much about how to use it in their software. Azure has a suite of AI services designed just for this issue.
For example, Azure Cognitive Services can automate document processing, improve customer service, understand the root cause of anomalies or extract insights from content.
“The world of tech is constantly changing, particularly around things like AI, and when you’re a developer, that may not be your core skill. We’re trying to allow seasoned developers to take advantage of AI without having to spend months or years learning about data science,” says Dourado.
“A key thing for me is it takes the pain out of learning new technology so they can be more free to be more creative and exploit capabilities in their applications.”
Watch the webinar: Transforming the Dev Experience in the Era of Hybrid Work
Explore the Microsoft UK AI Hub
Non-independent content produced as part of a commercial deal with Guardian Labs.
Header photograph: gorodenkoff/Getty Images