diff --git a/pythonetc/README.md b/pythonetc/README.md
index d054958..0950b5e 100644
--- a/pythonetc/README.md
+++ b/pythonetc/README.md
@@ -28,9 +28,12 @@ Classes, metaclasses, and descriptors:
More:
+1. ./dunder.md
+1. ./magic.md
1. ./assert.md
1. ./snippets/final.md
1. ./snippets/getitem.md
+1. ./license.md
1. ./fnmatch.md
1. ./snippets/hamming.md
1. ./zen.md
diff --git a/pythonetc/dunder.md b/pythonetc/dunder.md
new file mode 100644
index 0000000..c690cc8
--- /dev/null
+++ b/pythonetc/dunder.md
@@ -0,0 +1 @@
+How do you read `__init__`? "underscore underscore init underscore underscore"? Just "init"? There is a convention to read it "dunder init". it was [proposed by Mark Jackson](https://lists.gt.net/python/python/124634#124634) in 2002 and [popularized by Ned Batchelder](https://nedbatchelder.com/blog/200605/dunder.html) in 2006.
diff --git a/pythonetc/license.md b/pythonetc/license.md
new file mode 100644
index 0000000..646afb2
--- /dev/null
+++ b/pythonetc/license.md
@@ -0,0 +1,31 @@
+Python provides 2 totally useless bu interesting built-in functions: `copyright` and `license`. `copyright` gives a short overview who owned Python in different moments of history:
+
+```python
+>>> copyright()
+Copyright (c) 2001-2020 Python Software Foundation.
+All Rights Reserved.
+
+Copyright (c) 2000 BeOpen.com.
+All Rights Reserved.
+
+Copyright (c) 1995-2001 Corporation for National Research Initiatives.
+All Rights Reserved.
+
+Copyright (c) 1991-1995 Stichting Mathematisch Centrum, Amsterdam.
+All Rights Reserved.
+```
+
+An `license` gives not only all Python licenses but also an interesting reading about Python history:
+
+```python
+>>> license()
+A. HISTORY OF THE SOFTWARE
+==========================
+
+Python was created in the early 1990s by Guido van Rossum at Stichting
+Mathematisch Centrum (CWI, see http://www.cwi.nl) in the Netherlands
+as a successor of a language called ABC. Guido remains Python's
+principal author, although it includes many contributions from others.
+
+...
+```
diff --git a/pythonetc/magic.md b/pythonetc/magic.md
new file mode 100644
index 0000000..441b134
--- /dev/null
+++ b/pythonetc/magic.md
@@ -0,0 +1,6 @@
+Try to avoid getting dunder attributes directly. Python provides helper functions for getting of of standard dunder attributes:
+
+* `type(self)` instead of `self.__class__`
+* `inspect.getdoc(cls)` instead of `cls.__doc__`
+* `vars(obj)` instead of `obj.__dict__`
+* `cls.mro()` instead of `cls.__mro__`