Rosetta Code:Add a Task: Difference between revisions

Content added Content deleted
(Need discussion of task syntax.)
(→‎Task focus inclusion: Solidify langauge)
Line 16: Line 16:


===Task focus inclusion===
===Task focus inclusion===
Generally speaking, the goal is to address a problem a programmer may face or want to think about. This could be a practical problem, a demonstrative one, or even one of entertainment. However, the common theme across all tasks needs to be increasing competence and understanding of the tools in question, by example or by annotated counterexample if necessary.
Generally speaking, the goal is to address a problem a programmer may face or want to think about. These include (but aren't strictly limited to):
* Practical problems
* Problems which demonstrate concepts
* Simple entertainment.

As for discouraged areas, remember that Rosetta Code is a tool of education, not a code repository. "Code golf", or the finding of the absolute most succinct expression of a solution as its own goal, is rarely idiomatic or practical use of the languages in question, and so is also difficult to justify in a demonstrative context.

The common theme across all tasks must be increasing competence and understanding of the tools in question, by example or by annotated counterexample if necessary.

===Task focus exclusion===
===Task focus exclusion===
As languages are the richest resource of comparison on Rosetta Code, a task should not be so specific as to invoke a particular language as being the only one allowed to solve a task. A task should also not be so specific with its other requirements that there is only one language capable of solving it. Best-effort solutions ("this isn't exactly possible in Ayrch, but something practical solving the language's idiomatic analog would be") are often fine, so a task writer may find that styles "use technique X to solve problem" and "solve problem using technique X" may need to be interchanged to make a useful number of solutions possible.
As languages are the richest resource of comparison on Rosetta Code, a task should not be so specific as to invoke a particular language as being the only one allowed to solve a task. A task should also not be so specific with its other requirements that there is only one language capable of solving it. Best-effort solutions ("this isn't exactly possible in Ayrch, but something practical solving the language's idiomatic analog would be") are often fine, so a task writer may find that styles "use technique X to solve problem" and "solve problem using technique X" may need to be interchanged to make a useful number of solutions possible.