Okay, so. Always leave enough bandwidth to cancel. Always cancel "direct" connection hacks that start to get tracked. The track can only start once your hack is going to the specific node with a defensive program, not before - this means if you take the longer route with no tracking programs in the way, you're gonna extend that track time significantly. The track has to go aaallll the way back. One program (or maybe one system idk) can only track one hack (very important).
I basically use 4 programs. Encrypt - starts tracking and slows hacks going through, since the closer you are to the source the faster it tracks spread it around your borders. If you got bandwidth to spare put some inside.
Lockdown - is actually an offensive program, you just can't put it on enemy nodes. It slows down any tracks going through, so it saves you time by allowing you to bounce less. For example, you can replace a source-bounce x2-target(with a tracking program) hack with a source-lockdown bounce-target, saving you a bounce.
Accelerate - makes hacks faster once they reach it, simple. A system with a backdoor or a UC sanctuary is still an enemy system so you can put an accelerate down immediately when hacking from there.
Divert - for some advanced tactics. Can't be used twice on same hack.
Firewall - lategame defense.
Okay, for some tactics.
Lockdown track delay - described above.
Hack decoy - start a hack that overshoots your target. Next turn start a hack from the same place to your target. The first hack will be traced first and since a program can only track one hack, the second can just sneak through. This will also happen for the subsequent tracks until you cancel the decoy.
"DoS" - Bounce a hack a bunch, then send it where you want. Takes a lot of time to setup but neutralizes any track in it's path, you can divert it once if you change your mind what you want it to affect. Sneak your real hacks "under" it untracked.