'desc' is a reserved word.
The fact that something exists does not make it good.
TINYINT, SMALLINT and MEDIUMINT are space-savers, saving 3,2 and 1 byte per row compared to a normal INTEGER. But the number of possible values is not nearly enough when using an auto_increment function. After 65k inserts, your SMALLINT runs out. That means MySQL will refuse to insert new records.
65k sounds like a lot, but it's absolute peanuts. An unsigned INTEGER can take 4294967295 inserts. That means that at a rate of over 100 inserts per second you can keep running for over a year. Using SMALLINT it wouldn't last a month.
And harddisk space is hardly an issue with today's cheap disks.