In February, my teammate Kelsey shared some updates on how we were making docs load and perform faster. And three weeks ago, Himanshu provided some insights into how we were making calculations faster in your docs. Today, I have the honor of providing our third installment in our series of updates confirming our commitment to making Coda more performant!
If you read Kelsey’s post closely, you may’ve noticed we were able to optimize a few types of columns to take up less space, so their docs load more quickly. We’ve expanded on that work so that docs with any of the following column typesーand interactive filters or controlsーshould load and perform even faster :
Buttons & controls: We’ve made improvements to more columns and controls to take up less space in your docs. Docs with button, reaction, checkbox, slider, and scale column types and controls should now load faster; textbox controls also load more quickly
Files & attachments: We’ve also optimized the file and image attachment column types to take up less space
The upgrades for these columns and controls have already begun rolling out to most docs, so you should notice a bit more speed already. We’re still running the numbers, but didn’t want to delay the good news while we put together some nice charts for this launch.
Enjoy your faster docs, and please keep letting us know where you’d like us to focus our efforts to improve performance next!
Does this mean the code for button actions is now only stored once on the column level (e.g. in the schema) and not every time per row?
Also could you please elaborate on what exactly changed for other controls?
I’ll probably reverse-engineer the docs eventually anyway like I used to in the past, but I’ll appreciate a quick technical answer here.
As someone who’s working on a doc that’s going to get pretty large over time, these frequent performance improvements are fantastic to see. Great work as always Codeans!
At a more technical level, the changes are the same as the ones Kelsey described in the replies of her earlier post, but applied to even more control types. The short summary: all of these controls used to be backed by system render columns that contained redundant metadata in each and every row that we’ve now pulled out and store only once at the column-level.
For buttons, the current changes have focused on reducing storage size of a button’s display properties - its color, label, icon, etc. But we’re not done with buttons yet! Action formula storage sizes are another area for space optimization that we’re aware of and haven’t gotten to yet.
Thanks a lot !! The improvements are noticeable, I always get excited when some slow place speeds up
You can work next on improving the search bar, it needs some debounce time when searching, it queries for every keystroke and on large docs this takes precious time
Are you working on memoization for calculations? Don’t know if this currently happens but we would benefit a lot from this
Hope my suggestions are useful, keep up the amazing job
When are you going actually improve speed for pages with simple formatting only? (like Bold / Colorized / Emphasis usage for text mostly).
These are still slow to work with (at least from non-USA locations).