The Computer Science Department has decided to revise the entirety of Computer Science I for the fall semester. Following a six-week pilot program, the new version of the course hopes to fix the previous perceived failings of the course.
Executive Officer of the Computer Science Department David Goldschmidt explained that one of the main reasons behind the change was that Python is a much more approachable programming language to students who have no programming experience whatsoever. At the same time, he mentioned that Python is a very powerful language and that “[RPI is] not limiting or ‘dumbing down’ our introductory course.” With the many options and features available in Python, it is possible to accomplish in a few lines what would take many in C++. Goldschmidt added that this can change the entire dynamic of the course, which will allow CS 1 students to “look to the paradigm of building software at more of a macro level.” Previously, the course was based around teaching basic syntax of C++ and showing students how to write basic functions and loops.
The plethora of libraries and APIs of Python will also allow students to explore areas that weren’t nearly as accessible with C++. Concepts relating to the internet, in particular, are much easier to handle with Python than C++. This includes data science and social media, which Goldschmidt said are “emerging areas of importance in computing.”
Goldschmidt also mentioned that a major reason for this change to CS 1 is that employers have expressed a need for programmers who are experienced with Python. As a result, freshmen taking the revamped course will attract more attention from computing companies, even after their freshman year. The Computer Science Department hopes that this will encourage students to pursue internships earlier than before; many tend to do so after their sophomore year.
Although there have been concerns that the students who take CS 1 will not be prepared for Data Structures, Goldschmidt explained that there should not be any issues. “We’ve always assumed that students in that course may or may not know C++, since many students have AP credit using Java or simply skip CSCI-1100 due to programming skills in any language,” he said. Data Structures will also incorporate a review of C++ during the first few weeks of the course. Students will also learn C++ in later, more advanced computer science courses.
Another hope is that the switch to Python will attract more students to pursue a computer science degree; despite its already large pool of students, computer science is one of the most popular majors available at RPI.
Computer Science I used to be taught by Professor Martin Hardwick. However, he is much more experienced with C++ than Python, and it was decided that the professors who would teach the course for its first official semester would be Professors Sibel Adali and Chuck Stewart.
Members of the Rensselaer community who want to know more about the revamped CS 1, the professors, and its incorporation of Python can contact Goldschmidt at goldschmidt@gmail.com.