This article offers an updated version of the PIC programmer described in the Elektor book “Programming the Finite State Machine”. This version has a more stable rate of data transfer and has a more user friendly graphic user interface.

The full article is attached as a PDF file along with the software.
The Elektor book refered to can be found here.  -> https://www.elektor.com/programming-the-finite-state-machine