This contribution gives an introduction to algebraic coding theory over rings. We will start with a historical sketch and then present basics on rings and modules. Particular attention will be paid to weight functions on these, before some foundational results of ring-linear coding will be discussed. Among these we will deal with code equivalence, and with MacWilliams’ identities about the relation between weight enumerators. A further section is devoted to existence bounds and code optimality. An outlook will then be presented on the still unsolved problem of the construction of large families of ring-linear codes of high quality.