Book recommend.
Rapid Development
by
Steve McConnell.
Actually I can heartily recommend everything that I have
ever read that he wrote, but that book addresses the topic
at hand. Including why a spec is nice, what a good spec
should be, why you are unlikely to get one, what can
(sometimes) be done about that, etc. A lot of this may
sound like management theory. But it is really addressed
as management theory for a technical lead (a role you can
find yourself being thrown in unexpectedly - or be in by
default by virtue of being the only developer) who would
rather be a programmer but needs to know what works out of
self-defence.
Another approach to the issue of the fact you will never
get a spec is to try some of the ideas from
extreme programming
out. If you search you will also find some previous
discussions of that.