Here are some useful articles on electronics and microcontrollers.
Digital I/O expansion methods.
How to use the TCS230 (/TCS3200) Color detector chip and easily add it to any of your projects.
How to use Arduino millis() for delays but still make the processor do work - Stop using delay()
The Essential Guide to the 74HC595; What it is and how you can easily use one in any of your projects.
Which pic programmer do you need? This page discusses PIC programmers and gives some essential information on choosing or building your own programmer.
learn how to use Arduino pulseIn and pulseInLong to get the most accurate pulse measurement on an Arduino.
This MCP23017 Interrupt tutorial shows you how to connect interrupt outputs from several MCP23017s to a single microcontroller interrupt pin.