I am not suggesting that the core dev team to do everything user asks for, <br>but to illustrate how to balance needs of advanced vs novice users.<br>To me, ipynb is a killer app for learning/teaching/researching users.<br>
If one can lower the entry-barrier, it will encourage user&#39;s adoption.<br><br><div class="gmail_quote">On Thu, Dec 6, 2012 at 11:05 AM, Thomas Kluyver <span dir="ltr">&lt;<a href="mailto:takowl@gmail.com" target="_blank">takowl@gmail.com</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="gmail_extra"><div class="im"><div class="gmail_quote">On 6 December 2012 15:28, W Gong <span dir="ltr">&lt;<a href="mailto:wen.g.gong@gmail.com" target="_blank">wen.g.gong@gmail.com</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

<div>ipynb could be made more user-friendly, if new buttons are added to the tool bar,<br>e.g. to add an youtube link, the button prompts for url or the code, then auto insert a cell:<br><br><div style="margin-left:40px;color:rgb(255,0,0)">



from IPython.display import YouTubeVideo<br>YouTubeVideo(&#39;MTx6ha6fRwo&#39;)</div></div></blockquote></div><br></div>I think the challenge is that there is an enormous wealth of things you can do in the notebook - far more than we can put into the toolbar, and it&#39;s pretty heavy even for a hierarchical menu (see the magics menu in the Qt console). Is embedding Youtube videos so important to so many users that it merits a valuable toolbar button?<br>


<br>What&#39;s interesting is how we integrate the notebook as a way to edit and run code, with the notebook as a rich text presentation system. Embedding a video needn&#39;t go through a Python cell, but at present that&#39;s simpler than putting the relevant HTML into a Markdown cell. From the other direction, we&#39;re now talking about ways to embed variable references into Markdown cells, and definining a syntax to do that. I get the feeling we&#39;re missing a coherent approach here.<br>


<br>To spark discussion, maybe what we need is something like a &#39;template cell&#39;, that&#39;s in between a client-side Markdown cell and a code cell:<br>- Edit syntax something like Jinja2 templates, with fields that you can fill in, loops, if clauses, and so on. We&#39;re thinking of using Jinja2 anyway, so let&#39;s not invent our own templating language.<br>


- When you execute it (shift-enter), it is sent to the kernel to render the template.<br>- Python objects used in fields are rendered according to our display protocol, i.e. _repr_html_() will be preferred.<br>- In the interface, the rendered output replaces the editor (like a Markdown cell) until you double-click to edit it again.<br>


<br>Thoughts?<br><br>Thanks,<br>Thomas<br></div>
<br>_______________________________________________<br>
IPython-dev mailing list<br>
<a href="mailto:IPython-dev@scipy.org">IPython-dev@scipy.org</a><br>
<a href="http://mail.scipy.org/mailman/listinfo/ipython-dev" target="_blank">http://mail.scipy.org/mailman/listinfo/ipython-dev</a><br>
<br></blockquote></div><br><br clear="all"><br>-- <br><div><br></div><div>Thanks,</div><div><br></div>- Wen<br><br><br><br><br>