Edit:
I tried to make a programmer for a 16F628. I tried three or four different types. Doing just as the instructions/tutorials said. None of them worked. I ended up buying one. I think that is the best thing to do, for starters.
I'd strongly suggest getting a PICKit 2 or PICKit 3 programmer for around $30.
The DIY ones have caused many people to be "turned off" microcontrollers due to the difficulty in programming them or things not working right. The PICKit programmers plug into USB and simply work without issues. They also provide a debugging ability which is sometimes handy.
Most do it yourself programmers are based on RS232 communication. Most modern PC do not have RS232 port onboard. If you have purchase a USB to RS232 converter and a serial cable. The cost of this may be about the same as the cheap PICKIT 2. And since your do it yourself approach most probably will fail. You will end up purchasing a pickit anyway.