You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
One is young or old depending on how one confronts change.
The old feels frustration. The young accepts change and takes profit of it.
Young is one who find home in the foreign. Those who grasp their old sweet routine for comfort, those who can’t accept disorientation are from another era.
Trace in a hostile environment (snippet to use for printf debugging)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Pragma disabling warning 4668 are not honored in time by the MSVC pre-processor
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Good results in software engineering depend on robust decisions over the trade-offs involved in solving problems with computing devices. This can only be done through a good understanding of the problem being presented, and the context/platform that will support its resolution. Technical choices should not be elevated above that.
Note that both the problem and the platform’s definition should not only consist of inanimate objects. Both always incorporate human elements that must be understood.
By nature, engineering therefore involves learning, knowledge formation, skill development and acquisition.
Sophistication in programming languages has diminishing returns.
I treat programming language features like I treat drugs. They come with side-effects, which I want to be aware off before even thinking of putting them into use. And if in doubt, I’d rather not use them.
For an alternative take, legions of programmers write online about the features they want to have in their language. Is it based on actual experience rather than wishful thinking? Is it based on their own introspection of what’s producing defects or harming progress?
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
The IOKit framework is Apple’s base framework to interact with devices.
This is your go to when for instance working with USB devices.
There is a way in IOKit to register notifications to discover devices
as they are plugged by our users. The API seems easy enough (see IOKitLib
header)
However I was puzzled for quite long why my notifications were not processed.
It turns out you have to process the iterator immediately after calling
IOServiceAddMatchingNotification, otherwise notifications won’t be