"geen" is often translated as "no" and expresses the lack of presence of something. It can never be used on its own.
"Ik heb geen huis" would be "I have no home" or, more fluently, "I don't have a home".
"niet", on the other hand, is the cognate with "not".
"Ik heb dat niet gedaan" can be translated as "I didn't do that".