Materials for Intro to Python at NICAR 2017, with a focus on Python "tribal knowledge"
This is not an introduction to syntax or to programming concepts, since those are the focus of many tutorials. Rather, this will focus on "tribal knowledge" - implicit knowledge that Python developers often take for granted.
Tribal knowledge is:
- obvious to every experienced Python developer
- not obvious or intuitive to newbies
- difficult to google
- rarely covered in tutorials
For these reasons, small bits of implicit knowledge can be large stumbling blocks for new folks. The goal here is to leave you with some foundational knowledge that will make it much easier to continue learning Python on your own.
- why even use Python? how does it compare to, say, Ruby or JavaScript or R?
- how to get Python
- Python 2 vs Python 3
- packages/libraries/modules
- the standard library
- pip
- pypi
- virtual environments
- requirements.txt
- the interactive shell
- executing python scripts
- jupyter notebooks
Are there other good examples of tribal knowledge? Things that are confusing to new folks? Things you wish you knew when you started learning Python? Open an issue!