Copy
The week in API strategy, news, articles, and upcoming events.
James Higginbotham, Curator  A hand-curated weekly newsletter for API developers, sponsored by LaunchAny and CaseySoftware

Find this via Twitter? Subscribe now so you don't miss out
 
 

API Developer Weekly

April 28, 2022 - Issue #404
Welcome to issue number 404 Not Found of the newsletter! Let's hope you find this issue 200 OK. This week, we have a great discussion on the differences between REST, GraphQL, and gRPC API styles and when/when not to use each one. We also have a look at how to include developer experience (DX) factors into your microservices architecture, how to break a monolith down into microservices (and it isn't all about the technical details), best practices for long-running API operations, and a new asciidoc reducer tool that combines multiple files into a single asciidoc file for easier collaboration and modularization. Finally, take a look at the (Un)Related section as we have quite a few off-topic articles that may be of interest. 

Happy Reading!
-- James

 
Hot Topics
API Showdown: REST vs. GraphQL vs. gRPC - Which Should You Use?
Betts: Welcome to the API showdown. I'm joined by three panelists, each chose to be a representative of one particular API technology, more or less. Any good architect knows the only time you should ever use always or never is to say we will never do an absolute. [infoq.com]

Designing Developer Experience in Microservices Architecture
TL;DR - This is the intro to a three-piece article series discussing key decisions in designing developer experience and development cycle for teams in a microservices architecture. 💡🚀- Designing Developer Experience in Microservices Architecture (intro) - Version Control Layout in Microservices Architecture (pt. I)- Code Sharing in Microservices Architecture (pt. by Aviv Carmi [medium.com]

Chopping the monolith
If you attend conferences or read technical articles, you could think that microservices are the correct and only way to build a system at the moment. Despite some pushback from cooler heads, the default architecture is microservices. In this post, I'd like to argue why it's wrong. by Nicolas Fränkel [nfrankel.medium.com]

Introducing SpectaQL 1.0 - an even better way to autogenerate GraphQL API documentation
Back in March 2021, Anvil released SpectaQL to the open source community with the goal of becoming the de-facto, go-to library to use for auto-generating static HTML documentation for any GraphQL API. [useanvil.com]

API Design Best Practices for long-running Operations: GraphQL vs REST
I've recently read an article where the author stated that GraphQL is "not appropriate for long-running operations". I'd like to show that GraphQL can very well be used for long-running operations. We'll also take a look at how such a problem can be solved using a traditional REST API and compare the two approaches. [wundergraph.com]

Create real-time applications via serverless WebSockets with new AWS AppSync GraphQL subscriptions filtering capabilities
With AWS AppSync you can create serverless GraphQL APIs that simplify application development by providing a single endpoint to securely query or update data from multiple data sources, and leverage GraphQL subscriptions to implement engaging real-time application experiences by automatically publishing data updates to subscribed API clients via serverless WebSockets connections. [aws.amazon.com]

Modern USPS Web Tools API documentation
At Lob we help developers automate sending letters, checks, and postcards, and improve address quality through RESTful APIs. The mail that flows through Lob to our print partner network reaches its final destination with help from the U.S Postal Service. Lob also utilizes the USPS tracking data in our webhooks so customers can observe the journey of each mail piece. [lob.com]

asciidoctor-reducer: A tool to generate a single AsciiDoc document
alembic: A tool to generate a single AsciiDoc document by expanding all the include directives reachable from a parent document. - GitHub - asciidoctor/asciidoctor-reducer: A tool to generate a single AsciiDoc document by expanding all the include directives reachable from a parent document. by asciidoctor [github.com]

Austin Homegrown APIs is back!
The meetup that kicked off almost 10 years ago is back - check out the first meetup coming in May and be sure to signup so that you will be reminded as the date approaches [meetup.com]

Wavlink Command Injection (CVE-2022-23900)
Your Router Is My Router The Wavlink WL-WN531P3 router exposes an API endpoint susceptible to command injection. This API endpoint is reachable without an authentication header, meaning the vulnerability can be exploited by an unauthenticated attacker. Furthermore, the router has no CSRF protection, thus RCE can be achieved without connecting to the local network. by Stigward [stigward.medium.com]
 
The Business of APIs
How APIs Enable the Composable Enterprise Model
The Composable Enterprise Model (CEM), which has been called the future of business by some commentators, prizes flexibility and adaptability in the technology powering businesses. When Jonathan Murray coined the term in an Adamalthus blog post, he didn't specifically connect it with APIs. [nordicapis.com]

When internal API platform billing model collides with API-First strategy
An internal API-first strategy will inevitably raise budgets questions; you must be aware of that. One of them is who will pay for the brand new API platform and how? The success of an internal API-first strategy may depend on the billing model of the API platform. by Arnaud Lauret [apihandyman.io]

RapidAPI Partners with Formula 1 Team Scuderia AlphaTauri
RapidAPI, an API management company that became a Silicon Valley unicorn (worth over $1 billion) after its most recent venture capital round last month, has announced "a major multiyear partnership" with Formula 1 team Scuderia AlphaTauri. by Richard MacManus [thenewstack.io]
 
(Un)Related
System Design Fundamentals: Data Replication and Partitioning
This post is part of my system design series. You can find the other topics covered here: The performance of a system is usually dependent on how well its database performs. If a system's database is down, the system as a whole is very likely to be unavailable. by Mariam Jaludi [levelup.gitconnected.com]

Netflix Studio Search: Using Elasticsearch and Apache Flink to Index Federated GraphQL Data
Netflix engineers recently published how they built Studio Search, using Apache Kafka streams, an Apache Flink-based Data Mesh process, and Elasticsearch to manage the index. They designed the platform to take a portion of Netflix's federated GraphQL graph and make it searchable. [infoq.com]

Why Atlassian Failed So Hard
On April 4, Atlassian's web services went down for about 400 customers or from 50,000 to 400,000 users. So far, so what, web and cloud services go down all the time. It's never any fun, but it happens. But this time, Atlassian 's woes kept going and going. by Steven J. Vaughan-Nichols [thenewstack.io]

Messaging and Logging: Implementation and Intent
Messaging and logging are similar in implementation but different in usage. The implementation of a logging or messaging system can be the same. We recommend you standardize on a Structured Message Format for both logging and messaging. However, messaging and logging differ significantly by intent. by Eric Hosick [medium.com]

Exploring Architectural Concepts Building a Card Game
One of the things I missed during the pandemic were my friends, the possibility to meet them, discuss with them and, why not, play cards with them. So I decided to implement an app to play Scopone with my friends and, at the same time, test "in the code" some architectural concepts which had been intriguing me for some time. [infoq.com]

Understand How a Blockchain Peer to Peer Network Works
In this article, you will see how the cryptocurrency P2P network works. You will explore different blockchains policies specifically and the P2P network in general by breaking the P2P network into five layers. Consensus layer Miner layer Propagation layer Semantic layer Application layer A consensus mechanism is an agreement needed for the network to operate properly even in the event of a failure. by Abhishek Chauhan [betterprogramming.pub]
 
Want to share something?
As always, if you want to chat, share a link, or make a suggestion, feel free to drop us a quick note or tagging us on Twitter (@launchany and @caseysoftware) or by emailing us at: james@launchany.com
 
UPCOMING EVENTS
Follow on Twitter    Forward to Friend    Subscribe
Copyright © 2022 LaunchAny, All rights reserved.
unsubscribe from this list