Skills Test S1 Running a Rails App

A key aspect of a CS degree is developing solid software development skills. General knowledge about software engineering is desirable, but skills require practice within a specific context. Thus, all students in this course will be required to master full-stack web development in Rails.

The goal of this skills test is to ensure that you have a functioning Rails development environment for the subsequent skills tests and for the course project. To facilitate the discussion of technical issues and to enable students to learn the material collaboratively, all students must use the software stack defined herein.

Learning Goals

Preparing for the Test

Caution! If you are doing this homework using the university Wi-Fi, make sure that you are using the “um” network. Do not use the “um-guest” network, which has ports blocked that are needed for some of the commands below to work properly.

  1. Activate your Piazza account (http://piazza.com/) for the course.

    You should have received an email invitation (sent to your university email address). If did you not receive an email, contact the instructor.

    If you run into any technical problem or have any question during the course, post your question to Piazza (Q&A). The instructor as well as your fellow students have the opportunity to answer your question. Moreover, other students will be able to see your question and the answer, saving them the time and trouble of asking the same question.

  2. Perform the steps described in the following demo for setting up your development environment:

    Demo: Setting Up the Development Environment

    You will need to have a working development environment in order to perform the skills test tasks.

  3. Email the instructors your GitHub username. Make the email subject “COMP 4081 GitHub Username”.

  4. Practice the steps described in the following demo for downloading and running a Rails project:

    Demo: Running a Rails App

    This demo is very closely related to the tasks you will be required perform for this skills test. It is recommended that you practice these steps multiple times to make sure that you can perform them quickly. To facilitate such practice, note that you can clone the same repository multiple times, saving each copy in its own directory. For example, here is how you would make three copies of the test app from the demo:

     git clone https://github.com/human-se/rails-6-test-app-2020.git ./practice-app-1
     git clone https://github.com/human-se/rails-6-test-app-2020.git ./practice-app-2
     git clone https://github.com/human-se/rails-6-test-app-2020.git ./practice-app-3
    

    As a result of these commands, the first copy is saved in a directory practice-app-1, the second in practice-app-2, etc.

  5. Read the page General Skills Test Instructions for some additional test-prep steps to perform.

  6. If you are not already proficient with the Unix shell command-line interface, it is highly recommended that you read the following deets page and spend extra time practicing with the command-line:

    Deets: Unix Shell Command-Line

    You will be required to use the command-line heavily throughout the course, and thus, you will be expected to be able to use it proficiently.