S21 got admitted in CalPoly Pomona (CPP) and San Diego State (SDSU) for CompSci major. As of now, these are the top 2 schools we’re choosing from. It’s quite a hard decision. I kind of prefer CPP, and my son kind of prefers SDSU. Although my son said he’s ok to go either way. We’ve been doing a TON of researching, school websites, forums, etc.
Looking for your thoughts and feedback on what would you choose, and why. I know I’ve asked this question several times in other threads. Just hoping to get more insights. Not just feedback related to CS major only, but for the overall school.
I appreciate all the help!
He can compare the CS major requirements and course offerings to see if either looks better for him:
https://cs.sdsu.edu/degree-requirements/
Both campuses offer California Promise 4-year pledge (priority registration and advising if the student does things like follow the major’s course plan etc.), but SDSU does not include the CS major, and CPP only offers it to certain classes of students (first-generation-to-college, Pell grant, Dream Act, or from underrepresented high school). Other CSUs may offer this program with wider eligibility.
https://www.cpp.edu/studentsuccess/oss/graduation-pledge/4-year-ca-promise-info.shtml
1 Like
The student heavy surrounds at SDSU will give a more traditional 4 year experience so, that’s the direction I would lean - but it isn’t me.
Tour both schools, talk to some students and let him decide… neither is a bad choice.
1 Like
Based on the CS requirements @ucbalumnus linked to above, SDSU seems to offer a more traditional and better CS program. CPP’s CS program is more like that of a trade school.
1 Like
Not sure how you came to that conclusion. Requirements are fairly similar, though SDSU has a few fewer CS requirements, but more non-CS science requirements. There is somewhat more difference in CS elective offerings.
Here is a comparison of CS major requirements (note that course numbers in parenthesis are not required, but are available as CS electives).
Course |
SDSU |
CPP |
Intro CS |
107, 108 |
1400, 2400 |
Machine Organization |
237 |
2640 |
Discrete Math |
MATH 245 |
1300 |
Data Structures |
310 |
2400 |
Programming Languages |
320 |
4080 |
Computer Architecture |
370 |
3560 |
Social Legal Ethical Issues in Computing |
440 |
3750 |
Senior Seminar |
490 |
4630 |
Systems Programming |
530 |
2600 |
Algorithms Analysis |
560 |
3310 |
Operating Systems |
570 |
4310 |
Numerical Methods |
|
3010 |
Formal Languages Automata |
(562) (not required, available as CS elective) |
3110 |
Object Oriented |
(535) (not required, available as CS elective) |
3560 |
Software Engineering |
(532) (not required, available as CS elective) |
4800 |
Upper Division CS Electives |
4 courses |
4 courses |
Calculus |
MATH 150, 151 |
MAT 1140, 1150 |
Linear Algebra |
MATH 254 |
|
Intro Statistics |
STAT 250 or 119 |
STA 2260 |
Upper Division Statistics |
STAT 350A or 550 or 551A or MATH 541 or 579 |
|
Non-CS Science |
3-4 courses, including 2 semesters of PHYS or CHEM or BIOL with lab |
PHY 1510, 1510L |
Here are the additional electives:
Course |
SDSU |
CPP |
Unix Sysadmin |
470 |
|
Scientific Database |
503 |
|
Database |
514 |
4350 |
Advanced Programming Languages |
520 |
|
Compilers |
524 |
4110 |
Programming for GIS |
537 |
|
Internationalization |
540 |
|
Artificial Intelligence |
550 |
4200 |
Neural Networks |
553 |
|
Robotics |
556 |
|
Computer Simulation |
558 |
|
Computer Vision |
559 |
|
Microprocessor Architecture |
572 |
|
Security |
574 |
4600 |
Networks Distributed Systems |
576 |
3800 |
Client Server |
580 |
|
Computational Linguistics |
581 |
|
Speech Processing |
582 |
|
Game Programming |
583 |
4700 |
Symbolic Programming |
|
3520 |
Parallel Processing |
|
3700 |
Machine Learning |
|
4210 |
Web Search Recommender Systems |
|
4250 |
Computer Graphics |
|
4450 |
Computability |
|
4500 |
Big Data Cloud |
|
4650 |
Mobile Application |
|
4750 |
Software Engineering Practice |
|
4810 |
Advanced Topics |
596 |
4990 |
1 Like
For CPP, its CS requirements mostly focused on programming and are light on theory. It’s very light on math too, as it doesn’t even require linear algebra and its discrete math course is much simpler. For the electives, it offers little in specialization in most fields (other than software development) beyond an intro course in a few of them.
SDSU, on the other hand, have required upper division courses in both CS and math. And it seems to offer better variety and depth.
1 Like
The differences in requirements are not as large as you are suggesting:
SDSU: linear algebra, upper division statistics course, 2 more non-CS science courses
CPP: 4 additional upper division CS courses (one of which is a theory course, so CPP actually has more CS theory requirements than SDSU)
Note that the required introductory statistics course in CPP is calculus-based, but the one at SDSU is not, so that may be why SDSU requires an upper division statistics course as well.
Now, if you like the selection of upper division CS electives at SDSU more than CPP (or vice-versa), that can be a much more valid reason to choose one over the other.
1 Like
It’s quite a hard decision. We’ve been doing a TON of researching, school websites, forums, etc. Looking for your thoughts and feedback on what would you choose, and why. I know I’ve asked this question several times in other threads. Just hoping to get more insight
IMHO, don’t keep looking The answer here is clear. SDSU. It is the school your son wants, and regardless of how much more time and effort you spend trying to decide if CPP might be slightly better/worse you’re not going to get any more clarity. If there was a big difference between the two you would have already found it.
Annie Duke, a former professional poker player, has written a new book “How to Decide: Simple Tools for Making Better Choices”. In part she says
Let’s take an example: you’re thinking about visiting Paris or Rome. Why do I call that kind of decision a “hidden” freeroll? It’s because you can’t go wrong whichever one you choose.
That unlocks a really important decision principle: when a decision is really hard, it means it’s easy. Here the decision is really easy because it doesn’t matter too much which you choose; you should just be flipping a coin. And even if you had the cognitive acuity to parse the two decisions apart, it’s kind of a waste of your time.
You don’t need to flip a coin on this one, your son has a preference.
Thanks, but please don’t be too quick on your conclusion. I probably didn’t write my post well cause I just can’t possibly write our entire situation here. He is very undecided and is literally asking my help and guidance to help make a good decision.
Thank you everyone for all the helpful comments! The detailed comments above are truly helpful. What’s not helpful is when someone just says something like “just let your son choose”. If your son/daughter asks you for help to decide on something, would you not help him/her?