We did a patent awhile back, tried to do it ourselves and end up having a patent lawyer deal with it. Too many different rules for us dealing with software patents, and if your patent search comes up with something else close, you have to prove differences in detail. I was not smart enough. We screwed around for 2 months, the patent lawyer had it ready to go in two weeks, still took 6 months to get it back.