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/