Microcontrollers & Physical Computing
This is a great time for hobbyist electronics. When I first became aware of electronic components a one amp silicon diode cost more then a dollar. Today you can get more then 30 of them for that price. All of the hardware and associated equipment has become much cheaper and widely avaliable. This trend is also true for the software. The barriers for entry into some very sophisticated technologies have fallen to the point that they are almost completly gone. A platform named Arduino is one of the leaders in this area. A package with everything needed to get started is less then $50.
Microcontrollers
The brains of the outfit are small self-contained computers know as microcontrollers. In most cases the only added components needed are the ones needed to connect to the external systems the processor will be controlling or getting information from. The chips have quite a lot of support circuitry bulit in. They are cheap and very easy to work with.
Physical Computing
The technology has progressed to the point where it can be understood by almost anyone. Physical Computing is a name being used for programming these new devices. The purpose of the name is to encourge non-engineers. The combination of powerful, self-contained, processors and easy to use development systems have made it easy to get useful thing done. The programming is now the easy part. Most of a project is now spent working out what you want to do instead of how you need to get it done.
There are a many places to start learning how Physical Computing works and what can be done using the technology. The MiniPOV is a very inexpensive kit that uses a serial or parallel port for programming. The Arduino is just a little more expensive. It easier to use and needs a USB port for programming. Processing is a user-friendly programming environment that is also a good starting point. This does not involve any hardware, but it can teach some of the fundamentals of programming