You can export notebook inputs to (hopefully mostly hyperkitty-compatible)
Markdown with jupytext:

```bash
conda install -c jupytext jupyterlab
jupyter-lab
# Pair with Markdown, light, percent, hydrogen
# Click refresh in the file pane to see the jupytext-linked copy
```

Pandoc can convert the html version of a notebook (with output; i.e. from
nbconvert) to e.g. 'gfm' GitHub-flavored Markdown

On Wed, Feb 3, 2021, 12:34 kirby urner <kirby.ur...@gmail.com> wrote:

>
>
> On Tue, Feb 2, 2021 at 11:28 AM André Roberge <andre.robe...@gmail.com>
> wrote:
>
>>
>>
>> On Tue, Feb 2, 2021 at 2:37 PM kirby urner <kirby.ur...@gmail.com> wrote:
>>
>>> On Tue, Feb 2, 2021 at 5:48 AM André Roberge <andre.robe...@gmail.com>
>>> wrote:
>>>
>>>> Hello everyone,
>>>>
>>>> For about 20 months now, I have been working on a Python package
>>>> intended to help beginners figure out what went wrong when their program
>>>> generates a traceback. This package is called Friendly-traceback; you can
>>>> find the fairly extensive documentation at
>>>> https://aroberge.github.io/friendly-traceback-docs/docs/html/
>>>>
>>>>
>>> Hi André --
>>>
>>> I'm reading your docs now.
>>>
>>> When I start into Python with beginners, I'll typically start with:
>>>
>>> >>> dir( )  # how will HyperKitty mangle this?
>>>
>>
> Hah hah, look what HyperKitty did:
>
>
> https://mail.python.org/archives/list/edu-sig@python.org/message/C6CF53KBJNLM7CF6QT35VBCCTWBTDNBU/
>
> I'd say HyperKitty is not very friendly to the indigenous Python we used
> to share here.
>
>
>>>
>>
>>> showing what's in the namespace, the names Python
>>> knows when "in" the namespace.
>>>
>>> But then the question right away arises:  where are
>>> print, hex, str, dict... all these names Python knows?
>>>
>>> Answer (as we all know):  __builtins__
>>>
>>> So then I do a dir(__builtins__)
>>>
>>
>> I think you mean simply  __builtins__, without the dir().  I use "pretty"
>> from Rich (
>> https://rich.readthedocs.io/en/latest/introduction.html?highlight=pretty#python-in-the-repl)
>> so that dicts are nicely formatted.
>>
>>
> Like in this screenshot:
>
>
> https://www.flickr.com/photos/kirbyurner/50905387656/in/album-72157660337424600/
>
> You have to feed __builtins__ (not quoted) to dir( ) to dump its contents
> as
> a list of strings.  That solves the mystery of where quit, range, map,
> complex,
> abs and so on and on are coming from.  Python knows these names and yet
> dir( ) -- with no argument -- does not reveal them to be present in the
> top-level
> namespace (__main__). I describe __builtins__ as like a "utility belt" of
> tools
> around your waist, so close at hand that it's unnecessary to import them.
>
> We're expanding out in concentric shells, taking in more and more of
> what constitutes "Python".  I introduce my Five Dimensions (or Layers):
>
> 0.  Core syntax: keywords and punctuation (including indentation)
> 1.  __builtins__
> 2.  __ribs__ i.e. special names, magic methods, the scaffolding
> 3.  Standard Library (batteries included)
> 4.  3rd Party ecosystem (from small like friendly-traceback, and rich
> all the way to giant frameworks like SQLAlchemy and Twisted -- to
> name some of the early big projects  And of course your own RUR-PLE).
>
> I tell students the optimum learning curve is not about mastering all
> of level 0, then moving to level 1 and so on (plodding, methodical,
> unproductive).  No, it's about spiraling, and going a little deeper
> into each level as we progress.  So in the very first lesson I'm likely
> to:
>
> (a) talk about the five levels and
> (b) dump the contents of __builtins__
> (c) remark on the "funny look" of __rib__-syntax.
>
> I'm giving them a sense of the big picture, and how much there is to
> know about (e.g. "Python includes about fifty special names but you
> will use far fewer than that on a regular basis").
>
> In dumping the contents of builtins, I'm getting my segue to Exceptions
> (so much of what's in there are "flags" that might get raised).
>
> I speak very metaphorically e.g. how when you're new to an environment
> you're always bumping up against limits, like a baby.  Or you're new to a
> certain sport and don't really know the rules yet.  What's a foul?  Can I
> pick up the ball and just run with it?  That depends on the namespace,
> and the rules. Exceptions are about doing something other than crashing
> when a rule is broken.
>
> The environment pushes back, telling you what went wrong.  Python
> creates such an environment for us the moment we enter the REPL.
> We're free to play in it, to explore, and understanding the Exceptions
> are there for our convenience and instruction makes them not scary.
> Noobs are conscientiously afraid of "breaking things" and a teacher's
> role includes showing safe ways to explore and gain fluency.
>
> From Exceptions, it's but a short step to try except syntax (level 0) and
> Tracebacks (debugger, diagnostics, IDE features, your enhancements
> -- level 4).
>
> Kirby
>
> _______________________________________________
> Edu-sig mailing list -- edu-sig@python.org
> To unsubscribe send an email to edu-sig-le...@python.org
> https://mail.python.org/mailman3/lists/edu-sig.python.org/
> Member address: wes.tur...@gmail.com
>
_______________________________________________
Edu-sig mailing list -- edu-sig@python.org
To unsubscribe send an email to edu-sig-le...@python.org
https://mail.python.org/mailman3/lists/edu-sig.python.org/
Member address: arch...@mail-archive.com

Reply via email to