LINUX.ORG.RU

История изменений

Исправление ValdikSS, (текущая версия) :

Ну если вы разбираетесь в программе и знаете, что править, то конечно быстрее самому сделать, чем формулировать задачу и ждать, пока исполнитель её сделает.

Я дал ассистенту доступ к одноплатнику, к которому подключён принтер, чтобы он нашел и исправил баг в USB-подсистеме ядра(!), и он справился в течение часа за несколько итераций. Он сам выдвигал гипотезы, правил код, компилировал ядро, загружал его на одноплатник, перезагружал его, проверял, смотрел, что изменилось, читал kernel log из uart’а в случае проблем (пару раз сломал DMA).

Справился бы я самостоятельно? Однозначно, я примерно знал куда копать, где отлаживать, на какие вещи обратить внимание. Но я только поверхностно знал причину проблемы и систему USB в целом, у меня на это ушло бы несколько полных рабочих дней (и чтение много-сотен-страничных спецификаций USB), а у ассистента ушел час.

Справился бы ассистент без моих знаний и подготовки оборудования? Очень вряд ли — он работает примерно как обычный junior или студент, т.е. ему нужно организовать «рабочее место» и составить ТЗ, он не может просто так взять и написать целиком рабочий код в один пресест.

Я теперь могу исправлять реальные баги в FOSS на языках и в проектах, которые не знаю в полной мере, чтобы решить проблему с наскока. Иными словами, вместо заведения issue и ожидания дней-недель-месяцев для не сильно глубоко технической проблемы, я могу решить ее сам с помощью ассистента в течение минут.

То же самое с реверс-инжинирингом — анализировать чужой скомпилированный код, алгоритмы и прочее теперь еще значительно проще, произошла вторая революция (первой был Hex-Rays).

Исходная версия ValdikSS, :

Ну если вы разбираетесь в программе и знаете, что править, то конечно быстрее самому сделать, чем формулировать задачу и ждать, пока исполнитель её сделает.

Я дал ассистенту доступ к одноплатнику, к которому подключён принтер, чтобы он нашел и исправил баг в USB-подсистеме ядра(!), и он справился в течение часа за несколько итераций. Он сам выдвигал гипотезы, правил код, компилировал ядро, загружал его на одноплатник, перезагружал его, проверял, смотрел, что изменилось, читал kernel log из uart’а в случае проблем (пару раз сломал DMA).

Справился бы я самостоятельно? Однозначно, я примерно знал куда копать, где отлаживать, на какие вещи обратить внимание. Но я только поверхностно знал причину проблемы и систему USB в целом, у меня на это ушло бы несколько полных рабочих дней (и чтение много-сотен-страничных спецификаций USB), а у ассистента ушел час.

Справился бы ассистент без моих знаний и подготовки оборудования? Очень вряд ли — он работает примерно как обычный junior или студент, т.е. ему нужно организовать «рабочее место» и составить ТЗ, он не может просто так взять и написать целиком рабочий код в один пресест.

Так что я целиком поддерживаю оратора выше. Я теперь могу исправлять реальные баги в FOSS на языках и в проектах, которые не знаю в полной мере, чтобы решить проблему с наскока. Иными словами, вместо заведения issue и ожидания дней-недель-месяцев для не сильно глубоко технической проблемы, я могу решить ее сам с помощью ассистента в течение минут.

То же самое с реверс-инжинирингом — анализировать чужой скомпилированный код, алгоритмы и прочее теперь еще значительно проще, произошла вторая революция (первой был Hex-Rays).