How do I write a good answer for MATLAB Answers?
古いコメントを表示
Since the question, "How do I write a good question for MATLAB answers?" has been asked, I wondered if we could benefit from the corresponding question about giving answers.
Some of the things I have in mind:
- How to (or indeed whether to) coax more information out of a sparse OP?
- Do I ever want to reveal EVAL?
- How to deal with obvious homework cheats?
- If I edit an answer (or have a better one) I have given, do I put a big EDIT: to demarcate the new stuff or submit a new answer?
- For stock questions (think FP issues), do I put a link to a previous Answer post or the FAQ?
I think each of us has our own approach to all these and more issues, but I'd still like to see what people have to say in one spot. So what other issues come up when you answer a question on Answers? How do you address them? Should we (the regulars) try to stick to a "standard" approach to these?
Thanks
13 件のコメント
Oliver Woodford
2011 年 2 月 3 日
Crumbs. And there I am trying to master the questions! I'd say coaxing more info out of a sparse OP is more on the good question side of things, though.
Doug Hull
2011 年 2 月 3 日
I think it makes sense to have ONE suggestion per answer. They can be voted up separately to give an idea of individual importance.
Andrew Newell
2011 年 2 月 3 日
What does question 2 mean?
Matt Fig
2011 年 2 月 3 日
Walter Roberson
2011 年 2 月 4 日
I don't agree with one suggestion per answer. Unless each suggestion manages to cover the entire situation, then the original poster is going to put together aspects from several of the suggestions to come up with a final answer. Which of the suggestions should the original poster "accept" ? They cannot accept a set of answers.
An answer that is "accepted" should either be the one that solved the problem as asked, or should be the one that provides the most important information towards solving the problem. If the steps towards solving the problem have been deliberately distributed amongst several answers by the respondent because there are multiple avenues available to solving a sub-problem, then "accepting" becomes much less meaningful.
There is a difficulty that there is no clear distinction as to what Answers _are_. Are they intended to be relatively complete solutions to the question, or are they intended to be steps towards solving the question?
In my opinion, "one suggestion per answer" changes the nature of the system sufficiently that at the very least a modified voting system would be required.
Andrew Newell
2011 年 2 月 4 日
A good example is this question. If there is consensus on some of the points, it might be useful to put them together in an answer and accept it.
Andrew Newell
2011 年 2 月 4 日
Often it is best to answer the question they are asking and then answer the question they should be asking - both in the same post.
Jan
2011 年 2 月 4 日
@Walter: Exactly. The "best answer" can be a merged set of answers. Then we could do it like Doug: Join and summarize the answers, write your own one and accept it. Obviously not matching the intention of MATLAB Answers, but fine for the magic reputation value.
Kenneth Eaton
2011 年 2 月 4 日
@Walter: I think Doug's suggestion of "one suggestion per answer" was referring specifically to just this question, not all questions in general, since this question is basically designed to be a list of answering guidelines, sorted by importance.
Matt Fig
2011 年 2 月 4 日
Walter Roberson
2011 年 2 月 4 日
Ah... then an example of where his suggestion to "Be Brief" can lead to confusion avoidable by being more verbose.
Doug Hull
2011 年 2 月 4 日
Indeed, I was only speaking of this type of "Top Ten" kind of question. Each item can be voted individually. Then the best answers will filter up to top.
Matt Fig
2011 年 2 月 4 日
回答 (16 件)
Doug Hull
2011 年 2 月 3 日
6 投票
Use good code formating
2 件のコメント
Walter Roberson
2011 年 2 月 4 日
Then give us documented reliable markup in comments...
Andrew Newell
2011 年 2 月 4 日
I second that!
Jiro Doke
2011 年 2 月 3 日
6 投票
Not sure if this is a good practice. I'm interested in hearing what you think...
If you have a minor addition (or edit) to someone else's answer, post a comment on the answer asking to improve the answer with your suggestions, instead of creating a new answer. This will hopefully reduce redundant answers and multiple answers with small incremental changes.
EDIT: Once the minor addition has been inserted in the answer, the commenter (who asked for the minor addition) should delete the (now meaningless) comment.
8 件のコメント
Matt Fig
2011 年 2 月 3 日
Oliver Woodford
2011 年 2 月 3 日
Definitely agree with that.
Andrew Newell
2011 年 2 月 4 日
This would work even better if comments could be edited.
Jan
2011 年 2 月 4 日
Editing a comment: Copy the original comment, delete it, open a new comment, paste and edit it. It is still faster than hitting backspace one single time in the sticky slow "add an answer" box.
Jan
2011 年 2 月 4 日
@Jiro: Helpful to reduce noise. And if the minor addition was inserted, delete the now meaningless comment.
Andrew Newell
2011 年 2 月 4 日
I know that you can edit by deleting, but it smells like a trick. It's obvious to the contributors to this page, but what about the people asking for homework help?
Jan
2011 年 2 月 4 日
@Andrew: My message about pseudo-editing was not though for you only, but even for newbies.
Michael
2011 年 6 月 24 日
Technically shouldn't Jan delete the comment about deleting meaningless comments now that Jiro has updated his post?
Kenneth Eaton
2011 年 2 月 3 日
5 投票
I'm generally in favor of pointing out when a key edit (i.e. correction) has been made to an answer for the following reasons:
- It helps indicate to people who have already looked at your answer that they should give it another read.
- If an aspect of your answer has been mentioned in another answer or a comment, it's probably best to point out the edit so that the other comments don't look strange.
If it's just a matter of fixing typos, I don't think any indicator is needed.
If the edit makes the answer completely different, like adding a whole different possible solution, adding another answer may be in order since this gives people a chance to vote on the solutions independently.
Regarding the format for indicating an edit, " EDIT: " usually works well, or a lead-in explanation like " Based on the comments, this answer has been updated... " if you're feeling wordy.
5 件のコメント
Andrew Newell
2011 年 2 月 4 日
*EDIT:* would work well for additions but not for revised or deleted text.
Jan
2011 年 2 月 4 日
@Andrew: You can set the EDIT: in the comment section, e.g. "EDIT: Question was completely changed".
Walter Roberson
2011 年 2 月 4 日
It drives me batty when the question is edited without an indicator that something has changed. I start to doubt myself, wondering why I said things or wondering if I didn't read the question properly the first time. Marking that something has been edited is important enough that it should not be a matter of discretion at the user level: _anything_ that gets edited should have an automatic update time-stamp put on it (possibly with an exemption for the moderators, though I cannot think at the moment of when such an exemption would be justified.)
Jiro Doke
2011 年 2 月 4 日
@Walter: I agree that the timestamp should update so that at least there is an indication that there was an edit. But that would still require readers to scan and compare update times of questions/answers and comments to see which came first. Someone mentioned having a version history, but there was a comment on it about it creating more noise. Something to think about...
I can think of one case where there could be exemption for moderators -- for pure format editing. Sometimes you see a question with lines of code with no formatting. Moderators can fix that, and not change any of the words. That shouldn't trigger a timestamp change.
Walter Roberson
2011 年 5 月 23 日
In practice, a time-stamp for reformatting does help.
When I as a user see an unreadable posting, I am reluctant to go back to it until I know it has been made readable.
When I as an editor see an unreadable posting, I might not have time to edit right then; if Matt or someone else gets to it first, then the time-stamp update relieves the pressure on me to push other things out of the way to do the editing.
Matt Fig
2011 年 5 月 23 日
5 投票
1 件のコメント
Andrew Newell
2011 年 5 月 23 日
I agree. I think some very good contributors to this site let their frustration show sometimes. If they're getting jaded, they should consider taking a break and let some new people add to their reputation score.
Jan
2011 年 2 月 3 日
4 投票
Use an external debugger and paste the copied text instead of struggeling with the keyboard latency of the web interface. Being stressed by this suboptimal interface decimates your power to concentrate on the answer.
9 件のコメント
Jan
2011 年 2 月 4 日
I will delete this as soon as MathWorks decides to enable the "Update" button for the preview again. Voting this will be less efficient than a mail to files@mathworks.
Andrew Newell
2011 年 2 月 4 日
This would also mean that if someone has beaten you to the answer, you don't need to submit yours!
Jan
2011 年 2 月 4 日
@Andrew: I do not understand this.
Andrew Newell
2011 年 2 月 4 日
This has already happened to me once. I worked out an answer and was about to submit it, and someone else had already entered a very similar solution. So there wasn't much point in submitting mine.
Andreas Goser
2011 年 2 月 4 日
@Jan: This is the feature we two find quite useful on gomatlab.de - while you are working on your answer, you can see if somebody else already submitted an answer in between. I created an enhancement request for MATLAB Answers for that
Jan
2011 年 2 月 4 日
@Andreas: And this is one feature of goMatlab I'm not happy with. The automatic update steals the mouse focus, such that a copy&paste operation creates rubbish. In addition it causes a latency -at least about 0.5sec for updating the complete page, instead of up to 3sec for a single character.
Such automatic updates work very well for low system load. But with increasing traffic unpredictable effects will occur.
How is this solved usually in a multi-tasking environment? The task is (mandatorily or obligatorily) blocked, if some one else *starts* to create an answer, e.g.: "currently answered by Sco". This must be updated only, when the "Add an answer" box is entered the first time - not further auto updates, please.
Walter Roberson
2011 年 2 月 4 日
I sometimes start an answer and then wander away -- back to work on my job, or researching a particular point, or going for supper, or simply giving my brain a rest, or giving myself a "time-out" so I can respond politely.
It would be a shame if everyone else was locked out for minutes or even overnight while I finished the answer (or decided to cancel.)
Also, the system would need to be robust against browser crashes or closing the browser or network problems.
Jan
2011 年 2 月 4 日
@Walter: So the blocking should be "advisory" to avoid a deadlock - sorry, I've confused the terms. If I see, that *you* have started to answer, it is a good idea to wait, until you are able to respond politely or finished your coffee break.
Walter Roberson
2011 年 5 月 23 日
Sometimes I fall asleep while composing responses. Literally at my desk sometimes, but more often if I have stretched out on the coach to see if I can come up with a new perspective.
Matt Fig
2011 年 2 月 3 日
4 投票
2 件のコメント
Walter Roberson
2011 年 2 月 4 日
If you put sufficient detail in the clarifying question, explaining the difference in meanings, then the clarifying questions themselves can become a framework towards getting the right answer.
Andrew Newell
2011 年 2 月 4 日
Unless they are cycled out of sight by other comments ...
Doug Hull
2011 年 2 月 3 日
2 投票
If it has been asked and answered before, link to it.
3 件のコメント
Walter Roberson
2011 年 2 月 4 日
You've said that before... but you didn't link to it!
Walter Roberson
2011 年 2 月 4 日
Can we link to _Answers_ ? Or just to _Questions_ ?
Walter Roberson
2011 年 5 月 23 日
Instructions for linking to individual Answers and even Comments are shown here: http://www.mathworks.com/matlabcentral/answers/994-wish-list-for-matlab-answer-sections#answer_1459
Matt Fig
2011 年 2 月 3 日
2 投票
3 件のコメント
Doug Hull
2011 年 2 月 3 日
I think I understand this, but can you revise the wording?
Matt Fig
2011 年 2 月 3 日
Jan
2011 年 2 月 4 日
The edit trap! Better than what?! No need to answer - I can guess it. But editing has the power to make the comments totally confusing.
While "work done so far" hits the point, "cover a specific MATLAB question" is not specific to homework cheats (see: how to use STRTOK...).
Jiro Doke
2011 年 2 月 3 日
2 投票
If the question is vague, ask to clarify instead of assuming the question and answering based on your assumption.
2 件のコメント
Walter Roberson
2011 年 2 月 4 日
That depends a lot on what we deem the purpose of the forum to be. If it is to be a set of answers to very narrow and specific questions, then your proposal might be appropriate. It would, however, tend to lead to people asking effectively the same question over and over again, as the narrowness of the questions and answers would be such that most people would not understand how to apply the narrow answer to their situation.
My personal approach, of listing the various possible interpretation and answering to each of them, certainly takes more of my time. On the other hand, as it gives a template for recognizing the different circumstances and shows the approach needed for each of them, my answers tend to be applicable and recognizable by a number of people.
A more broadly spread answer that states assumptions is, in my opinion, a better long-term resource. And it leads itself to being linked to as a solution more often.
Are questions to be interpreted as "How do *I* do _exactly_ what is in front of me?", or are they to be interpreted and answered more generally as "What are good approaches to deal with this kind of situation?"
Andrew Newell
2011 年 2 月 4 日
Also, some questioners just don't seem capable of writing a clear question, or respond slowly, or don't respond at all.
Derek O'Connor
2011 年 6 月 9 日
2 投票
An answer should illuminate not dazzle.
7 件のコメント
Matt Fig
2011 年 6 月 9 日
Derek O'Connor
2011 年 6 月 9 日
Matt,
In trying to be concise I have only succeeded in being cryptic.
These definitions are from the OED and explain the sense in which I used the words:
_illuminate_, v.
* To enlighten intellectually; to give knowledge or understanding to.
* To throw light upon (a subject); to make luminous or clear; to elucidate.
_dazzle_, v.
* To overpower or confound (the mental faculties), esp. with brilliant or showy qualities.
Walter Roberson
2011 年 6 月 9 日
One can only illuminate someone who is receptive to being illuminated. When someone is not receptive, sometimes one can dazzle them in to receptivity.
Sean de Wolski
2011 年 6 月 9 日
I think dazzling as you have described it can be very helpful: pack a whole bunch of operations into one line and the user will have to figure out what each one does - a very useful skill.
Matt Fig
2011 年 6 月 9 日
Andrew Newell
2011 年 6 月 9 日
Derek's point echos a principle of good teaching: start with what the students know and then build on it.
Walter Roberson
2011 年 6 月 9 日
It is unlikely there will _ever_ be enough of us to "illuminate" all the doit4me whose major project is due in two days.
Walter Roberson
2011 年 2 月 4 日
1 投票
Should we trust the title, or should we trust the Question, if the two differ?
2 件のコメント
Matt Fig
2011 年 2 月 4 日
Kenneth Eaton
2011 年 2 月 4 日
編集済み: per isakson
2020 年 11 月 14 日
Whichever one is longer. ;)
Seriously though, this is probably a situation where asking for clarification is likely in order (example: http://www.mathworks.com/matlabcentral/answers/744-what-techniques-can-i-use-to-extract-horizontal-lines-from-noisy-image-data).
Andrew Newell
2011 年 2 月 8 日
1 投票
At the risk of being obvious, test your answer! I find it useful to compose my answer, with comments, in the Matlab editor. Then I get rid of the % signs and paste into the Answers window.
Andrew Newell
2011 年 2 月 11 日
1 投票
Give your HTML links meaningful titles. For example, use How do I write a good answer for Matlab Answers? instead of http://www.mathworks.com/matlabcentral/answers/797-how-do-i-write-a-good-answer-for-matlab-answers. See Markup Help if you don't know how to do this.
Doug Hull
2011 年 2 月 3 日
0 投票
Be brief
3 件のコメント
Walter Roberson
2011 年 2 月 4 日
Doug, I'm getting too old to be brief. Maybe if you'd caught me at about Grade 3, but my verbose ways were pretty much set in stone by Grade 5.
Todd Flanagan
2011 年 2 月 4 日
Invent time machine. Catch Walter in Grade 3.... nah. I like Walter's answers.
Andrew Newell
2011 年 2 月 4 日
Brevity should be balanced with adequate explanation. Many answers just provide code that will be cryptic to novices.
Andrew Newell
2011 年 2 月 3 日
0 投票
How about a Wikipedia-like version history?
2 件のコメント
Jan
2011 年 2 月 4 日
A version history would contains outdated information, and therefore noise.
Andrew Newell
2011 年 2 月 4 日
See the comments on Kenneth's answer.
カテゴリ
ヘルプ センター および File Exchange で Get Started with MATLAB についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!