(Not the OP.) At least for me, emphatically yes.
From your question, it sounds like you're only considering the communicative value of a spec. That's of course important, but I consider it secondary.
Writing a good spec forces you to think through what you're developing in an orthogonal way. You're thinking through flow, cohesiveness, design, some implementation, UI, etc. together at a high level.
I love having the time to write a spec when I'm building something nontrivial. I've found numerous problems that I wouldn't have otherwise by doing so, ranging from simple UI problems/contradictions to spotting unconsidered assumptions that would have lead me down dead ends.
A spec and the application should naturally co-evolve during development to some extent. But the spec also provides an anchor for what you're doing, as well as a map. It is very, very helpful if you Do It Right(tm), no matter the size of your team.