Beefy Boxes and Bandwidth Generously Provided by pair Networks
good chemistry is complicated,
and a little bit messy -LW
 
PerlMonks  

comment on

( [id://3333]=superdoc: print w/replies, xml ) Need Help??
Brian, you're hitting lots of nails square-on. I'd harp more on things they should know how to implement in Perl, and also HOW they are implemented. The most empowering courses I ever took (and I haven't taken a lot of pure CS) were courses that got into the implementation of things: data structures, algorithms in abstract, and the fundamentals of interpretation and compilation. I think it's critical to understand the nature of data representation and 'little language' creation and parsing.

It's also Awfully Damned Important to know something about efficiency and the various coding tradeoffs one has to deal with in the Real World: CPU, memory, disk, network bandwidth, propagation latencies, etc., etc., etc.

I also think Perl has benefitted greatly from Larry Wall's 'swing from the hip' mentality. I don't consider myself a Perl master by any means; in fact, by your scales I'm not even sure I'm even 'intermediate'. ;-D What I do know is that I'm a damn good programmer and I manage to succeed in solving all my tasks, and it's definitely 'hubris' that carries me through the tough spots.

I think there's something you really need to get across to any programmer who you want to launch into the 'great' category that runs counter to what you'd tell a newbie. A newbie needs a dictionary, i.e., lots of study of perl books, lots of perldoc absorbtion, etc. Great programming comes from understanding of the gestalt of the system, the tools, and the project. (oh, hey, and don't forget users and management!) A programmer who doesn't start taking flying leaps will always be a good intermediate programmer, but he'll never become a Larry Wall or a Brian Kernighan, and it's all too easy -- especially in an academic environment -- to stress the explicit technology of coding so much that students get bogged down.

Perhaps this is outside of the scope of your question. After all, you are asking for ideas for formulation of an 'intermediate' level course. I do think you should think about what I've said in the sense of not choking your students who are capable of going further. Then, perhaps, we can brainstorm a 'how to become a genius programmer' course with you on another thread. :D

In reply to Re: How do you master Perl? by samizdat
in thread How do you master Perl? by brian_d_foy

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: (4)
As of 2024-04-16 06:26 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found