There is a lot of people that have been playing around with the 16F876A because it relatively simple and you can download the HTC pro ver. 9.83 C-compiler for the PICC 10/12/16 series of chips. free from MIcrochip.com that does a fine job compiling. The 16F886 replaces the 16F876A and is a very close replacement that costs about half as much, about $3.50 US. This chip has comparators, UART, 8-bit timers, 16-bit timer, two PWM outputs, 10-bit A2D with 5 A2D inputs. It is amazing what can be done with <400 bytes of RAM and 8K of program memory.
The 16F1786 is a very new chip that has a built-in 1% accurate 32MHz osc, more RAM and program space, and both 12 bit A2D and D2A converters, a built in op-amp, comparators, 8-bit timers, a 16-bit timer, PWM outputs, UART and plenty of pins for Iinput/Output. Problem with this very new chip is that you have to purchase a PRO version of the XC8 compiler for the compiler to work well with any chip and that means $!00's of bucks.
The are many projects downloadable from the web using the 16F876A, even some good ones from YouTube.
Because this chip is available in a DIP 28 or skinny 40pin DIP package it is very easy to just plug into a breadboard, add 5V power supply wires and a 20-MHz crystal a resistor on the reset pin and you have a working MCU. Cheap programmers are available on the net on ebay that use USB interface. I made my own programmer that is lightening fast using the parallel port of my Windows PC and that works from DOS. I wrote the software to program this chip and a few others. I downloaded the programming guide from Microchip for the 16F886, 16F887, 16F876A, 16F1786 chips and used that info to write my own program to program chips.
You can write your source code in DOS with Edit and then feed this to the compiler and you get a hex file out to program the MCU
Although I use DOS tools to compose, compile and debug some of my projects, there are Windows IDE's free from Microhip and other Windows IDE's as well as many USB programmers/debuggers that some might find cheap and easy to use.
For example, Mikro-C has a compiler/IDE, 2-K program code limitationwith the free version of their compiler and free IDE, works with their USB programmer.
I monitor the operation and debug my MCU projects by using just one pin of the MCU for serial transmission and use the antique but very usable DOS QBasic programmed to display var values that are sent to my PC for debugging and monitoring. A subroutine in my source code transmits every var. value I am interested in using the serial port at 19200 baud at a refresh interval I select.
There are plenty of USB dirt-cheap programmers for the PICC chips on ebay:
http://www.ebay.co.uk/sch/i.html?_sop=15&_sacat=0&_from=R40&_nkw=pic+programmer&LH_PrefLoc=2&_nkwusc=picc+programmer&_rdc=1
http://www.ebay.com/sch/i.html?_from=R40&_sacat=0&_nkw=pic+programmer&_nkwusc=picc+programmer&_rdc=1
The MCU's I like working with are available in 28 and 40 pin DIP packages, this means all I need is a solderless bread board to very quickly wire together some MCU idea. And this also means the same chips can be used over and over again.
The open source compilers are rather difficult to use, have limited repertoire of chips, difficult to debug your source code with.