# TIL (Today I Learned)

The TIL series of articles contains very short articles documenting something I learned “today”.

##### TIL #025 – reversed emoji flags

Today I learned that the reverse of some flag emoji are other flags!

##### TIL #024 – cooking with asyncio

Today I learned how to cook with asyncio and async code in Python.

##### TIL #023 – how to use namedtuple

Today I learned how to use the namedtuple from the module collections.

##### TIL #022 – Python module selectors

Today I learned about the Python module selectors to manage multiple socket connections.

##### TIL #021 – Spouge's formula

Today I learned about Spouge's formula to approximate the factorial.

##### TIL #020 – open(0)

Today I learned you can read from stdin with open(0).

##### TIL #019 – sockets

Today I learned the basics of socket programming (in Python).

##### TIL #018 – suppressing errors with contextlib

Today I learned that the module contextlib provides with a context manager to suppress specified errors.

##### TIL #017 – symmetrical indexing with bitwise inversion

Today I learned about the symmetry in indexing from the beginning and end of a list with the bitwise invert operator.

##### TIL #016 – Quicksort in functional programming

Today I learned how to write the Quicksort algorithm in a weird functional style.

##### TIL #015 – DARPA network challenge

Today I learned about the DARPA network challenge and the power of referral systems.

##### TIL #014 – reading files with pathlib

Today I learned you can use pathlib to read the contents of a file.

##### TIL #013 – dunder method __eq__

Today I learned how the rich comparison protocol and, in particular, how eq works behind the scenes.

##### TIL #012 – At operator for matrix multiplication

Today I learned that Python 3.5+ supports the operator @ for matrix multiplication.

##### TIL #011 – emojis in Python with pythonji

Today I learned that you can use emojis as variable names in Python if you use pythonji.

##### TIL #010 – generator return

Today I learned that Python generators can return a value.

##### TIL #009 – vars

Today I learned about the built-in function vars in Python.

##### TIL #008 – two pass join

Today I learned that the .join method in Python is a two-pass algorithm, and that's why joining a list comprehension is faster than a generator expression.

##### TIL #007 – math.nextafter

Today I learned about the math.nextafter method.

##### TIL #006 – file unpacking

Today I learned that files can also be unpacked in Python.