It’s no secret that the software development landscape is rapidly evolving. But today’s hottest technology trends—mobile, cloud, and Big Data—don’t replace existing platforms and programming languages. In order to take the pulse of the software development landscape in North America and Europe, we surveyed more than 1,600 software developers about a variety of topics, including the types of applications they build and the platforms and programming languages they use. In addition, we also asked them about their careers, aspirations, and how they learn about new technologies.
Some of the most interesting trends from Forrester’s Forrsights Developer Survey, Q1 2013:
Mobile is hot, but developers aren’t yet “mobile first.” It’s easy to think that PCs and laptops are going the way of the dodo, consigned to the dustbin of history by smartphones and tablets. We found that while developers are certainly building more mobile apps than ever, Web applications and relational database applications are still a primary focus. In fact, when we asked developers what types of development technologies they’ve worked with over the past two years, Web applications and websites (63%) and SQL-connected applications (62%) were the most commonly used. In contrast, only 30% of developers have worked on mobile apps or mobile websites in the past two years.
This data underscores a recurring theme in our results: A company’s existing application portfolio naturally constrains how quickly development moves toward modern application platforms, languages and tools. Developers repeatedly indicate strong support for traditional technologies, like Windows 7 as an operating system deployment target and development platform, as well as continued use of traditional static languages like Java, C++, C#, PS/SQL, and even COBOL in comparison to newer dynamic language like Python and Ruby.
(Speaking of mobile: What can mobile app development do for you?)
The weight of legacy architecture is felt most keenly at large firms. As an example, only one in four developers at large companies reports any recent experience with mobile development. This data is consistent with what we see anecdotally: Many large Forrester clients outsource their mobile work to boutique SIs and digital agencies. For some, it’s about resource availability: Existing staff simply can’t spin any more plates. For others, it’s about finding the right development skills, language experience and design sensibility.
Mobile platform priorities show divided developer loyalties. When it comes to mobile developers and which devices they support, it’s clearly a two-horse race between Android and iOS, with iOS ahead by a length. In fact, 35% of respondents targeted iPhones as their first device, while 27% targeted Android phones as a top priority.
When we look at which device iPhone developers chose to target as a second priority, it’s clear that they like to stay within the Apple ecosystem. Almost two-thirds (63%) make the iPad their second choice, while one-third (33%) target Android phones as their second priority. It’s a similar tale for Android developers. Of those that target Android phones first, 56% take Android tablets as their second priority, and only 21% target iPhones as their second priority.
Our takeaway: Android developers specialize on Android, and iOS developers specialize on iOS. That’s one reason why Forrester recommends specializing developer skills if you choose to go with a native client approach.
Web developers are crossing the browser chasm to HTML. If you’re a Web developer, you know all about the emerging importance of HTML5. New tags, new APIs, and updated browsers make it possible to deliver advanced application experiences across multiple screens.
Our survey found that a majority of Web developers have already embraced HTML5, with 55% using it today. Developers that use HTML5 tend to support more devices on more platforms, and they test their sites in more browsers. We’re also starting to see increased developer adoption of more advanced HTML5 APIs like WebSockets (25%), Media Queries (30%) and Web Storage (27%).
So what about the 45% of Web developers who aren’t yet using HTML5? When we asked them why, the main reasons for not using it were a lack of time to learn about the new tags and APIs (46%), and a lack of need for them (45%).
Developers that know the cloud embrace the cloud. We had no problems finding cloud developers in our survey population, and those who use the cloud today intend to use it more in the future—a lot more.
In fact, our survey found that the average cloud-wielding developer today deploys 40% to 59% of server-side code to a cloud environment, but expects to deploy between 50% and 79% of code to cloud environments by 2015. A key reason for greater use of cloud resources lies in the connection and usefulness that cloud infrastructures have when it comes to delivering emerging new workloads like analysis of Big Data and multi-channel mobile apps/websites.
(Josh Golde on the cloud: Why should you test in the cloud?)
It’s surprising to find that cloud adoption by developers at very small firms tends to lag behind enterprise adoption, except where the public cloud is used to stand up application testing and QA environments. We would have predicted the opposite. This raises the intriguing possibility that, for developers, moving to the cloud is as much a way to circumvent traditional provisioning pathways through IT operations as it is improving efficiency or reducing cost.
Jeffrey Hammond is a vice president and principal analyst at Forrester Research serving application development and delivery professionals.