Best Practices Showcase (8 hours of videos & a doc)

I created a doc to showcase best practices for making Coda docs that are enjoyable to build and use.

As I was building it from scratch, I filmed it and narrated extensively.

At the moment this is the single concentrated source of knowledge on how to approach building great Coda docs, how to be mindful of good user experience and clean maintainable architecture. I tried to pack as much Coda experience that I’ve got over the last few years as I could into these. Hence the length: I’m explaining many approaches in great detail. Whether you’re a beginner or a seasoned maker (or a Codan too) going through these will definitely be useful for you.

The videos don’t talk about cross-doc setups or optimizing heavy docs. Those are huge topics on their own deserving their own dedicated playlists

The doc:

The playlist:

The Patreon
where more educational content like this is posted (some for Patrons exclusively). Please check it out:

Some videos have janky audio in the second half :frowning: I don’t know what happened; I only knew this happened after I stopped recording and I could not recover the original audio anymore. If anyone knows how to fix these posthaste please let me know and I’ll try to reupload these.


Fantastic work @Paul_Danyliuk! Every time I watch one of your videos I learn something new and useful (In many cases quite a few new things every time :slight_smile:) .
Only problem is to find enough time to watch them as I have a lot of work at the moment :confused: I am struggling to keep up :smiley:


I have watched them already.
Really great resource for those who want to improve any doc.
Thank you a lot, @Paul_Danyliuk
I hope get more patrons so we can keep up with the good work.
You deserve it.


@Paul_Danyliuk this thread is an excellent example of addressing this :point_down: [general] Coda user sentiment (from November 2019)


@Marko_Petrovic I still have not discovered a way to have more than 24 hours per day, but when it comes to online videos, I watch most YouTube videos on 3x or 3.5x speed :crazy_face:

document.getElementsByTagName("video")[0].playbackRate = 3.5
:point_up_2: Change the 3.5 at the end to 3.0 to slow it down. The maximum is 3.99 before YouTube begins to skip frames

  1. ctrl/⌘ + i in Google Chrome → opens developer console
  2. click console tab in top right
  3. [optional] click :no_entry_sign: in top right → clears alerts
  4. ctrl/⌘ + v → document.getElementsByTagName("video")[0].playbackRate = 3.5
  5. press enter
  6. close Google Chrome developer console :x: in top right
  7. press play on YouTube video :play_or_pause_button:
  8. fast

*for Vimeo videos: if ctrl/⌘ + i does not work … right click on the video embedded in the page and click “inspect”

Text Expansion Keyboard shortcut → PC & Mac ($40 USD/year)
or → for PC (free) 1) download 2) install 3) paste code :point_down: into .txt file

AutoHotKey - for YouTube Speed (ctrl + alt + k)
SendInput document.getElementsByTagName("video")[0].playbackRate = 3.5

Extras - Kill switch (windows + esc) and no tray icon (automatic)

4) double click .txt file to activate 5) use keyboard shortcut to paste (ctrl + alt + k) 6) right click .ahk / .txt file open with notepad to edit 7) to activate on computer startup, place .ahk / .txt file in folder located around Microsoft\Windows\Start Menu\Programs\Startup

less advanced … similar outcome


That some serious guide there :smiley: I must admit I never really given any thought to the idea of watching videos at higher speed. I will have to test that :slight_smile:

1 Like

3.5 is pretty insane. Especially if the speaker is not a native but a slav like me lol :grin:


Awesome content @Paul_Danyliuk!

I encountered an issue with pasting “tab” into the table the way you showed it.
It may be useful to anyone trying this. The solution I used was to:

  1. Create a formula value on canvas with a
    tab and name it “Tab”:
    CleanShot 2021-06-28 at 15.57.00

  2. Input the placeholder (I used {2}) to the label:
    CleanShot 2021-06-28 at 15.55.10

  3. Input “Tab” into the Format() where needed:
    CleanShot 2021-06-28 at 15.55.42

The result:
CleanShot 2021-06-28 at 16.00.22


@Tomislav_Mamic I like the creativity, but couldn’t you have used char(9) in lieu of Tab T in Format() like this:

SwitchIf(thisrow = Flow: no user, ... imageIcon:"user"),char(9)

Didn’t think of that. That’s even better!

@Paul_Danyliuk , I looked up in detail and was wondering how you perform to log in log tables and found the formulas on buttons.
You did a really good work !
Thanks for sharing.

1 Like

You can also get the “video speed controller” chrome extension. It does the exact same thing except without all the code and adds a little extra functionality. That’s what I use

1 Like

Day 5 of Covid, feeling better so had a Full day of @Paul_Danyliuk yesterday at 2x speed. (8 hours in 4). Paul this is a huge resource, and your talking out loud bits just as useful as the doing. I will look at becoming a Patron to support more more of this from you.

Tiny update needed to your filter for Cleaning up Tasks that are orphaned.

Screen Shot 2022-07-25 at 6.46.31 AM

You changed the flow from deleting a project row, to ticking a “Is Hidden” box, and may not have updated this filter. Currently no orphaned tasks are shown.

Screen Shot 2022-07-25 at 6.45.45 AM

In my copied version of your file, I edited the filter by adding a 3rd “OR” line. The Filter can now handle projects that are hidden, as well as ones that may have been manually deleted from the data base.

Screen Shot 2022-07-25 at 6.39.04 AM

Keep up your great work.




Not as much to revive this topic but another one. Not so long ago I recorded a video that unfortunately went under the radar for the most of you. Today I had to rewatch it and realized it’s a motherlode of knowledge actually and I should recommend it once again.

It is a 2.5 hour long live stream of me mindfully recreating a common type of sheet in Coda. Watch it at 1.5x (or 3.5x if you’re @jeo :sweat_smile:) It’s not so much on the UX side of best practices as on the data design ones — that’s why I think it complements this series quite well.


Psst! Another thing that will complement these series quite well is the Learn Formulas in X Minutes guide that I’m currently working on. That one isn’t free but still affordable.

PPS. Fun fact: after two years now my wife and I have covid again :frowning:

1 Like