Curriculum
Overall Impression of The Curriculum
The curriculum of this program is a streamlined version of a traditional CS curriculum focusing on standard core CS and math topics, a few "electives" (see electives section below), as well as a package of Web Development classes. The Web Dev classes are an important aspect of the program, because Web Dev is the field where the majority of entry-level developer job opportunities can be found currently.
Class Format
The classes I have taken so far are conducted entirely through the Blackboard learning management system. The course syllabus, announcements, discussion boards, homework assignments, quizzes, projects, and exams are all posted by the instructor and assignments are submitted by the students through this system. There are some recorded lectures posted through this system as well. Interaction with the professors is conducted both through Blackboard and via email. Honestly, don't expect a significant amount of interaction with or instruction from instructors in any online classes regardless of school. The majority of online college classes (in my experience at a few community colleges and a couple of universities) are really geared toward self-learning. Be prepared to learn on your own and reach out to your fellow students and to the instructors only when you run into issues or questions that you cannot resolve on your own (internet search is your friend). If you can do this and manage your time well, you should do fine.
CS Electives
There are no CS electives in this curriculum. They have an exact path for you to follow. This can be an advantage or a disadvantage. The disadvantage is if there are particular CS classes that you wish to take that are not offered. The advantage is that you won't need to make any tough choices or even think about which classes you should take.
Compared to Boot Camps and Self-Education
Boot camps and self-education are hotly debated topics in discussions about employment in Software Development. A BSCS degree offers one thing that boot camps and self-education don't: the degree itself, which helps get through many hiring filters. Another element that is usually lacking in boot camps due to time constraints is an education in CS theory, which is something that should help you become a better software developer in some respects. The typical core CS theory sequence of discrete math, data structures, and algorithms classes teaches a developer to write more efficient code. It's definitely possible to self-teach CS theory, but it takes a significant amount of time and effort to get through material which is challenging for most people, so many self-taught developers don't do this because there is nothing forcing them to.
Algorithms
Having said that about CS theory, one curious aspect of the curriculum is that there is no Algorithms class. It remains to be seen whether they account for this by cramming Data Structures and Algorithms together (unlikely), cover both topics more lightly than if they were split into two terms, or really only cover the topics from a Data Structures class and not the topics from an Algorithms class. Just in case the program doesn't cover the material well enough or deeply enough for you to succeed in technical coding interviews, there are various online courses available to help you supplement your knowledge of the subject. At least you should be well prepared to learn algorithms after completing the discrete math (CSCI 241) and data structures (CSCI 251) classes that usually precede an algorithms class.
Major and General Education Requirements
You can find the exact requirements of the degree at the official courses page. The finer details of the requirements (particularly General Ed) are beyond the scope of this site. I will instead include tidbits of information and other thoughts that are not on that page.
CLEP Examination Credit for Math Classes
The official courses page says that CLEP credit is only available for MATH 110. However, the school's official CLEP page says that CLEP credit is also accepted for MATH 234 (Calculus). Verify with a school advisor before pursuing this option.
Class List, Pre-Requisites*, Terms Offered*
* Please note that the pre-requisites and terms offered information I have gathered may not be accurate or up to date. Please verify with a program advisor before making any plans.
Class | Class Name | Pre-Requisites or Co-Requisites | Terms Offered |
---|---|---|---|
CSCI 111 | Survey of Computer Science | Pre-Req: MATH 010 Intermediate Algebra or ACT/SAT thresholds | Fall, Spring, Summer |
CSCI 121 | Computer science I | Pre-Req: MATH 110 or ACT/SAT thresholds | Fall, Spring, Summer |
CSCI 221 | Computer science II | Pre-Req: CSCI 121 | Fall, Spring, Summer |
CSCI 231 | Object-oriented programming | Pre-Req or Co-Req: CSCI 121 | Fall, Spring |
CSCI 241 | Foundations of computing | Pre-Reqs: CSCI 121 and MATH 234 | Fall, Spring |
CSCI 251 | Data structures | Pre-Reqs: CSCI 221 and CSCI 241 | Fall, Spring |
CSCI 321 | Assembly language | Pre-Reqs: CSCI 221 | Fall, Spring |
CSCI 331 | Operating systems | Pre-Req or Co-Req: CSCI 251 | Fall, Spring |
CSCI 421 | Programming languages | Pre-Req or Co-Req: CSCI 251 | Fall, Spring |
CSCI 431 | Computer graphics | Pre-Req or Co-Req: CSCI 251 | Fall, Spring |
CSCI 441 | Software engineering | Pre-Req: CSCI 431 | Fall, Spring |
CSCI 675 | Seminar | Pre-Req: CSCI 421 | Fall, Spring |
INF 101 | Intro to Computer Information Systems | None | Fall, Spring, Summer |
INF 250 | Intro to web development | Pre-Req: INF 101 | Fall, Spring, Summer |
INF 651 | Front-end web development | Pre-Reqs: INF 250, and CSCI 221 or INF 360 Python Programming | Fall |
INF 652 | Database design and programming | None | Fall, Spring |
INF 653 | Back-end web development | Pre-Reqs: INF 651 and INF 652 | Spring |
MATH 110 | College Algebra | Pre-Req: MATH 010 Intermediate Algebra or placement test score | Fall, Spring, Summer |
MATH 122 | Plane Trigonometry | Pre-Req: MATH 110 | Fall, Spring, Summer |
MATH 234 | Analytic Geometry & Calculus I | Pre-Req: MATH 122 or MATH 130 Pre-Calculus | Fall, Spring |
MATH 250 | Elements of Statistics | Unknown | Fall, Spring, Summer |