We invited him to come to Redmond to chat with Chris Heilmann about his upcoming book and the perils of teaching people programming. We also touched issues of inclusiveness and openness in technology and – of course – machine learning and how it impacts our market. What was meant to be a focused interview turned out to be much more fun and meandering into the depths of code nerddom. At one moment, we managed to break Rob’s brain, which is hard to do:
If you prefer to have an audio version, you can download it here (MP3, 31MB)
Here are the questions we covered:
- You just published a book called the Imposter’s Handbook. What drove you to do that?
- As someone who has been professionally busy in this market and in the same boat as you (no degree, no official CS education) I found that with the growth of our market, we got more and more demands for this knowledge in job interviews, job description and so forth. Do you think this is a sign of our products being more complex, or is it a crude strategy to filter out unsuitable applicants?
- It seems to me there is a massive discrepancy in what we learn in school and university and what we do in our day-to-day lives as developers. Is this something we should work on? If so, how could we? Or is the idea of academia to give you a 10,000-foot perspective and the minutiae of the job should be taught when learning on the job?
- One thing that always kept me away from algorithms and patters is that they seem to be not human intuitive. When we look for example at Bret Victor’s “Learnable Programming” course he also laments that programming education lacks a human touch and we should allow people to build more visual things upfront to whet their appetite. Do you see this as a possible way to bridge that gap?
- Seeing that machine learning and artificial intelligence is taking over every other aspect of the job market, wouldn’t it be natural that the very defined and organised parts of programming will sooner or later be done by programs themselves? Even right now a lot of boilerplate code is created by IDEs for us. Are we learning things that we’re already replacing?
- One big worry of people is that they can’t keep up with the pace of our market. By the time a book is published, many parts of it are already outdated. Online documentation and examples are faster, but you can’t always trust their quality as the “wisdom of masses” seems to dilute into a “I want the most upvotes”. What is your advice to people who are worried about this?
- The book title is a humourous play on the Imposter Syndrome. However, this is a very big part of our market and can be something that really cripples people’s careers and well-being. What advice do you have for us who feel that we’re never good enough? How can we incorporate praise and be happy with positive feedback when a lot of the things we’re getting praised for aren’t ours but just some libraries we put together? Is there such a thing as damaging praise?