How to make sure that simultaneous INSERT and SELECT on one table won't make a deadlock?
Deadlocks will always happen at some point under the default locking strategy. However, it is unlikely in your given scenario because of the straight table scan. 

However, it's more likely if you have several concurrent INSERTs and SELECTs.

Using NOLOCK means dirty reads and isn't best practice. Everyone seems to suggest them though...

The alternative is to use snapshot isolation modes: the SELECT will read the last committed data, rather than being blocked by the INSERT.