Computer Science Advising
Every declared CS major and minor is assigned a CS faculty member as an academic advisor. (Undeclared students are assigned an advisor in their indicated area of interest.) Prior to class registration each semester, students meet with their advisor to discuss which courses the student should take.
SPRING 2026 CS Advising Notes
- We are offering a section of CSCI 339 “Topics in AI and Machine Learning” (which is normally offered in the fall). The topic is “Artificial Intelligence” and will be taught by Dr. Marietta Cameron.
- Note that CSCI 329 Big Data Analytics requires STAT 185 or higher as a prerequisite. The instructor, Dr. Lee, might be willing to waive that preqreq if you have similar experience (such as MATH 295) but you will have to request a “prerequisite override”. Email Dr. Lee if you want to request an override and be sure to explain your related coursework and experience in your message.
- We will continue to accept MATH 280 as a substitute for MATH 251 for the CS major (both concentrations). Note: Math is planning to offer MATH 251 in Fall 2026.
- We are offering the following special topics courses:
- CSCI 273: Python Programming. This is an advanced introduction to Python designed as an faster-paced alternative to CSCI 183 or for students with some programming experience who want to learn Python. This course will satisfy the introductory programming (CSCI 18X) requirement for the CS major, minor, and the Data Science minor.
- CSCI 373.001 Industry Team Project and CSCI 373.002 Scalable Software Architectures: the expectation is that these courses will function as a single course where students build a mobile app for a client and deploy it. The courses will be team-taught by Prof. Van Wart and Prof. Sanft. You can register for either section (but not both).
- CSCI 373.003 Community Digital Literacy and Tech Support: this course will involve students going out into the community to provide tech support and/or digital literacy training. The schedule (Wednesday mornings) is designed to allow students to travel to the Skyland/South Buncombe Public Library to participate in a new program to provide free tech support to library patrons from 10:00am-noon. Students will need to provide their own transportation (or car pool with other students). There may be opportunities to contribute at other locations and times also. Contact Dr. Sanft if you have questions or concerns.
- CSCI 499 (Undergraduate Research and Independent Studies): As of 10/10/25 these are not listed in the schedule. However, Profs. Whitley, Rashid, Van Wart, Sanft, and Bogert are actively seeking students for research projects and can create a section of CSCI 499 for interested students. Contact these faculty to learn more about their projects. Also, there may be an opportunity for UNCA students to be mentors for the “Glitch 2.0” Asheville High School robotics team–it might be possible to get course credit for this work–contact Prof. Sanft if you’re interested.
General SPRING CS Advising Notes
- Planning to graduate this Spring?
- Register early! Ensure you get in to the courses you need to graduate.
- Verify that your plan checks all the boxes in GradPlan and verify that your plan does not contain schedule conflicts (two courses at the same time).
- Planning to graduate next Fall?
- Register early to ensure you get into the courses you need.
- Remember that some required courses are only offered in the Spring–see the course description in the catalog. (CSCI 313, 329 (even years), 338, 347, 364, 431, and MATH 251 and 295)
- Note: 338 is typically offered every semester, despite the catalog stating “spring”. Ask the department chair or your advisor about expected deviations from the catalog schedule.
- Computer Systems concentrators:
- There is a prerequisite chain of MATH 167 -> MATH 191 -> MATH 251 -> CSCI 302 -> CSCI 431, and since CSCI 302 is offered only in the fall and 431 only in the spring:
- You must complete MATH 167 by Spring (or summer) in order to graduate two years later
- You must complete MATH 251 by Spring to graduate the following year
- There is a prerequisite chain of MATH 167 -> MATH 191 -> MATH 251 -> CSCI 302 -> CSCI 431, and since CSCI 302 is offered only in the fall and 431 only in the spring:
General CS Advising Notes and FAQs
- Data Structures (CSCI 202) (with a grade of C or better) is a prerequisite for most upper level (300+) CS courses. Most CS majors should prioritize completing and doing well in that course.
- It is usually desirable to complete the MATH/STAT and PHYS (Computer Systems concentration) requirements as early as possible (to avoid conflicts with upper level CS courses that you want to take later). But it can be nice to save some Core Curriculum (general education) requirements for later semesters to avoid too many upper level CS courses
- You should sketch out a rough schedule plan for each semester from now until graduation and discuss it with your advisor. Remember that some courses are offered only in the fall or only in the spring, so plan accordingly.
- If a class you want to take is full, you should add yourself to the waitlist. Seats often open up and the department uses the sizes of waitlists to determine demand for courses.
- For financial aid purposes, you must be enrolled in at least 12 credits for full time status. Also, federal financial aid (“CPOS”) requires you to take 12 credits of required courses (courses required for your major(s) (not minors!) or toward the 120 hour graduation requirement). Therefore, students receiving federal financial aid should plan their program of study carefully to avoid losing available aid.
- Verify that you have the prerequisites for the courses you intend to take. Keep in mind any substitutions (such as MATH 280 instead of MATH 251) that might not have been applied–you won’t be able to register until a prerequisite override is given or the substitution appears in GradPlan.
- Q: How many credits should I take?
- A: This depends on the student. Most students take at least 12 credits to maintain full-time status (which is required for things such as certain financial aid and on-campus housing agreements). Most full-time students take about 15 credits (some financial aid programs, such as Access Asheville, require students to pursue 15 credit hours per semester). Taking much more than 15 credits is usually not recommended, especially if your schedule includes multiple upper-level CS courses.
- Q: Should I take CSCI 18X and CSCI 201 simultaneously?
- A: This depends on the student. Many students take both and do well in both. However, some students struggle in both (and sometimes decide they don’t want to study CS!), which means they don’t learn the material as well, it hurts their GPA, and it can slow their progress toward graduation if they end up withdrawing from (or failing) a course. Students who are uncertain should consider taking CSCI 18X first, before enrolling in CSCI 201.
- Q: I have previous programming experience but I don’t have official transfer credit for intro programming–do I have to take CSCI 18X?
- A: Not necessarily. Talk to the department chair, Prof. Kevin Sanft. Depending on your experience, we may be able to substitute an upper-level elective that is more relevant for you.