I guess I see BWoD as the equivalent of learning the alphabet if one wants to read and write.
You pointed out in reply #1 that the two examples are equivalent. A beginner could use either version to learn the same concept of triggering an event after a certain amount of time, rather than waiting/delaying.
You have simply taken preference for one high level API over the other. And neither show any fundamentals of micro-controllers as they implement the low level functionality internally.
And both causes a waste of cycles if millis() can be entirely removed and the hardware timer callback used directly, as every millisecond, or whatever true resolution millis() has, an interrupt is run.
But I guess you see it as fine to "ignore the limitations" when the benefit of an easy to use high level API makes your code simpler to understand... This library is providing the same benefits you are endorsing with the Arduino API, but at the same time are arguing against.
Don't get me wrong, a trade off for efficiency vs ease of use is fine when it is within your programs constraints, however, here you are comparing an
orange with an
orange.