
Switching intro programming language courses
At St. Joseph's University, we're currently considering switching
from
Pascal to C or C++ for our introductory programming course.
In part, this is the result of rumors that the advanced
placement (AP) exam will be moving from Pascal to C++ as well as
the consideration that there is a much larger market out there
for C and C++ vs. Pascal. Rather than go through a debate on
the relative merits of the three languages, we're interested in
how the mechanics of such a change might work.
With this in mind, we'd like to ask those of you who either
have actual experience in changing the curriculum from Pascal
to C or C++, those who have experience in moving from C to C++,
or those who have been teaching C or C++ as the *first*
programming language for your experience and comments. We're
obviously more interested in the first group, but certainly
welcome comments from the other two groups on the C/C++ issues.
We'll post a summary of the responses in a couple weeks.
As a guide to your response, please consider the following questions:
Material:
--------
What text(s) do you use for either C or C++? How do you like them?
How early do you cover pointers? Do you delay covering pointers until
the second semester?
What versions of C/C++ products (i.e., Borland C, Visual C++, gcc/g++, CC, etc.)
have you tried for instructional purposes?
What environment are you using (Unix/Windows/Mac/etc.)?
What are the experiences of the students (good and bad) with these products?
Transition questions:
--------------------
What was done to prepare the faculty for the change? How many were
already familiar with C/C++ (please indicate which language)?
Was C/C++ already in use for succeeding courses?
When the change was made in the intro course, how many other
courses were changed to use C/C++ as the primary language?
Were students who had already learned the previous intro language
"grandfathered" so they could still use it for their assignments?
If so, how smoothly did this work?
Are a significant proportion of the intro programming course
students majoring in something else (e.g., math, psychology)?
What, if anything, was done to accommodate these students?
Did they respond differently to the changes than the majors? How so?
What kind of support was available from the university?
Did you already have lab personnel familiar with C/C++? With
the specific package (Visual C++, etc.)?
Do you have upper-class/graduate student TA's?
Performance evaluation questions:
--------------------------------
Are you happy with the change?
What complaints/praises has the change elicited from students? faculty?
What is the relative performance in further courses of students who start
with C++ compared to those who start with Pascal? of students who
start with C vs. those who start with Pascal?
What is the relative performance in further courses of students who learn
C++ after learning Pascal vs. students who learn C++ first? of students
who learn C after learning Pascal vs. students who learn C first?