I know a little Python, but I’ve always been discouraged from learning more by the notoriously confusing package management system. I’m determined to wrap my head around this once and for all, so yesterday I asked on Twitter for any favorite resources on this topic.
Hey pythonistas, what are your favorite n00b resources for demystifying Python package management and environments with Anaconda?
— Kara Woo (@kara_woo) April 17, 2015
Some of the responses boiled down to “haha good luck”, but some were extremely helpful and I thought I’d share them here, both for my own future reference and for anyone else who might find them englightening.
First, Paul Hobson offered to field questions over email and wrote an exceedingly helpful gist in response. After reading this I finally feel like I grasp what environments are beyond “places to have different versions of packages, or something”, how to actually use them and install packages, and where everything lives. Many of the introductions to conda I’ve read assume that the reader already understands what environments are and how they relate to the actual scripts/IPython notebooks/etc. you’re writing, but for me this part has been really confusing until now.
Other tweeps shared some helpful links:
- Daniel Chen shared his notes on writing a Python package. This is beyond the level of what I’m trying to do, but will be very useful if I start writing my own packages.
- Ethan White linked to PyData’s tutorial.
- Matt Davis wrote a helpful post on “the good, the annoying, and the bad” of conda as of October 2014. He also linked to a Python-for-data-science tutorial on Anaconda and IPython notebooks.
Other links I’ve found helpful:
- Using the Anaconda Python Distribution by Dave Behnke.
- Continuum’s blog post on Python packages and environments with conda.