In my experience, most knowing actually comes from doing. That's how things stick. You'll already have learnt a lot from your projects, even if it doesn't feel like it.
With that in mind, if you want to learn algorithms (etc.), here are a couple of ideas:
Improve an existing project -- Look at an area of one of your projects and ask yourself "Is this the best way to do things?" Could, say, that array be a map? By Googling the question, you'll learn a lot.
Read actively -- Find a book on the subject that you're trying to learn. As you do so, think how it applies to your projects. This will help with the first point.
In my experience, most knowing actually comes from doing. That's how things stick. You'll already have learnt a lot from your projects, even if it doesn't feel like it.
With that in mind, if you want to learn algorithms (etc.), here are a couple of ideas:
Improve an existing project -- Look at an area of one of your projects and ask yourself "Is this the best way to do things?" Could, say, that array be a map? By Googling the question, you'll learn a lot.
Read actively -- Find a book on the subject that you're trying to learn. As you do so, think how it applies to your projects. This will help with the first point.
Being a Doer, you're already in a good place!
Thanks for the suggestions! I definitely want to invest in a good book, even if it starts from the beginning!