Lab 0: Introduction to Course and Linux Lab

Welcome

Table of Contents:

The purpose of this first lab is to familiarize you with the environment you will be using in this course. In particular, this lab will introduce you to remotely accessing the Linux operating system and course resources.

This lab is nothing like the rest of the semester. We want to make sure that you are comfortable with the environment before you start to program and you know the course's available resources.

The computer workstations in our lab can run both Linux and OSX operating systems. We will use the Linux operating system in this course.

Goals for Lab Zero

After the lab, you should know how to

  1. log in and out of the Linux machines, and set up your account for this course
  2. access the CSCI111 home page
  3. use the Canvas forums
  4. use the interactive textbook

If you can do all those things, you are (almost) set for the course!

Objective: Remotely Accessing the Lab Machines

You may access your Computer Science account from any computer connected to the Internet, provided you have appropriate access software, e.g., a secure shell client program. Having an X server installed too means that you'll be able to run graphical programs and have them display on your machine.

You may be planning to do most of your work on the lab machines, BUT you must set up your personal machine to remotely access the lab machines.

  1. Follow the instructions to download and install the ssh client and X server and ssh into fred. Use the username and password that were provided to you for your computer science account.
  2. If you haven't already done so, ssh into another lab machine (also as described in the instructions). This document contains the names of all the lab machines.
  3. Type jedit & in the terminal to open a text editor. A text editor is a simple editor (like Notepad for Windows or TextEdit for Mac) for plain-text documents (like program source code and HTML files).

    The & means "run in the background" so you can keep using the terminal.

    Note that jedit is not installed on fred, so you will get an error something like "jedit: command not found". ssh to another machine, as described in the instructions.

  4. Type runHelpClient to start an application that helps us keep track of who needs help next.
    • When you need help, press "I have a question".
    • When your question has been answered, press "Question answered"
    • Before exiting the help client (not now but at the end of the lab), always click "Question answered"
  5. Type who in the terminal to see who else is logged on to the machine, e.g.,
    sprenkle@python:~$ who
    sprenkle pts/0        2021-01-18 13:19 (137.113.118.65)
    tmarcais tty2         2021-01-15 15:50 (tty2)

    From the output, I see myself and tmarcais (our technical support person) are logged into the machine named python.
  6. Copy the output from who and paste into the jEdit window. Your typical keyboard-based shortcuts (e.g., Control-C or Command-C) won't work. Use the menu for Mac or right-click on Windows to get the copy/paste menu. In Windows, if you highlight text, it may automatically copy. In jEdit, you will probably need to choose Edit → Paste to paste the output.

    This is an inelegant way for us to save output. There are better Unix-specific ways, but I wanted to start with something that you're somewhat familiar with.

  7. Save the file as who.txt. This should be saved in your home directory, so the Path listed should be /home/students/yourusername
  8. When you get to the appropriate question on the Canvas quiz, copy this output into the answer box.

Objective: Changing Your Password

Don't think you can remember your password? (I didn't think so.) You can reset your password!

That's all the Linux for now. We'll do more in our next lab.

Objective: Taking the Quiz in Canvas

"Quiz" isn't the appropriate word. We just want to make sure that what you did today makes sense. In Canvas, take the "Lab 0 Quiz".

You should also complete the introductory survey, but it's not part of the lab.

Objective: Using the Canvas Discussions

We will use the Canvas forums for submitting summaries for the "Broader Issues in Computer Science" part of the course.

  1. Use your W&L username and password to log in to Canvas.
  2. Navigate to the "FUND OF PROGRAMMING I" course site.
  3. Navigate to the "Discussions" from the side menu bar.
  4. Read over the existing entries/topics.
  5. Note the Broader Issues assignment is due before 11 a.m. on Friday. (Details not posted yet.)

Objective: Using the Interactive Textbook

Register for the textbook, creating a username/password for the course WLU_CSCI111_W21. Please make the email, first name, and last name be what you use for W&L so that I can recognize your account.

While the book and registration is free, please consider donating $10 to help with their costs of hosting and development.

Read the first two sections, answer the questions in the section, and mark the sections as completed. Check the assignments page to make sure you have completed the assignment.

Each week, there will be an assignment in the interactive text book that is due before the lab. You will complete the readings and do the problems. This will help prepare you for the lab. The next "pre-lab" assignment will be released on Friday.

Finishing up: What to turn in for this lab

There is nothing physical to turn in for this lab. I will see your submissions in Canvas and in the interactive textbook.

Labs are due at the beginning of Friday's class.

Assessment