Object Oriented Programming in 10 Steps

1. Person, car, animal, space ship, customer, account, computer, plane, student, program, vacation, book, TV...these are all objects. In object oriented programming languages, you can describe these objects using syntax (grammar) of a language.
2. Object Oriented (OO) languages have advantage over procedural languages in the area of code decouplment, maintenance and enhancements, assuming people responsible for developing systems using Object Oriented languages, do understands 3 foundation principals of Object Oriented programming.
3. Principle number one: Object Inheritance: As people inherit genetic traits of their predecessors, Objects in OO languages can inherit code from their parent objects without code duplication. Student, can be a child Object of Person, inheriting all the Object capabilities of it's parent Object Person (come'on, not really that confusing!). Producing a flexible and well defined Object Oriented model is half science and half art.
4. Principle number two: Object Encapsulation: Objects, like people, must protect things that are not public in nature. You should not be sharing bank account access or recipe of that magic meat souse of yours. Objects, as well, must hide their private stuff from other objects as well. OO languages allow to do just that. Why is it important? Code control and well defined functional placement within a system.

5. Principle number three: Polymorphism: An ability of an object to be of different type during program execution. Relates directly back to Object Inheritance. Polymorthism allows for generic programmatic algorithms. Say what?! You can develop code which will allow manipulation of all objects with common "genealogical" tree - I can write one algorithm for processing all common characteristics of Person and Student. Really, super cool feature of OO language.
6. Go back to item one and re-read from the beginning.
7. Object Oriented languages tend to be slower than procedural languages as their complex syntax results in a more complex interpretation into underlying machine code. 0s and 1s.
8. Recent enhancements to syntax rules of some OO languages have resulted in syntax which can defy the fundamental Object Oriented principles listed above.
9. Commercial application of OO languages is not always pretty...in most cases it is horrible.
10. Most popular OO languages and technologies around them are owned by big technological corporations.

Congratulations, you are now an OO languages Subject Matter Expert...sort of.