CSE 163, Spring 2019: Alternate Software

If you are unable to setup the software with the main instructions, you can use this alternative.

Install Spyder

The alternative editor you can use is called Spyder. It is easy to install which is why we recommend it. After installing Anaconda and setting up the environment for cse163 do the following steps:

  1. Open the Anaconda Navigator App (the one you used to install the environment)
  2. Click the Home button on the left
  3. In the dropdown at the top after "Application on", select your cse163 environment. This will bring up a list of apps you can install to the environment.
  4. On the card that says Spyder, click "Install" and then "Launch" once it's installed.

Once you have opened Spyder, now you just have to set it up to work in the directory for the current assignment. You'll have to do this for each new assignment and possibly every time you open Spyder. You can do this by:

  1. In the top right of the Spyder editor, click "Browse a working directory" to be the directory for whichever project you're working on. This changes your working directory to be in this folder.
  2. You should now be able to open whichever files you want with the "Open file" button on the left side of the editor!

One downside to using Spyder is it does not come with an easy integration with the linter we are using flake8. The good news is this is not the most important thing to run since we will run it for you on turn-in so you should see any style mistakes every time you turn the assignment in. To run flake8 locally, you can run it through Spyder in the iPython terminal at the bottom right.

The iPython terminal is a fancy Python REPL which allows you to type things like 1 + 1 to see what Python says. It also lets you run terminal commands if you prefix the line with a ! character. So in the prompt, type the following to run flake8 on a file like main.py (after the In [] in the prompt):

In [1]: !flake8 main.py
main.py:3:1: F401 'geopandas' imported but unused
main.py:4:1: F401 'numpy' imported but unused
main.py:5:1: F401 'pandas' imported but unused
main.py:6:1: F401 'requests' imported but unused
main.py:7:1: F401 'seaborn' imported but unused
main.py:8:1: F401 'sklearn' imported but unused
main.py:9:1: F401 'skimage' imported but unused
main.py:18:23: E703 statement ends with a semicolon
main.py:19:10: E703 statement ends with a semicolon