I think Steven's analysis is very perceptive. A couple of comments

1. These are types of programming activity, not types of people.
2. Many people who carry out one of these activities during their career
also engage in at least one other.

I know quite a few people who work as IT consultants who never did a
computing degree anyway. I know one who has no degree. 

Maybe I'm questioning whether the content of a degree needs to be
tightly determined by people's future career activities/needs, since it
seems to be pretty common now for people to engage in several very
disparate areas of activity during their working lives.  

-----Original Message-----
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf
Of STEVEN SHAFFER
Sent: 15 January 2008 17:04
To: discuss@ppig.org
Subject: RE: PPIG discuss: Programmer education ain't what it used to be

Although this posting will sound political and somewhat wishy-washy, I
think we need to make some important differentiations here.

There are at least four categories of people who "program":

1. "End-user" programmers who write Excel macros, Javascript, VB
mini-programs, SQL commands, SAS scripts, etc.  These people may be
professionals in engineering or finance or other "real" disciplines, but
their main job title does not include the word "programmer."

2. Application programmers who use development environments to create
customized solutions to specific problems.

3. Systems programmers (at least that's what we used to call them) who
/write/ those development environments, including compilers, graphics
libraries, etc.

4. Computer science researchers, who investigate theoretical aspects of
CS and forward their findings (via journals, etc.) to category #3 above
and therefore down the line.

All of these people create "real" programs.

The problem that I see after years of both industry and, later, academic
experience, is that many CS departments are not clear about which of
these categories of "programmer" they are interested in.

I don't think I need to elaborate too much -- some schools are serving
students in category 2, some 3, and some 4 -- all of us probably have to
also serve group 1 in service courses.

I've been associated with U.S. post-secondary institutions from
community colleges to a research-1 university, and I have seen this all
the way up the line.  Many students come to a college or university
without even enough knowledge to know how to ask the question "what
kinds of computer science do you teach?", let alone what the answer
means.  Also, many departments are loath to let any potential students
walk out the door, and so attempt to be all things to all students. Thus
we have the kinds of arguments posted here in curriculum meetings.

Maybe we can come up with a standard nomenclature to differentiate these
aspects of "programming" so we can have the opportunity to move forward
in researching how best to educate each type of student.


Steven C. Shaffer
Assistant Professor
Computer Science and Engineering
Penn State University Park
USA
[EMAIL PROTECTED]
ALSO CHECK OUT: WWW.TEACHINGPROGRAMMING.COM

 
----------------------------------------------------------------------
PPIG Discuss List (discuss@ppig.org)
Discuss admin: http://limitlessmail.net/mailman/listinfo/discuss
Announce admin: http://limitlessmail.net/mailman/listinfo/announce
PPIG Discuss archive: http://www.mail-archive.com/discuss%40ppig.org/

----------------------------------------------------------------------
PPIG Discuss List (discuss@ppig.org)
Discuss admin: http://limitlessmail.net/mailman/listinfo/discuss
Announce admin: http://limitlessmail.net/mailman/listinfo/announce
PPIG Discuss archive: http://www.mail-archive.com/discuss%40ppig.org/

Reply via email to