Well we have hit the wavefront algorithm assignment in my curriculum, which ultimately will be used to navigate our little VEX self driving vehicles. And for probably 90% of my students in CS Essentials, welcome to what my PLTW CS colleagues on the PLTW forums have termed "code shock" with students.
I think one of the hardest things to manage in designing a curriculum is how to dial the difficulty up at a proper pace for the "center mass" of the class skill level. And in this new curriculum from PLTW this particular unit starts out manageable, but suddenly shoots up rapidly, thus the "code shock" mentioned above. I also have the challenge of having a lot of kids in class who simply don't want to interact in class when, for instance, I'm working through pseudocode on the board.
The good thing for me is it has really illustrated how much more I need to emphasize getting the students off the computers, and crunching out the problem in flow charts or pseudocode. Many of them just want to do everything while in the code editor, and I keep telling them (and trying to show them as well) to solve the problem first, THEN translate your solution into code, and then get into the debugging process.
For my audience of few to several out there, I welcome any insight or input you might have!