title: specialization and generalization in Object oriented design
body: <p>We are building a social networking website for students and teachers.
  and currently we are working on Accounts and permissions related stuff</p>
  
  <p>Should we make a two seperate classes for Student and teachers or a single class named Account and have a Account type property which can be a enum {student, teacher , admin}</p>