CSE 101
Programming
Assignments
Follow the instructions below to submit programming assignments in this class.
Create
an account on GitLab @ UCSC by following the
instructions at https://gitlab.soe.ucsc.edu/static/docs/gitlab-ucsc/ and read the submission instructions at https://gitlab.soe.ucsc.edu/static/docs/gitlab-ucsc/using_gitlab.html, especially how to use the Git commands clone, add, commit and push.
If you have
never used Git before, here is a very gentle introduction on YouTube, and some helpful documentation pages here and here which introduce command line tools for Git. All of these options require you to install Git software on your
computing device (unless you are developing directly on the
Unix Timeshare, which already has Git installed.) Note also that
these tutorials describe
interaction with the cloud services GitLab.com or GitHub.com, whereas you will submit your code the UCSC Git server at gitlab.soe.ucsc.edu/gitlab/.
Our class directory on that server is cse101/fall20. Create
directories in your local repository called pa1, pa2, ..., pa8.
Place your source code files for each project in the appropriate
directory. Other directories in your repo will be ignored during
grading. Submit
the source code files for each programming project (i.e.
add, commit & push) often.
Every programming assignment comes with
a bulit in 12-hour grace period, i.e. if an assignment is due at
10:00pm, you will have until 10:00am the next morning to complete the
assignment. If I extend an assignment, the 12-hour grace period
is extended by the same amount. All times are given in
local (California, United States). If you are in another time zone, you can easily convert to and from CA by using https://www.worldtimebuddy.com/. We will grade the
latest commit and push made before the end of the grace period. Later commits will not be considered for grading.
If you have trouble with any of these instructions, please see a TA or Course Tutor for help.
pa1: Due Monday October 12, 10:00pm Extended yet again to Friday October 16, 10:00pm (last one)
pa2: Due Tuesday October 27, 10:00pm Extended yet again to Sunday November 1, 10:00pm (absolutely last!)
pa3:
Due Thursday November 5, 10:00pm Extended one last time to Wednesday November 11, 10:00pm (last!)
pa4:
Due Saturday November 14, 10:00pm Extended yet again to Thursday November 19, 10:00pm (last)
pa5: Due Monday November 23, 10:00pm Extended one last time to Monday November 30, 10:00pm (last!)
pa6: Due Monday November 30, 10:00pm Extended one last time to Sunday December 6, 10:00pm
pa7: Due Tuesday December 8, 10:00pm Extended one last time to Saturday December 12, 10:00pm (last)
UCSC Computer Accounts
All
programming assignments in
this course will be tested and evaluated on the UCSC Unix
Timeshare, unix.ucsc.edu. The
host unix.ucsc.edu provides
a Linux command line environment and home directory access to multiple
concurrent users. All students with an active CruzID account
can
access this system using their CruzID-Blue password. To
log on to unix.ucsc.edu from your computing device, you
must have
an internet connection and install the appropriate software, as outlined below.
Terminal access for
Windows users:
Download
the PuTTY client
and run the program putty.exe. Set Host Name
to unix.ucsc.edu, Port Number to 22
and Connection Type
to SSH. Click Open and respond with your CruzID and Blue
password.
Terminal access for Mac
users:
Open
Terminal Server in your Utilities Folder. In the terminal
window
type: ssh user@unix.ucsc.edu, where user is your
CruzID,
then respond with your Blue password.
Secure File Transfer for
all users:
Download and install FileZilla for
your platform. (Warning to Windows users: do not download
the installer from here.
Make sure you use the Windows installer found here.)
Set Host to unix.ucsc.edu,
Username to your CruzID, Password to your Blue password and Port to 22,
then click Quickconnect. The left pane shows your local file
system, and the right pane shows the remote file system on unix.ucsc.edu.
Simply drag and drop files from one pane to the other to transfer files.
Code Editors:
Notepad++ (Windows
only), BBedit (Mac
only), SublimeText (all
platforms). There are many others.
If
you have any problems installing these tools, or logging on to unix.ucsc.edu you
should get help from a TA or Course Tutor. You may develop your
programming projects on any platform, but remember that they will be tested and evaluated on the timeshare. Therefore, it is imperative that
you thoroughly test all programs in this environment before submission.
The host unix.ic.ucsc.edu is
administered by Information Technology Services.
Contact ITS Support
Services for assistance with your account.
If you find any errors, please report them to: ptantalo@soe.ucsc.edu