Ok FillYourBrain, I am trying to fill my brain. I don't see how assembly isn't trivial because there isn't much abstraction to it...do you think you could dumb down to me (seriously) and explain it in human terms? I thought something abstract was just an idea, for example shape could be a base class because it is an abstract idea. Rectangle and square on the other hand are not abstract, because they are more specific and you can create instances of them.