Beefy Boxes and Bandwidth Generously Provided by pair Networks
Pathologically Eclectic Rubbish Lister

comment on

( [id://3333] : superdoc . print w/replies, xml ) Need Help??
I think it's great to see all these golf challenges in the Monastery lately. (To those who frown on Perl golf; remember, it's just for fun, this code will never be in production!)

Here are a few tips I've come up with on writing a Perl golf challenge.

Describe the problem as clearly as possible. How frustrating it is to work on a great solution that turns out to solve the wrong problem! Watch out for ambiguous words like 'numbers' (is that integers, reals, whole numbers...?) or 'words' (is that alphanumerics, non-whitespace, ...?).

Explain any boundary cases. Ensure an even playing field by making sure everyone has to do the same work. Of course, something will turn up that you didn't think of ("but yours fails if the list is empty...").

Provide sample input and output. You can clarify the challenge and provide a test case to all the players at the same time. If the example can be pasted directly into a test script, even better!

Show a solution. The same benefits as an example, plus you can demonstrate how you want the subroutine or program to be called. Of course, it doesn't have to be your best solution...

Be ready to clarify. Some joker will have a question he wants answered or an ambiguity he wants resolved before posting his solution. Whan this happens, pick the answer you like best and update the challenge.

Keep on golfing! First round is on me at the 19th!

In reply to Tips on Writing a Golf Challenge by chipmunk

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.