Students in CS courses with laboratory sections are required1 to bring and use their personal laptop during lab. It is recommended that students use their laptop all for coursework in CS, as well as non-CS, courses.
A reasonable laptop can be purchased for about $600 and should last for 2-4 years2. More information about specifications and software is given below.
Students should not share laptops. This is a necessary requirement because: 1) assignments and other coursework are private to a particular student, 2) students may need admin access to their laptop, 3) students may need to install/uninstall various software packages.
Students are responsible for the data on their laptops and should backup this data to a remote location regularly.4 "Remote locations" can be a separate computer the student owns, GitHub, Dropbox, Google Drive, etc.
Students are strongly encouraged to combine backing up and versioning. Programs such as Git can track software changes while making saves to a reliable "off-site" location.
Most modern laptops built in the last two years should suffice for the minimum requirements. Students may purchase either Macintosh* or Windows compatible computers. The prices listed below are for generic Windows laptops.
Students who purchase a Macintosh should invest in a larger disk drive so they can install Windows (see Bootcamp) as well as macOS on their laptops. This will be useful in the rare case where software is only available (or runs better) on Windows. The Windows license is available for free from the University of Utah for all students via On The Hub.
Low End Specifications (2020 price → approximately $600):
High End Specifications (2020 prices → approximately $1000-$2,000):
Tablets are not recommended.
Screen size is up to the student.
The laptop computer may run either Windows, OS X, or Linux, as long as it is able to run the required software:
|CS 1410||Eclipse, Java|
|CS 2420||Eclipse, Java|
|CS 3500||Visual Studio, C#|
|CS 3505||Linux or a virtual machine* running Linux|
The College of Engineering (CoE) maintains a "repository" of virtual machines that students can access via a web browser or standalone application. This allows a student's laptop to serve as a terminal to CoE machines, which have different types of software. See FAQ - Remote Access more information on remotely accessing these machines.
In some cases, the use of virtual machines alleviates the need for students to have specialized software running natively on their laptops (especially for expensive/licensed software that is specific to a course; e.g., Matlab, Cadence, Autodesk Maya). However, students may find that installing and running native applications to be more effective. Likewise, the CoE virtual machines are available only with internet access.
In general, it is the responsibility of the student to install and maintain the software on their computer. Should a problem occur with your machine, you should contact your service provider.
Specific courses (e.g., CS 1410) will have detailed instructions on how to install course specific software on standard Windows/Macintosh machines. If you have a problem installing the base software required for your course, there will be limited help from the course instruction staff, based on their availability.
Earn Karma: For those students who are "experts" on their own machine, we highly recommend that you share your wisdom by helping others who are in need.
The following links give basic instruction on software installation:
Information on Eclipse can be found here: Eclipse Wiki Installation Guide. This guide also refers to how to install Java.
Information about how to obtain Visual Studio (and other free software) is available for students via: College of Engineering - MSDNAA FAQ
VMWare (and other software) can be found through the College of Engineering WebStore.
Students without laptops may use a loaner laptop during lab classes, when available. Loaner laptops are not available for general use outside of lab classes.
Students should plan to replace their laptop every 2-4 years depending on initial computer specifications (e.g., CPU speed and memory). The responsibility for maintaining and/or replacing the laptop is entirely on the student.
The SoC strongly suggests that students purchase solid state drives (SSDs) for their computer rather than traditional hard drives.
Students are responsible for turning in their assignments on time. When an exceptional circumstance arises (e.g., the computer was damaged or stolen the day before an assignment was due) students should contact the instructor to see if accommodations can be made. However, students are responsible for backing up their data remotely so that loss of the laptop does not prevent the student from a timely completion of their coursework.