Like children, programmers are often given the information that they need for their profession in the form of inviolable "rules". Like children, we often follow these rules unflinchingly until one day, by accident more often than deliberately, we don't follow the rule, and nothing bad happens. Maybe we even see that not following the rule makes our lives easier and our code works better.
My favorite abandoned rule is:
Never use SELECT * in a query
I absorbed this rule while learning SQL the night before my first day at my first IT job (1996) by cramming a book on Access. The book spoke with the ferocity of a televangelist about how a baby kitten is drowned whenever a programmer uses SELECT * in a query, and I believed.
For years I never ever used SELECT *. One day, I was writing a query like
SELECT COLUMN1, COLUMN2, ... COLUMN472 FROM tblWHYTHISMANYCOLUMNS
when it occurred to me that since I was just asking for every column in the table, I could save some time by typing
SELECT * FROM tblWHYTHISMANYCOLUMNS
I tried it, and amazingly it compiled and ran perfectly. I've been an asterisk-man ever since. Nothing bad has ever happened to me as a consequence.
So what's your favorite abandoned rule?