I think I'm familiar with the approach. One of my favorites is The Elements Of Computing Systems (nand2tetris.org) which gives you the foundational knowledge you need for each chapter, and a spec on what you need to build, and gives you freedom to create it as you see fit.
Presumably, though, since you work in lab classes, you also have the "luxury" of being able to talk to your students, and detect if they're stuck... just by watching them. With docs, I don't have that.
When it comes to my docs, my current stance is that it's worse to create something that's too open-ended than too closed / dry. If it's too open-ended, readers may get stuck and leave and learn nothing, whereas if it's too closed / dry, my readers may be bored, but at least they'll learn something, or at least have something that they can use when they really need it.
Ultimately it really just boils down to a broken feedback loop. I think open-ended approaches are the best way to learn, but I need to know when and where my readers fail, and I need a channel of communication to be able to get them unstuck. So maybe I just need to build a MOOC community around the open-ended docs.