Actually, there is quite a context here. IOCP had been a headache for quite a while for Unix programmers. Two examples:
- libevent 2.0 was created exactly to support IOCP https://blog.torproject.org/blog/some-notes-progress-iocp-an...
- apache 2.0 again, was created to support windows threading model and IOCP
- this particular article was in the context of libev not supporting IOCP, which was needed for decent node.js performance on windows: https://nodejs.org/codeconf.pdf
(correct me if I'm wrong!)