I think there's value in writing code for yourself at times. Every other time in life engineers are told by their managers, professors, and anyone else who's overseeing them what to make and do. Doing a hackathon in this format minimizes that pressure and gives people a time and place to gather and just be creative for themselves.