You should probably look to others for specifics in your case.
But what little advice i can give is try to turn it all into a project. Do a quick read up on all the topics, then combine them into something tangible and of worth to you.
Since I'm not a web guy, i'm probably talking half out of my arse here, so feel free to dismiss. Think up a rails project, and try implementing the whole thing via a TDD pattern. Test, produce a really basic first shot, re-factor, repeat, etc. And what better place to learn about or implement some algorithm basics than while profiling/refactoring code to make the whole thing as fast as possible?! I learnt almost nothing from algorithm books or lectures, what really made it all sink in was when I had problems that ran slowly, and I had to make them better. Then suddenly the topic was relevant and I understood. And of course, once you optimize everything, you tend to quickly run into the hard lessons of good design, because nothing makes things fall apart and get complex quickly more than optimizing everything, except maybe trying to optimize everything with bad design.
Will you screw up? Sure! You'll be bitter and twisted, but the scars will be of experience. That's what makes you learn. The screw ups are what you remember, and when you hit a problem of your own making, suddenly you respect the solutions presented in the text-book a lot more, even if you don't agree with them or feel they're complex or constraining.
/editorial.