Assembly language yes, machine coding as in flipping switches on the front panel is probably going too far. I suppose you dont really need to know how a cpu works to be a journeyman programmer, but I think to be truly innovative you need to know what lies at the heart of it all. If you know instructions, registers, L1 and L2 cache then you can muse about interesting and innovative problems. How can you think about really fast algorithms if you dont know about cache latency? How can you think about distributed functionality in a robot, if you dont know that everything goes through a single pipe in a processor? (OK a small number of pipes.) I know some kids who parleyed their knowledge of the difference between the latency of instructions in cache and those in memory into a significant company.
Some friends and I are going to start an old programmers' home, like the old sailors homes. Obviously we should include you as a charter member.
I know some kids who parleyed their knowledge of the difference between the latency of instructions in cache and those in memory into a significant company.
Some friends and I are going to start an old programmers' home, like the old sailors homes. Obviously we should include you as a charter member.