Skip to content

Feedback guide

Giving feedback on each other’s essays is an important part of developing professional skills with algorithmic essays.

Receiving feedback helps improve your essay, while giving feedback helps develop your communication skills. Moreover, reading other people’s essays is a great way to learn more about Python, algorithms, data structures, code style, etc.

Feedback is part of professional software development practices. Many companies and open source projects have formal code reviews, in which developers must submit their code for inspection by others. Code reviews help increase the quality of the code, share best practices among developers, and on-board new developers.

Many companies use pair programming, in which two developers work together on the same piece of code. While one writes the code, the other reviews it as it’s written, pointing out mistakes and suggesting improvements. The two developers switch roles often during a pair programming session. With Deepnote and Colab, you and someone else can work simultaneously on the same notebook, while using Zoom, Microsoft Teams or some other app to chat.

In summary, by engaging in a feedback process for your and others’ essays, you will develop valuable professional skills.

Asking for feedback

You can ask for feedback at any point during the production of your essay, not just when you have a complete draft. You will have to tell others what kind of feedback you want.

For example, if you’re undecided between three problems, you may write a notebook that just describes the problems and asks others to choose one of them, by including something like:

Please help me choose a problem to tackle. Which of the previous problems would you like to see solved and why?

It helps the reader if the request for feedback stands out from the remaining text. You may prefer to use bold, italics, or HTML to format it differently.

You can also ask for feedback after choosing a problem and thinking of some algorithms, but before investing the time in implementing and testing them. Your request could be:

I’m looking for feedback on the above algorithms. Are they clear? Have I missed other approaches to solving this problem?

Once your notebook is ready for feedback, you need to share it so that others can comment on it. You may invite comments from anyone or only from one or two ‘essay buddies’: they comment on your essay and you comment on theirs.

Info

For how to share your essay, see the corresponding instructions for Colab, Deepnote or M269.

Giving feedback

Once you have been invited to comment on an essay, read it as soon as you can, because the author is waiting for it to progress the essay to the next draft.

Feedback should be specific and constructive. Generic comments like “This is confusing” or “I don’t understand this” aren’t helpful for the author. State what you’re finding hard to grasp, like:

  • “What is ‘it’ referring to in the second sentence?”
  • “The term ‘…’ in the last sentence hasn’t been defined. Does it mean the same as ‘…’?”
  • “What is variable ‘…’ used for in the algorithm? Should it initially be the empty list?”

Before adding a comment to a notebook cell, read the existing comments, to avoid repeating the same points others have made.

Comments that aren’t about a specific text paragraph or code cell, but rather about the whole essay, e.g. its structure, should be attached to the first cell, with the essay’s title, or to the last cell.

The author has put effort into their essay, and will appreciate encouraging feedback to keep polishing it. For example, if you commented on a previous version, praise the parts that improved.

Acting on feedback

Deepnote emails every time you get a comment on your essay. You may wish to improve your essay as you get each piece of feedback, or you may wait some time, e.g. a week, to collect a variety of comments and then address them in one pass.

As you scroll down your essay, look for speech bubble icons. Click on them to see the comment thread associated to that cell. Once you modify the cell to address those comments, mark the thread as resolved.

Don’t feel obliged to follow every suggestion you receive. The reviewers of your essay may present contradictory suggestions and some may take too much effort to address.

If you don’t understand a reviewer’s comment, add a comment yourself, asking them for clarification. Be specific, explaining what you don’t understand. Alternatively, rephrase the reviewer’s comment and ask them to confirm your interpretation, e.g. “Do you mean I should rename the variable from … to …?”

Crediting feedback

You should acknowledge who provided input, by adding a section at end of your essay with something like this:

I thank my tutor Jane Doe and my fellow students John Smith and Carla Suarez for feedback that helped improve this essay.

Crediting others allows them to point to your essay to provide evidence, e.g. to prospective employers, of giving feedback others find useful. It’s therefore best if you can be specific about each one’s contribution, in particular if someone provided some of the content, beyond just commenting. Content contributions should be mentioned before feedback. For example:

I thank John Smith for analysing the complexity of the second approach. Jane Doe helped me improve the structure of this essay. Carla Suarez spotted several typos and suggested improvements to the code style.

It’s easiest to keep track of contributions if you update the acknowledgements as you act upon feedback. You may wish to offer co-authorship of the essay to those who made substantial contributions.

The acknowledgments should also mention if your solutions are based on someone else’s, unless you already said so when introducing the algorithms. For example:

The second algorithm was taken from the solution posted by LeetCode user soandso, but the code is my own. The third algorithm and implementation are based on user123’s solution. I thank …

When possible, the acknowledgement text should link directly to the original solutions.

If the code or tests were partly or wholly written by generative AI, say so, preferably indicating the prompts you used.