Is a meta table useful Lets say a lot of my tables will have the same few columns for example a name, description, created timestamp, last updated timestamp.

When is it appropriate to put these common columns in a separate table compared to keeping them in their individual tables.

Just to keep track of it better here is a quick schema.

Books                  Movies 
---------------------  ---------------------
|ID|Name|Description|  |ID|Name|Description|
|  |    |           |  |  |    |           |


or

Books         Movies        Meta
------------  ------------  ---------------------
|ID|Meta_ID|  |ID|Meta_ID|  |ID|Name|Description|
|  |       |  |  |       |  |  |    |           |


Obviously this isn't the best example but it gives you the idea.
This is Vertical Partioning, as Michael Green states. I think it really depends on how frequently you need the Description field for Books and Movies. If it's rarely accessed/requested, then split it out as you described above. You would have two additional tables though, like BooksMeta and MoviesMeta, instead of the one Meta table. Then add your keys to the meta table.