Optimizing repetitive tasks