I've recently been working on using an Arduino to program a PIC 16F627A chip. Sorrane's project
should be able to do this, but I couldn't get it working for whatever reason (I suspect slightly different timings in the programming spec due to me using the A version of the chip), so I wrote this instead (based on Sorrane's code).
The basis is an Arduino sketch providing a serial interface for programming the chip, with a python script to program .asm/.hex files onto the chip. It should work out of the box on linux, but will probably need a little tweaking to get the python serial port stuff working with Windows/OSX.
The circuit required is
See the GitHub
page for the sketch (I couldn't post it directly here without exceeding the character limit) and python script and more in-depth instructions. Alternatively, both files are attached with a readme.
Hopefully this is of some help to someone