Different aspects of coding theory : American Mathematical Society short course,