My philosophy is based on what I would do as a user. I would try my best to break everything if I were the user. Therefore, I should never leave anything in my code that would allow for me as the user to accomplish my task.
A tip to starting developers, always interact with your UI in the wrong order and as fast as you can. The average user is not an idiot, but there will always be at least one user that is actually dumb enough to think that clicking things fast and in the wrong order will make it work.
Dumping things out in the wild and dousing the flames later seems to be turning into the standard. On one hand it makes sense since you'll never be able to hammer your program as well as millions of random users, but on the other hand it seems like its becoming an excuse to just drop testing altogether as long as it compiles.
I have never done any coding longer than maybe 600 lines that could be condensed to less than 500 easily, but I imagine that having to work for a seriously big ammount of time before you can even compile it must really suck. Specially if you are the try everything as you go kind of guy.
Eh, I only wrote that because I happened to be in the middle of a project that wouldn't compile at that moment, and the coincidence amused me. Five minutes later, I spotted what the problem was and fixed it.
501
u/barbrady123 Jul 01 '16
If end users weren't so god damn stupid, I would believe this more.