There's nothing wrong with writing down specifications, but I would say write them down once you've actually worked through some of the issues - that's the fundamental problem. If you can work through some of the issues with Keynote, great. If you can work through some of the issues with a lightweight HTML and JavaScript prototype, great. If you can do that on paper, more power to you.

Until you can actually do that, you're pulling things out of thin air and it's going to lead to a lot of re-doing and iteration anyway, so you might as well get that iteration done up front.

The Conversation - Episode 28: Designing with Keynote?