Tools and Resources

We will use a variety of tools to conduct class and to facilitate your programming. You will need a computer with Linux, MacOS, or Windows. It is unlikely that a tablet will be able to do all of the things required in this course. A Chromebook may work, especially with developer tools turned on. Ask Dr. Brown if you need help getting access to an adequate computer.

All of the tools and resources below are either:

  • paid for by URI OR

  • freely available online.

BrightSpace

This will be the central location from which you can access all other materials. Any links that are for private discussion among those enrolled in the course will be available only from our course Brightspace site .

This is also where your grades will appear and how I will post announcements.

For announcements, you can customize how you receive them.

Prismia chat

Our class link for Prismia chat is available on Brightspace. Once you’ve joined once, you can use the link above or type the url: prismia.chat. We will use this for chatting and in-class understanding checks.

On Prismia, all students see the instructor’s messages, but only the Instructor and TA see student responses.

Course Manual

The course manual will have content including the class policies, scheduling, class notes, assignment information, and additional resources.

Links to the course reference text and code documentation will also be included here in the assignments and class notes.

GitHub

You will need a GitHub Account. If you do not already have one, please create one by the first day of class. If you have one, but have not used it recently, you may need to update your password and login credentials as the Authentication rules changed in Summer 2021. In order to use the command line with https, you will need to create a Personal Access Token for each device you use. In order to use the command line with SSH, set up your public key.

Programming Environment

In this course, we will use several programming environments. In order to complete assignments you need the items listed in the requirements list. The easiest way to meet these requirements is to follow the recommendations below. I will provide instruction assuming that you have followed the recommendations. We will add tools throughout the semester, but the following will be enough to get started.

Warning

This is not technically a programming class, so you will not need to know how to write code from scratch in specific languages, but we will rely on programming environments to apply concepts.

Requirements:

  • Python with scientific computing packages (numpy, scipy, jupyter, pandas, seaborn, sklearn)

  • Git

  • A bash shell

  • A web browser compatible with Jupyter Notebooks

  • nano text editor

Warning

Everything in this class will be tested with the up to date (or otherwise specified) version of Jupyter Notebooks. Google Colab is similar, but not the same, and some things may not work there. It is an okay backup, but should not be your primary work environment.

Recommendation:

  • Install python via Anaconda

  • if you use Windows, install Git and Bash with GitBash (video instructions).

  • if you use MacOS, install Git with the Xcode Command Line Tools. On Mavericks (10.9) or above you can do this by trying to run git from the Terminal the very first time.git --version

  • if you use Chrome OS, follow these instructions:

  1. Find Linux (Beta) in your settings and turn that on.

  2. Once the download finishes a Linux terminal will open, then enter the commands: sudo apt-get update and sudo apt-get upgrade. These commands will ensure you are up to date.

  3. Install tmux with:

    sudo apt -t stretch-backports install tmux
    
  4. Next you will install nodejs, to do this, use the following commands:

    curl -sL https://deb.nodesource.com/setup_14.x | sudo -E bash
    sudo apt-get install -y nodejs
    sudo apt-get install -y build-essential.
    
  5. Next install Anaconda’s Python from the website provided by the instructor and use the top download link under the Linux options.

  6. You will then see a .sh file in your downloads, move this into your Linux files.

  7. Make sure you are in your home directory (something like home/YOURUSERNAME), do this by using the pwd command.

  8. Use the bash command followed by the file name of the installer you just downloaded to start the installation.

  9. Next you will add Anaconda to your Linux PATH, do this by using the vim .bashrc command to enter the .bashrc file, then add the export PATH=/home/YOURUSERNAME/anaconda3/bin/:$PATH line. This can be placed at the end of the file.

  10. Once that is inserted you may close and save the file, to do this hold escape and type :x, then press enter. After doing that you will be returned to the terminal where you will then type the source .bashrc command.

  11. Next, use the jupyter notebook –generate-config command to generate a Jupyter Notebook.

  12. Then just type jupyter lab and a Jupyter Notebook should open up.

Video install instructions for Anaconda:

On Mac, to install python via environment, this article may be helpful

  • I don’t have a video for linux, but it’s a little more straight forward.

Zoom (backup only & office hours only, Spring 2022 is in person)

This is where we will meet if for any reason we cannot be in person. You will find the link to class zoom sessions on Brightspace.

URI provides all faculty, staff, and students with a paid Zoom account. It can run in your browser or on a mobile device, but you will be able to participate in class best if you download the Zoom client on your computer. Please log in and configure your account. Please add a photo of yourself to your account so that we can still see your likeness in some form when your camera is off. You may also wish to use a virtual background and you are welcome to do so.

For help, you can access the instructions provided by IT.