Beefy Boxes and Bandwidth Generously Provided by pair Networks
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.

-----------------------------------------------------
Dr. Michael K. Neylon - mneylon-pm@masemware.com || "You've left the lens cap of your mind on again, Pinky" - The Brain
"I can see my house from here!"
It's not what you know, but knowing how to find it if you don't know that's important


In reply to Re: (OT) Where is programming headed? by Masem
in thread (OT) Where is programming headed? by Ovid

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post; it's "PerlMonks-approved HTML":



  • Are you posting in the right place? Check out Where do I post X? to know for sure.
  • Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
    <code> <a> <b> <big> <blockquote> <br /> <dd> <dl> <dt> <em> <font> <h1> <h2> <h3> <h4> <h5> <h6> <hr /> <i> <li> <nbsp> <ol> <p> <small> <strike> <strong> <sub> <sup> <table> <td> <th> <tr> <tt> <u> <ul>
  • Snippets of code should be wrapped in <code> tags not <pre> tags. In fact, <pre> tags should generally be avoided. If they must be used, extreme care should be taken to ensure that their contents do not have long lines (<70 chars), in order to prevent horizontal scrolling (and possible janitor intervention).
  • Want more info? How to link or How to display code and escape characters are good places to start.
Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others sharing their wisdom with the Monastery: (6)
As of 2024-04-23 13:38 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found