Comments (5)
from legacy-docs.
So, what is the reasoning you choose to use when deciding topics?
I have to admit that I think the C# and F# track isn't very consistent in choosing the topics, freely use both goals. That said, I think it is good to discuss this, so thanks for bringing this up.
What I think we should aim for is to describe what the core topic of the exercise is. What fundamental topic will always hold when dealing with the exercise. That should I think exclude possible topics, that depend on an implementation, such as suggesting a regular expression for the pig-latin
exercise, unless of course, you really want people to only solve it using regular expressions (which would be to limiting I think).
from legacy-docs.
IMHO requirements should not be indicated through topic tags.
I would agree with @ErikSchierboom, to take the pig-latin
example, I would likely mark this with a strings
topic. The exercise concerns string handling but the student can perform that string handling in any way they choose that satisfies the tests.
Then, if the exercise is specifically intended to have the student use regular expressions then that is a requirement and it should be specifically mentioned in the exercise readme rather than relying on the student to draw requirements by observing topic tags (it likely should be added as a second topic also).
from legacy-docs.
I think the primary goal is to have topics that are broad and not specific to how the problem will be solved. For example, on the Dart track we have our solution solving the problem in a specific way using enums. The author of adding that problem to the track may only see that as the way to solve the problem, but there are certainly other ways around it.
from legacy-docs.
It might be useful to handle topics at the problem specifications level
Agreed that it might be useful. I used exercism/exercism#4186 to discuss some particulars of the approach.
To summarise my read of answers from those gathered here, it appears that we favour topics that are essential to the problem and/or without a doubt necessary to to solve the problem, rather than those that are merely a possibility for solving the problem. Examples of support:
describe what the core topic of the exercise is. What fundamental topic will always hold when dealing with the exercise
The exercise concerns string handling but the student can perform that string handling in any way they choose that satisfies the tests.
if the exercise is specifically intended to have the student use regular expressions then that is a requirement and it should be specifically mentioned in the exercise readme [...] (it likely should be added as a second topic also)
think the primary goal is to have topics that are broad and not specific to how the problem will be solved.
from legacy-docs.
Related Issues (20)
- Documentation layout is confusing to me. HOT 4
- Wrong link on website HOT 2
- Is unlocked-by always required for non-core exercises? HOT 2
- Mention ordering in configuration/exercises.md
- Exercises based on problems with multiple solutions HOT 2
- I Can Read C++ and Java But I Canβt Read Smalltalk HOT 7
- Request guidance for how to select the list of core exercises HOT 1
- Maintainer docs point to archived repo HOT 1
- Tools repository does not exist HOT 1
- Docs issue: Unable to find "contributing" section in sidebar HOT 2
- Mentor comment box missing tabbing HOT 2
- Track configuration directory lacks document about canonical_data_syncer
- The master branch will be renamed to main HOT 1
- Add documentation about track contributing documentation HOT 4
- Add documentation about track tooling, automation, and bots
- Update contributing guides for maintainers
- first-exercise.md: ends abruptly HOT 3
- Should implement-an-exercise-from-specification.md#configuring-the-exercise include nextercism keys? HOT 2
- Finish incomplete sentence HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
π Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. πππ
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google β€οΈ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from legacy-docs.