When you first look at Open SPF - http://www.openspf.org/ - it sounds good.
But it completely breaks in the real word. For years ISPs have been blocking outgoing port 25 - insisting that we use their local SMTP server. They allow us to send relay mail - as they trust our IP, and if we do bad by their server, they will cut off our account.
This system works. I move to a remote location, I just change my SMTP server to point to that ISP. I have a number of them setup in Mail.app so that it can automatically choose the local ISP. A telstra, Three, Internode and a number of offices exist in my list.
Can I put in every one of their servers into my SPF - NO WAY. I wouldn't even be able to chase them down for every domain, and I can't tell you what other users on the same domain do.
SPF assumes that you either only send email physically on the ISP whos server you use for mail (e.g. if I use an internode email address while on internode) or via web mail.
This rules out me with my laptop, and most of the people I work with.
Until that problem is resolved (I can't see how) SPF should be discouraged.