ARTIFICIAL PROGRAMMING INSTRUMENTS : A DETAILED GUIDE