Why is class based OO so popular instead of prototype based OO? Do they teach the latter in schools? Though Javascript is prototype based, most people use it mostly function
http://en.wikipedia.org/wiki/Prototype-based_programming#Criticism explains it quite well I think.