I'd made a similar mistakes with my first hire. Basically I hired the first guy who said he was awesome at php. Great I said. Do this, this and this. You can do some work from home, set your own hours at the office etc. He stopped coming into the office to work from home instead. I was so over capacity that i didn't check on his work for about 2 months (fool is me). When I finally did I discovered a horrible horrible mess. The app was completely useless and the 'awesome php dude' was completely incompetent. Lessons learned:
1. Do your own investigation into a potential hire to see if they are actually capable.
2. Watch new hires carefully
3. It costs more to fix hiring mistakes than to prevent them from happening.
Actually my second hire was pretty shit too. This time I made sure the dude was technically competent but he didn't fit the company culture I wanted. I don't like egos or office politics.
After those few bad mistakes my subsequent hires were great.