It sounds like you lack confidence. Which is not a "bad" thing. It's a completely understandable state to be in. You could probably do well with having a buddy or partner who supports your projects and builds up your confidence.
Know that when undertaking anything ambitious, the feelings of uncertainty you are having are par for the course. It's only natural to question whether you are worthy of even attempting such a grand idea. And it's only natural to try and set a safety net for yourself with "best practices", but if you are aiming high enough, safety nets aren't gonna save you anyway...
At some point, you have to venture out on your own and do things that tutorials and textbooks don't cover. A lot of great software was written in shit languages with shit computers in shit conditions, just because that's what those people knew. All those "best practices" you mentioned are relatively new, but think of all the great stuff that people had already created yet had no idea those concepts even existed. At the end of the day, you have to learn to fight with what you have because you're the important piece of the puzzle not the tools.
But as I said before, it's a very natural feeling to have. Some of my favorite quotes on the topic are:
In large-scale strategy, people are always
under the impression that the enemy is strong,
and so tend to become cautious. But if you have
good soldiers, and if you understand the principles
of strategy, and if you know how to beat the enemy,
there is nothing to worry about.
- Miyamoto Musashi
There is no mechanical way to get the writing done,
no shortcut. The young writer would be a fool to
follow a theory. Teach yourself by your own
mistakes; people learn only by error.
- William Faulkner
The good artist believes that nobody is good enough
to give him advice. He has supreme vanity. No
matter how much he admires the old writer, he wants
to beat him.
- William Faulkner
Know that when undertaking anything ambitious, the feelings of uncertainty you are having are par for the course. It's only natural to question whether you are worthy of even attempting such a grand idea. And it's only natural to try and set a safety net for yourself with "best practices", but if you are aiming high enough, safety nets aren't gonna save you anyway...
At some point, you have to venture out on your own and do things that tutorials and textbooks don't cover. A lot of great software was written in shit languages with shit computers in shit conditions, just because that's what those people knew. All those "best practices" you mentioned are relatively new, but think of all the great stuff that people had already created yet had no idea those concepts even existed. At the end of the day, you have to learn to fight with what you have because you're the important piece of the puzzle not the tools.
But as I said before, it's a very natural feeling to have. Some of my favorite quotes on the topic are: