As the recording technology further matures, more complex coding algorithms for recording channels are challenging integrated circuit manufacturing technology limits. The implementation of recent major conceptual advances in coding theory, including iterative decoding, codes on graphs as well as constrained codes, has been limited mainly by the speed and recording density requirements of modern recording systems. This research is developing coding schemes for ultra-fast high-density recording systems that can lend themselves to very low complexity implementations. The focus of the research is the idea that good codes can be constructed without using random interleavers or random sparse parity check matrices. The constructions are based on combinatorial designs and finite geometries. Such codes have a simple and well-defined structure, which means lower decoder complexity. This approach also offers a large flexibility in choosing code parameters. The fundamental code construction issues addressed in this research include understanding a structure of good codes and tradeoffs among code length, rate and structure as well as matching a code to a partial response channel. The second class of codes studied in this research are constrained codes and graph constrained codes.