Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl: the Markov chain saw

Re: Perl for Non-Programmers...

by footpad (Monsignor)
on Feb 20, 2001 at 20:39 UTC ( #59689=note: print w/replies, xml ) Need Help??

in reply to Perl for Non-Programmers...

I think this is a laudable goal, for there is much that can be confusing to someone with no background or a different background.

If you're assuming a Win32 audience, I think it's important you:

  • Highlight the documentation sources most Perl programmers take for granted: man, info, perldoc, the FAQ's, etc.

  • Note the assumptions most Unix folk take for granted, such as the extensive supporting utilities. Perl was originally invented as a glue language, so demonstrate ways to glues various bits together in the Windows arena.

  • Spend time on the advantages of regular expressions, as well as providing examples of good ones in practice. How do I verify that the user entered a number, a currency value, a date value, etc?

  • Compare and contrast arrays and hashes pretty carefully, again with working examples and techniques. Show and discuss variations.

  • Introduce the main CPAN modules and provide examples of how to obtain and install modules the easy ways and the harder ways, so that those behind firewalls will have the skills needed to get their work done.

  • Spend time discussing the icky bits that confuse many Windows-based newbies, such as the cryptic symbols, map, tie, and so on.

  • And so on.

To make this work, I would come up with a small number of real-world applications/uses and then walk through the development of each. I've found this to be a particularly effective way to develop courseware, especially if you develop things that everyone needs or can adapt to make work in their organization. Examples include a contact manager, a message-taking system, an employee location board, and so on.

It's tough to design a good courseware, but it is possible. Remember, you need to ensure that your readers/students understand the facts you've presented in the material and have the abilitiy to assemble those facts into the solutions to their own problems.

Finally, remember that you not only have to teach non-programmers how to write code, you also have to teach them how to solve programming problems.


Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://59689]
and all is quiet...

How do I use this? | Other CB clients
Other Users?
Others having an uproarious good time at the Monastery: (11)
As of 2017-09-20 13:02 GMT
Find Nodes?
    Voting Booth?
    During the recent solar eclipse, I:

    Results (236 votes). Check out past polls.