laziness, impatience, and hubris | |
PerlMonks |
comment on |
( [id://3333]=superdoc: print w/replies, xml ) | Need Help?? |
I disagree that C is obsolete; look at nearly every Linux program, for example. However, because C is a subset (to some extent) of C++, if you teach your students C++, you've basically taught them C as well. So saying that you don't teach C but you do teach C++ isn't really a problem.
However, to teach them *only* object-oriented programming is not being fair to the students. Procedural programming still has it's place (who's going to write a OOP device driver??!), and the other programming philsophies such as functional can be useful. I do agree that most Comp Sci students will be using one of C++, Java, or Vis Basic as their main programming environment, and I cannot fault the university toward teaching those languages (as thie is what the industry appears to demand), but they should at least touch on other aspects of programming, particularly for those students with higher asperations in their programming careers. Would this necessary mean teaching C specifically? Probably not. Continuing to think about the problem, say that I wanted to teach some alternate language or approach (say, LISP). Most likely, I'd only have a semester to do this, and while that would be enough time to teach such a language, it would not be enough to go into all the details and tricks with it. So a second semester might be needed. But then you have to consider what population of the students would take this course; only a small fraction of comp.sci. students, in my experience, would have the initiative to take such a course. Thus, it would be very likely that a course may be offered one year, but the low turnout kills it since it otherwise takes up valuable classroom space. Alternatively a course that dealt with alternative languages as a whole, and covering all the different types of programming models, would probably get more students, but there is NWIH you could teach all the tricks and details of these languages in a single semester, and I'd rather avoid teaching such a mess of a course instead of having it as separate units. That said, I believe that most people that are true programmers at heart are ones that can self-teach themselves nearly any language; I know I have. Yes, it's nice to have "C++/Java training" on your resume so that you can get hired, but to also be able to demonstrate that you can learn other non-standard languages on your own would be a more valuable skill, at least to me. If the company decided to try a new approach and required that a new language or similar feature set be learned from scratch, I'd rather have someone that has demonstrated the ability to quickly learn a skill on their own rather than someone that can only cookie-cut out new programs and would require training in the new language.
-----------------------------------------------------
In reply to Re: (OT) Where is programming headed?
by Masem
|
|