23:05:08 <nickm> #startmeeting S31 september update
23:05:08 <MeetBot> Meeting started Tue Sep  3 23:05:08 2019 UTC.  The chair is nickm. Information about MeetBot at http://wiki.debian.org/MeetBot.
23:05:08 <MeetBot> Useful Commands: #action #agreed #help #info #idea #link #topic.
23:05:32 <gaba> 0. Review the agenda and agree on it. Can people take a look and see if you are ok with it?
23:05:32 <nickm> Agenda pad: https://pad.riseup.net/p/IRjuGtQkWNKZLc7qskDb
23:05:36 <gaba> thanks nick
23:05:52 <teor> Sorry, I am having trouble loading the pad and tickets
23:06:22 <nickm> I would like to put in a step to review the agenda again after the retrospective portion.
23:06:31 <gaba> sounds good
23:07:32 <gaba> teor: were you able to load pad?
23:08:11 <teor> Yes, I'd like to add a few items to the agenda
23:08:26 <gaba> ok
23:10:10 <teor> I added"
23:10:19 <teor> 2. Can we do design documentation or proposals for refactors?
23:10:19 <teor> 2.1. How can we collaborate on the design?
23:10:19 <teor> 3. What does a pull request need before it gets a review?
23:10:49 <nickm> I've added
23:10:50 <nickm> 4. How can we keep our write/review/revise loop active and productive?
23:11:16 <gaba> ok
23:11:17 <teor> That's all I have right now, I may have more after the retrospective
23:11:28 <gaba> It is a long agenda :)
23:12:05 <teor> Maybe we will need to stop at 0000, and schedule the remaining items for another day
23:12:18 <gaba> ok. we will see. Lets check then
23:12:24 <gaba> let's start with retrospective
23:12:37 <gaba> what about writing them in the pad like we do for other retrospectives?
23:12:42 <nickm> I'm okay with that, with a preference for leaving the meeting with some idea with what I'm doing between now and the next meeting
23:12:57 <nickm> (for "that" == schedule rest for another day)
23:13:23 <gaba> pad in line 40
23:13:37 <gaba> let's give a couple of minutes for this
23:13:48 <teor> nickm: I suggest we re-order the agenda so that it gives us some idea of what to do next
23:14:01 <nickm> ok; we can get to that in 1.1  if ok w you?
23:14:05 <teor> (In the review agenda step 1.1)
23:14:20 <gaba> ok
23:15:46 <gaba> catalyst: are you ok with all this?
23:21:52 <gaba> ok. it seems that enough time for writing things down
23:22:49 <gaba> It seems to me, from reading the notes, that we didn't focus on working on priorities at the beginning for this project. There is a limite amount of time that we have to work on a very open ended project. And there may be a few processes that could be improved.
23:22:59 <gaba> Is there any of this stuff that people particuarly want to talk about
23:24:57 <gaba> Now we will have 3 more months to finish on anything we think it is essential. Maybe is the right time to rethink and work on the stuff that the whole teams agree with. Thinking that we need to have working code at the end of this project.
23:25:30 <teor> gaba: I'm not done yet
23:25:58 <gaba> ok, please wrap up so we can move into the agenda
23:26:48 <teor> I don't want to rush this process
23:27:01 <nickm> Can we rescind the 0000 deadline then?
23:27:09 <nickm> The 0000 deadline _is_ a rush.
23:27:30 <teor> Sure, but I will need to take a short break at some point
23:27:37 <nickm> fine with me
23:27:42 <teor> One of my key observations is that there seems to be a stop-start-rush-mistakes-rework dynamic here. And I don't want to repeat that dynamic in this meeting.
23:28:49 <gaba> teor: you can finish writing what you were writing for this and then let's see what from all this we need to discuss. Tehre is a lot in this pad already.
23:30:04 <teor> ok, I am done
23:30:07 <gaba> ok
23:31:30 <teor> who is highlighting? and what are we highlighting for?
23:31:43 <gaba> It seems that we are missing a better discussion on how we are going to work on things or what is going to be done
23:31:54 <nickm> i am not highlighting
23:31:57 <gaba> sorry, I'm highlighiting mostly to try to undersand
23:32:31 <gaba> what you all think we need to add to the discussion today to move forward in the next 3 months?
23:33:09 <nickm> I think we need better communication and expectations from one another; in particular, I think I need to get more clear on what everybody's expectations of me are
23:33:24 <nickm> so that I can produce stuff that people are able and happy to review right away.
23:33:27 <gaba> documentation and high level plans seems to me that are the need to improve how things are working in this project.
23:33:34 <nickm> we also need more clarity on dividing work and planning
23:33:52 <gaba> nickm: it seems to me that teor and catalyst need also to be part of the conversation on how things are going to change
23:34:16 <nickm> yes
23:35:03 <teor> There seems to be a stop-start-rush-mistakes-rework dynamic here. While process changes can help change a dynamic, they can also just hide the symptoms.
23:35:48 <teor> I don't know if we want to deal with team dynamics in this meeting. We seem to be focused on process so far.
23:36:07 <gaba> yes. I think we need to focus on this project specifically
23:36:25 <nickm> I think we should talk about team dynamics at some point.
23:36:32 <nickm> Our communication here has not worked for any of us
23:36:43 <gaba> unless is specific about the dynamics on how this project is being work on
23:36:57 <nickm> and it seems clear I've been making people upset and disappointed.
23:37:06 <nickm> And I have also spent a lot of time on this project being upset.
23:38:30 <teor> If we try to work through process without acknowledging that people are upset, that will make the process talk really hard
23:39:11 <gaba> ack
23:40:50 <gaba> people have been upset as it has been hard to communicate about changes
23:40:53 <gaba> right?
23:41:07 <nickm> I think there is a lot more than that
23:41:20 <catalyst> i think there are misaligned expectations
23:41:56 <gaba> aha
23:44:27 <catalyst> nickm: can you explain more about your feelings about "throwing code away"?
23:44:44 <nickm> that is actually a comparatively minor point for me; I feel more strongly about the other stuff.
23:45:05 <teor> I think that when we have misaligned expectations, we fall back on our habits to try and make things work
23:45:28 <nickm> I'm talking about my work on #31241, where I'm going to have to basically recreate the branch from scratch.  It is the right call though.
23:45:51 <nickm> I should not have put #31241 in needs_review in the state it was in, with the branch in the state it was in.
23:46:58 <catalyst> nickm: you say you had to wait a long time for reviews. my experience is that a lot of the stuff i was assigned to review was quite large and difficult to review, which prevented me from making progress on my own work
23:48:05 <teor> I also had a similar experience. I didn't have context to review the code, and it seemed very large. It was only when I explained how large it was that we learnt that the GitHub PR included some code that had already been reviewed and merged.
23:49:43 <nickm> that was indeed helpful.
23:49:59 <nickm> We need a different feedback loop here.
23:50:04 <teor> It took me a while to work out why I was finding the reviews difficult. When I did, I tried to list all the things I could think of: https://trac.torproject.org/projects/tor/ticket/29211#comment:8
23:50:37 <gaba> Then this is something for point 3 and 4 of this agenda.
23:50:50 <catalyst> i agree with most of the things teor said in that trac comment
23:51:20 <gaba> We are in 10 min for the hour of the meeting. Can people go for 30 min more today?
23:51:23 <nickm> I wish that we had spent the 60 days I spent without review talking about this stuff instead.
23:51:28 <nickm> I think we need a break
23:51:38 <nickm> is that okay with everybody?  we might need more than 30 min more after that
23:51:47 <catalyst> nickm: would you say you feel that code review is an obstacle? or an opportunity for collaboration and improvement?
23:52:00 <nickm> definitely opportunity for collaboration and improvement
23:52:07 <nickm> I love getting reviews that tell me to change stuff.
23:52:28 <teor> But having 4 PRs queued up made it difficult for you to change stuff?
23:52:39 <nickm> That is right.
23:53:19 <teor> I can understand how that was frustrating. I also found it hard to have to work out when each change I suggested could happen
23:53:49 <nickm> One thing that I have found helpful in the past is more regular checkin when working on something complex
23:54:05 <nickm> like, sharing daily work with the person who will be reviewing it -- not for a final review, but for early feedback
23:54:08 <catalyst> nickm: many times when i tried to ask you to improve something, you made comments that made it seem like you felt that i was unfairly impeding your progress, and that you would rather write code as quickly as possible
23:55:10 <nickm> catalyst: Do you have an instance in mind?  The one that sticks in my mind is the naming thing, but you may be thinking of something different.
23:56:05 <nickm> FWIW, I don't want to give you that impression. I have been frusterated by some of your feedback, but I think it is all fair.
23:56:31 <catalyst> nickm: i vaguely recall multiple occasions, actually. i'm sorry i don't have anything more specific, because i have such negative associations with the way you responded
23:56:46 <nickm> ugh.  I am sorry. :(
23:57:46 <gaba> Do people want/can do a break of 5 min and then go for 30 min more with the rest of the agenda?
23:57:59 <nickm> 5 min : yes.  but we need more than 30 min more IMO.
23:58:02 <teor> I can take a break now
23:58:05 <catalyst> i'm ok with taking a break and doing 30min more
23:58:08 <gaba> ok
23:58:13 <nickm> let's see how far we get
23:58:26 <gaba> nickm: we can try to meet again on Thursday for the rest if people can do one hour then.
23:58:29 <teor> 60-90 minutes is most people's meeting capacity, particularly for difficult meetings
23:58:35 <gaba> yes
23:58:48 <gaba> 5' then
00:07:35 <gaba> hey
00:07:42 <nickm> hi
00:08:17 <catalyst> hi
00:08:22 <teor4> hi
00:08:47 <gaba> should we start with point 2?
00:08:58 <nickm> what is point 2?
00:09:15 <gaba> 2. Can we do design documentation or proposals for refactors?
00:09:20 <teor> I wanted to finish up with agenda item 1. retrospective
00:09:22 <gaba> 2.1. How can we collaborate on the design?
00:09:27 <nickm> yeah, +1 to teor
00:09:30 <gaba> ok
00:09:41 <teor> nickm: when I saw you ask for code reviews, or talk about how they had been delayed, what I understood is that you were frustrated, and wanted the reviews to happen now.
00:09:42 <teor> I didn't hear that you were curious, or interested in feedback, or wanting to change things.
00:10:15 <teor> Some of that is the actual questions you asked or words you used - when you talk about how a review is late, that tells me that you want it done now.
00:12:37 <catalyst> i think there might be unrealistic expectations about how quickly reviews can be reasonbly accomplished
00:12:54 <teor> No, that's not actually what I'd suggest
00:13:05 <teor> Or not actually all I'd suggest here
00:13:26 <teor> I understand that it's really frustrating to not have your code reviewed.
00:13:31 <nickm> I want to know your suggestions here. I think that our goals are very much in alignment.
00:13:50 <teor> And that often people need to have time to start the review, before they can tell you why it is slow.
00:14:32 <teor> But it would help to ask questions like: Can you review commit xxxxx? Can I make a smaller PR that you can do this week? What's missing from the PR?
00:14:33 <nickm> (What I think our goals are: We all want high quality to code to get written by all of us, reviewed by all of us, and merged.  And we want all of this to happen in way that is respectful and positive.)
00:15:15 <nickm> teor: I can easily say "can you review commit xxx" -- getting even one commit reviewed is more helpful than none.
00:15:27 <nickm> and I'll try to remember to say that if you think it will be helpful
00:15:59 <teor> nickm: for what it's worth, I have had a review backlog for 2 months now, and I have not made any review progress on #22029 for 2 months
00:16:18 <nickm> teor: want me to do it?
00:16:25 <nickm> (let me know offline if so)
00:16:31 <teor> (There are reasons: I actually need to split that PR myself to review it properly, because I asked neel, and he can't split it.)
00:16:40 <nickm> ah
00:17:08 <gaba> (as goals: i also want code shipped on time before sponsor work finish)
00:17:41 <teor> gaba: clarification: what do you mean by shipped? reviewed? merged? released?
00:17:58 <gaba> teor: finish. ticket closed or merge_ready
00:19:45 <teor> I agree with catalyst though, we need to have a realistic idea of how long reviews take
00:19:58 <teor> (And how long all our other non-sponsored work takes)
00:20:33 <teor> My perspective is that I had multiple backlog items in those two months, and a meeting, and I was on leave
00:20:54 <teor> In general, I work through my backlog in the order on this wiki page: https://trac.torproject.org/projects/tor/wiki/user/teor
00:21:09 <gaba> Are you saying that 2 days a week is not enough for reviews and non-sponsor work that needs to be done in that week?
00:21:12 <teor> Which puts reviews down low. But I can change that if needed.
00:21:38 <nickm> Maybe we need to incorporate review in our planning process. Not exactly "pair programming", but for big projects, we need to have both the programmer and the reviewer scheduled on the item.
00:21:39 <gaba> I think prioritizing 2 days for roadmap work, 1 days for reviews would mean all you can do in that time. If you can't do the rest then that will be moved to next week
00:21:50 <nickm> like dgoulet and asn have been doing
00:21:51 <gaba> yes
00:22:31 <nickm> we should also maybe manage expectations for contributed vs internal patches.
00:22:48 <nickm> teor, catalyst: what else should we do here, do you think?
00:22:49 <gaba> yes
00:22:52 <teor> gaba: I think you've asked me that question a few times. You talk about it like it's easy to just schedule days like that, but it hasn't worked very well for me.
00:23:29 * nickm can't do review-only days either
00:24:25 <teor> I've also had #30901 on my schedule for ages, and it's kind of important to have our stem CI working for these kinds of refactors
00:25:13 <gaba> ack
00:26:08 <catalyst> maybe we don't need to talk about it right now, but i want us to think about how user-visible regressions made it through our review and CI processes, and how to prevent that in the future
00:27:51 <teor> catalyst: yeah, that one's weird, chutney should have failed on it
00:28:28 <nickm> +1
00:28:44 <nickm> should we plan to reconvene this time on thursday?
00:29:00 <teor> I'll open a ticket for the regression thing
00:29:11 <gaba> this time on thursday seems good
00:29:18 <nickm> okay with teor and catalyst?
00:29:21 <gaba> should we start with item 2 of the agenda on thursday? :D
00:29:22 * catalyst has a possible conflict on Thursday at this time
00:29:44 <gaba> I can meet earlier or later on Thursday.
00:30:01 <nickm> friday this time doesn't work for me.  I can do earlier or later on thursday, or next week
00:30:05 <teor> I think I also have a conflict most of that time
00:30:19 <gaba> mmm
00:30:37 <gaba> what about each of us writing our thoughts on the pad for each item? And then we meet on Tuesday next week?
00:30:48 <nickm> for each agenda thing?
00:30:58 <teor> Friday UTC is my Saturday, Thursday UTC I have a conflict, Wednesday UTC is the team meeting
00:30:59 <gaba> We need soon to work on  a plan for next 3 months
00:31:02 <gaba> nickm: yes
00:31:23 <gaba> teor: We are talking about Thursday UTC or Tuesday UTC
00:31:33 <nickm> I could do this time next Tuesday, if it works for everybody else.  Monday is also ok for me. (2300 UTC)
00:31:44 <teor> Next Tuesday UTC is fine for me
00:32:03 <nickm> how about you, catalyst?
00:32:06 <catalyst> next Tuesday 23:00 UTC works for me
00:32:10 <gaba> ok
00:32:13 <nickm> ok, let's call it a plan
00:32:22 <nickm> and we'll all fill in items on the plan.
00:32:26 <nickm> *pad
00:32:59 <gaba> thanks
00:33:16 <teor> I opened #31611 for the test follow up
00:33:26 <nickm> I would like to have something I can work on over the next 7 days, but I don't want to put pressure on folks, or grab work that others would rather do.
00:33:42 <gaba> We need to make a decision on Tuesday if we need an non-cost extension for this project or not. So figuring out what has been done and what else needs to be done is important.
00:33:51 <teor> I feel like there's a lot left under #29211?
00:34:09 <nickm> teor: yes, but I am not able to do any of it now
00:34:21 <nickm> at least, I am wary about doing stuff on top of #31240
00:34:31 <teor> What do you need someone else to do to make progress? Review #31240?
00:34:48 <nickm> do you think #31240 is close to getting merge_ready, or do you think it is likely to need substantial rebase/revision?
00:35:02 <nickm> I can base other work on #31240 if you think it is close to right.
00:35:16 <teor> No, let's stick to one PR at a time, please
00:35:34 <nickm> Okay.  So, most of the other items have conflicts with #31240.
00:35:48 <teor> So I can review #31240 next
00:36:08 <teor> You're happy to do #31241 after some of those other tickets?
00:36:46 <nickm> teor: yes, but I would want to revise it substantially.  Would it be okay with you if after those other tickets, I consult with you about what you would like to see in #31241 and beyond?
00:36:59 <teor> Yes, that sounds like a good way to move forward
00:37:30 <nickm> on #31240 -- if it looks like it will take longer than you expected, it's also okay to give me your initial observations.
00:38:16 <nickm> (not trying to rush you -- just saying, It doesn't need to be a final review to be useful)
00:39:13 <teor> I haven't looked at it since last week, I was focused on getting ready for this meeting, and other workj
00:40:29 <nickm> catalyst, teor: also, before I forget to say it: thank you both for explaining all this to me.  You are great engineers and great people.  I will look for ways to do better here.
00:41:05 <gaba> ok. I need to go so ttyl, hopefully tomorrow at the nt meeting o/
00:41:16 <gaba> thanks you all!
00:41:21 <nickm> It is not pleasant to hear about ways I've screwed up, but I am honored by your feedback here.
00:41:32 <nickm> Thank you both very much for trying to get me to do better.
00:41:56 <nickm> Is there more before we break for the evening?
00:42:02 <teor> Thanks for the meeting everyone
00:42:07 <catalyst> nickm: thanks for listening
00:42:20 <nickm> yw
00:42:49 <catalyst> thank you all, i will be afk soon
00:43:03 <nickm> I'll be on and off for the next hour or so
00:43:23 <nickm> peace, all!  have a great night or day as appropriate.
00:43:27 <nickm> #endmeeting