Не перестает удивлять и где-то даже шокировать отношение инженеров к своему труду и современным инструментам. Случай из практики. Код на спарке месяц не может отработать, уходит в тайм-аут, поэтому перешли на недели. Смотрю на код, вижу, что это мешанина адхоков на 700+ строк, которая явно не проходила через код-ассистент. То есть, казалось, то, что точно должно сработать. Прогоняю базовый скан — результат. Expected Overall Speedup: 5-10x (conservative estimate) Альтернатива: # Minimal Patch: Replace NOT IN with LEFT ANTI JOIN Expected Speedup: 3-5x on bottleneck queries Time to Implement: 10 minutes Risk Level: LOW Пришлось ввести новое правило: 1) Если есть код, который явно не проходил проверку через ассистента и занимает много времени (а такое обычно легко определить), мы должны прогнать его через ассистента, чтобы переписать код, выявить и приоритизировать узкие места, а также оценить общий прирост скорости и прирост по каждому узкому месту. 2) Затем попросить ассистента разложить изменения по узким местам, внедрять их по одному и тестировать на: a) воспроизводимость результата; b) оптимизацию Думаю пора вводить следующее правило: Мыть руки перед едой