After a lot of time doing this Combinatorial Optimization homework, I found out that a lot of my colleagues didn't even bother to prove that their algorithms worked, while I've spent a lot of time finding algorithm invariants and proving that they were actually maintained from interation to iteration. This is the Right Thing(tm) to do, but it also takes a lot of time. What should I do next time?