The first part of my answer is why focus on "thinking like a programmer"? I think the reason why we all became programmers is because we love to build things and solve problems.
So if we look at it from that angle what will help us do this? The first key is understanding any computer language is really made up of only three things: sequence, selection, and iteration. Sequence is the idea that our code instructions execute in order they are written in code. Selection are the handy if statements we use everywhere. Iteration is loops. These are our building blocks.
Our tools to put it all together? One I love is TDD. I think this way of working helps you because you focus on little pieces at a time. One important lesson any dev needs to learn when starting out, don't over engineer things! Also the idea is we try to come up with the simplest way of solving the problem first then try to optimize when we see bottle necks. The other tools are learning design patterns enough to know to at least look at them when you see certain problems. Anther good idea is look at some of the classic computer science agolthrims. And also the books everyone is suggesting on writing code that is easy to understand and maintain over the long term.
We're a place where coders share, stay up-to-date and grow their careers.
We strive for transparency and don't collect excess data.