"Imagine a doctor who doesn’t actually like helping people with their health problems. Or an automotive engineer who actually thinks cars are stupid and boring."
Lots of doctors and automotive engineers just do their job and then come home, in fact most employees don't come home and continue to work on semi work related things on their spare time. My wife is a civil engineer and yet she doesn't build a 1/16 scale bridge in our basement when she comes home. Does that make her a bad civil engineer?
"If you aren’t passionate about programming I don’t think you should become a coder."
"... lifetime of constantly learning and working in your spare time ... to keep your skillset fresh and relevant."
I have asked a few programmers I know what makes a successful programmer and I have always gotten the answer of "passion". But what even is passion? Maybe they are super passionate about VB and FactoryFactoryObservers? Is that good passion? Okay our field changes a lot. but then shouldn't seek the ability and willingness to learn rather then some vague 'passion'. Employers should also set up our teams in such a way that learning is encouraged. (Work Time + Money for conferences/continuing education.)
Edit: Changed the first cognitive dissonance to include the term programming as that was my implied but not stated meaning.