18:59:52 <GeKo> #startmeeting network health
18:59:52 <MeetBot> Meeting started Mon Feb  3 18:59:52 2020 UTC.  The chair is GeKo. Information about MeetBot at http://wiki.debian.org/MeetBot.
18:59:52 <MeetBot> Useful Commands: #action #agreed #help #info #idea #link #topic.
18:59:58 <GeKo> heh
19:00:09 <GeKo> okay, we have our meeting pad over at https://pad.riseup.net/p/tor-networkhealth-2020.1-keep
19:00:34 <GeKo> i started entering status lines
19:01:09 <GeKo> so we can see what everyone worked on and if there are questions and we need to discuss any of the status items
19:01:13 <GeKo> please mark them bold
19:01:45 <GeKo> ggus: ^
19:02:05 <jnewsome> Hello - I'm the new shadow dev, working with Rob. I *think* I'm meant to fall under this project?
19:02:17 <GeKo> jnewsome: hey
19:02:20 <GeKo> welcome!
19:02:21 <dgoulet> o/
19:02:22 <annalee_> :) I'm here as well today, mostly watching
19:02:32 <GeKo> welcome, too
19:02:34 <GeKo> :)
19:02:39 <dennis_jackson> hi, (mostly observing also)
19:02:42 <GeKo> jnewsome: that's a good question
19:02:49 * GeKo waves
19:02:53 <annalee_> ty
19:03:34 <GeKo> jnewsome: i am not sure
19:03:40 <arma2> jnewsome: hey. i have a pile of mails i haven't read fully, but one of them is from sue saying that putting you on network health was an error on her part. i'll plan to finish reading these mails and see if i learn more. :)
19:03:42 <GeKo> but we'll figure that part out
19:03:58 <jnewsome> ok
19:04:00 <GeKo> what arma2 said
19:04:07 <GeKo> but you are more than welcome :)
19:04:22 <GeKo> gaba: hey, are you already here?
19:04:35 <jnewsome> ok, well I guess I'll sit in for the moment. Happy to add a status blurb to the doc if it's helpful
19:04:40 <GeKo> maybe we can wait another minute
19:04:59 <arma2> in theory shadow is quite related to the network scalability project that mikeperry is ramping up. but i think network scalability doesn't exist yet as a team or a timesheet category or much more than a twinkle in mike's eye
19:05:59 <arma2> all of that said, jnewsome: keeping an eye on the variety of other potentially related tor teams is a good plan, since part of what we're going to want to do with shadow is find real users of shadow from all around tor, or if not, create them.
19:06:48 <jnewsome> ok. so sounds like a reasonable meeting for me to sit in, but probably not where my status updates should go?
19:07:15 <GeKo> while we waiting for gaba, our roadmap draft we wanted to work on during this meeting moved over to https://pad.riseup.net/p/network-health-team-2020Q1-roadmap-temporal
19:07:28 <GeKo> so folks can start looking at that one, too
19:07:40 <GeKo> and think about the items mentioned there
19:07:52 <GeKo> alright
19:08:21 <GeKo> from the discussion items on the list let's start with the code review and GSoC one
19:09:24 <mikeperry> calibrating shadow using results from live experiments is part of the Tor Performace funcing proposal SOI
19:09:38 <GeKo> my plan is to have regular code reviews
19:10:05 <mikeperry> *funcing=funding
19:10:06 <GeKo> although i think it would be overkill to have like 2 additional people involved besides the one who wrote the code
19:10:22 <GeKo> assuming this is mostly python code we deal with anyway for the moment
19:10:25 <GeKo> mikeperry: o/
19:11:10 <GeKo> additionally, i think we can skip some assignment cylce for now but either i will review code or try to find someone to review my code
19:11:33 <GeKo> i like to avoid team roles and additional bureaucracy if possible
19:11:34 <dgoulet> GeKo: I don't see anything related to GSoC in the roadmap pad... are you looking at something else?
19:11:44 <GeKo> https://pad.riseup.net/p/tor-networkhealth-2020.1-keep
19:11:55 <dgoulet> aaah I knew there was another pad, thanks
19:12:08 <GeKo> the four general items above my status update
19:12:23 <GeKo> and i picked the two that might work without gaba first :)
19:12:40 <GeKo> so, does that sounds like a reasonable start re code reviews for now?
19:13:01 <GeKo> i mean we can easily ramp up the policy side around it later if we think so
19:13:21 <dgoulet> GeKo: code reviews of ?
19:13:38 <GeKo> like doctor changes
19:13:55 <GeKo> or some other bad relay script changes
19:14:17 <GeKo> essentially for code the network health team is responsible
19:14:26 <GeKo> and that is in some git repo we have
19:14:33 <dgoulet> hmmm that might be some important overhead for a small team like this :S
19:15:09 <arma2> in particular you might need to go out and get the code reviews, rather than hoping they come to you
19:15:19 <arma2> because of the smallness
19:15:29 <GeKo> dgoulet: what would you propose instead?
19:15:44 <gaba> hey
19:15:53 <gaba> sorry I was on transit
19:15:55 <GeKo> o/
19:16:29 <dgoulet> GeKo: not sure... I would probably say for now, you are the "boss of the code"?
19:16:38 <GeKo> heh
19:16:39 <dgoulet> GeKo: and if you are uneasy about some changes, you could ask someone
19:16:49 <dgoulet> but overall, I wouldn't put that overhead just yet on yourself
19:17:15 <GeKo> i am fine with that model
19:17:42 <jnewsome> My 2c coming from Google - there all code has to be reviewed by *someone*. Even forcing the code owner to have someone else review the code is useful
19:17:59 <jnewsome> A second pair of eyes can catch a lot of things, and it forces the code to be understandable by someone other than the other
19:18:02 <jnewsome> *author
19:18:06 <GeKo> yeah, that's what i think is true
19:18:24 <GeKo> hence my original plan :)
19:18:36 <dgoulet> code review relevancy, I think we all share
19:18:47 <dgoulet> the overhead is the problem, Google has _RIVERS_ of cash and people to do that ;)
19:18:52 <dgoulet> health team has 1 person? :)
19:18:55 <jnewsome> fair :)
19:19:26 <GeKo> but i can be sneaky here if i want and make my code changes large enough that i am always unsure and ask ;)
19:19:31 <arma2> if the policy is 'good idea but later', be sure it gets onto the roadmap, so that we can work toward having later arrive :)
19:19:59 <dgoulet> GeKo: for sure, you might get frustrated on the timing things get merged but yes, your call. I support taht :)
19:20:04 <arma2> but yes, i think reaching out to get others to review stuff is a good plan. that way you bring more people in. and you can always decide that a thing needs to get merged anyway.
19:20:22 <GeKo> yeah
19:20:50 <gaba> we could also do like anti-censorship is doing and look at reviews during weekly meeting
19:20:59 <gaba> and see who can review the code that week
19:21:08 <GeKo> yep
19:21:45 <GeKo> okay. i'll try my original plan and if it does not work out we can think about ways how we should work around it
19:22:25 <GeKo> let's talk about the GSoC part?
19:22:36 <GeKo> we are a bit late to make some decision here
19:22:45 <GeKo> as i forgot that item in our kick-off meeting
19:22:53 <GeKo> and last week i was at all hands
19:23:02 <arma2> i filed #33010 as a solid gsoc project
19:23:10 <GeKo> yep
19:23:13 <GeKo> that's one item
19:23:19 <GeKo> the other one is tor weather
19:23:32 <GeKo> #26124
19:23:50 <GeKo> at least that's what i think could be a good gsoc project
19:24:15 <juga> o/
19:24:18 <arma2> yes, good idea
19:24:21 <GeKo> i think i would be up in general for mentoring both
19:24:39 <GeKo> however, i currently plan to be most of july afk
19:24:46 <arma2> there is a third good gsoc project, which i am hunting for in trac. but no need to wait on me for that. :)
19:24:53 <GeKo> which is the "S" in GSoC :)
19:24:58 <GeKo> :(
19:25:10 <gaba> we should have one place (maybe the wiki?) for gsoc projects and put them a scope there
19:25:12 <GeKo> so, i am not sure how to deal with that constraint
19:25:34 <GeKo> juga: welcome!
19:25:44 <GeKo> gaba: we could
19:26:06 <GeKo> i heard karsten would be up for being a second mentor for tor weather, so that's good
19:26:21 <gaba> yes but only if we reduce the scope of it
19:26:58 <GeKo> yeah, adjusting the scope should be not so hard
19:27:05 <juga> Hi GeKo
19:27:22 <ggus> hello
19:27:27 <gaba> GeKo: can we follow up in a mail with karsten and pili for tor weather if you and him want to be mentors there?
19:27:28 <GeKo> gaba: i don't remember my mentorship last time anymore but do you feel it could work with me out most of july?
19:27:40 <GeKo> yes, we can
19:28:14 <GeKo> or, hey, maybe someone else here wants to mentor one of those projects :)
19:28:27 <GeKo> it does not have to be me
19:28:30 <arma2> #5830 is the other project that is worth doing and is bite-sized for a python programmer.
19:28:44 <GeKo> good one, yes
19:28:51 <ggus> GeKo: i added some updates to the pad, but i cannot stay for the meeting today.
19:29:12 <GeKo> no worries, thanks for the update!
19:30:02 <ggus> thanks!
19:30:22 <gaba> anybody else here up to help mentoring during the summer?
19:30:35 <arma2> i can be a backup but i should not be primary
19:30:52 <arma2> i.e. i will be periodically around and helpful, but i will not be consistent or reliable :)
19:31:00 <GeKo> :)
19:31:02 <gaba> ok
19:31:31 <gaba> as a next step I will write to pili ccing you both so we move this forward
19:31:40 <GeKo> okay, i guess this is a "no", which is fine
19:31:55 <GeKo> yep, sounds good. i can chat with here tomorrow
19:32:14 <GeKo> i just wanted to ask the group first about additional ideas and potential volunteers
19:32:18 <GeKo> *her
19:33:02 <GeKo> gaba: let's talk about the sbws plan?
19:33:05 <gaba> ok
19:33:22 <gaba> the keyword for trac is #sbws-roadmap
19:33:41 <gaba> those are the tickets we think are critical to fix/work on to be able to deploy sbws
19:34:00 <gaba> https://trac.torproject.org/projects/tor/query?status=accepted&status=assigned&status=merge_ready&status=needs_information&status=needs_review&status=needs_revision&status=new&status=reopened&keywords=~sbws-roadmap&order=priority
19:34:59 <GeKo> gaba: what's the envisioned timeframe for those?
19:35:11 <gaba> We are working with juga to change a little the proposal she had to get funding for fixing this tickets AND other improvements that are not in that list. But juga still can put some work in the next couple of months.
19:35:25 <GeKo> nice!
19:35:34 <gaba> The estimation is that juga will need 2 months working part time to go through this list
19:35:43 <gaba> and we will need other people to review their code
19:35:54 <dgoulet> awesome
19:35:54 * juga reading
19:36:07 <GeKo> + other teams involved i guess, like metrics team?
19:36:25 <GeKo> fir bugs like #33076 and #33077
19:36:28 <GeKo> *for
19:36:55 <GeKo> but it's on their Q1 roadmap, too, great
19:37:21 <GeKo> so, as i said to gaba earlier: my plan is to get up to speed with sbws starting from this week
19:37:22 <juga> yup
19:37:29 <GeKo> to help with code reviews where needed
19:37:42 <GeKo> and be able to help otherwise, too
19:38:09 <GeKo> seems to be important enough to get this finally going
19:38:09 <gaba> awesome
19:38:31 <GeKo> and help other network team folks like teor so they can do other work
19:38:50 <gaba> ahf will also do reviews for sbws
19:39:21 <GeKo> great
19:40:02 <GeKo> does anyone have questions about that part?
19:40:28 <GeKo> or should we take it and start getting our roadmap into a proper shape? :)
19:40:45 <arma2> +1 to getting sbws into shape for dir auths to run it, however we think it's best to do that
19:41:02 <gaba> ok
19:42:30 <meejah> is sbws async or threaded?
19:42:30 <GeKo> let's do the roadmapping exercise then
19:42:49 <juga> meejah: threaded :/
19:43:10 <meejah> ah, okay i won't be much help reviewing anything then ;/
19:43:40 <gaba> GeKo: we need to continue adding priorities to each of the topics into the pad https://pad.riseup.net/p/network-health-team-2020Q1-roadmap-temporal
19:43:56 <gaba> and then we will create or search tickets for each one
19:44:13 <gaba> but this last thing can be done later after the meeting
19:44:18 <GeKo> okay
19:44:50 <meejah> (p.s. I meant to be here for the whole meeting, but am bad at timezone-math .. I intend to keep working on exit-scanning things)
19:45:04 <gaba> thanks meejah
19:45:05 <GeKo> meejah: thanks!
19:45:58 <GeKo> okay, so i guess sbsw got bumped up priority-wise, given that i'll start looking at it this week
19:46:41 <GeKo> *sbws
19:48:10 <GeKo> what do we have in mind for "make sure growth stats are collected and accurate"
19:48:26 <GeKo> like what should it include which is not for the metrics folks?
19:48:50 <arma2> the metrics folks take the numbers from the descriptors and graph them
19:48:57 <arma2> i don't think they look at the numbers to see if they are reasonable,
19:49:07 <arma2> and i don't think they look at the graphs to see if they are reasonable or surprising
19:49:15 <GeKo> okay
19:49:20 <GeKo> makes sense
19:49:35 <arma2> for example, our user counts are going up because of the dir auth ddos. but the actual user counts are likely not going up, so that's a mistake of some sort.
19:49:55 <arma2> similarly, when turkey blocks tor, and tor users in turkey try to fetch the consensus a lot of times and fail, we count it as a huge spike in growth of users in turkey. that's not right.
19:50:09 <GeKo> right
19:50:15 <arma2> so, step one might be to get some more intuition on what is getting reported, and what we expect it to be
19:50:27 <arma2> and think of some way to automate noticing when it has become wrong
19:50:36 <arma2> that last one seems hard
19:51:50 <GeKo> hrm
19:52:27 <arma2> i guess "stare at the graphs each day and wonder" is a great step zero to figuring out what you're actually wondering *about*
19:52:38 <GeKo> i need to think more about what we should do here in Q1
19:52:42 <GeKo> yeah
19:53:32 <gaba> maybe for Q1 is mostly figure out how to look at it and what needs to be done later :)
19:53:38 <GeKo> that's kind of related to anomaly analysis, right?
19:53:49 <arma2> but for example, the issue where we're way undercounting the bytes spent on directory interactions. we would not have noticed that if we weren't staring at the graphs and also noticing a lot of directory bytes spent
19:54:15 <arma2> yes. it is related to anomaly analysis. maybe it even enables the anomaly analysis.
19:54:26 <arma2> but also, "notice if the graphs break, and get somebody to fix it" is in this category
19:54:31 <GeKo> that's how i'd see it, yes
19:54:35 <GeKo> yep
19:55:20 <arma2> somewhere in this one would also be "getting accurate but safe user counts to happen consistently"
19:55:34 <meejah> FWIW, I agree "establish baseline" is good but it would be even better to write down specifics (baselines of what, exactly?)
19:56:31 <arma2> meejah: agreed. the beginning of that is to make a menu of things we could look closer at. and then sort that menu and start doing the items.
19:56:32 <meejah> ...and I have one: what percentage of exits are "expected" to not establish circuits (and what's an expected failure rate overall, for circuits in general)
19:57:24 <meejah> (i still haven't had time to measure that, but on my scans ~100-ish relays don't get scanned because I fail to establish a circuit to them with at least 5 tries through different middles)
19:57:40 <arma2> both good ones. we want them to be zero of course. but whatever they are now, we want to know. and we want to know when they change.
19:58:13 <arma2> and, is it because particular relays are crummy? or because there is a non-zero background failure rate?
19:58:14 <meejah> yeah, e.g. i can't even answer "are they the same-ish 100 exits)
19:58:44 <meejah> it could even be that i'm unlucky at picking middles (or guards) for those probes
19:59:49 <arma2> meejah: or it could be methodology problems, like you're using the consensus from last hour, and some relays are down, and you just keep on assuming they're up because your consensus says they are
19:59:57 <meejah> another thought: it could be "time of day" too (e.g. is it "busy internet time" in those relays' countries)
20:00:05 <GeKo> yeah
20:00:06 <meejah> arma2: yes, true
20:00:13 <GeKo> all sorts of interesting questions :)
20:00:26 <GeKo> i bet we get more once we start looking closer at the date we have ;)
20:00:45 <GeKo> okay, our hour is up
20:00:48 <arma2> (david stainton did a study a while ago where he concluded that a double-digit percentage of links between relays are broken. but i think he was measuring wrong. but i don't know what he was measuring.)
20:01:18 <GeKo> gaba: i guess we "sit down" this week and nail doen the roadmap?
20:01:22 <meejah> +1 on that .. but also an interesting thing to study ("reachability between relays")
20:01:23 <gaba> :)
20:01:28 <gaba> yep
20:01:32 <GeKo> and then we can look at it as a team next monday
20:01:42 <GeKo> and hopefully we are good :)
20:01:54 <arma2> geko, let us know if there is something concrete we should try to help with. else we just sit around speculating about things that might be useful. :)
20:02:07 <gaba> there is a list at the bottom of the pad that may have some interesting tickets to work that are related to the priorities
20:02:32 <GeKo> yes, some intuition about those could be helpful
20:02:40 <gaba> geko: it may be better to do it ourselves and then we bring an already done roadmap for feedback
20:02:51 <GeKo> yes, that was my plan :)
20:02:52 <arma2> i think many of the categories in the q1 roadmap are related, and they boil down to "start looking more closely at everything, with an eye toward what can be automated and scaled, but also with an eye toward what is important to examine"
20:03:01 <GeKo> (in case i did not get that across ;) )
20:03:02 <meejah> oh, p.s. my scanner is on the gitlab now so if anyone wants to see code .. ask someone for access ;)
20:03:38 <GeKo> arma2: i agree, it's still the up-to-speed phase essentially
20:03:57 <GeKo> because we know so little (at least i ;) )
20:04:19 <GeKo> okay, any last minute concerns/questions/comments?
20:05:14 <GeKo> hearing crickets. thanks everyone and have a nice week!
20:05:17 <GeKo> #endmeeting