Jamie's Engineering Notebook (archive)

This blog archives Jamie Hunter's personal thoughts on engineering.

Jamie's Engineering Notebook (archive)

  • Is it data or is it code?

    One person's code is another person's data A number of people have heard this rant from me, especially during the development of bitlocker. This point was re-enforced with the announcement buffer overrun vulnerabilities in image processing code discovered...
  • Realistic Expectations

    This week there's been a lot of hype about vBootKit, which resulted in a general conversation about expectations of protection against root kits. Can you 100% protect against root kits? There a number of different ways a root kit can get installed...
  • When to rewrite?

    How many times have you considered rewriting a component? How many times have you done so? How many times was it the right decision? There are times that rewriting a component is the correct thing to do. I think more often than not though it is not...
  • What’s your Interface?

    When asked to design an API (Application Programming Interface), most people will approach this different to an internal interface between modules. Both should be treated in a similar manner to ensure that validation is more manageable, and also to ensure...
  • Engineering Direction

    The other day I was glancing at a book, and read a very thought-provoking statement, that was worded something like: It does not matter how far you have travelled down the wrong path. It does not make sense to keep going. How often, both metaphorically...