Self programming practises