by facelessuser on Sat Nov 24, 2012 4:37 am
I never formally learned C; I had one intro to C class (learned about very basic programming things like for loops etc.; basically stuff I already knew) the rest I have had to teach myself on the fly because I had to program robots and embedded projects trying to get my EE degree. As engineers, it is expected we can just learn it.
I remember learning assembly. The professor took about week and gave us a crash course and a very large book on assembly programming for the Motorola HCS12 processor and that was it. Next thing I knew, I was up to my eyeballs in assembly trying to remember if I pulled everything off the stack or not...ugghh. It was the same way with Verilog code for FPGAs and such.
After you start picking up new languages, you realize they are all basically the same, it is just a matter of learning the syntax to express the logic. The trickiest part with C is having to deal with the memory stuff and dealing with data structures like link lists and such...stuff you usually don't have to do in high level languages because they garbage collect for you, they allocate the memory for you, they provide useful structures for you to use. That is what makes scripting fun, not getting bogged down by all of the memory management crap.