.. _preparations:
============================================
Items for the Class
============================================
Hardware (hardly free)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
* A computer: laptop or desktop. No tablet PCs as a main
computational resource.
Better if you already have a linux-based one or Mac.
For a Windows-based PC, you need to install some packages to run
a linux-based operating system on your PC. Please consult with me or
TA if you have Windows PCs only or none.
Softwares (mostly free)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Essential software (required, free):
* Linux/Unix or Mac OS X with Xcode (no Windows please!).
* Compilers for Fortran 90, C/C++ (e.g., `gfortran, gcc `_)
* Debuggers (`gdb `_ , `lldb `_, etc.)
* Python and its scientific libraries (e.g., `Anaconda
`_,
`NumPy `_,
`SciPy `_, `Matplotlib `_, etc.)
* Version control system (e.g., `Git `_ or `SVN `_)
* Text editors (traditional ones: `GNU emacs `_,
`aquamacs `_,
`vi `_,
`vim `_; modern fancy ones: `sublime `_, `atom `_, etc.)
* `Sphinx `_
* LaTex packages (`texshop `_,
`LaTeXiT `_)
Extra software (optional, free or commercial):
* `Matlab `_
or `GNU Octave `_
* software package manager
(`Yum `_,
`Homebrew `_, `MacPorts
`_, etc.)
* `GNU plot `_,
`IDL `_
* symbolic math using `sage `_
* even more for `high performance computing on Mac `_
Others (absolutely free)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
* Most importantly, your passion and energy to learn new things.