For practical purposes, there are interchangeable. However, for certain specific situations, one may be preferred, only preferred, not mandatory over the other. 還沒 is used when it is a bare, neutral statement / comment on someone not asleep yet. 還不 is used when it is questioning / accusative of why someone is not asleep yet when ought to be. So, you have:- 很晚了,你还没睡 明天去上学你还不睡 However, no one will say you are absolutely wrong if used interchangeably.