History of Elements Program
- Established in the late 1990's
- 12-hour Certificate course for non-CS majors
- Requirements: 2 lower division and 2 upper division courses
one course from outside the CS department can be substituted
Current Elements Program
- 12-hour Certificate as outlined above
- 18-hour Certificate (transcript recognized)
- Requirements: 2 lower division and 4 upper division courses
two courses from outside the CS department can be substituted
Courses Offered and Certificates Issued
Colleges or Schools vs. Certificates Issued
| 2013 |
2014 | 2015 |
Total |
Business | 7 |
5 | 31 |
43 |
Communication | 3 |
| 5 |
8 |
Engineering | 6 |
2 | 18 |
26 |
Fine Arts | 4 |
| 2 |
6 |
Geosciences | 1 |
| |
1 |
Liberal Arts | 6 |
7 | 20 |
33 |
Natural Sciences | 19 |
8 | 37 |
64 |
Total | 46 |
22 | 113 |
181 |
12-hr vs 18-hr Certificates Issued
Year | 12-hour |
18-hour | Total |
2013 | 28 |
18 | 46 |
2014 | 11 |
11 | 22 |
2015 | 60 |
53 | 113 |
Total | 99 |
82 | 181 |
Goal of the Elements Program
- Provide a rigorous set of computing courses to non-CS majors
- Design courses for the work place
- Provide computing skills for those going on to research
Trim the Program
Eliminate courses from our current program that do not meet those
aims. These courses are:
- CS 301K: Foundations of Logical Thought
- CS 302: Computer Fluency
- CS 320N: Computers from the Ground Up
- CS 320N: Visual Programming
- CS 323E: Elements of Scientific Computing
- CS 326E: Elements of Networking
- CS 328E: Intro to Game Development
- CS 329E: Elements of Computing in Society
- CS 329E: Elements of Navigating Cyberspace
Proposed Elements Program
In the proposed Elements of Computing program there will only be the 18-hour
transcript recognized certificate. We will be eliminating the 12-hour
certificate. Students will have to take two programming intensive lower
division courses and four upper division courses. They may substitute
two of the courses with computing intensive courses taken in other
departments.
Core Courses (Lower Division)
We will be offering two sections of each of these two lower division courses
every long semester.
- CS 303E: Elements of Computers and Programming
- Introduction to problem solving and programming using a powerful
scripting language like Python.
- CS 313E: Elements of Software Design
- Introduction to object-oriented programming, data structures, and
algorithms. Design large scale software.
Data Driven Courses
These three courses form the core of what a student who is manipulating
data will be doing - storing data, visualizing data, and analyzing data.
We would like to offer all three courses every long semester. The course
on databases will be a prerequisite for the other two.
- CS 327E: Elements of Databases
- In this course student will learn how to populate and query a relational
database like Oracle using SQL. Design and construct relational schemas
and develop application that interacts with relational database.
- CS 329E: Elements of Data Visualization
-
This course teaches students how to extract, transform, and load data
into a form suitable for visualization. Students will learn how to use
software tools like GitHub, RStudio, R, ggplot, and Tableau to generate
reproducible research quality visualizations.
- CS 329E: Elements of Data Analytics
-
In this course students will learn how to use data mining techniques
to make predictive models to support decision making processes. Students
will learn to use software tools like Oracle Data Miner, RStudio and
R.
Job Market Focused Courses
The courses in this series are not as tightly knit as the data driven
courses but there is a market value for each of these courses. We would
like to offer at least two of these courses from this list every long
semester.
- CS 324E: Elements of Graphics and Visualization
-
Students are introduced to the Basics of 2 and 3 dimensional computer graphics
systems, modeling and rendering, and selected graphics software APIs. Other
topics include interactive graphics, animation, graphical user interfaces,
image processing, and the graphical presentation of information.
- CS 329E: Elements of Web Programming
- The course covers all the web technologies needed to build an
end-to-end application. Students will learn HTML5, CSS3, JavaScript,
JQuery, PHP, SQL, MySQL, and AJAX to build a web application.
- CS 329E: Elements of Mobile Computing
-
This course is an introduction to mobile computing on the Android platform.
The objective of this course is to develop an application using the tools
available for the Android market.
Capstone Course
We are proposing a capstone course for students who would like the
challenge of working on a semester long project in small groups of
2 or 3 students. Instead of our capstone course, students could take
a computing intensive course in their own department.
- CS 329E: Elements of Software Engineering
- Learn principles and practices of software engineering by working
on a project in a small group. Students would have to use and master
various software tools for source control, unit testing, and documentation.
Challenges
There are several challenges that we are facing with the proposed
Elements program:
- Lecturers: Currently most of our Elements courses are
taught by adjunct faculty. The current modus operandi is not cost
effective in terms of quality of instruction and continuity.
- Student Assistants: We are limiting our class sizes
due to the restrictions in our TA and proctor budgets. None of our
courses have multiple choice tests.
- Lab Space: The lab space in GDC is fully occupied by
CS majors. The non-CS students need lab space for collaborative
work.