The harm that has been done has been done.

Code of conduct enforcement never is nice or fun on any side of it. Here it has been terrible, and for all Jeremy has suffered, there is little reason to doubt that the people on the other side of the process were well-intentioned but apparently not well-equipped to do this better. The author of the linked post appears to have some regrets over how things went and offers a sincere apology. It might be a reasonable conclusion that the people in charge of this process might not be skilled at CoC enforcement. The need of training people for this might be a general item to learn here, too.

Of course, you can push for harsher judgement of those at fault, I'm afraid it would do little to make the world better.

In addition to the distress the process has caused to Jeremy (and probably, to a far lesser extend other people involved), the outcome also doesn't do the perceived problem that started it any good.

There are two things that strike me as as making Jeremy's talk unusual:
- There appears to be a substantial discrepancy between the abstract and the actual talk. In the talk it would seem that roughly the first and last quarter are about primarily nbdev and fastdoc (in alignment with the abstract) and the center half is a rebuttal.
- It seems uncommon to offer point-by-point rebuttals of something as a keynote talk. Maybe this is for a good reason.

Now, as someone who has organized events with speakers, I must admit I would not appreciate if someone had been invited to give a talk on one thing and then takes half the time to talk about how someone else is wrong (with a subtext of "I am right") instead. I have a certain desire for reliability when I'm organizing things and I would feel let down someone did this to me.

The other part that made me feel the talk is unfortunate relates directly to the complaint as described in the NumFocus CoC event report. I would personally not consider giving a point-by-point rebuttal of someone else's presentation as a talk. I must admit I could not really appreciate the humorous aspect of the talk - maybe it was too shallow for my tastes or I am just too stuck up - and the rebuttal segment struck me as quite uselessly negative.
(If humour lives off some form of discrepancy, it might not be hard to see how "I like notebooks" at a Jupytercon is much less witty than "I don't like notebooks" at a Jupytercon.)

My concern with having such talks - regardless of that Joel does not mind - is that I would worry about sending a message of "give a talk, have your points ripped into pieces 2 years later" to speakers who might be less happy to have that done to them. This is the aspect where I would actually go so far to say that it might not been the best judgement to give this talk as it is presented. I think the same content as the middle part could have easily been framed in the positive "best practices for working with Jupyter notebooks" sense and it would have been a much better, friendlier and more useful talk.

I respect Jeremy and his work and how much he has helped people achieve things, and I am saddened by this entire affair. But to my mind, the talk actually was not up to his usual standards, neither does it do Jupytercon justice nor the good work that Jeremy showcasing nor the insights he is presenting.

So, using the CoC and making this a process of "is Jeremy at fault?" has not only has caused considerable harm all around, but has also done a disservice to a discussion of what type of tone we want to set at our events.

Note that this isn't about what people should or should not be allowed to say, but I would suggest that not everything covered by free speech actually is worth having at a conference.