This is to discuss Golf Practice: Python and the Golf Practice question type it suggests. Some questions that came up:

  • Is this type of question on-topic for PPCG?
  • Is it OK that many of the individual answers turn out the same?
  • Should/can we trust users to come up with their own answers without peeking at others' answers?
  • What should the policy on spoilers be?
  • Should more collaboration be encouraged?
  • How can less experienced golfers for that language be motivated to participate?
  • \$\begingroup\$ Someone want to write a wiki for the new [golf-practice] tag? \$\endgroup\$
    – Robin
    Commented Nov 21, 2014 at 21:38

3 Answers 3


Is this type of question on-topic for PPCG?

I certainly think so. It is a kind of programming puzzle, and it has a well-defined, objective winning criterion. One potential problem is the language-specific-ness, which is discouraged on PPCG in general. However, I don't think it's much of a problem in this case, and that the Golf Practice question acts as a kind of companion to the general tips CW.

One problem that was brought up is that the question inherently consists of plenty of small, unrelated problems. I don't think they're entirely unrelated--one thing that they have in common (or are supposed to have in common) is that they all correspond to situations that occur more-or-less frequently when golfing in the particular language, and highlight important tricks and shortcuts.

Is it OK that many of the individual answers turn out the same?

I don't see this as a problem. While I guess many essentially identical answers to a question are "typically" discouraged on SE, we all know that PPCG is an exception to the rule, and that the meaning of Q and A in Q&A is different for us than other sites. I agree that SE's format isn't perfect for this kind of question, but I don't think that should be a reason to dismiss the question type.

I think this is more of a problem for the various 9-hole/18-hole questions than for Golf Practice, really.

Should/can we trust users to come up with their own answers without peeking at others' answers?

This is a good question, and certainly something where the SE format doesn't mesh well with the question itself. I don't think it's fatal if a user could possibly "cheat", because the main point of the question is to provide practice and one user cheating doesn't prohibit others from practicing. I'm not much of a pythonista, and I still had lots of fun with Golf Practice: Python even if I didn't get close to the best scores.

What should the policy on spoilers be?

Relaxing the spoiler requirement after a certain amount of time if some number of answers have reached the same (lowest) score seems reasonable to me. I like the spoiler aspect, although I did find it a bit annoying to not know whether anyone had obtained a lower score at a particular question. Not sure whether I'd prefer to know the sub-problem length or not.

Should more collaboration be encouraged?

Also a good question. Collaboration could be encouraged after the "unspoiler" point, perhaps?

How can less experienced golfers be motivated to participate?

I think the question itself was pretty motivating as it is already. Not sure how it could be improved further.

  • \$\begingroup\$ -1 Can I copy your answer below, or your submission on code golf challenge? \$\endgroup\$
    – Xwtek
    Commented Dec 29, 2015 at 11:56

Let me begin with my experience with that question:

I ignored the answers and had a quick take at the challenges alone. Given that there were already many answers and I wasn’t keen on counting, I just started comparing my solutions to those in the existing answers, so I could feel happy about the ones I got “right” and learn something from the others. Unfortunately that meant going through a lot of answers, which were mostly the same – which rendered the otherwise nice experience much less enjoyable.

I think the main issue here is that you want this questions to act as classical challenges: People can use them for practice, but comparing and evaluating your performance as well as learning something becomes difficult. Less experienced golfers have no motivation to participate in form of answering, because experienced golfers will have the best scores. Of course, they can still answer, but if everybody did that, these questions would even more than now become a hoard of mostly redundant information that does not benefit anybody.

I thus suggest the following changes:

  • The challenges are posted as a single regular question (containing naïve solutions, as the existing question does).
  • The OP posts and accepts a community-wiki answer containing the best solutions and close and interesting runners-up.
  • If somebody finds a solution to one subchallenge that is at least at par with the existing best solutions, they edit it into the community-wiki answer and post it as a regular answer so they can get credit in form of upvotes.
  • All solutions are behind spoiler markup, but the high scores for the individual challenges are visible (so you can check whether you already have the best solution without needing to see the answer).
  • \$\begingroup\$ What's your opinion on rosetta-stone challenges and 9-hole golf courses (codegolf.stackexchange.com/questions/16707/9-hole-challenge, codegolf.stackexchange.com/questions/19163/…)? Do they suffer from the same problems? If not, what makes them different? Only the scope of the subchallenges? \$\endgroup\$ Commented Nov 18, 2014 at 23:24
  • 1
    \$\begingroup\$ @MartinBüttner: From a quick glance: They are actually intended to be general challenges. Also the subchallenges are somewhat interconnected by the requirement to use different languages; there is no high risk of duplicate information piling up. \$\endgroup\$
    – Wrzlprmft
    Commented Nov 18, 2014 at 23:36
  • \$\begingroup\$ What if the OP regularly compiles and updates a list of top scores and a list of top solutions, individually spoilered? \$\endgroup\$
    – xnor
    Commented Nov 19, 2014 at 9:45
  • \$\begingroup\$ @xnor: Better, but this would have to happen very early and I still think that regarding this as a challenge produces a lot of redundant stuff that nobody really wants to look at. \$\endgroup\$
    – Wrzlprmft
    Commented Nov 19, 2014 at 11:31

Are we sure that is the best golf ?

The only thing that I think will not work out in such kind of questions is that they are based on the assumption that the OP has the best solution to the problems he is posting.

Posting the optimal solution code length gives other users a baseline to achieve and might even hinder them from actually getting to a more optimal solution.

I say that in such questions, no baseline/threshold/goal should be provided. If the OP has answers to all the questions, which he think are the most optimal solutions, he is free to post them as an answer (after a certain time period, allowing other users to give it a try).

Some might say that this converts the question from a practice question to a normal code-golf question. While it might be doing so, that is what I personally prefer.

  • 1
    \$\begingroup\$ xnor didn't originally provide the (presumably) optimal solutions. only after no improvements were coming in any more. so I think that's not vital to the challenge type anyway. \$\endgroup\$ Commented Nov 19, 2014 at 12:17
  • \$\begingroup\$ I see, but the point is now valid for future answers. The question has been asked only yesterday .. and within a day, a reference was provided. \$\endgroup\$
    – Optimizer
    Commented Nov 19, 2014 at 12:19
  • 1
    \$\begingroup\$ What I'm saying is, providing "optimal" answers isn't necessary for this challenge type, so whether providing them or not is a good idea seems irrelevant to whether the challenge type works well. \$\endgroup\$ Commented Nov 19, 2014 at 12:45
  • 1
    \$\begingroup\$ Indeed, my solutions weren't optimal -- there was an improvement I missed. I didn't mention what I thought optimal scores were. I accepted an answer only when multiple users came up with the same length and activity seemed to die down. So, I don't think the OP having optimal answers is necessary. \$\endgroup\$
    – xnor
    Commented Nov 20, 2014 at 0:39

Not the answer you're looking for? Browse other questions tagged .