In reply to Hashim Warren.
These are important points to consider, for sure. Some thoughts –

Fast Builds:
From what I’ve heard, the Gatsby team is working on supporting incremental builds in the future, so that when changes are made, only the static pages of the site that were affected would be regenerated. So that would make builds lightning fast. You’d be able to tell content creators: “After you update a post/page, you’ll be able to reload that page on the frontend and see your changes reflected there within seconds.”

Previewing Changes:
The Postlight Headless WordPress + React Starter Kit project has a way to view draft posts from the decoupled frontend React app. Here’s the code: https://github.com/postlight/headless-wp-starter/blob/master/frontend/pages/preview.js. I bet that could be adapted for Gatsby so that when a logged-in user visits a certain endpoint on the static site, the React app fetches the data for that draft post from the WordPress backend and displays it in exactly the same way it would display a published post. Sounds like setting that up could be a fun project! :)

Adding Forms:
Adding a form to a page can be done, as long as you use the WP REST API, WPGraphQL, or some other means to send the submitted form field values back to the server to be stored.

So in summary, I agree that these things are harder to implement with Gatsby than what you get out of the box with a traditional, monolithic WP site, but I think they’ll get easier. And depending on the site, dealing with them may be worth it for the speed gains and other features that Gatsby brings to the table.