I'm working with someone who uses github copilot and a lot of my feedback boils down to "that's something that people used to do in #python but it's obsolete now" because *of course* that's the sort of feedback I'd give. Of the code that github stole, most of it is always going old because, like, more things happened in the past than in the present. So now we live in a very weird present-future where allegedly-cutting-edge "AI" is telling us to do Python 2.7 idioms like class ClassName(object)

@esther_alter

"More things happened in the past than the present" is an excellent quote and I'm probably going to steal it.

@dynamic That's what a undergrad history degree from Wesleyan will get ya

@esther_alter

Sucks for Python. They should never have broken compatibility, womp womp.

EDIT: Just to be clear, I have zero pity because the documentation and old code doesn't just disappear when the compatibility breaks. Same for old libraries that may not have been updated to 3.0 for any number of reasons. The exact same thing will happen if you're looking up Python resources the normal way. This is not an AI problem, this is a "don't break compatibility" problem.

@rastilin @esther_alter this has nothing to do with compatibility, you can still create a class with `class ClassName(object)` in Python 3.
@Ash_Crow @rastilin ^ yes this. Another good example is they used a workaround for essentially overloading __init__ that is totally valid Python 3 code but has been obsolete for a while now (not just with the overload decorator, but also doing some type hinting tricks that are no longer needed as of Python 3.10)

@esther_alter

I'm doing Python at *important job* atm and on our platform, the industry standard RHEL 8, the Python version used is 3.6.8.

So not just answering with stuff obsoleted by 3.10 is fine I think ...

@Ash_Crow @rastilin

@Ash_Crow @rastilin @esther_alter If anything, the incompatible changes are probably easier for the model to handle.

If you're using the compiler as a source of feedback while training a model, incompatible changes could be flagged immediately. Catching obsolete syntax that is still valid is a more difficult problem.

@esther_alter Someone I work with used it for awhile to "help" with code reviews in languages in which he was not proficient. The suggestions were terrible and added an extra layer of review. Actively unhelpful or subtly misleading.
@matsuzine Absolutely. The other clue that AI is at work is that there is a lot of verbose duplicate code
@esther_alter ::briefly entertains the possibility that I am actually an AI::
@esther_alter I've reviewed a number of PR generated by "AI" and none of them have been good. Most aren't even mediocre.