.nfcall
accepts a function reference and not not the result of a function call.
var prom = Q.nfcall(fs.writeFile, 'daa/write.txt', 'your mom', 'utf-8');
You should consider using Q.denodify
if you intend to call fs more than once. Other libraries like Bluebird ship with a stronger promisifyAll
function that converts an API to promises.