A Course on Algebraic Coding Theory