Intern 2021: Feedback

Published 7/03/21


The past two weeks have been a bit mixed in terms of progress. The second week of my internship was a conference week, and I actually had two conferences to attend! One was for the larger org that the Blockly project is a part of, and the other was for interns. Both of these were super fun to attend, and we'll talk about some of the stuff I learned in the next section, but they didn't leave a lot of time for project work. Luckily, that definitely changed in the third week.

The third week of my internship was about two things. (1) Being release manager for Blockly core, and (2) getting feedback on my project design.

Being release manager basically means that you have to deal with getting everything that was built in the past quarter pushed out and publicized. I think my favorite part of this was probably writing the release notes (I may have gone a bit overboard hehe).

For the project design, I created an initial design doc, and lead a discussion about it. This first conversation wasn't super productive because there was a lot of missing information about backwards compatibility. But I did some revision and the second discussion went much better! All and all, I think there were about 6 alternative designs discussed, and eventually we found one that everyone was pretty happy with. So on Friday I expanded that ito a more fully-fledged doc, which will hopefully be published sometime next week. I'm really excited to get feedback from people that will actually be using the API :D

And in between all of that, I also hashed out a design for test helper that will allow external devs to test if their custom serializers round-trip data correctly. This took a bit of back-and-forth with Abby and Monica (another dev on the Blockly team) but in the end I think we came up with something pretty slick. I've been working on it off-and-on and I've almost got all of the test cases completed - I just have mutators left!

Learning about Feedback

Where can I learn? How can I support those around me?

You may remember those two questions from my previous post, in which I talked about my goals for this summer. Well, I'm excited to say that I've already had the opportunity to work on both of these! Specifically, in the context of feedback. As I said above, during the second week of my internship I attended my intern conference, and one of the sessions was about giving and receiving feedback. Honestly, I was kind of dreading this session. I was pretty sure it was going to be boring and overdone, but I actually learned a lot!

So, I'd like to share some of what I learned, specifically, why I-statements aren't all there chalked up to be, and what feedback strategy you should use instead =)

Firstly, what makes good feedback?

Feedback, specifically constructive feedback, is about helping people to grow and improve their behavior.

This means that if you want your feedback to be effective at its goal, it needs to accomplish two things:

  1. Inform the receiver of what behavior needs improvement
  2. Start a discussion about how to improve it

There are two methods I know of for doing this. The traditional one is to use an I-statement, and the new one I learned about at the conference is to use an SBI-statement.

How do I-statements measure up?

An I-statement is a method for delivering feedback where you start your statement with "I ..." This is opposed to you-statements, which start with "You ..." The basic idea of an I-statement is that it takes the focus off of the person receiving the feedback, so that they will (hopefully) not get all defensive.

For example, maybe you have a thing about dishes, and you're mad at your partner for not doing them. Using an I-statement, you might say: "I feel frustrated when the dishes don't get done. In the future I want to make sure they get done right after supper."

So, do I-statements help people realize a need for improvement? Well I think it's a mixed bag. Sometimes using an I-statement can make your feedback too indirect, so the receiver doesn't realize there's a problem. For example, imagine a friend asks you to critique their essay, and one part is confusing. You might say "It took me three tries to understand this section", which could be taken as a problem with you, and not a problem with the essay.

Then do I-statements facilitate a discussion of how to improve? I think they can, but it's tricky. The problem with I-statements is they're really easy to turn into you-statements. For example, if you say "I feel frustrated when you act so lazy. I need you to help out more". Technically both of those statements are I-statements, but they're still accusatory and unproductive.

What's the alternative?

I-statements may work ok, but SBI-statements are better :D The idea of this method is that it makes the feedback as objective and impersonal as possible by separating the feedback into three parts:

For example, thinking about the dishes situation once again, you might say: "After supper tonight, you did not do the dishes. This made me feel frustrated because I like the dishes to be done before bed."

But do SBI-statements help people realize a need for improvement? I definitely think so! It clearly states what the behavior in question was, and the negative repercussions of it.

And do SBI-statements facilitate a discussion of how to improve? I would say so, yes :D SBI-statements highlight objective behavior which is changeable, not character traits, which aren't. So SBI-statements always leave room for improvement.

So in summary, SBI-statements are better at providing constructive feedback, and a lot harder to bungle. If you want to help create positive change through feedback, use an SBI-statement, not an I-statement =)