The paper studies symbol-by-symbol maximum a posteriori (MAP) decoding algorithms for non binary codes over an extension field GF(q). This decoding rule minimizes the probability of symbol error over a time-discrete memory less channel by employing the dual code. It is shown that these algorithms meet all requirements needed for iterative decoding as the output of the decoder can be split into three independent estimates: soft channel value, a priori term and extrinsic value. It represents a better form of coding for the Q-ary LDPC codes, which have been shown to outperform binary LDPC codes and Reed-Solomon codes on the AWGN channel and it gives us a new fast and reduced-complexity decoding algorithm. The complexity of this rule varies inversely with code rate, making the technique particularly attractive for high rate codes. Finally, we see that complexity is reduced by using the dual code, and the algorithm is accelerated by using the Fast Hadamard Transform (FHT). Examples are given for both single parity check (non iterative case) and LDPC (iterative case) non binary codes.