better error handling
Explicit is better than implicit
Better user message