I come from the C++ world, where it is natural that types are checked at compile time. And where you would use classes to implement the 'sophisticated types' the author suggested.
So in the ears of a C++ programmer the article says: design your classes well.
OOP, where it means anything at all, involves runtime selection of operations according to types organized in hierarchies.
TFA is about compile-time type compatibility enforcement.