1
\$\begingroup\$

Would a question which calls for an obfuscated answer be considered invalid? This has come up recently, and I would like to see a community consensus on this.
I am not asking this question to defend my own challenges, but rather to see what people think about such questions. Both responses from moderators, and normal users alike are appreciated.

tl;dr is obfuscation==underhanded

\$\endgroup\$
3
  • \$\begingroup\$ I know it is valid, but I can't quote any metas or anything. \$\endgroup\$
    – Riker
    Commented Jul 2, 2016 at 23:17
  • \$\begingroup\$ So would you say that obfuscation based questions are considered on topic or off topic? \$\endgroup\$ Commented Jul 2, 2016 at 23:22
  • \$\begingroup\$ On-topic, but hard to do without being too broad. \$\endgroup\$
    – Riker
    Commented Jul 3, 2016 at 0:48

2 Answers 2

4
\$\begingroup\$

In most cases, it's the same thing.

Making code look like it does something else and making code difficult to understand rely on the same principle. Ultimately, the goal of both is to hide the real purpose of the code.

Case in point, your self-answer to the challenge that spiked this discussion looks like a tutorial about pseudo-random number generation, yet produces a specific output.

That doesn't mean that all challenges that involve obfuscation are necesarily off topic. For example, we had cops and robbers contests where the robbers had to find certain inputs that produced a certain output. That's objectively measurable (shortest code for cops, most cracks for robbers), and doesn't suffer from the same problems as obfuscation popularity contests.

For the latter kind, all the reasons that drove the community to blacklist underhanded challenges still apply. They're essentially code trolling in disguise, don't add any quality content to the site, and are too broad and too subjective for the scope of PPCG.

\$\endgroup\$
3
  • \$\begingroup\$ Agreed, I do see your point. I think my self answer may not have been the best representation of the question. This does make sense. Thank you for your time. \$\endgroup\$ Commented Jul 3, 2016 at 0:25
  • \$\begingroup\$ Wait... that "tutorial" thing isn't the answer itself. It's the output of the answer. \$\endgroup\$
    – busukxuan
    Commented Jul 3, 2016 at 0:35
  • \$\begingroup\$ @busukxuan Yes, it's a code-generation challenge. The objective to to write a program that writes obfuscated programs. \$\endgroup\$
    – Dennis
    Commented Jul 3, 2016 at 0:57
1
\$\begingroup\$

No. Obfuscation challenges aren't .

This is the full description of :

An underhanded challenge is a challenge to write a program that looks as if it is doing one thing, but does something else. For example, a program that outputs the digits of pi up until the 100th decimal place, when it does something else, might be underhanded if it conceals its doing so.

Votes cast on challenges should take into account how well (or poorly) hidden the bug is.

This is the full description of , which isn't even similar to :

This tag indicates that a challenge involves obfuscation. Often, this just means that certain characters can't be used, or that you need to hide what you are doing.

Obfuscating code is making the code very hard to understand for humans, and is much used to protect source code. Most obfuscated codes are obfuscated by computer programs (obfuscators). Unfortunately, obfuscation doesn't provide code protection for 100%, because there is also a lot of software that de-obfuscates the code, and makes the code easier to understand for humans. Humorously, golfing code makes the code harder for humans to read, so it is a form (though very easily reversed) of obfuscation.

\$\endgroup\$

You must log in to answer this question.

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