Learning Programming Languages Faster
mdmstudios.wordpress.com
mdmstudios.wordpress.com
Not to be nitpicky, since your overall point still stands, but I'd argue that it's better to use a mathematical abstraction (modulo) than an optimization that's dependent on the way the data is stored (bitwise operations), particularly when the compiler will probably optimize it away anyway.
When learning to program your first language, there's a lot of memorization involved as far as algorithms go. But if you can write an algorithm in 1 language, you can basically write it in any language.
Learning languages after the first is never about algorithms. It's about learning the features of the language and the easiest ways to do things. And sometimes the syntax, depending on the languages.
Learn by book: get the information you need organized in a sensible fashion by someone who's an expert on the subject.
Learn by taking a course from an expert: all the advantages of learning by book, plus you get answers to your questions that may not be covered in the text, quizzes to reinforce what you've learned, practice exercises, etc.
As for what I use to get to the point where I can write code? Code written by others, in snippet form, as an example, or part of a full app.
That's true if the book is any good--I've read far too many tech books with little semblance of editing or organization.