The Ultimate guide to Bubble performance: Revisions

Update June 2021 – the book is now in its second release, with several new points of information added.

How do I get the new revision

If you have already purchased the first edition of the book, this update is free. Simply re-download it from Gumroad again to get the updated version.

Revision history

First revision (June 2021)

Since its original release, several new sections have been added to expand on the original book, expanding it from 156 pages to 209. The purpose of this article is for readers who have already bought and read the book to see what’s new, and be able to skip directly to the updated sections if you want. It’s also to provide a transparent documentation of corrected errors, new methods and feedback from both readers and Bubble’s development team.

I’m especially thankful in this revision that I’ve been fortunate enough to borrow the valuable time of several Bubble key employees, including its founders, who have patiently answered questions, corrected errors and misinterpretations as well as offering a wealth of information about how Bubble works. This has made it possible not only to verify key points in the book, but also that the book offers information not available anywhere else.

The revision has also corrected some mistakes present in the first version (thank you to all the readers who have brought that to my attention!).

New cover

Yes, there’s a new cover! Let’s be honest – the first one was pretty ugly. Let’s call it an MVP.

Introduction

The table of contents has been moved to the front of it to make navigation more efficient.

Linked content

Several places in the book we discuss specific topics where we have accompanying articles on this website. We’ve set up callout boxes in the book in spots where you can learn more by visiting an article here.

Section updates: Knowing the platform

This section has been extended with a lot of new and more in-depth information about how Bubble processes stuff on their side:

Database

  • An entire new section on the underlying technology of Bubble’s database and how and when it indexes certain data types to speed up queries
  • The part on Structured and Unstructured data has been moved to this section

Page load

  • New section: The general sequence of events and priorities as Bubble loads a page
  • New section: The priority of general events such as Page is loaded, Current User logged out etc.
  • New section: What the criteria are for the Page is loaded (entire) to return true
  • New section: How your browser renders the page and how you can measure different parts of it using Chrome Dev Tools

Page size

  • New section: The part on using Chrome’s Network tab (briefly mentioned) in the first edition has now been extended to show how to identify things like plugins, fonts and icon sets and how much they contribute to your page’s total download size.

Workflow sequences

  • New section: How Bubble prioritizes different actions in the same workflow.
    • How regular workflows, custom events and back-end workflows differ in how they are sequenced.
    • How Bubble queues server-side actions to avoid discrepancies when several on-page actions have already been executed

Client-side vs server-side operators

A new table outlining how operators like merged, grouped, intersect are applied on the server vs on the client. It also corrects an error from the first book that states that :filtered operators are always applied client-side. The :filtered operator is actually more intelligent than that, and will try to send every constraint that you add as a single query performed on the server, but in certain scenarios, it will be forced to run that client-side.

Section updates: Building for performance

Structuring your database

The most requested content from readers was more details on how to actually structure your database. This new chapter introduces the complete process that we use for thinking about your database from the idea stage to the actual structure and introduces several new terms that help you think about and discuss your database.

The scenarios in the previous book also contained an error in the illustration, showing the same database table twice, to the confusion of many readers. The scenario has been completely re-written to fit better with the above-mentioned database structure section, so this error is no longer there.

Option sets

Two updates have been made to the section about Option Sets:

  1. The original edition described CloudFlare as Cloudfront, getting the two brands mixed up.  This has been corrected
  2. The fact that Option Sets are a cache-able asset has been added.
  3. It’s also been confirmed that Option Sets are loaded in their entirety, no matter their use on a page and been made clearer that filtering of Option Sets happens purely client-side.

Share:

More Posts

Understanding Bubble Groups

Bubble has five different group types. While they’re all used as containers, their use differs greatly. This article explains the difference between them in detail.

Bubble’s new expressions: SPLIT BY and ARBITRARY TEXT explained

Bubble quietly launched two new features in July 2021 that are quite useful: split by and arbitrary text. They’re both expressions that solve tiny problems that otherwise would require cumbersome workarounds, and are absolutely worth checking out. You’re not gonna

Combining icons and text in Bubble

Placing icons inside of your text elements by using BBCode is a quick way to reduce the total number of elements on your page and make sure your app runs smoothly. Read on for how to do it.

Leave A Reply

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

*