When Technology Broke and How We Fixed It (The Evolution of APIs)
Technology is anything that makes tasks more manageable. It could be something as simple as a thimble to something as complex as AI.
Join the DZone community and get the full member experience.Join For Free
What in the World Is Technology?
Technology is anything that makes tasks easier. It could be something as simple as a thimble to something as complex as AI. Technology, overall, has made life easier, more convenient, and more efficient. We'll start out with the (fairly recent) present in computing technology, then step back for some overview, and finally wrap up by returning to the present.
The Cloud and Anywhere Access
The advent of cloud computing became a boon for developers. PaaS made it possible for them to focus on building applications instead of managing servers. In addition, the cloud provided a new way for developers to build, test, and deploy. (It also played a key role in making the API economy possible by allowing them to easily share data between different platforms and services like never before – but I'm getting ahead of myself.)
It wasn't long before users could access any product or service online with one login from any device or location. This enabled the creation of complex services that could interact and exchange information seamlessly.
Early on, linking services was hard and time-consuming because each application had to be built from scratch using different programming languages. Developers needed something to allow them to build applications that could interface with other applications through a common platform.
When Is Technology Considered Broken?
Let's step back a bit to see how technological improvements can go wrong.
Technology breaks when it fits into one of these three categories:
1. No Longer Useful
8-tracks are a good example here. At one time, they were top of the line! It was great to pop that in the 8-track player in the car and listen to a song or two. Because the advantages of any advances since then are obvious, I won't go into detail.
2. Bad Design
I have often used certain bridge collapses as examples of truly bad design – they had good intentions, but due to a lack of consideration of certain factors, they became disasters. They could have been prevented, but the rush and lack of proper consideration in development made them truly awful technology.
3. Burdensome to Maintain
Certain technological advances have created enormous overhead, and there's sometimes no current way to get out of it. An example is some road systems. Some roads (including back roads, highways, and interstates) seemed like a great idea, whether keeping up old ones or handling new ones. Still, the cost of keeping up with that infrastructure can cost more in road repairs, lost travel time, rerouting signs, and accidents, than if they had never been created. But once they're in, it's too late. If readers haven't experienced this kind of computer technology overhead, you've missed out!
The web, the cloud, the Intertubes – whatever that ambiguous mass of interconnectedness is called – became cluttered and unwieldy in connecting with other services. For a business to advance, technology didn't have to speed up; the pace of innovation and connection had to increase.
What would be the solution?
APIs: Essential to the Modern Web
As e-commerce grew in popularity, the need for APIs became evident. For example, eBay was one of the first major online marketplaces to incorporate APIs into its ecosystem by creating an API that allowed third parties to develop applications that could connect with eBay's database and provide users with various features.
In addition to allowing external developers access to their data, companies such as Amazon provided tools for developers who wanted help building new applications on top of their own platforms by providing standard libraries and code examples that made it easier for developers without experience writing software from the ground up.
APIs opened up a new world of possibilities with the ability to use others' technology as part of their own solutions. They were easier to scale and more robust than if they were just doing it alone.
Developers could now turn the data and functionality of other applications into building blocks for their own services. APIs made it possible to build apps like Uber, Airbnb, and Slack—and they enable developers to use third-party services in an application without having to write their own code from scratch.
Questions and Concerns About Privacy and Security
As APIs have become more open, there are questions about privacy and security.
While developers, IT, and security departments can be perceived to be the gatekeepers of our data, they are guided by business leadership decisions. Businesses have a responsibility—a duty—to be transparent about what they do with data and aware of the privacy implications of their decisions.
Leadership and management need to keep in mind how their systems can be broken or manipulated by malicious users because, "APIs keep everyone connected to vital data and services, enable all sorts of critical business operations, and make digital transformation possible." Therefore, internal staff must do their best to ensure that privacy and security are part of the SDL, even when not provided corporate direction.
Challenges and Advancements
We face new challenges today because of global data regulations like GDPR, but we're also still making amazing advances, like integrating AI into our app experiences for users.
In the future, we can expect to see more innovation in mobile-first design and user experience as AI continues to make its way into our daily lives. Regarding privacy concerns surrounding data collection and storage on apps and other software services, I believe that as people become more comfortable with this technology (and more informed about how their personal data is being used), they will begin trusting providers with their information more readily.
The Future of APIs
Beware! APIs can easily become unuseful, even detrimental. One can bake a cake, build a car, or drive to a destination only so fast. Going faster can create something burnt, fragile, or dangerous. Suppose the speed of push to Prod isn't balanced with views regarding security and privacy. In that case, API use becomes a recipe for greater fines and overhead than any benefits customers and companies gain.
Cloud computing has provided a means for developers to create and distribute applications that work together regardless of where they're hosted or who built them. APIs have been an incredible treasure for companies and individuals alike, but there will still be bumps along the road ahead as innovation continues atop this development model.
Opinions expressed by DZone contributors are their own.