Different Programming Techniques