Question: Suppose you are implementing a publication database and creating migrations to represent different publications. Each publication has a "year" associated with it.

`t.column :year, ???`

Would this year be best represented as an integer, date, or datetime?

Answer: 
I would recommend just going with Rails conventions and doing a `Date` data type. This way, if you ever *do* need the month and day, you can retrieve it. Plus, it's simple to do:

```
YourModel.date.year  # => "1999"

```
Well, if you only care about the **year**, an integer will do just right. If you're not certain that you will never, ever, need month and day, then date, and if you also may need the hour/minute/second, then datetime, but if you need a datetime, it should not be called year :-)