"Better software" is software that makes our users' lives just a little easier. If it doesn't meet that goal, it's useless. Sometimes worse than useless.
We're at the point now where we can look at the system as a whole and start to refactor it. We can eliminate unused components and invent new ones, more tailored to our current con
Finding good test input can be tricky. Even with loads of unit tests, bugs still get through. Why not just generate input and let that find the edge cases?
Taking the time to anticipate future needs and putting yourself in a position act on them shows that you give a shit and have their best interests in mind.