11
\$\begingroup\$

Recent example: Code Golf for a^b mod n.

Is there a policy I'm missing about what's too easy? If not...

Should questions I personally dub too easy be...

  • Ignored and left for interested users?
  • Downvoted?
  • Flagged?
  • Commented with a policy of some sort?

What, if anything is too easy?

  • Arithmetic? See example. (Counter: Esolangs)
  • Anything implemented trivially by builtins in most languages?
  • Anything in a beginner book?

Would guidelines be different for code golf, code challenge or puzzles?

\$\endgroup\$
  • 8
    \$\begingroup\$ Sometimes in code golf you think something is easy and then you see some of the answers... \$\endgroup\$ – Eelvex Mar 14 '11 at 8:56
  • \$\begingroup\$ a^b mod n is not so easy when one has to write ltor() function that make that algo O(bits(b)) in what I remember \$\endgroup\$ – RosLuP Sep 3 '17 at 15:42
7
\$\begingroup\$

I don't necessarily object against easy tasks. Basically, an easy one can allow you to take a break from your hard golfing life and doodle something for fun which doesn't need the same amount of work like a harder or more complex task.

That being said, I do believe that too many too easy tasks are not particularly helpful. If people come to the site and see 25 different tasks, all just taken from 5th grade math text books, then something is wrong, I guess.

Once in a while that can be entertaining, but not multiple times a day. If the only challenge or puzzle to such a task is how short you can write the invocation of a formula or a single loop then those things aren't particularly interesting (to me at least). They also belong in a different category. Those aren't »easy«, they are »trivial«.

That being said, I'd rather not have every task on this site at the complexity level of Robot Finds Kitten. Even less so at the level of Implement PCRE in your language. The latter task is probably a mistake, though.

I will happily vote down tasks I consider trivial, boring or otherwise uninteresting. That's what votes are for in my opinion: To give feedback to the person posting the task whether it's received well or not. Votes are my own opinion and do not need to match others'. Sometimes, they do, though.

Someone might (correctly) note that I have answered a few of those I have downvoted as well. That's mostly boredom. Spending a minute of cobbling together a protest answer doesn't exactly hurt me, regardless of how I think of the task. I don't consider the number of answers to a question a criterion of quality. Trivial tasks encourage many, many answers that can be churned out in a short time. That doesn't make them good tasks and I hope people who write those tasks will not see the number of answers as encouragement to write more of them.

Another thing to note: Not every task that looks simple is it, necessarily. One seemingly simple task I actually enjoyed was Hitting 495 (Kaprekar). It calls for a relatively simple algorithm, probably a special case and some math. At least that's what they want you to think. J B came up with a wonderful answer that just stops at a fixed point for the algorithm and emits the number of steps until that happens; no special case, no embedded constant for 495 – very elegant. And I noticed when building my complete set of test cases that the number of steps depends on the first and last digits of the input number, nothing more, negating the need for actually executing the algorithm.

Such examples are rare, though. Not every simple task will have that much hidden complexity. Perhaps having different ways to solve a task is a criterion whether a simple task could be entertaining and have unexpected solutions. Not entirely sure of that, though. And I am guilty of posting tasks with a predefined idea how they are to solve as well. It is easier sometimes. Not necessarily better.

\$\endgroup\$
  • \$\begingroup\$ I think that it's also fair to take into account whether the questioner realised that the question is trivial. E.g. summing odd numbers, computing n mod 2^m, incrementing squares all deserve a downvote, but with summing Fibonacci numbers I gave @ralu the benefit of the doubt. \$\endgroup\$ – Peter Taylor May 7 '11 at 17:44
  • 1
    \$\begingroup\$ Peter: Given that we have at least one user who is 12 on the site and a few others who claim ages below 20 I fear some of them just might not realize that the task they're posting is trivial ... of course, that's an easy problem to solve, given that we have a chat and a puzzle sandbox. \$\endgroup\$ – Joey May 7 '11 at 18:12
2
\$\begingroup\$

Good question. I see 2 problems, genuinely too easy questions, and questions that are too easy to solve in some languages because they implement the function partially or completely. The latter is the biggest problem. This brings back the question about setting a specific language for a question, I personally prefer that by far over questions that grow trivial.

In general code golf allow for some easier questions since it may be quite far from trivial to shorten a program even though the basic implementation is easy to write.

\$\endgroup\$
-1
\$\begingroup\$

My definition of easy: algorithms that run in O(1) (assuming hardware numbers, where there is a upper bound of running time of parallel hardware arithmetic operations), which means most of the O(1) number problems have a trivial or non-trivial formula to solve it, and the puzzle creator allows them to do so.

However, not everyone are good at math and will find O(1) solutions for all sequence and series problems (e.g. geometric series).

Of course, implementing arithmetic and other numerical operations in esolangs or from scratch are reasonably challenging.

Find sum of odd numbers

\$\endgroup\$
  • \$\begingroup\$ Well, the task you linked explicitly allowed looping solutions before (as the upper bound of a and b was only 10,000 – that upper bound basically screams »Hey, it's ok to use brute force«). So back then there were two possible solutions while now there is only one (finding or knowing a formula). Regardless how good someone is at math, if they don't know the formula, one of the other posts will tell it anyway. \$\endgroup\$ – Joey May 7 '11 at 6:46

You must log in to answer this question.

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