Programmer enthusiast, practitioner and theorist