Monday, October 24, 2011

Bits and bytes are hard

  Today has been about one thing at work. Fixing a single customer issue for a very important customer to us. Some would say our most important customer. It has taken me and the other most senior engineer here all day to find the issue. We pored over Megs of core file data and thousands of lines of code. The final issue? A single line of code that used the wrong length value that caused us to write a single byte too many that caused some memory corruption that then caused a later crash.

  All this since someone didn't understand how to manipulate single bits and bytes. When you get down to it that is all that computers do, they fiddle with single 1s or 0s. Most programming is so abstracted though a lot of programmers forget this. However in my line of work, when you are touching the exact bits and bytes that get written to the literal piece of wire, you need to get everything exactly right in the right place and the right order.

  This issue was a fundamental failure to understand that. They assumed that the length that was passed to them was the correct length. They didn't use the calculated length of something that was right there for them to use. This low level stuff seems to be something that people fail to get nowadays. It is barely taught to new computer type peeps and getting it right is still vitally important.

  I suppose the one good thing about this is that I'll always have good job security out of this stuff. Now I just need to use this as leverage with my bosses for more pay and time off :) .

No comments:

Post a Comment