In my personal opinion, I think that a good sequence for learning is:
[1] Learn how to do things with opamps and logic chips. [2] Learn how to make small programs doing simple tasks on a few different microcontrollers (PIC. ARM, 8051..) [3] Learn C on the same chips, then C/C++ with a RTOS. [4] Learn FORTH and start making mini-languages customized for the job at hand. [5] Repeat steps 1-4 using a modern PC and OS as the target.Someone who learns all the above would be very much in demand, and would often run rings around the "all I have is a hammer, so I will treat everything like a nail" crowd.