Some Topics of Frequent Interest to Students


The following notes provide some answers to several questions that are often asked about the computer science program.

Should I Major in CS?

CS programs, like those in any engineering or science field, are tough. Don't become an undergraduate CS major or plan to enter a graduate program in the field unless you think you will enjoy it and do well. If you are not sure of your ability, the first course sequence for CS majors can help you find out. Take CS 161 (Introduction to CS I). If you get an A or high B and have a great time in the course, then this field may be for you. If you get a low B or a C, think carefully about another major. If you are unable to maintain a better than B average in the introductory sequence, CS 161, 162, 163, you should not consider a CS major.

Return to Top

Non-admitted Students

Anyone may take up to 8 credit hours of coursework per term at PSU without being formally admitted to a degree program. (Most graduate courses in our department carry 3 credits; most undergraduate courses carry 4 credits.) First-time registrants must provide a completed Quick Entry Form (in the Schedule of Classes) to the Office of Admissions and Records to register online. See the University Website for information on electronic registration. Note that non-admitted students register after all other students, which can be a disadvantage for courses in high demand.

Return to Top

Post-baccalaureate Students

PSU has a post-baccalaureate (post-bac) program for students who already hold a bachelor's degree but wish to take further courses for credit. This program is primarily intended for students who wish to earn a second bachelor's degree in a new field. The requirements to graduate with a second bachelor's degree are the same as the departmental requirements for the bachelor's degree; the "general" University requirements are waived, so the post-bac degree takes less time to complete. (It can be completed in about two and a half years of full-time work by a student with a technical background.)

The post-bac program is also useful to prospective graduate students who wish to take undergraduate and/or graduate classes to prepare for application to the graduate program. (See the discussion on graduate program entry for non-cs degree holders.)

There are advantages to obtaining post-bac status as opposed to just taking courses as a non-admitted student: you can register for more credits per quarter, and you register for courses before non-admitted students. Post-bac students taking only undergraduate courses pay undergraduate fees. If you take one or more graduate classes in a given quarter, then you pay graduate fees for all classes during that quarter.

To obtain post-bac status you must formally apply to the University by completing the post-bac application, which is available from the Admissions Office. The deadlines are the same as for ordinary graduate admission, but applications will be considered after the deadline has passed if possible (it usually is). Admission to the post-bac program is not competitive; it is normally given if you hold a four-year undergraduate degree from an accredited institution. You must also have a cumulative GPA of 2.00 (2.25 for nonresidents) for any work taken after your bachelor's degree. There is no departmental admission process for post-bac students, but if you decide to work toward a second bachelor's degree, you will have to declare formally as a CS major.

Return to Top

Graduate Program Entry for Non-CS Degree Holders

Students who have a bachelor's degree in another discipline and wish to get a computer science degree have two options. Which one is best for you depends on your goals and your experience. You may enter the post-bac program and get a second bachelor's degree. Or, you may make up necessary background and enter the graduate program.

In making up background to enter the graduate program, you do not necessarily need to earn formal credits in the background subjects. You must just convince the graduate admissions committee that you have the needed knowledge.

You must demonstrate knowledge of the core curriculum of an undergraduate CS degree in order to be admitted to the graduate program. The core curriculum includes basic background in high-level language programming, algorithms, and data structures, computer hardware organization and architecture, operating systems, discrete mathematics, logic, and computability, plus a year of calculus. The purpose of this requirement is to ensure that you can succeed in graduate coursework. You may already know some of this material from previous coursework or from work experience. You might find that the best way to remedy deficiencies is to take formal courses. Or, you might want to study from textbooks on your own. The core curriculum corresponds approximately to these PSU courses:
  • Programming and data structures: CS 162, 163
  • Machine organization and architecture: CS 201
  • Programming systems: CS 202
  • Discrete mathematics, logic, and computability: CS 250, 251, 311
  • Calculus: Mth 251, 252, 253
In addition, several 300-level courses are usually required, including the following courses:
  • CS 321 Programming Languages and Compiler Design I
  • CS 333 Operating Systems
  • CS 350 Algorithms and Complexity
Department faculty can advise you on the best level at which to begin preparatory coursework. You can demonstrate adequate knowledge of an area of the core curriculum by passing the relevant 100- and 200- level course(s) with a grade of B or better. It will also establish your background if you take and do well in an advanced course, for which the core course is prerequisite. For example, a grade of A in CS 202 would establish that you probably do not need to take CS 161, 162.

An application for admission to the graduate program will normally not be approved without formal coursework on the record to establish adequate knowledge of upper-division courses in programming languages, operating systems, and algorithms. This normally means passing CS 321, 333, 350, or equivalent courses at other institutions, with a grade of B or better. Students having exceptional ability or background may demonstrate their readiness to enter the graduate program by passing several 500-level courses, including at least one of the required graduate courses (CS 533, 558, and 581) with a grade of B or better.

CS courses may be taken at PSU either on a non-admitted basis or on a post-bac basis while you prepare for admission to the graduate program. These mechanisms are described above. You can also take core background courses at other schools such as Portland Community College (PCC). Courses at community colleges may be numbered differently from those at PSU, but there are equivalent courses for most of the first two years of undergraduate study.

Return to Top

Transfer and Pre-Admission Credit for Graduate Work

In general, you can apply graduate credits taken as a non-admitted or postbac student toward a graduate degree if you are subsequently admitted, but such credits must be formally transferred if taken elsewhere, require the approval of your adviser, and are subject to the following limitations:
  • Students may apply towards their PSU graduate degree up to 15 graduate credits taken either at PSU or at other schools before admission to the program. Credits taken from other schools are also considered transfer credits. The total number of credits taken before admission, counting both transfer and PSU credits, may not exceed 15.
  • A total of 15 transfer credits, whether taken before or after admission to the program, may be applied to the degree, unless they are all from Oregon schools (OGI, UO, and OSU), in which case a total of 18 transfer credits may be used. Please note that if 18 transfer credits are used, only 15 may have been taken before admission.
You typically cannot transfer courses taken while your GPA is too low to permit ordinary graduate admission. Once you decide to work toward a graduate degree, you should apply for formal admission as soon as possible. Contact the CS Department office to arrange a meeting with a faculty adviser to resolve any questions you may have.

Return to Top

Accelerating Your Undergraduate Program

Students with significant experience in computer science gained on the job or through self-study can reduce the time required to gain a bachelor's degree by taking courses "by examination" or by waiving requirements.
  • Credit by Examination. Any 100- or 200-level computer science course may be taken by examination during a term in which it is offered. In order to qualify to take a course by examination, you must be admitted to PSU and must present evidence to your adviser, and to the instructor of the class, that you have mastered the content of the course. Taking a course by examination may involve writing programs, doing specific exercises, or taking exams, as required by the course's instructor, plus taking the final exam along with regular students in the course. You will be able to consult with the instructor only to clarify requirements. Your grade will appear on your transcript as it does for any other course for which you paid full tuition. You must finish all work required by the instructor two weeks before the beginning of finals week in order to be able to take the final exam. There is a nominal fee for each course taken in this way; it must be paid at the beginning of the term in which you submit an "Application for Credit by Examination" form. Note that upper-divsion CS courses are not available for credit by examination.
  • Waiving Courses. In exceptional circumstances a required CS course may be waived if there is sufficient evidence that the course material has been learned. For example, a student might present evidence that the material for a CS course is equal to parts of several courses taken at another school. The completion of a CS course does not imply that a prerequisite course may be waived. No credit is given for a waived course, so a waiver does not change the credit requirements for a degree. For undergraduates, if an upper-division CS course is waived, then another upper-division CS course must be taken in its place so that the total number of required CS upper-division credits remains the same. In addition, in the event that the CS Capstone is waived, then the capstone requirement must be met through University Studies. Your adviser has the authority to waive course requirements.
Return to Top

Internships

PSU is fortunate to be surrounded by high-tech industries. Therefore, our CS majors are in demand as part-time employees at local companies. The department maintains a file of job opportunities online at the Employment link. Often, companies are looking for student "interns." An intern position is often used to look over a potential full-time employee. Upon graduation, if the intern and the company hit it off, permanent employment can result. The CS Department also participates in a formal internship program, the Multiple Engineering Cooperative Program ( MECOP ), which works closely with Northwest industry to offer students paid, high-quality industrial experience. The MECOP undergraduate program is a five-year program that includes two six-month internships.

Return to Top