Comments (6)
Good catch! Including @apicardgoog because he authored the original question; @apicardgoog, do you have any thoughts on how much hinting/description you want to give here?
from tie.
I'm open to modifications but I'm not sure what to recommend here. I would like the candidate to think about edge cases on their own. Maybe we could phrase it as "An abbreviation of a word follows the form if it shortens the word"?
from tie.
I'd contend (and I just said something similar on another issue) that part of the point of these questions is to leave the description somewhat open-ended, as we're trying to mimic an interview setting rather than giving an exact specification of expected inputs and outputs from the get-go. To that end, we shouldn't give too many examples (especially of ones with edge cases). I think the student should be able to glean the intention of the "abbreviate" function from the name of it (since something that is the same length or longer is not abbreviated).
Just my two cents.
from tie.
I agree that we should not enumerate all edge cases in advance, or specify a full set of inputs and outputs covering all corner cases.
However, I think that the requirements of the problem need to be clear, otherwise the problem is ambiguous and there is no one to ask clarifying questions to (which is the main difficulty here). I don't really think that the name of the function alone is sufficient to deduce the purpose of the function.
I can think of two possibilities (there may be others):
- Have some sort of way for students to "ask questions". This could be as simple as having a question mark button in the bottom right and allowing them to select, multiple-choice style, clarifying questions from it. That way, although they might not be able to practice coming up with questions on their own, at least they get a feel for what sort of thing to ask.
- Use a formulation similar to what @apicardgoog suggested -- i.e., describe the problem clearly ("only abbreviate the word if the resulting word is shorter") but leave the student to figure out the implications of this requirement.
Appreciate further thoughts.
from tie.
I actually really like the idea of the question mark + clarifying questions button if we're trying to encourage good interview behavior. I think we could do both things rather easily, though the nuance around how to do the clarifying questions well would probably warrant a longer discussion. I'd say let's start with Antoine's suggestion and then keep the clarifying questions thing as an option for future development.
from tie.
Fixed in #114. Thanks, @jianjinjian!
from tie.
Related Issues (20)
- _processCodeCompilationServerResponse should include stderr.
- Recursive Loop check only works for Skulpt errors. HOT 1
- Add error message / redirect / butter bar for invalid question ID / inactive question retrieval attempts.
- No "tie-button-red" CSS class exists in LearnerViewDirective. HOT 2
- (a) Make it more clear what language the coding window is in and (b) Not clear that 's' should be treated as a string. HOT 9
- client/question/question.html URL seems redundant HOT 3
- Pop up privacy statement on first use or display on download page for stand-alone version HOT 1
- Remove the extra characters that appear at the end of stdout. HOT 3
- Add new test for ReverseWords
- Changing the name of an argument in the main function results in a "modified starter code" error.
- Night mode CSS is buggy when horizontal scroll is needed for open-source version. HOT 1
- Clicking "Reset Code" does not clear the feedback window. HOT 3
- Condense user stdout when it contains many lines.
- Buggy output tests currently take into account the output for all tasks, whereas they should only consider the output for the task they're defined in.
- The video at https://google.github.io/tie/ fails to autoplay when the page is loaded. HOT 3
- Code details window needs higher z-index HOT 1
- "Reset Feedback" Button should be removed and "Reset Code" should be updated.
- Update file overview for FeedbackGeneratorService.js
- Skulpt syntax error messages do not match standard Python
- Can't find how to go to next problems
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 tie.