Resources

Python 3. High level programming language for algorithms with extensive library support (for example, Numpy for computation heavy numerical/scientific tasks). We recommend (but do not require) using Python 3 or Java for the course.

Java. High level object oriented programming language for scalable software design with extensive standard library support. We recommend (but do not require) using Python 3 or Java for the course.

Finding and Reading CompSci Research Papers.

LaTeX. Recommended for typesetting mathematics heavy text. LaTeX is the standard for research publications in computer science. All assignments for the course must be typed; LaTeX is the recommended way, but is not required (if, for example, you prefer to use Microsoft Word or some similar software for writing reports).

Git. Useful for version control of your code.

Gradescope