Computer Sciences at SOAR

Information for incoming students and campus advisors

General Information

  • Prerequisites are enforced on all CS courses.
  • CS 200, 300, and 400 are intended for Computer Sciences majors.
  • CS 220 and 320 are intended for Data Science majors. 
  • Other majors may require or recommend a Computer Sciences course – please consult with your advisor .
  • Some courses have waitlists. Wait lists are monitored continually up through the add deadline.  Course enrollment information can be found using this link. (Log in with your UW credentials).
  • It is recommended to take no more than one programming course per semester in the first year.

Courses

This is an accordion element with a series of buttons that open and close related content panels.

CS 200: Programming I

  • Language: Java
  • Prerequisite: Quantitative Reasoning A (can be satisfied with math placement or credit for a course that fulfills QR-A)
  • Notes & Details: 
    • CS 200 assumes little to no programming background.
    • If seats are open, please make an open section work for your schedule, as getting off a waitlist is not guaranteed.

CS 304: Wisconsin Emerging Scholars for CS 200

  • Audience: Students enrolling in CS 200 with no programming background, students from groups underrepresented in computer science 
  • Language: Java
  • Prerequisite: Concurrent enrollment in CS 200, must successfully enroll in 200 prior to enrolling in 304
  • Notes & Details:
    • WES-CS is a small, interactive peer led study group where students can gain computing confidence.  WES-CS provides a supportive, collaborative environment where diverse groups of students can explore CS through small group problem-solving activities
    • Students can enroll for 0 or 1 credit
    • Students interested in enrolling should complete the WES-CS interest form

CS 300: Programming II

  • Language: Java. It is expected that students know Java going into CS 300. Students are highly encouraged to speak with their instructor during the first week of class if they have any concerns about learning Java
  • Prerequisite: CS 200, CS 220 or CS 301
  • Notes & Details:
    • If seats are open, please make an open section work for your schedule, as getting off a waitlist is not guaranteed.

CS 638: Wisconsin Emerging Scholars for CS 300 (Lec 001, 002, 003, and 004)

  • Audience: Students enrolling in CS 300 who want more support in their first programming course at UW. Students from groups underrepresented in computer science or those who are concerned about the transition from their college to UW’s programming sequence are ideal students for this course
  • Language: Java
  • Prerequisite: Concurrent enrollment in CS 300
  • Notes & Details:
    • WES-CS is a small, interactive peer led study group where students can gain computing confidence.  WES-CS provides a supportive, collaborative environment where diverse groups of students can explore CS through small group problem-solving activities

Students interested in enrolling should complete the WES-CS interest form

CS 400: Programming III

  • Language: Java. Students are highly encouraged to speak with their instructor during the first week of class if they have any concerns about learning Java
  • Prerequisite: CS 300
  • Notes & Details: Eligible freshmen can enroll, space permitting, or add themselves to the waitlist. Priority is given to incoming transfer students

CS 220: Data Programming I

  • Language: Python
  • Prerequisite: Quantitative Reasoning A (can be satisfied with math placement or credit for a course that fulfills QR-A)
  • Notes & Details:
    • CS 220 assumes little to no programming background
    • If seats are open, please make an open section work for your schedule, as getting off a waitlist is not guaranteed.

CS 320: Data Programming II

  • Language: Python
  • Prerequisite: CS 220 or CS 300
  • Notes & Details:
    • Eligible freshmen can enroll, space permitting, or add themselves to the waitlist. Priority is given to incoming transfer students

CS 200 Self-Assessment

  • If a student believes they have significant programming experience (ie. students who took an AP/IB class but not the test; students who took a course transferring in as CS electives; students who took programming courses in high school and are confident in their abilities), they can complete a self-assessment that would allow them to bypass CS 200.  
  • Students interested in this option, should contact CS Advising at advising@cs.wisc.edu.

Math Courses

  • The Computer Sciences major requires Calculus I (Math 221, 171-217, or 275) and Calculus II (Math 222 or 276)
  • Computer Sciences requires two courses beyond Math 222. We recommend Linear Algebra (Math 340) and Stats for Engineers (Stats 324). Students double majoring with another math-based major, please review your other major’s requirements for math recommendations

Incoming Credits

This is an accordion element with a series of buttons that open and close related content panels.

Advanced Placement (AP)

  • AP Computer Science Principles
    • Score of 4 or higher gives credit for CS 202 (note that CS 202: Introduction to Computation is taught infrequently)
    • Enroll in CS 200
  • AP Computer Science A
    • Score of 3 or higher gives credit for CS 200
    • Enroll in CS 300
    • Note for students who took the exam in 2020: Units 8-10 (2D Arrays, Inheritance, and Recursion) were not covered in this year’s AP exam. Inheritance and Recursion are already topics covered in CS 300. 2D Arrays will be built into the beginning of CS 300 because of the changes to AP. Students who earned a 3 or higher should still enroll in CS 300 and are welcome to talk to the CS consultants if they have any concerns 

International Baccalaureate (IB)

  • IB Computer Studies (higher level only)
    • Score or 4 or higher gives credit for CS 200
    • Enroll in CS 300

Transfer Credits

  • If you have a Computer Sciences course transferring in as electives, you can request that it be reviewed by the CS Department. More information, including the form to request a reevaluation, can be found here
  • If you are not sure on which syllabi you should submit for review, you can speak to the CS Consultant. If you need help changing your schedule post-SOAR due to updated credit evaluations, please email advising@cs.wisc.edu for some assistance

Consultants

This is an accordion element with a series of buttons that open and close related content panels.

When to contact a consultant

  • Course Access
    • AP/IB credits known but not posted to UW record (For AP scores, please send your unofficial score report)  
    • Issues enrolling in CS 200, 220, or 300
  • Course Selection
    • CS 200 vs 300 – students with substantial programming experience but no college level credit can talk to a CS consultant to determine the best first course
    • Interested in Data Science and Computer Sciences and debating CS 200 or 220 as first course
    • Questions about WES-CS
  • Transfer Credit
    • Questions about whether or not to submit a reevaluation request
    • Transfer credits not posted yet
  • Anything else not covered on this page

How to contact a consultant

  • Email us at: advising@cs.wisc.edu. Please include your campus ID and any necessary screenshots. Emails are responded to within 24 hours (except weekends)
  • If we aren’t able to answer your question via email, we will schedule an appointment with you using the Teams platform.

Laptop Recommendations

Students are not required to own a computer, as it is possible to complete all work in on-campus computer labs. However, most students find it convenient to have a laptop. The Department of Computer Sciences does not recommend any specific manufacturer or model, though we do suggest you consider the following when making your purchase:

Weight – A computer that is less that 3-4 pounds will be less burdensome to carry around.

Display – For programming, a larger screen makes it possible to see more of the code at once. A screen that is at least 13-14 inches diagonally is ideal.

Storage – Speed can be important, so consider a laptop with a solid-state drive (SSD). Laptops with only a hard drive, while they may store more files, can feel very slow. While 256GB is a common size, many students find it helpful to have more space. External hard drives are not needed; however, cloud storage is a recommended as an alternative.

Memory – Minimum 8GB. Some students find that a laptop with only 4GB of memory feels slow, and it can be very difficult to add memory later.

Processor – Consider a Core i3, i5, or i7 processor from Intel or AMD Ryzen 3, 5, or 7. Some students find that Intel Pentium and Celeron processors feel slow.

WiFi – Make sure your laptop has a built-in wireless network so you can be mobile and access WiFi from anywhere on campus.

Operating System – Windows, Mac OS, and Linux will offer the most flexibility. Some students find that they are unable to run specialized software for their courses on ChromeBooks/ChromeOS.

Longevity – Some laptops at the lower end of these recommendations may start to feel slow after a few years. Computers that exceed these recommendations are likely to be usable for longer.

Optional Features – Depending on how you plan to use your computer, you may find a touch screen, enhanced graphics (for gaming), or support for a pen input (for note taking) particularly useful.

Cost – Most computers that meet these recommendations will cost between $600-$1500.  We suggest that all students consider what is important to them, shop around for a good price, and find a balance between cost and features that you are comfortable with.