I agree with those who say that the table name should be omitted from all the columns except for the ID.
If a column is a foreign key, then I like to give it the same name as the column it references. This tends to keep things simpler and easier to remember. There are two exceptions to this rule. If more than one foreign key references the same column in the same table, then they will need some kind of prefix based on their use to distinguish them. And if a foreign key has a specialized use then it may need another name (ManagerPersonId rather than PersonId for example).
This rule about foreign key names encourages prefixing the ID column with the table name.
Also, if a table's primary key is a synthetic identifier, like an identity column, then it becomes very natural to name it TableNameId, since that describes exactly what it is.
In all other cases, prefixing column names with the table name is needless, redundant, and verbose.