Thanks a lot for sharing your story it was very inspiring and I can relate to the reason why having a strong "why" is important. I missed the "why" part and also the continuous feeling of being an impostor even when you are experienced in the article they were very important, it just slipped from my mind. Thanks a lot for taking the time to write such a beautiful comment
having a strong "why" is important when you're in Stage 2. people are surprised to learn that i must've quit programming a dozen times, but i kept going back to it because i had strong motivations to try again; i had things i really wanted to build, but there were no off-the-shelf solutions nor did i have the money as a teenager to pay anyone to build anything for me anyway. it took time to get a proper foothold where i could really build things, just like learning any spoken language it's pretty rocky up front but you progress more consistently once you get the foundation down. you stack experiences where something was really hard but you persevered and figured it out, so eventually you approach new problems remembering it might not happen overnight and it might be a little painful at times, but you can do it.
even as a senior developer with years and years of experience at this point, i still often feel like i don't belong, so i tell young developers that the only real differences between them and i are that i've been around enough to know nearly everybody in the room feels like an imposter at times too (certainly those worth working with), and i've merely had thousand times more failures to know a better starting point on the next attempt. you'll never stop reading documentation, reading blogs like this one, learning new languages and techniques, etc. - you just get to a stage where you can laugh at how much more epic your failures have been.