A professor promotes the idea of using Assembly as a first language. I believe it was the author of "art of assembly". I like that idea. I went to college for computer science and flunked out as I am too ADD for it.
Discussion
I have good experience teaching a toy assembly (really super-simple) for freshmen before starting the standard C 'intro to programming course'
they get the idea of memory addresses, read/write, registers, attribution, etc,
before I would get many students that would not understand:
1) why
x = x + 1
is not wrong ( they used to think x = x + 1 => x - x = 1 => 0 = 1 wrong! )
2) why those attributions are all the same:
int a;
a = '0'; a = 48; a = 0x30; a = 0b11000;
after the toy assembly course over a non-existing toy computer, they got these issues easily.
also teaching pointers was facilitated.