We motivate the study of codes for constrained communication systems. Constrained codes are useful for applications such as power line communications, low cost authentication systems, and joint energy and information transfer. We analyze various subblock code constraints, in which each codeword is partitioned into smaller subblocks and each subblock is constrained in a particular manner. In particular, we study optimal code sizes and asymptotic rates of these subblock constrained codes. We will also say something about channel capacity, error exponents, and practical constructions for these subblock constrained codes.