One of the toughest steps for Algebra students to make is from the concrete to the abstract. In math language, this is often when we try to generalize a result - or to create a rule, which works for a general case rather than just for a specific case.
One example might be multiplication of numbers versus multiplication of variables. By the time they get to Algebra, students have a good conceptual understanding of 3 times 5, of 46 times 250, or even -32 * 25. But moving from these concrete examples to an abstract concept like x times y, or 5x+2 times x-5 is often very challenging.
One way to help students to make this leap is by implementing some kinaesthetic activities. These can help to bridge the gap from the specific to the general and can give students some "muscle memory" to help them remember how to make this leap. Examples that we have used this year include using algebra tiles to represent variables and numbers, or actually acting out with our bodies some function transformation.
We need to use all of our tools and ideas to assist students in climbing up the ladder of abstraction!