Почему использование timestamp в БД для хранения даты является неправильным?
потому что:
1. дататайм нагляднее и понятнее таймстампа
2. дататйм позволяет хранить доли секунды
3. при таймстампе вы теряете множество удобных функций для работы с дата/время
Не пишите timestamp, пишите Unix timestamp. Только в MySQL timestamp-ом называют Unix timestamp, в остальных СУБД timestamp - это то, что в MySQL зовется datetime. 
В Unix timestamp нет ничего плохого, но его использование ограничено, по-сути отображать текущее время работы компьютера. 
Если взять пример из цитаты, то действительно странно сохранять дни рождения в Unix timestamp, хотя бы потому, что этот формат хранит только даты в интервале от 1970 по 2038 год.