Back in the ancient days of the nineteen nineties, only a very few companies had any types of program to support the developers on their platforms or tools. Of course, back then very few companies had platforms or tools. Wow, has that changed!
In today’s interconnected world virtually all companies need to publish APIs in order to grow or stay competitive. From shoes to thermostats to cars to tractors or payment cards or factories – companies everywhere now have a “platform”. But a platform is nothing without developers, and thus the need for programs to recruit developers and to support and assist them once they’re onboard has blossomed.
Evans Data has been studying developer programs for over 17 years, and has vast knowledge and insight into what makes a developer program successful. Here’s a few of the essentials of programs that you can take as guidelines to help make your program a success.
1) Technical information is key. Developers join your program for assistance in working with your technology. Be it an API, some SDKs, a new device, or a full-on platform, the main thing developers want is information about how your technology works and how they can interact with it. The first things you need to provide are tutorials, documentation, tips and tricks, sample code and use cases – the more the better.
2) Development tools are expected. In a survey last month we asked about what developers expect vendors to provide for them in a program, and development tools was at the top of the list. The tools may be SDKs specific to your technology, they may be Cloud-based or distributed for on-premise use, they may be very specific or more general, but they must be provided.
3) Tech Support is required. Once you’ve got developers adopting your platform you’ve got to support them – it’s to everyone’s advantage. That means you have to provide answers to their questions and help with their issues. Happily, the days of hiring engineers to man the phones has largely been replaced by forums that let you crowd-source your tech support to other developers. That’s a good start, but you also need to supply online chat, email support, and some phone support. The important thing is – don’t dumb it down. Developers expect support from other developers.
These are the three key elements of any developer program, but there’s a lot more to forming and running a good program than this, and we’ve done something about that.
We’re proud to announce Devrelate.com, the only online academy for developer relations professionals. Devrelate’s developer relations classes will take you step by step through setting up, enhancing and maintaining a world class program. And once you’ve completed the courses you’ll receive full certification.
It’s all online and all at your own speed.
In software development, every year is different from the last or the next. Sometimes it seems that as quickly as we can see something in the developer universe it changes. And that perception is actually pretty close to the fact, though it’s more a reflection of the velocity at which our technology landscape changes rather than the mercurial nature of software developers.
2015 was a good case in point. When we look back at the major evolutions that technology made and the ones that were embraced by the industry there’s a few that stand out. So here’s an Evans Data recap of what we thought were some of the major technologies that shaped the last year for software developers.
Internet of Things
Internet of Things is sometimes called Internet of Everything, and for good reason. We can connect our homes so that the thermostat, coffee maker and toaster all come on as we wake up in the morning or switch the lights on and unlock the door when we get within 100 feet of the house. Intelligent tattoos can send your doctor information through the Cloud. Your car will soon be able to drive as well or better than most people, and large scale factories will be run by systems and sensors rather than floor supervisors.
This year was definitely a solid year for Internet of Things development. The percent of developers worldwide who are currently working on Internet of Things projects rose by 48% over a year ago when 18.9% were working in some way on an IoT project. Today 28% are doing this. And while the imagination runs wild on new IoT implementations, software developers are constantly coming up with more.
Just as Internet of Things found more solid growth, extending itself into 2015 as the top of mind technology implementation, last year also saw the dawn of wide developer interest in cognitive computing – a term that includes machine learning, deep learning and various forms of artificial intelligence.
This year a little more than a third of developers worldwide incorporated some form of cognitive computing into their projects and more than a quarter were adding in some form of machine learning. This is not just a data point that shows a milestone on the path to the future. This shows a thorough evolution in the way that developers program and the way applications work.
Cloud and PaaS
Speaking of evolutions, 2015 saw the largest vendors in the software industry shifting their developer programs and their tools more and more into the Cloud. The venerable Rational tool suite is now BlueMix – a PaaS existing entirely within the Cloud. Microsoft pushed and prodded its developers into the Azure Cloud with discounts and free trials. Others also moved portions of their developer program into the Cloud, portending a future where developer programs all become intertwined with a PaaS.
Accelerators and Startups
And last, but by no means least, we have to mention the frenzied pace at which major companies launched accelerators, incubators, contests, and funding drives to identify the most promising startups in these emerging new development areas, and convert them into using their technologies. Startups with talent and a good idea will find no trouble getting recognized, funded, and actively mentored by the biggest and the best in the industry, since everyone wants to discover (and capture or convert) those startups that will be the leaders in the new technologies that will be shaping our realities in the future.
So, as the year draws to an end, we can look forward to the future with great interest. If today is the prologue for tomorrow, then 2016 is going to be amazing! Happy Holidays!
The world is rapidly becoming more interconnected and many companies that never before had an interest in software development are finding that they need to publish APIs, and promote them. Suddenly they have a “platform”, and a platform is nothing without developers, so they need a developer program and outreach.
Many of them come to us at Evans Data, wanting to know how to do that, and how much it will cost.
So here’s the thing. There’s no one size fits all for developer programs. If someone says to spend x% of your marketing budget on your program, they don’t know much about developer programs. The money and resources needed are going to vary within a lot of parameters.
One of the first and most influential developer programs in the history of the industry was at Borland 25 years ago. At the time there were 100s of thousands of developers in the program, the marketing outreach budget was well over $2M just for developer outreach and, yet there were only three people employed in the actual Developer Relations program. The overhead of that particular department was extremely low because they could draw on a lot of other resources within the company. Tools marketing provided a lot of outreach. The company tech support provided that function, and a corporate events team helped put on conferences, beta events, and so on.
On the other hand, in a company that is new to software development there may be no other resources available to support a program, and the actual program overhead may need to be considerably more in order to provide the required services.
Another factor is the goal for the program. Is it to provide simple tech support for a well-known API, or are there elements of outreach and training built-in? Is it really a partnership support system for a limited number of people, or is it to be designed for a broad audience with possibly worldwide reach?
So, each program initiation and evolution is different. We can sit down with you, understand your goals, and help you determine the type of program you need. After that the cost is easy to calculate.
In addition to the focused development surveys we conduct regularly on mobile development, Cloud development, Big Data and IoT, twice a year we conduct a very large and very broad global survey of software developers. It spans across development specialties and we sell this survey in geographical “chunks” with discrete editions for North America, EMEA and APAC.
Most companies are interested in maybe one or two regional looks at developers, but larger multi-nationals buy all three which gives them insight into regional differences as well as regional specifics. And wow, are there ever differences!
For example, North American developers, who were once the oldest by median age are now younger than Europeans and are almost as young as developers in the APAC region. What changed was the US economy in 2008, exactly when the age curve began a steep decline as older (and thus usually more expensive) programmers were laid off at the same time that mobile development was inspiring young recruits.
Years of programming experience naturally echoes this. Developers in all three regions have a similar percentage who have been programming for 11 to 15 years, but the profile for APAC developers is very different when we look at those having less experience and those having over 20 years experience.
And if we look at the number of years their companies have been in business, we can see in sharp relief the vast difference between Europe, with all its extensive history and old company culture and the new Asia.
We’ve made a brief one-pager on developer demographics across regions. For a look, see here:
Although there are many new “as a service” implementations enabled by the Cloud, the three most visible are Infrastructure as a Service (IaaS), Platform as a Service (PaaS) and Software as a Service (SaaS). For software developers these present very different configurations with differing benefits and drawbacks. Thus it’s no surprise that once a service has been instituted and adopted the criteria for evaluating that service varies considerably.
In our recently released Cloud Development Survey, a report of results of surveying over 500 software developers active in developing and/or deploying to the cloud, we asked about the evaluation criteria for each. For more info see here – http://www.evansdata.com/reports/viewRelease.php?reportID=27
When it comes to the bare metal IaaS, the top consideration for software developers is cost savings, followed by time savings. The ability to use hardware without purchasing it individually leads to much more efficient usage and thus cost savings. Developers can develop, test and deploy their apps on “shared” hardware and so can do things like scale up and down that would ordinarily be cost prohibitive. This was the primary virtue of Amazon Web Services cloud product when it pioneered this Cloud category and has been a main selling virtue for IaaS ever since.
With PaaS things get a little bit more complicated. Besides supplying the infrastructure, a PaaS provides a development environment, an operating system, and often tools and libraries to help developers code, test and deploy their apps. When considering this type of service, support becomes the number one criterion in evaluating the service, followed by time savings and overhead savings.
If an application is being delivered via SaaS, developers are most likely to be concerned with the application security first, and then think about overhead savings and support. Does this show suspicion about applications they don’t control? Maybe, but maybe it also reflects on the fact that developers may also be deploying their own applications to the Cloud and so echoes one of their primary concerns in development.
January is almost over and that means even the tardiest of us has to act now to get our observations out on the changes that have come and those that are coming in the future as one year turns into the next. So here’s some thoughts on the technologies that are shaping software development and will be uber important in 2015.
Security, security, security. This impacts everything and there’s more of everything to impact all the time. It’s not just our email or servers that could get hacked. Now it’s our watches and cars, houses, and light bulbs. The Internet of Things has changed the nature of all the things we interact with and that means everything needs to be secure. This was always the top issue in every survey we did with developers in 2014 and it’s going to be the top issue again in 2015.
The Internet of Things is another phenomenon that dominated the industry last year and will undoubtedly grow in the coming year. While development for consumer products overshadows everything else in the tech news, it’s actually industrial device development that has grown more and is poised to take off. Last year the numbers of IoT developers targeting industrial devices grew by a whopping 190%, from 9% to 27%.
Big Data is going to become totally ingrained in both the background and in the forefront of our lives. Retail has obvious implementations, but Big Data will change everything from the precision with which we make projections to the fight for privacy. Currently 27% of developers say they have some involvement with Big Data but 40% expect to be involved in the coming year. And with Big Data comes the need for real time event processing. Seventy-one percent of developers who are working with Big Data expect to need to use real time processing more than half the time in 2015.
Finally, we see 2015 as the year when cognitive computing and machine learning start to come into their own, and 77% of developers agree that cognitive computing will be a major factor in computing in the next five year.
For years popular culture has been predicting the rise of artificial intelligence (AI) in formats ranging from science fiction to practical implementations. Now, we’ve evolved past plain vanilla AI to cognitive computing. What’s the difference? Well, cognitive computing takes elements of AI and combines them with machine learning algorithms to create systems that can do most of the functions of the human brain, including making inferences, sensing relationships, making predictions and otherwise using rational thought processes.
IBM’s Watson is a perfect example of such a system, and now IBM is opening up Watson APIs so you can add intelligence to your apps – and easily too. I walked through the Watson APIs a couple of days ago and was very impressed. There’s a wide range of abilities you can add to your apps including:
User Modeling – projects a set of personality and social traits on a person from that person’s written communications
Message Resonance – predicts how well any written message is going to be received by a given audience and identifies which words work best.
Language Identification and translation – two APIs, one that identifies what language text is written in and another that will translate text into another language
Relationship Extraction – maps the relationships between components of sentences so that machines can more easily understand new concepts or terms.
These APIs are all useful across a multitude of situations and they’re free from IBM. You find them on BlueMix, IBM’s development Cloud along with other open APIs for different types of development.
Today with Internet of Things and developers creating applications for everything we interact with or want to do, the incorporation of cognitive computing software seems like a natural. And when you can try it out for free – why wait?