In Fall, 2016, the ICS Department will introduce a set of changes known as the “core curriculum” as part of a multi-year program to modernize and improve the undergraduate computer science degree experience at the University of Hawaii. This page provides a set of questions and answers about the core curriculum.
What is the core curriculum?
The core curriculum refers to a set of prerequisite changes to simplify and regularize the experience of ICS students during their first three semesters. The core curriculum is the first stage of a multi-year effort by ICS Faculty to radically improve the ICS undergraduate educational experience and provide better post-graduation opportunities for our students.
In a nutshell, the “core curriculum” refers to six courses: ICS 111 and 211 (Introduction to Computer Science I and II), ICS 141 and 241 (Discrete Mathematics for Computer Science I and II), ICS 311 (Algorithms), and ICS 314 (Software Engineering I). All of these courses must be taken before any other 300 and 400 level ICS courses can be taken. Here is a diagram illustrating the core curriculum sequence:
As the diagram illustrates, you must take these six courses prior to taking any other ICS 3xx or 4xx course, since ICS 311 and ICS 314 are now prerequisites to the remaining curriculum. In addition, you must complete all four of the 100 and 200 level core courses before taking the 300-level core courses.
Important note: the content, instructional style, and evaluation approaches used in these courses will evolve as a result of their definition as “core curriculum”.
Why did you implement the core curriculum?
The core curriculum leads to the following improvements for students:
- More consistent student background in core courses: Previously, students taking (for example) ICS 311 could range from sophomores in their third semester to seniors about to graduate. This variety of backgrounds made courses like ICS 311 hard to teach, and unfairly disadvantages certain students. Under the core curriculum, all students will reach ICS 311 and 314 with the same preparation, enabling the course to be taught more effectively.
- Better preparation for upper level courses: Previously, instructors of 400-level courses could not depend upon students having basic analysis and software engineering skills. Now, post-core courses can be more interesting and educational, because all students will have the same foundation. For example, a human-computer interaction course project can involve the development and evaluation of an open source Slack clone using Twitter Bootstrap, Meteor, and GitHub. An AI class can now discuss the computational complexity of various planning algorithms. How cool is that?
- Make more friends. The core curriculum means that ICS students will have three semesters where they take the same courses at the same time, improving opportunities to form friendships and learning communities.
- Better preparation for job interviews and/or graduate school. Because we can now build upon and revisit the material from ICS 311 and ICS 314 throughout the remainder of the curriculum, you will have more time to consolidate and improve upon these valuable basic skills.
Someone told me the core curriculum includes a "B or better" for all core courses. Is that true?
No. As of January 15, 2016, the ICS Faculty voted to defer implementation of the “B or better in all core classes” for at least one year in order to more fully study its implications.
The current rule, that a B or better is required in ICS 111, ICS 211, ICS 141, and ICS 241, remains in place.
I’ve already declared as an ICS major. Does the core curriculum apply to me?
The core curriculum is implemented as a set of prerequisite changes. These take effect immediately for all students starting in Fall, 2016.
So, for example, if you are finishing up your ICS degree program and only taking 400-level courses, it is unlikely that the core curriculum have any impact on you.
On the other hand, if you have declared as an ICS major, but have only taken ICS 111 and 141, then the prerequisite changes will apply to you: you will have to take the remaining four courses in order to access later courses. This means, for example, you will have to take ICS 314 even if your “grandfathered” degree program didn’t explicitly list it.
The reason prerequisite changes take effect immediately is because instructors develop course content based upon expectations about what students have learned previously. Think about a situation where a student declared as an ICS major 7 years ago but took time off: how could we possibly backtrack to teach courses according to the prerequisites as they existed in 2009 for the sake of that one student?
We recognize that there will be a transition period and that under some conditions, it will make sense to make exceptions for specific students. If you have questions, speak with Gerald and he will help sort things out.
What will you do to help us get through the core curriculum?
Succeeding in the core curriculum is a shared responsibility of the ICS students and the faculty.
As students, your responsibility is to commit to being successful. That means attending class, seeing the teaching assistants when you feel the need for extra explanation, and putting in the many hours required to master the basics of computer science. We cannot emphasize this last point enough: perhaps the most cited reason for failure in ICS students is “I didn’t have time.”
From long experience, we have learned that it is a rare student who can successfully be full-time in ICS and also have a full-time (or almost full-time) job. Computer science is hard, and it requires an irritating amount of time and concentration to learn! If you have to work more than half time, then you should consider taking a reduced load so you have enough time to succeed in your coursework.
As faculty, we commit to improving the information and educational environments necessary for success by committed students with appropriate aptitude for the material. During just this past year:
- Along with students from ACM Manoa Student Chapter, we designed and implemented the ICSpace, a community lounge which provides a 24×7 space for student meetings and activities. This space is ideal for learning with others: take advantage!
- We developed the Courses.ICS site where you can now access well-organized review materials for the six core courses (and other courses as well).
- We are deploying modern pedagogy (such as the flipped classroom) and custom educational software support (such as the Morea Framework).
In coming years, we hope to provide even more help. For example, we would like to institute peer learning sessions where undergraduates who have already finished the core curriculum can provide study support.
ICS seems so hard! Is the degree even worth it?
As ICS faculty, we obviously think so. Computer science is without a doubt a very marketable degree:
- The UCSD Hot Careers for College Graduates lists “software development” as the Number 1 top career.
- The Bureau of Labor Statistics for Software Developers lists their median pay as $97,000 and that their job growth rate is much higher than average.
- “Computer Science” is reported as the major with the highest starting salary according to an article in Forbes.
But let’s be clear: if computer science was easy, it wouldn’t be so well paid and there wouldn’t be so much opportunity. There is a lot of competition for the good jobs in computer science. We want you to successfully compete for those jobs, and the core curriculum is one step we are taking to help you get there.