NOT NULL is a constraint which ensures there is a value in the column for every row. This is good practice when applied correctly because you have to be careful with null values in tables when doing operations like joins because no null is equal to any other null
http://en.wikipedia.org/wiki/Null_(SQL)