Richard G Baldwin (512) 223-4758, NRG Room 4238, Baldwin@DickBaldwin.com, https://www.austincode.com/baldwin/

ITSE-1302 Computer Programming: Scientific Python 1

This material applies to Distance Learning sections taught by Professor Baldwin.

Instructions for Downloading and Submitting Assignments

Summer 2019

Revised: 05/10/19

The official web page for this course is located here.


General

This document may be modified as the semester progresses in order to incorporate new instructions or clarify existing instructions. Therefore, you should review the instructions periodically and then immediately before submitting each assignment to confirm that you are in compliance.

Failure to comply with the instructions usually results in a failing grade for the assignment, often zero.

The assignments for this course are take-home assignments. You may use any reference material that you have available. However, you are instructed not to obtain assistance from anyone.

Downloading Assignment Files

Assignments are posted in Blackboard. There is a zip file associated with each assignment that you can download from Blackboard. The zip files have names like Proj01.zip, Proj02.zip ... Proj18.zip.

Format of Downloadable Zip Files

Each of the zip files contains the following material as a minimum:

Each assignment requires that you write one program. Extract the contents of the zip file into an empty folder. Then open the ProjXX.htm file in your browser to view the programming specifications for the assignment and proceed accordingly.

Special Instructions Regarding the Submission of Assignments

You may submit each assignment up to two times before the deadline shown in the Blackboard calendar. Your highest score among the two scores for each assignment will be used to compute your final grade.

Your name

Your name is required one or more times in the output for every program and the program specifications will indicate where your name must appear. If there is any confusion as to where your name must appear, please discuss this with me at least one week prior to the assignment deadline. (If your name does not appear, I will assume that the material that you submitted does not constitute your own work and you will not get credit for the assignment.)

Submit your "Runner" file only

For each assignment, you must submit a single file named ProjXXRunner.py encapsulated in a zip file.

Your name in the zip file

Include your name in the name of the zip file that you submit to help me avoid getting your zip file mixed up with another student's zip file when I retrieve them from Blackboard. A suitable example file name is:

Asg01_baldwin.zip

Do not submit my driver files

Unless indicated in the assignment specifications, do not submit the driver file that I provided named ProjXX.py. Also do not copy the contents of my file named ProjXX.py into your file named ProjXXRunner.py.

Code compatibility

The files that you submit must contain code that is compatible with Python version 3.6.2 or a later version.

Testing your programs

Don't rely on a fancy IDE to test your programs. Test your runner file in conjunction with my driver file for each program from the command line before submitting your assignments.

No partial credit

I will score your programs from the Windows command line. Each program will be graded either right or wrong. Partial credit will not be given for code that does not fully conform to these instructions and to the program specifications. If one of your programs doesn't conform, don't bother submitting it.

Grading criteria

Each program requires you to use (without modification) a driver file and/or other code that I have provided (file named ProjXX.py) and to duplicate the screen output shown while meeting all other written specifications. Any modification of the code that I have provided will be grounds for disqualification.

(The zip file that you will download from Blackboard contains a file named ProjXX.py for the driver for each program. Use it without modification.)

My grading procedure

After copying your runner file into a folder identified by YourName, I will test your program by copying my driver file into the same folder and executing my driver file.

Failure to follow instructions

If you modified the code in the file named ProjXX.py, it is unlikely that your program will compile and execute successfully when I test it using the procedure given above.

The required output

The specifications for each assignment show you the text and/or graphics that your program must produce. (Remember, you must insert your name where indicated.)

You must match the specified screen output in every way for each program. Extraneous characters on the screen, extra blank lines, missing blank lines, etc., are grounds for disqualification. In other words, your output must be an exact image of the specified output. Note however that in the case of graphic output, because of the zoom capability of your browser, the overall size of the graphic that you see in the assignment specification may be different from the actual size of the program output. In general, however, you should be able to discern the approximate overall size of the graphic window based on the relative sizes of the objects in the graphic along with the buttons and the text at the top of the graphic window.

(Every semester there are one or two students who are surprised and saddened to learn that I really do mean that you must follow the instructions and meet the specifications exactly or you won't get credit for the program. Don't be one of those students.)

Submitting Your Assignment

Encapsulate your file named ProjXXRunner.py in a zip file and submit it using the Blackboard Assignment feature.

After you submit the assignment, select the assignment again from the Assignments menu item. You should see text similar to "Review Submission History." You should see a hyperlink to the zip file that you submitted earlier in that section. Click that link to download the file.

Open the zip file and confirm that it is the correct file for the assignment that you intended to submit. If you discover that you submitted the wrong file, contact me immediately so that we can arrange for you to resubmit the correct file. Otherwise, your assignment will be scored using the file that you submitted. (Note that if you attempt to contact me at the last minute to help you correct such an error, it may be too late. In that case, your assignment will be scored using the file that you submitted.)

If I am unable to successfully unzip the file that you submitted, or if it contains the wrong material, you will not get credit for the assignment.

The assignments require you to write programs and to submit the resulting files. The completed programs must satisfy the requirements described in this document and the individual specifications that apply to each program.

Extraneous Material

Do not submit extra files such as readme.txt files and expect me to pay attention to them. I won't pay attention to them.

Do not expect me to pay attention to text that you may choose to enter into the Blackboard text fields when you submit your assignment file. I am not interested in them, and I won't pay attention to them.

Do not put comments in your Python file and expect me to pay attention to them. I am not interested in them, and I won't pay attention to them.

The required material

All I expect to receive from you when you submit your assignment is the required file named ProjXXRunner.py. There is no reason that you will need to communicate any information about your assignment to me when you submit it. Any need to discuss the requirements of the assignment must be satisfied prior to your submission of the assignment.

Encapsulate an electronic copy of the required material in a zip file and submit it as a Blackboard assignment, not later than the deadline given in the Blackboard calendar. If you are running Windows, you don't need a special program to create the zip file. The Windows file compression utility is entirely adequate.

The zip file must be one that I can unzip using the Windows de-compression utility with no effort required on my part other than to open the file and extract the material contained therein. There must be no requirement for any sort of special decoding. If there is such a requirement, I will not accept the assignment.

Be careful what you copy

There is nothing wrong with using the code from an existing program as a template for a new program. Professional programmers do that all the time. However, if you do that, you should do it in a thoughtful and judicious way.

When writing code for an assignment, don't simply copy an entire existing program into your new program with the intent of modifying it to meet the assignment specifications, even if the existing program appears to be close to what you need.

Instead, you should first make certain that you understand the requirements of the assignment. Don't write or copy any code until you have that understanding.

Then you should examine each statement in the existing program and make certain that you understand the purpose and behavior of each statement. If you don't understand the purpose and behavior of a statement in an existing program, don't even consider copying it into your assignment program.

If you copy code from an existing program into your assignment program, you should copy statements from the existing program into the new program one statement at a time. You should make certain that each statement is both needed and appropriate for the new program before you copy the statement.

When writing assignment programs, students in my courses frequently copy entire sample programs into their new programs with the intent of modifying that code to satisfy the requirements of the assignment. Then they frequently fail to delete or modify the code that they have copied as required to meet the requirements of the assignment. This often results in telltale signs such the display of extraneous or incorrect text, etc.

Don't be one of the students who makes such a mistake. First understand the requirements of the assignment. Then, if you copy code from a sample program to satisfy those requirements, copy and use that code in a thoughtful and judicious way.

A sample program may be useful in helping you to write the new code for an assignment. However, that code is only helpful if you truly understand the code in the sample program and truly understand the requirements of the assignment. The availability of code in a sample program can be detrimental to your success in writing the code for an assignment if fail to copy and use that code properly.

Failure to Meet the Submission Deadline

The submission deadline for each assignment is provided in the Blackboard calendar each semester. In most cases, the assignment will expire and disappear from Blackboard when the deadline passes.

The penalty for failing to meet the submission deadline is simply that you won't get credit for the assignment.

Before you ask, let me tell you that a temporary Blackboard outage, business travel, problems at work, extreme work pressures, divorce, depression, receipt of a "Dear John letter", automobile repairs, flat tires, computer problems, power failures, total eclipses, extremely high outside temperatures, high pollen count, broken lawnmowers, the Super Bowl Schedule, and other assorted and interesting circumstances are not valid excuses for failing to meet the submission deadline. About the only excuse that I might be willing to accept would be something on the order of extended hospitalization or extended serious illness on the part of you or an immediate member of your family. If your excuse is not on that order of magnitude, I really don't want to hear it.

Response time and feedback on assignments

I grade your assignments on a totally asynchronous basis. I normally receive an email notification from Blackboard when you submit your assignment. I will normally grade the assignment and provide any necessary feedback within 24 hours, usually less than 24 hours (allow a little more time on weekends).

-end-

File: ITSE1302AsgInstructions.htm

Creative Commons License This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.