--- title: "UO Ph.410-510c Scientific Computation (Spring 2024) TA Resources" author: "[**Thomas (Tom) C. Gorordo**](https://pages.uoregon.edu/tgorordo)" --- [Official Course Site](https://pages.uoregon.edu/jschombe/sci_comp) Data Sources: - [Sloan Digital Sky Survey](https://www.sdss.org/) - [Gaia Archive](https://gea.esac.esa.int/archive/) - [FiveThirtyEight Github](https://github.com/fivethirtyeight/data) Reference & Python: - [The Python Wiki](https://wiki.python.org/moin/) - [The Python Tutorial](https://docs.python.org/3/tutorial/index.html#tutorial-index) - [The Python Language Reference](https://docs.python.org/3/reference/) - [The NumPy API Reference](https://numpy.org/doc/stable/reference/index.html) - [SciPy documentation](https://docs.scipy.org/doc/scipy/) - [pandas Documentation](https://pandas.pydata.org/docs/) - [astropy Documentation](https://docs.astropy.org/en/stable/index.html) - [matplotlib Documentation](https://matplotlib.org/stable/index.html) - [Think Python: How to Think Like a Computer Scientist](https://greenteapress.com/wp/think-python-2e/) - [Learning Scientific Programming with Python](https://scipython.com/) - [Software Carpentry](https://software-carpentry.org/lessons/) - [Compusalon](http://vallis.org/book/code.html) and [Python for Astronomers](https://prappleizer.github.io/) are both incomplete but have lots of good exercises and neat examples. - [Python & OpenGL for Scientific Visualization](https://www.labri.fr/perso/nrougier/python-opengl/) - [Instant Hacking](https://folk.idi.ntnu.no/mlh/hetland_org/writing/instant-hacking.html) and [Instant Python](https://folk.idi.ntnu.no/mlh/hetland_org/writing/instant-python.html) is dated (python2) but crams a lot of concepts into a short intro - think if it as pseudocode. Good Practices: - [Scientific Python Design Guide](https://learn.scientific-python.org/development/principles/design/) - [The Architechture of Open Source Applications](https://aosabook.org/en/) - [Python Style Guide](https://peps.python.org/pep-0008/) - [The Black Code Style](https://black.readthedocs.io/en/stable/the_black_code_style/current_style.html) - [Boxes: Your Second Python Book](https://ralsina.gitlab.io/boxes-book/) Algorithms & Computation: - [Problem Solving with Algorithms and Data Structures using Python](https://runestone.academy/ns/books/published/pythonds/index.html) - *Press, Teukolsky, Vetterling and Flannery*, [Numerical Recipes: The Art of Scientific Computing](https://numerical.recipes/book.html) - *Abelson and Sussman*, [Structure and Interpretation of Computer Programs](https://web.mit.edu/6.001/6.037/sicp.pdf) ([html](https://mitp-content-server.mit.edu/books/content/sectbyfn/books_pres_0/6515/sicp.zip/full-text/book/book.html)) - *Knuth*, [The Art of Computer Programming](https://www-cs-faculty.stanford.edu/~knuth/taocp.html) ![1337](https://imgs.xkcd.com/comics/1337_part_2.png) Some basic shell use if you need it: - [Unix Shell Intro](https://rcc-uchicago.github.io/shell-intro/) or [Shell Novice](https://swcarpentry.github.io/shell-novice/) - [The Linux Documentation Project](https://tldp.org/)'s [Absolute Basics](https://tldp.org/LDP/intro-linux/html/sect_02_02.html) and [Bash Guide for Beginners](https://tldp.org/LDP/Bash-Beginners-Guide/html/index.html) Similar Course(s): - [Caltech Ph. 20/21/22](http://pmaweb.caltech.edu/~physlab/dokuwiki/doku.php?id=ph20) Additional Problems/Practice: - [Project Euler](https://projecteuler.net/)