Since layout redraw is one of the slowest things a WebDirect (WD) layout can do, you’ll want to do whatever you can to minimize those redraws (which can appear your users as flashing or as a spinning busy icons).
So, “do as little as possible”. This often means wrapping your commands in If() statements to see if they’re necessary. We don’t need to do this in Pro because we don’t notice things like “Revert Record” if they’re not needed. But in Web Direct, you really see Revert Record even if there is no record to revert.
Interestingly, “Commit Record” doesn’t cause a layout redraw when called unnecessarily.
We’ve also had great results using RefreshObject instead of RefreshWindow when we need a particular part of a layout to redraw. Refresh window is often substantially slower, to the point that never use it in WD. (You can gather the objects you want to refresh into refresh enclosures to make this simpler.)
Most of our thoughts on Web Direct are coming from porting our Pro Calendar to WebDirect. We’re also doing this for SeedCode Complete (!) so stay tuned.