A man who knows nothing can only acquire knowledge.
It’s a scary place to be in. One of the great many things you learn in software development that can be applied to real life. It’s a scary place when you’re unsure what the hell you’re supposed to be doing to achieve your goal, and everything you try ends up sort of working… but ultimately falling apart in all the places where it really shouldn’t. You stare at your code (or life choices) and sigh as you admit to yourself you have absolutely no idea how to problem-solve your way around this one. You admit defeat.
Luckily you can’t go much lower than rock-bottom. You can’t have any less of an understanding of the problem you’re tackling, so the only way is forward. Through time and dedication, or a couple of complex web searches. And from there, you learn. You copy methods, note advice, take it all in. Doesn’t matter if it’s only vaguely or tangentially related, you pay special attention to it. It may be important further down the line.
And then suddenly it all clicks into place. A little bit of this, a couple of that, and you’ve created a solution tailored to your specific problem. And as it turns out, it’s stupidly similar to your initial solution, where you only forgot about one tiny detail.
Such are the joys of software development. And life, too.