A few amazing shiny brand new things you can try ...
Class attributes definition order
PEP 520 — Preserving Class Attribute Definition Order. It defines a new special attribute of class called __definition_order__ you can used to avoid awful definition counters on descriptors (that a looot of frameworks are using, for example django in forms and orm).
PEP 487 — Simpler customisation of class creation (still draft at the time of writing) is another "awful hack killer" that allows a class to tell its descriptor attributes about their name, avoiding common but stupid iterations over type attributes to set the name afterwards. This also removes the restriction of the impossibility to path the type using those mechanics after the metaclass being instanciated (ever tried to add a field to a django model after the class definition?).
How many of you have ever heard of... No just kidding.
But some lightning talk presented a few novelties around Jupyter:
- Jupyter Lab, the next major version, got an amazing interface revamp, that includes tabs, split panes and fully functional terminals. You should give it a try, it's amazing
- Try to !pip install something in a notebook.
- Amazing extensions like kernel gateways, dashboards ...