This paper discusses optimal binary codes and pure binary quantum codes created using Steane construction. First, a local search algorithm for a special subclass of quasi-cyclic codes is proposed, then five binary quasi-cyclic codes are built. Second, three classical construction methods are generalized for new codes from old such that they are suitable for constructing binary self-orthogonal codes, and 62 binary codes and six subcode chains of obtained self-orthogonal codes are designed. Third, six pure binary quantum codes are constructed from the code pairs obtained through Steane construction. There are 66 good binary codes that include 12 optimal linear codes, 45 known optimal linear codes, and nine known optimal self-orthogonal codes. The six pure binary quantum codes all achieve the performance of their additive counterparts constructed by quaternary construction and thus are known optimal codes.