13 Comments

  1. Leonardo Losoviz
    · Reply

    I think Matt’s brutal honesty is welcome, because most information out there about the Jamstack praises it. However, it also comes from developers using these modern new tools, evaluating their own convenience and satisfaction. As Matt points out, that doesn’t mean it makes it easier for the end user to use the software, which is what WordPress is good at.

    I actually like the Jamstack, but because of how complex it is, it’s rather limiting, even to support some otherwise basic functionality.

    The definitive example is comments, which should be at the core websites building communities. WordPress is extremely good at supporting comments in the site. The Jamstack is sooooo bad at it. In all these many years, nobody has been able to solve comments for the Jamstack, which for me evidences that it is inherently unsuitable to support this feature.

    All attempts so far have been workarounds, not solutions. Eg:

    Netlify forms: no hierarchy, so can post a comment but not a response (unless adding some meta to the comment body? how ugly is that?)
    Storing comments in a GitHub repo: it takes a long time to merge the PR with the comment

    Also, all these solutions are overtly complicated. Do I need to set-up a webhook to trigger a new build just to add a comment? And then, maybe cache the new comment in the client’s LocalStorage for if the user refreshes the page immediately, before the new build is finished? Seriously?

    And then, they don’t provide the killer feature: to send notifications of the new comment to all parties involved in the discussion. That’s how communities get built, and websites become successful. Speed is a factor. But more important than speed, it is dynamic functionality to support communities. The website may look fancy, but it may well become a ghost town.

    (Btw, as an exercise, you can research which websites started as WordPress and then migrated to the Jamstack, and check how many comments they had then vs now… the numbers will, most likely, be waaaaaaay down)

    Another way is to not pre-render the comments, but render them dynamically after fetching it with an API. Yes, this solution works, but then you still have WordPress (or some other CMS) in the back-end to store the comments :P

    The final option is to use 3rd parties such as Disqus to handle this functionality for you. Then, I will be sharing my users’ data with the 3rd party, and they may use it who knows how, and for the benefit of who (most likely, not my users’). Since I care about privacy, that’s a big no for me.

    As a result, my own blog, which is a Jamstack site, doesn’t support comments! What do I do if I want feedback on a blog post? I add a link to a corresponding tweet, asking to add a comment there. I myself feel ashamed at this compromise, but given my site’s stack, I don’t see how I can solve it.

    I still like my blog as a Jamstack, though, because it’s fast, it’s free, and I create all the blog posts in Markdown using VSCode. But I can’t create a community! So, as Matt says, there are things the Jamstack can handle. But certainly not everything. And possibly, not the one(s) that enable your your website to become successful.

    Report

    • Octavian
      · Reply

      Good points, indeed. Although I’ve worked with WordPress before and I would not go back to it… 😦

      I’m (genuinely) curious, when you say that it takes a long time to merge a PR, what do you mean? Merging itself takes long or the fact that you need to review, etc.?

      Report

      • Leonardo Losoviz
        · Reply

        I’m referring to the experience of adding comments in the Smashing Magazine site, which went from WordPress to Jamstack. Their solution for comments is to create a pull request with the comment, and merge it to the repo, right when the user posts the comment. This operation takes many seconds, during which time the user is shown a spinner, and waiting. I’ve had to wait 20 seconds at times… It’s not a pleasant user experience.

        Report

  2. Not so much
    · Reply

    He’s very picky on the CMS that he showed as an example.

    Report

  3. Rarst
    · Reply

    Doesn’t read any more clear, just reinforces the same nebulous take where WP can do no wrong and static can do no right.

    Bloated ecosystem and services down your throat? 57,000+ plugins and Jetpack say hi.

    Yes, Netlify team is a lovely loud bunch and JAMstack is riding the wave of hype, disproportional to its state and usage.

    However static can deliver what it promises for some use cases — a site that is faster, cheaper, and easier to run, comparing to a WordPress one. How do I know? I moved my personal site from WordPress to Hugo/Netlify and benefited from it.

    The mission of WordPress isn’t to “democratize publishing”, it’s to “WordPress-ify publishing”. And so whenever someone else makes advances in publishing they are a target instead of an ally.

    Report

  4. Ionut Calara
    · Reply

    In this particular case, I think it’s very specific to Jamstack, but the point behind people adopting it is strongly connected to developer preference.

    I think a lot of developers are keen on working with new frameworks, that are easier to use and extend for a developer, but they don’t consider how easy the end product will be to use and maintain by the end-user.

    Overall, I think WordPress is the best software I have ever seen in terms of usability and has a good balance between customizability and how easy it is to just quickly build something. But developers tend to choose the stack, and its easier for them to overlook the maintenance part.

    I think for certain situations Jamstack might be better. But the majority of WordPress admins, probably don’t want to write articles in markdown.

    Report

  5. Tomas
    · Reply

    I would like to note that there are other options for headless CMS, not only GraphCMS or Contentstack (I guess it was picked for its price). For example, you can use Forestry CMS, Dato CMS, Sanity CMS which all have free plans. Also, Netlify CMS is open source and completely free.

    Report

    • Matt Mullenweg
      · Reply

      Thank you for the pointers, I’ll check them out!

      The ones I highlighted seemed to be the closest to WP in terms of user experience for site managers and editors.

      On pricing: The first listed price at Sanity is $199/mo… similar to others I was trying to count listed prices vs free trials or variable usage plans, because it’s very hard to know what that would cost. At Sanity for example they limit based on API CDN requests, API requests (not sure the difference), bandwidth, listeners (?), datasets (?), documents, users, and storage. You don’t see mainstream hosts or WP.com limiting in the same way, perhaps except storage.

      WordPress itself is an open source, and free CMS that can be used in a headless way. :) In general I am supportive of any open source CMS, including “competitors” like Drupal or Joomla, but more skeptical of proprietary solutions, especially if they lock you in.

      Report

      • Rodrigo
        · Reply

        The ones I highlighted seemed to be the closest to WP in terms of user experience for site managers and editors.

        Publii CMS is also similar to WordPress in this regard. It’s free, easy to setup – comparing to the regular JAMStack solution – and quite friendly to the final user.

        But it doesn’t come even close to WordPress in terms of flexibility, community and functionality, of course.

        Report

  6. Zarko
    · Reply

    This is like comparing apples and oranges.

    JAMstack is a way to build a website using different technologies. It’s up to developer to find the best solution for specific problem.

    WordPress is a monolithic CMS which tries to do too many things of which many are done poorly.

    Report

  7. Max Pell
    · Reply

    For my sites it’s definitely cheaper I only have domain costs to pay for (8 – 10 per year) plus free hosting on Github and other platforms compared to the pricy equivalent, content can be easily managed through a platform such as Forestry or Netlify. The scalability is insane since the server resources are a lot less compared to a bloated monolithic cms such as WordPress, and the speeds are amazing. I understand that with sites such as news sites etc that are updated like down to the second perhaps a custom cms or something like WordPress is more suited…but there are sophisticated site generators that can handle 5k – 100k so I guess it’s possible, but I’ve never looked into it as it’s outside of my use case. My personal general philosophy is the the same as Arron Swartz “Bake, Don’t Fry” and WordPress don’t fit that mantra.

    I’m happy that some developers are experimenting as I think that too often people get what I like to call WordPress disorder, I should state this can be for any cms, where they have tunnel vision without considering different use case and tools, I would say 60% – 75% of the time WordPress is overused where it could be done cheaper elsewhere, thats the real reason that it runs 30ish% of the web, it’s because you have people continually reiterating what percentage runs WordPress and naive web creators buying into it, when in fact what they really should be doing is asking if it can be done cheaper with a static site generator or something similar, if people did that I think WordPress share wouldn’t have got as large as it has and we see people making better decisions and saving money on server resources they don’t need.

    Report

  8. Dk
    · Reply

    I’ve built a bunch of Jamstack sites in the last 2 years, ranging from 3 – 500+ pages, and I agree with all points above.

    Try telling your clients this:
    – You now need an account & pay for at least 3 different services, one for Github, one for a headless CMS, one for Netlify
    – You can not preview your site while you’re editting it. Wait, you can, if you use Gatsby Preview — but it’s another $20/month if you want 250 ‘real time edit’ per month — that’s right. I’ve probably editted 50 times writing this comment. But wait — can’t you just deploy your own Gatsby real time edit? It’s open-sourced, after all? Yep! Now you need to pay for a droplet & extra developer resource to maintain it, just so you can preview your site while you’re editting it… on a separate tab.
    – Commenting is another service. You want the comment to be baked into the html? Either spend more developer resource, or you have to pick a service that allows that (not many). Either way, more developer resource.
    – You want to optimize your images? Too many images will slow down your build beyond belief. Caching helps, but occasionally you’d need to clear your cache due to vague error… You know what, let’s put all our images in a bucket and put imgix in front of it. Another 2 services.
    – This one is Gatsby-specific: You just want a website that you can edit, but I spend a lot of time wrestling with Gatsby’s GraphQL to bring your data to a template I wrote in React, a framework choice that is totally overkill since 90% of your site is just static HTML, but I just can’t write anything in vanilla JS/HTML anymore.

    Things that make a static site fast also make a server-rendered site fast. Throw a CDN in front of a wordpress-powered site, pair it with a web worker for pre-caching stuff and it can be really fast.

    At this point, I’m convinced people who uses JAMStack are either companies with strong dev teams that willing to shoulder the marketing responsibility, or hobby developers feel so great after rewriting their simple blog for the fifth time in a new technology.

    Report

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

%d bloggers like this: