In this paper, we endeavor for an extensive study of [[n,n-3,2]] codes of odd length. We begin with the computation of the linear programming bound on the dimension of distance 2 codes of odd length and show that the [[n,n-3,2]] codes are optimal. We next find their generator matrix, stabilizer structure and also show that these codes are impure or degenerate except the [[3,0,2]] code which is pure by convention. In degenerate codes, distinct errors do not necessarily take the code space to orthogonal space. So sometimes they can correct more errors than that they can identify and has the capacity to store more information than a nondegenerate code. The present paper also establishes the existence of ((2m+1,2^(2m-2),2)) codes from the ((2m,2^(2m2),2)) codes for all m>1. We have also constructed another class of distance 2 codes which are constructed using distance 3 codes.