Categories
APIs Community

What makes up a high-quality API

With third-party APIs, developers can leverage the power of external expertise to enhance the functionality of their applications. However, to ensure success, they must carefully evaluate the quality of APIs before incorporating them into their applications. This chapter aims to investigate the key characteristics that make third-party APIs high-quality, according to developers.

In recent years, application programming interfaces (APIs) have become a key part of modern software development. APIs act as intermediaries that facilitate communication between different applications through established protocols and definitions. By using APIs, developers can leverage the power of other applications without needing custom integrations. In turn, this allows them to focus more on building the core parts of their applications and less on recreating features that already exist or are not feasible.

With this in mind, it is unsurprising that almost all developers (89%) report using APIs in their projects. According to our data, 74% of developers use third-party APIs while 15% state that they only use private or internal APIs. Using private/internal APIs makes it easier for developers to link their in-house applications together and ensures that only authorised personnel can access their systems and internal information. On the other hand, using third-party offerings gives them access to external expertise but introduces additional dependencies that can affect their projects.

high-quality API

74% of developers use third-party APIs

With so many developers relying on third-party APIs to expand the scope of their applications, modern services are becoming increasingly more likely to offer public APIs. However, not all APIs are created equal. Just as high-quality APIs can enhance the capabilities of a given application, adopting a low-quality API can be detrimental to its success. Implementing low-quality solutions can create a wide range of issues such as poor performance, negative user experience, and security vulnerabilities. Therefore, developers must carefully evaluate the quality of APIs before incorporating them into their applications.

In the latest edition of our global developer survey, we asked developers who use third-party APIs to identify the most important characteristics of high-quality API offerings. Our results indicate that developers consider security, documentation and sample code, reliability, ease of use, and performance to be the most important characteristics of high-quality APIs. These five qualities separate themselves from the rest as the core pillars of strength developers look for when considering third-party APIs. In fact, 89% of those who use third-party APIs mention at least one of these characteristics in association with high-quality APIs.​

Security is the most important factor in evaluating the quality of third-party APIs, according to 42% of developers. Using third-party offerings opens up a line of communication with external services that can expose their users to unauthorised access to sensitive data and other security risks. To keep up with the rapidly evolving landscape of threats, developers and modern businesses must ensure that the APIs they use are secure to protect their assets.

Developers consider security to be the most important attribute of a high-quality API

Having access to clear documentation and sample code can make it substantially easier for developers to incorporate APIs into their applications. Our data suggest that 39% of developers consider documentation and sample code to be among the most important qualities in third-party APIs.

These features allow developers to quickly understand the capabilities and limitations that a given API brings and make it easier for them to get started. This goes hand in hand with ease of use, which is mentioned by 37% of developers who use third-party APIs.

On the other end of the spectrum, reliability (38%) and performance (36%) of third-party APIs can directly impact the success of a given project. If an API proves to be unreliable, it can lead to issues ranging from minor errors to system failures and data breaches.

On the other hand, reliable APIs help developers minimise the risk of something going wrong and ensure the highest chances of success in their projects. Similarly, applications can only perform as well as the APIs they use.

Therefore, it is essential for APIs to be fast and capable of handling high volumes of requests to be used in modern applications.

high-quality API

Those who are new to the field of software development tend to work on less challenging problems and can often turn to their peers and mentors for support. As such, they are the least likely (20%) to cite documentation and sample code as an important characteristic of a high-quality API and tend to prioritise other features.

However, as they gain expertise and take on more complex projects, developers begin to appreciate the benefits that clear documentation and sample code bring to the table. In fact, 65% of developers with 16+ years of experience mention documentation and sample code among the most important characteristics of high-quality third-party APIs, surpassing even security (51%).

Highly experienced developers value API documentation and sample code significantly more than beginners

With a greater reliance on self-guided learning, experienced developers become less likely to focus on the community when evaluating the quality of third-party APIs. However, technical issues can arise regardless of experience and may be difficult to resolve or diagnose without expert-level knowledge. In turn, technical support appears to retain its above-average importance for all but the most experienced developers.

high-quality API

With more years of experience, developers gain a deeper understanding of what is essential for their projects. For some, performance may be critical, while others may focus more on ease of use. By focusing on the right characteristics of third-party APIs, developers can enhance the functionality of their applications and deliver better products.

Would you like to contribute to similar findings?

Participate in our latest wave of the Developer Nation survey!

Complete the survey to access our amazing virtual Goody Bag filled with subscriptions, resources, and more!

Sign up for the chance to win prizes, earn loyalty points, and receive updates on survey results and future opportunities.

Take the survey anonymously here

Categories
Community Languages Tips

The Latest Topics Developers Are Reading

What are the latest topics developers are reading? Some things change and others stay the same. When we looked at our data on what developers were reading in Q2, data and analytics, Jakarta, cloud-native, Kubernetes and Open Source topped the list.

In Q3 analytics (together with data) remained high on the list, but a few other topics emerged. The whole “shift left” movement is hot, as is security and anything related to “full stack”.

Here’s how we do the analysis. With 29 million unique readers every year, we decided to evaluate the data on DZone.com from quarter to quarter. In this post, I’m also looking at Q1 to Q3.

Keep in mind the pageview comparisons provide insight into what developers are reading and interested in learning about. The tags used to collect our data are assigned by our editors and used to help readers search once they’re on our site. They aren’t keywords.

So, with that in mind, let’s take a look at what’s trending right now.

The Latest Topics Developers Are Reading:

Data + Analytics = Popular Reading

This quarter, we saw significant growth in the following topics: “data analysis tools,” which grew by about 3343% from Q1 to Q3, “data application,” showing 37% growth from Q2 to Q3 and 950% from Q1 to Q3, and lastly “augmented analytics,” which grew by 21% from Q2 to Q3 and 1108% from Q1 to Q3.

It’s no secret that our world is becoming increasingly data-driven. As this article series has discovered time and again, data and analytics dominate software trends.

One pivotal factor in data analytics is the use of Python. Python can wear many hats. Heavily used in back-end development, it’s also beginning to dominate algorithms, analytics software, and the entirety of a data project’s lifecycle. Python data tools can be found for data collection, data modeling, and data visualization.

As computer scientists get more and more involved in data science, they are using Python to write algorithms, explains Michael O’Connell, chief analytics officer at TIBCO. This is resulting in a major surge in Python libraries and data analytics tools based in this language. “Computer scientists and mathematicians are starting to blend,” he says.

Another term that saw tremendous growth this quarter, and this year, is the concept of augmented analytics.

augmented analytics growth

“In order to bring AI forward, we need to understand brain structures better,” O’Connell says.

This will help process and analyze data much faster.

“I think what people have started to realize is that time is very precious and continues to become even more precious. Data volume is increasing. The need for insights in real-time is increasing. So, the only way you can do that is through augmenting your intelligence effectively by building solutions that don’t give you the answer but provide you smarter ways of being able to slice and dice information.”

No matter your job title, whether you’re a developer, project manager, marketer, or something entirely different, any and every profession will benefit from smarter data collection, processes, and tools.

Automated Testing Topics Show Growing Interest

Interest in automated testing grew steady among DZone.com readers over the last 9+ months. “Shift left,” a term meaning to ‘test early, and test often,’ has taken over the SDLC — developers are looking for more tools and frameworks that can easily integrate tests with minimal amounts of code.

This is where testing platforms like Selenium and Katalon Studio come in handy. These platforms allow testers to avoid manually writing tests. They can also create automated tests throughout dev environments.

Here’s a look at how these automation testing topic tags performed:

  • Automation testing tool grew over 60% from Q2 to Q3 and 1176% from Q1 to Q3
  • Selenium test automation grew over 23% from Q2 to Q3 and 1053% from Q1 to Q3
  • Testing frameworks grew 22% from Q2 to Q3 and over 641% from Q1 to Q3.

“The process of creating automation tests shouldn’t require writing extra code,” explains Jason Simon, (@jason_c_simon) freelance web developer, and tech writer. “Eventually, as we’re getting more and more code-free, this will not just be popular in test tech but in all parts of software development. The idea is to have business analysts doing a lot of the programming logic, without actually having to write a single line of code.”

 Automation testing tool grew over 60% from Q2 to Q3 and 1176% from Q1 to Q3 Selenium test automation grew over 23% from Q2 to Q3 and 1053% from Q1 to Q3 Testing frameworks grew 22% from Q2 to Q3 and over 641% from Q1 to Q3.

Simon predicts that in 2020, as testers write less and less code, the testing process will become more autonomous, with companies even adopting AI bots to automatically test new features. So basically, your test code will begin to automate itself. How cool is that?

The latest topics developers are reading on the Rise of Modern Security

Basic authentication and password management no longer cut it. The end of 2018 and early parts of 2019 were all about adopting basic security hygiene. But now, we’ve got to get more sophisticated and intentional about security — in all aspects of the development lifecycle.

This quarter, we saw topic tags such as “JSON web token,” grow over 190% from Q2 to Q3, “cloud security issues,” grow about 10% from Q2 to Q3 and 434% from Q1 to Q3, and “web vulnerabilities,” grow by 18% from Q2 to Q3 and 459% from Q1 to Q3.

Hackers are getting smarter, so companies and developers have to get smarter and more strategic about security practices. This is giving rise to the skyrocketing interest specifically around JSON Web Tokens and cloud security.

This quarter, we saw topic tags such as “JSON web token,” grow over 190% from Q2 to Q3, “cloud security issues,” grow about 10% from Q2 to Q3 and 434% from Q1 to Q3, and “web vulnerabilities,” grow by 18% from Q2 to Q3 and 459% from Q1 to Q3.

JSON Web Tokens (JWTs) are becoming more ubiquitous. Although they’ve been around for years, more organizations are complying with modern

security standards, particularly in Europe post-GDPR. For a better understanding of JWTs check out this article.

The growth in interest in cloud security relates to what Matt Quinn, COO at TIBCO calls the second major cloud migration. “There’s no cutting corners with this [cloud security]. If you don’t do the investments in the right place, in areas like CloudOps and DevOps, you don’t change your development practices.”

“People can still screw up,’’ Quinn adds. “But ultimately, security is something that we know what we have to do. Sometimes, we don’t do it. But I think everyone has a good idea and understanding of what good practices are. The early majority are probably still rediscovering some of those. And I think there are still some pockets of resistance to the cloud because of security-based issues.”

In other words, don’t cut corners and make sure you are adopting industry standards. Hackers aren’t slowing down, and neither should you.

Full Stack Developers, Frameworks and Popular Tutorials

The term “full stack” refers to both frontend and backend development. If someone is a “full-stack developer,” it means they have the skills and proficiency in both aspects of development.

This quarter, we saw growth in topic tags “full stack development”, which grew by over 97% from Q2 to Q3 and 547% from Q1 to Q3, “asp.net tutorials”, which grew by about 85% from Q2 to Q3; 2395% Q1 to Q3, and “python frameworks” , which grew by 137% from Q2 to Q3 and about 950% from Q1 to Q3.

This quarter, we saw growth in topic tags “full stack development”, which grew by over 97% from Q2 to Q3 and 547% from Q1 to Q3, “asp.net tutorials”, which grew by about 85% from Q2 to Q3; 2395% Q1 to Q3, and “python frameworks” , which grew by 137% from Q2 to Q3 and about 950% from Q1 to Q3.

ASP.NET is an open-source, cross-platform framework used for building web apps in C#. Many companies and developers are attracted to its user-friendly nature and are becoming overwhelmingly popular.

We talked with Microsoft MVP and tech leader, Gunnar Peipman (@gpeipman) about ASP.NET, why it’s so popular, and where he sees it moving into 2020. Peipman identified four key features about the language that made it stand out from other frameworks: its cross-platform abilities, lightweight and easy startup, abundant libraries, and high performance.

These features have led to increased interest in the framework that has led to more users.

“New users are coming from other ASP.NET [platforms] and so I think this transition will continue over the next few years. Many companies just cannot transition their current systems,” Peipman explains. Transitioning your codebase is no easy task. “So, I think over the next few years, ASP.NET development will be a hot topic.”

In addition to tutorials on ASP.NET, we also saw a huge jump in readership of tutorials on various Python frameworks. We spoke with Python developer and writer, Mike Driscoll, (@driscollis) about where Python for enterprise development is headed as 2019 comes to a close.

Driscoll highlighted why Python is popular amongst full-stack developers:

“The nice thing about Python web development is that it works on all PCs, across all platforms, so it’ll work on Windows, Mac, and Linux. And if you design it correctly, it’ll also work on most tablets and phones too. So, you’ve basically got a universal language, so to speak. That’s why it’s growing so much.”

Working Smarter, Not Harder

As 2019 draws to a close, developers want to make sure they have the right tools and processes in place to be successful through Q4.

One similarity between each of these topics and their related tags is tools. Developers want to find the best tools and frameworks to solve their problems — with as little startup time possible. Having the right tools for the job is critical, and that desire dominated Q3 readership results.

As we count down the final days of 2019, it will be interesting to see which trends carry over into 2020.

About the author:

Lindsay is a Content Coordinator at Devada. She works closely with contributors to DZone, a website for software developers and IT professionals to learn and share their knowledge. Editing and reviewing submissions to the site, she specializes in content related to Java, IoT, and software security.