All of these are valid criticisms, but in my mind a hackathon is a treat: pizza, soda and staying up all night is fun sometimes, regardless of whether you play Halo, watch movies, or write a cool app. I agree with a lot of the comments that say you can't get much done; it's mostly a case of connecting existing libraries and data sources to create a sort of 'mash-up'.
That said, being able to prototype quickly is an awesome skill, and it completely exercises different parts of my skillset than my normal job. Going from coding a large C application, to hacking together a Ruby app is a very refreshing experience. Maybe if you spend your whole day working on the same stack in the same domain, it's less fun.
Finally, it's a good way to get something you've had in mind done. If your whole life isn't made of crunches, the occasional high-stress, urgent deadline situation is (once again) a welcome change. For people who work under these conditions all the time, yeah, it's probably not fun.
That said, being able to prototype quickly is an awesome skill, and it completely exercises different parts of my skillset than my normal job. Going from coding a large C application, to hacking together a Ruby app is a very refreshing experience. Maybe if you spend your whole day working on the same stack in the same domain, it's less fun.
Finally, it's a good way to get something you've had in mind done. If your whole life isn't made of crunches, the occasional high-stress, urgent deadline situation is (once again) a welcome change. For people who work under these conditions all the time, yeah, it's probably not fun.