{{FULL_COURSE}} Homework 0 - Preparing for the Course


Goal

In CIS 460, we will be using Qt in nearly all of the homework assignments. In order for you to become familiar with Qt, and to make sure that it runs properly on your computer, you will install Qt Creator and run a simple test program that we supply you.

We also ask that you read through the course policies on the course web site so that you are familiar with how we grade assignments, handle late homework submissions, and account for class participation.

Requirements

In this class, we will use OpenGL for our graphics-based coding assignments. Unfortunately, Apple has decided to deprecate OpenGL on their graphics hardware, making its behavior inconsistent. In order to avoid issues with Apple hardware, we ask that students using Apple computers to use CETS's Virtual PC to execute their homework assignments. You will need to follow the instructions for installing the Qt libraries on a Windows machine in the next section once you have your virtual PC set up.

You are welcome to follow the instructions for setting up Qt on a Mac in the next section as well, if you don't want to log into the virtual PC in order to write your code, but please make sure your homework executes as expected on the virtual PC before submitting it.

Go to the Qt website and download the installer for the latest version of Qt.

When you are installing Qt and get to the "Select Components" stage of the installer, make sure you empty all pre-checked boxes, then check off the following items:

Click on the Policies link at the top of this page and read through each drop-down section on the page you reach. Please pay careful attention to all of the sections, especially the homework and late policies.

Additionally, please familiarize yourself with the code style guide (also located in the top toolbar). A small portion of each homework grade will be based on how organized and comprehensible your code is.

CIS 460's semi-weekly quizzes will be administered on Gradescope. In order to access the quizzes, please join the class on Gradescope using the code WVWJGN.

We will release homework assignments through GitHub in this course. Our aim is for everyone to be familiar with the basics of version control by the time they finish this course, and working with Git to download and submit homework assignments will help you achieve this. Follow this link to GitHub's tutorial on installing and setting up Git to get started.

Go to the Github Classroom for this course, accept this assignment, and clone the homework-00-course-prep repository to your local machine. To do this, open Git Bash or any other shell terminal and navigate to the directory on your computer in which you'd like to store your homework assignments for this course. Once there, enter the command git clone URL_of_hw00_repo hw00 into the shell terminal. Note that you'll have to replace URL_of_hw00_repo with the URL you find under the Clone or download tab (this URL is unique to each student's repository):

Open 460.pro (the main project file) in Qt Creator. The .pro file in the Qt_GL_Test folder is the one you should open. Once you've opened the project file, you should configure it to use whichever version of Qt you installed. Run the program by pressing the button with the green arrow in the lower-left portion of the UI. When run, the program should produce the following image:

Follow the steps listed in the presentation below for creating a simple Qt GUI. This will be very important for completing certain future homework assignments. We don't ask you to submit the GUI you create, but you should complete this tutorial if you want to be up to speed for future assignments.

Configuring Qt Creator

If you're having trouble configuring Qt Creator with the right compiler / Qt kit, refer to the image below:

Submission

In order to practice using Git, we're going to have you add a simple .txt file to your repository. Using your OS's file browser, add a file called README.txt to the top-level folder of your assignment (if you followed the instructions in section 4 this folder will be called hw00). Next, in Git Bash or another shell terminal, navigate to the hw00 folder and type git add README.txt. This will tell Git to include README.txt in the set of files it tracks. Next, type git commit -m "Adding README". This takes all of the changes you have made thus far (namely, adding the .txt file) and logs them in a "commit" on your local machine. To have these changes be reflected in GitHub's servers, you'll need to run the command git push, which takes your latest commits and sends them to the remote server on which your project repository is stored. If you look at your GitHub repository in a web browser and see README.txt inside, you've correctly pushed your new file to your repository. Your final step is to submit a link to your committed code on Canvas. You can find a link to the dashboard on the top of this web page. If you click on the Commits tab of your repository on Github, you will be brought to a list of commits you've made. Simply click on the one you wish for us to grade, then copy and paste the URL of the page into your text file. If you are having difficulties completing this assignment, you should come to office hours or post a question on Piazza.