May I suggest an answer. I started in computer engineering and have done embedded systems programming, in assembler though. Later I switched to software engineering and got a CS degree. In my experience there is generally very little proper CS in actual computer engineering education. Computer engineering is well founded theoretically and well taught generally; except when it comes to programming.<p>(Well, thinking about it, where do you find proper programming education?!)<p>(By the way I've never programmed in C - got 7/10 ?!)