Do you have any idea how to operate a robot? If you're reading this blog, odds are that you in fact might. But that makes you a total weirdo, because most people have no idea how to operate a robot. And why should they? If roboticists do their job right, the idea is, no end user should have to learn how to program or how to use a teaching pendant or game controller or whatever. It should all be simple and intuitive and user friendly.
A common approach has been to let users drag robots around to show them a task, which the robot can then remember and execute autonomously. And there's nothing wrong with that, except that it requires the robot to be human safe while you're doing it, and it's harder to jump into the middle of a task to tweak something. Also, if the task requires adaptation (like, trying to grab a randomly moving object), anything pre-programmed gets thrown out the window, and teleoperation is the only way to go.
RoboPuppet is a way of remotely controlling a robot that makes so much sense, and is so obviously a good idea, that we're honestly not sure why it's taken this long to implement. It's simply an interface where you 3D print a little tiny version of the robot you want to control, add some encoders, and then use the model to puppet the full-size version, which just mimics whatever it is you do. It's adaptable, it's cheap, and it lets even inexperienced users do some remarkable things.