I am familiar(ish) with ipython. I think what Shiny seems to offer, that ipython doesn't, is a gui like interface to the data (whereas ipython provides the ability to interact directly with the code). I think shiny is a great idea when presenting to non-programmer types (whereas ipython seems to be designed as a presentation tool for more technical audiences).
Yes, that makes sense. I agree about the roles each plays and their differences.