forked from chrisjordansquire/uw_python_tutorial
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathsuggested_resources.txt
More file actions
50 lines (39 loc) · 2.56 KB
/
suggested_resources.txt
File metadata and controls
50 lines (39 loc) · 2.56 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
This is a collection of some of my favorite resources for learning more about
Python, NumPy/SciPy, and coding in general.
First and foremost, Python's documentation is excellent. A great resource
is the online docs at docs.pythong.org.
Actually the above is a lie. The docs are the best reference, but dry reading
that only rarely directly answers immediate questions. The real first and
foremost resource is stackoverflow. The highest voted Python questions
make for great reading. User Mysticial also has some great
answers for learning a bit more about how a modern computer works.
Doug Hellman has a great collection of example code, "Python Module
of the Week" at http://www.doughellmann.com/PyMOTW/. (He published an
associated book, The Python Standard Library by Example. It's mostly
the same material as on the website, except he gets $$$ for his work.)
The talks from the past several pycon's are online at pyvideo.org. There
are many videos, so it helps to have a starting point of good videos.
I recooment anyhting by Jack Diederick, anything by
David Beazeley, anything by Larry Hastings, "The Mighty Dictionary",
"A Whirlwind Excursion Through Writing a C Extension", "Everything
You Wanted to Know About Picking, But Were Afraid to Ask!", "Exhibition
of Atrocity", and "What Would Yo Do with an AST?"
PEP (Python Enhancement Proposal) 7 and 8 are excellent (probably mandatory)
reading. This should be followed up with "Code Like a Pythonista: Idiomatic
Python" by David Goodger. (Can easily by found with google.)
Another great resource is software-carpentry.org.
Pythonic Perambulations is a great python-centric blog written by a UW grad
student turned UW postdoc.
Dealing with large datasets is generally a difficult problem. An easy way to
make it simpler is to remember: (1) friends don't let friends save data in
massive text files, and (2) friends also don't let friends save their data in
weird, non-standardized binary formats. A potential solution is standardized
binary formats, and people smarter and more knowledgeable than me have
recommended HDF5 for that. The PyTables package is actively maintained by
a good community, and gives a python interface to HDF5. A good tutorial
on PyTables is "HDF5 is for Lovers" by Anthony Scopatz.
It's also good to be aware of virtualenv if you're playing around with/
re-compiling/re-installing base packages like numpy or scipy very much.
Or even python itself. Virtualenv lets to switch between versions of python,
so you can have a version of python that you use for development purposes
and a version for data analysis.