Difference between Testing and Programming