In this article we describe the extent to which object-oriented programming (OOP) can be done in Visual Basic. We state the features generally considered necessary for a language to be object-oriented (OO) and give examples of how Visual Basic supports (or does not support) them. To try out these features, we started with a video game written in the pure OO language Eiffel and rewrote it in Visual Basic. The original design employed more than 70 new classes (i.e., classes not taken directly from a library), and made extensive use of inheritance, both single and multiple. Because inheritance is a feature that Visual Basic almost completely lacks, we were particularly interested in seeing how that part of the design would translate to the new language. For the most part, we were able to find straightforward means for converting the inheritance to client/supplier relationships. We discuss the tradeoffs involved in making this conversion.