Always, before starting a VSys Live site, get the latest master templates: Apex (for VSys Live), Kiosk or Anywhere. And the site layout template, also helpfully called "Apex".
Always use datatable styles: don't have VSys Live listing views rendered any other way.
Never be creative to make a "new" solution for a customer's problem. Ask first. We've almost certainly seen it before, and your way is likely both uglier and less maintainable.
Never edit the site layout template. Ever.
Never copy site templates from another database.
Never copy asset files from another system. Always go to the source.
Never use FQDN URLs such as https://www.vsysone.com/pages/something in menus, trainings, merge templates or any other hyperlink unless you're very intentionally linking to a different site. Instead use relative URLs such as /pages/app:training.
And unless you're using a full FQDN in a URL, don't include the http:// or https:// prefix. But do include that prefix if you're linking to a separate site or it Just Won't Work.
Never put action links directly on a page.
Never have multiple home pages unless you're using the very special login page like the default one in VSys Anywhere.
Never have more than one menu defined unless you're using fallback menus or one for "Inactive but eligible for return". And if you're doing that, ask permission: they're complicated and rarely necessary.
Never put a menu directly on a page.
Never have a bunch of similarly-named items such as "Job lookup", "Job lookups", "Job lookup 2". You won't remember tomorrow what that meant, and nobody else will ever understand.
Always clean up unused options such as action links, menus, etc.
Never leave anything labeled "(copy)" or "(copy) (copy)" or "(edited)" or other such nonsense. Label the item appropriately. And if it was used as a test item, when you're done, go back and rename it appropriate or delete it.
Always use visibility rules - well-named and descriptive - when possible to determine if something should be shown or hidden based on the current user.
Visibility rules are re-usable and represent a single, easy place to change everything that uses them in one swell foop.
Never make a new template page without a Darned Good Reason: there are already two template pages. If you think you should make more, you're probably wrong - ask first.
Never put an application directly on a page.
For menus and eligibility checklists, let those tools generate the appropriate links to the applications.
Helpfully, menus will refrain from rendering a menu item that's a link to an application if that application can't be used.
Never have a page labeled "Page layout" or anything else silly. Call the page what it is.
Always keep template and placeholder pages grouped separately from other pages using page groupings.
In an eligibility checklist, never use an Intellilist when 1+ criteria directly in the checklist would suffice (x or more of...). Intellilists require leaving the checklist setup tool, are almost always slower, and invite other users to mess with them without realizing the consequences.
Always, if you use an Intellilist in a visibility rule, make sure that the Intellilist's Recalculate rules is not "Every time". That's slow, generates insane quantities of trace records, and did I mention it's slow? Really slow in places that you probably don't expect. Set it to "On a schedule" for every few minutes. Check Load and cache in VSys Live if you can live with the list being out of date for a few minutes, i.e. the visibility of some item isn't likely to change as the immediate result of an action the volunteer takes in VSys Live. This makes it very, very fast.
Never - ever - rename VSys.exe "VSys (old).exe" or "VSys_old.exe" or anything else.
Need to keep a fallback copy of VSys in case an update doesn't work out? Put it in a folder, along with VOXI and others if necessary, called "save 2020-01-20". Doing this puts it out of the way and lets you have multiple older versions. And it saves you the embarrassment of having tons of oddly-named files, the reasons for which you forgot years back.
Never put big images (anything > 1MB) on a page. Or anywhere else. They slow down everybody and really displease those on mobile devices who have to download them unnecessarily. Adjust the size and resolution to something appropriate.
Always try loading all pages of the site using Chrome with the Object Inspector open to the Network tab. Look for large files being loaded, look for particularly slow pages. Do this every time you make any substantive change to a site.
Always hide dynamic banners and most larger images on mobile devices. They take up precious screen space and aren't helpful.