I'm still kind of mad about it.
This was years ago. I was interviewing for my first real programming job. And I REALLY wanted it. I was lifting heavy stuff all day in a warehouse, then I'd drag myself home... plop in the chair, turn on my computer... and code until I couldn't keep my eyes open.
Then wake up... repeat... That was my life.
And I *desperately* wanted out.
I had a shot: a friend of a friend got me a phone screen with their engineer, coding web apps in PHP. I had been teaching myself the language, and felt ready.
There were two problems:
The engineer didn't know ANYTHING.
And worse: he was COMPLETELY CONFIDENT that he was an expert.
Over and over during the phone call, he would ask me some question about PHP. And some of them, I'm sure I got wrong.
That didn't bother me.
What did was when I answered correctly, and he explained I was wrong. He did this a LOT. I was being interviewed by a guy who didn't know PHP, but was completely convinced he did.
I second-guessed myself, and after the interview, wrote some code to test everything - maybe he was correct each time? No, he wasn't.
Of course, I didn't get the job. Maybe he felt I didn't know the language well enough. And probably other good reasons too. (Like having no development job experience yet!)
I was upset at the time. But what if I did get the job? Working for someone like that, I'm now glad I didn't get it. I eventually got a different one, and it worked out really great.
It all just reminds me of how important it is to test our knowledge, or what we *think* we know, to ensure it's legit.
Something to think about, when you're coding today.