I can't recommend the Every Circuit app enough (http://everycircuit.com). It's an interactive, real time circuit simulator. I've been using it for the past couple of years to teach myself electronics. I'd read about how, for example, opamps worked, but it wasn't until I could play around with them and try them in virtual circuits that I really understood how to use them. Honestly, for learning, it the best resource I've come across.