Robots vs. Programmers 29 August 2023 ai programming comments Nine Steps of Learning by Refactoring 10 April 2018 programming comments D29, a prototype 29 December 2013 programming comments