When coding for Arduino you may wish to run certain code once every N milliseconds. For a very simple program like blinking a LED with a 2 seconds interval using the delay() function will be sufficient. But what about multiple bits of code where each require a different interval? Using delay() they will slow each other down, significantly disrupting your program. The solution is the meassure the last time the code parts were executed.