Как стать автором
Обновить

Как написание кода с помощью машинного обучения всё (не)изменит

Уровень сложности Простой
Время на прочтение 4 мин
Количество просмотров 17K
Всего голосов 58: ↑57 и ↓1 +56
Комментарии 45

Комментарии 45

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

Ну так и что это изменит? Больше, чем есть сейчас, я надеюсь, их всё равно уже не напихать, а кто их генерит - дело десятое.

Я абсолютно уверен, что если что-то плохо, то может стать хужеих во-первых может стать больше, а во-вторых шаловливые ручки прежних авторов найдут себе новое применение.

В начале своей карьеры работал на фабрике по производству мусорных приложений. Как-то за неделю наклепал 97 штук вида "Научись риовать Х в стиле аниме".

Контора внезапно развалилась. Внезапно, так как и в самом деле была успешна, но попалась на махинациях с рекламным трафиком. Около 600 человек за полгода покинули тонущий корабль.

Из тех коллег, с кем я пересекаюсь, люди сейчас в финтехе (хороший финтех, не микрозаймы), ВК, Яндексе, игродельне мирового уровня (свой стенд на Е3).

Себя оценивать не буду.

Есть у меня предположение, что перестав делать всякую дрянь люди могут начать делать что-то полезное. Но это не точно.

Все значительно хуже - читать эти поделия будут тоже нейросети. С другой стороны, вы же лично не читает вывод интерфейса sata - зачем вам знать о распродаже в супермаркете или изменение рекомендуемой нормы углеводов?

С каждым новым инструментом, облегчающим программирование, программисты освобождали себя от части труда и начинали заниматься следующим уровнем сложности.

Вы привели в качестве примера очень сложные продукты. Они стали возможны именно благодаря развитию инструментов.

Пресловутая "архитектура", "паттерны", "чистой код" Дядюшки Боба - возникли довольно поздно после возникновения языков высокого уровня.

Именно эти вещи являются наиболее сложными, недопонятыми и недорассказанными. Первые попытки изучить их и описать нельзя назвать удачными, но они были лучше, чем ничего.

С развитием чат-ботов мы получаем инструмент, который легко напишет любую программу уровня 60х годов.

Если вам нужны, если вы понимаете, умеете использовать с выгодой простые программы - вы получаете буст и карт-бланш.

Существует миллион простых идей и микропрограмм, которые никогда не реализовывались, потому что запрягать живого программиста было слишком дорого.

Теперь это пространство открыто - в том числе и для самих программистов. "Там, внизу много места" (с) Фейнман

Дерзайте. Просто подумайте об очень простых программах, которые раньше были запредельно дороги. Которые надо было не только написать, но и ввести (те самые перфоркарты и перемычки).

Программисты останутся нужны, потому что запрос на сложные продукты растет и они хорошо оплачиваются.

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

Отдайте их роботам.

Ваш комментарий невероятно оптимистичен и, как мне кажется, ошибочен. Ещё в глубоком детстве я читал в знаменитой книге "А я был в компьютерном городе" проблему составления точного алгоритма. И график, если так можно его назвать, приведённый в статье, это прекрасно иллюстрирует.

Для примера - попробуйте заставить сетку написать cat, sed, awk... Да хотя бы cowsay. Я удивлюсь если у вас это вообще получится.

Пресловутая "архитектура", "паттерны", "чистой код" Дядюшки Боба - возникли довольно поздно после возникновения языков высокого уровня.

Книга - да, а шаблоны почти сразу. В семидесятые. И тому были предпосылки, которые никуда не делись.

Уровень 60-х годов был совсем не низким. Размером с Маргарет Гамильтон, пимерно

Ну или предложите чатботу написать компилятор кобола, например

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

Я ради эксперимента попросил жену написать калькулятор на Chat GPT. Она справилась. Правда приоритет операторов не поддерживался. Попытка объяснить это боту была намного сложнее, чем сделать это руками.

Не переживайте, это не всем людям доступно, не то что ботам. А калькулятор инженерный или обычный?

Не соглашусь что это недоступно людям, это школьный курс математики, дети по одной книге понимают как и что делать, думаю ребёнок вполне справится с задачей написать калькулятор если уделит этому время на обучение.

Если у вас стояла задача, чтобы жена с помощью ChatGPT написала калькулятор в один запрос-ответ(пускай запрос постоянно корректируется фразами "добавь обработку скобок", "добавь функцию извлечения корня" и т.п.), то это вполне логично, что она не сможет этого сделать. ТЗ слишком объёмное.
Если задачу разделить - дай метод обработки умножения/деления, дай метод корня, степени и т.д. - справится каждый. Если будет понимать, как добавлять метод в код/класс/интерфейс... Но в таком случае все равно надо думать, а не банально копипаст в рандомный файл в рандомную строку.

Поскольку все такие модели основаны на статистике, то чем реже встречается какая-либо задача в реальном коде, тем труднее для ChatGPT её решить. Создать какой-нибудь Hello World на Python для такого бота - плёвое дело, а вот сделать даже самую простейшую игрушку для NES, хотя бы уровня змейки - подозреваю, что вообще неразрешима для данной модели. Даже под ZX-Spectrum на BASIC'е и то вряд ли напишет змейку - слишком специфические особенности архитектуры требуется учитывать.

Для этого и нужны плагины по идее.

Тот момент, когда проще всё написать самому, чем объяснять ChatGPT, как это сделать. ^_^

Не знаю как вы, но я прежде чем решать комплексную задачу, всегда сам себе объясняю и расписываю письменно что нужно делать. Сразу в код — это если только нужен просто прототип.

У меня традиция — раз в пару лет вспоминать цитату из Совершенного кода:

Десятилетиями поставщики инструментария и ученые мужи обещают, что создание средств, которые позволят отказаться от программирования, не за горами. Первым и, кажется, самым забавным случаем присвоения этого ярлыка, был язык Fortran. Fortran задумывался как средство, которое даст ученым и инженерам возможность просто набирать формулы и, таким образом, обойтись без помощи программистов.

За последние десятилетия программисты видели массу инструментов, которые предположительно должны были устранить необходимость программирования. Сначала это были языки третьего поколения, потом — четвертого. Потом — автоматическое программирование. Потом — CASE-средства. Потом — визуальное программирование. Каждое из этих достижений привносило значительные улучшения, и общими усилиями они сделали программирование абсолютно неузнаваемым для тех, кто изучал его до этих нововведений. Но ни одна из этих инноваций не устранила программирования как такового.

Причина в том, что программирование — принципиально сложный процесс даже при наличии хорошего инструментария. Дело не в инструментах — программистам приходится бороться с несовершенством реального мира; нам нужно досконально продумывать последовательности, зависимости и исключения, иметь дело с конечными пользователями, которые никак не могут ничего решить. Нам всегда придется бороться с плохо определенными интерфейсами с другими программными и аппаратными средствам и всегда принимать во внимание инструкции, бизнес-правила и другие источники сложных проблем, возникающие вне мира программирования.

Нам всегда будут нужны люди, способные заполнить брешь между задачей реального мира, которую нужно решить, и компьютером, предназначенным для решения этой задачи. Эти люди будут называться программистами независимо от того, манипулируют они машинными регистрами на ассемблере или диалоговыми окнами в Microsoft Visual Basic. Пока у нас есть компьютеры, нам будут нужны люди, которые говорят компьютерам, чтó делать, и эта деятельность будет называться программированием.

Когда вы слышите заявления о том, что «новый инструментарий устранит необходимость компьютерного программирования», бегите! Или хотя бы посмейтесь про себя над этим наивным оптимизмом.

И да, и нет. Сейчас бот не заменит программиста. Потому что он не умеет думать, делать выводы, на основе сделанных выводов делать новые выводы и так далее. Ну как, немножко умеет (читай соседнюю статью как сеть научилась арифметике).

А вот как научится думать, тогда да, наверное обратно на пальмы залезем. Что, с какой-то стороны, не так уж и плохо

Просто всем начинает казаться что это уже гораздо ближе, чем нам всем казалось.

Напоминает эйфорию 60х годов прошлого века. Казалось вот-вот и все будет: и роботы и ядерный синтез и космические путешествия

Казалось вот-вот и все будет: и роботы

Недавно показывал мужику старшего поколения, ему 60 лет, современный квадрокоптер - улетел на 4км, потом нажал кнопку автовозврата, положил пульт, взял пачку чипсов и стал точить. Квадр сам прилетел и сам приземлился. Этот мужик слегка перевозбудился и потом целый день охреневал в стиле "Не ну ты видал, оно само летает! Да не может быть, будущее наступило!".

Квадр первый мавик про.

Просто и ты и мужик далеки от технологий. Ракеты с "компьютерным зрением" были ещё в 60е годы https://en.wikipedia.org/wiki/TERCOM и про это много где рассказывалось, мол, анализируют местность, корректируют, могут летать без спутников, будущее.

Конечно же ничего сложного для квадрокоптера использовать технологии 60х годов прошлого века нет.

Когда мне нужно узнать, что там занимает место в БД, отчего это она распухла, я пишу в гугле "select table size ms sql"

Click, Ctl+C, Alt-tab, Ctl+V, F5

Все.

Никакой "магии", и результат за несколько секунд.

А формулировать вопрос нашей языковой модели и наслаждаться ее рассуждениями займет много больше времени. Зато можно сказать, что она пишет код, и бояться, что она заменит всех кожаных мешков.

Ну да, модель неимоверно крута.

Ну да, это еще один "помогатор".

Но никак не замена.

много времени на формулировку это не заняло.

Это же касается любых СУБД, а не только MS SQL, которая совершенно случайно одна из самых популярных, да ведь? Как насчёт dBase, Paradox, Interbase? Для чистоты эксперимента. Ну и — процитировать часть официальной документации много ума не надо. Как насчёт задачи чуть посложнее — перевести хранимую процедуру с одного SQL-диалекта на другой? Особенно когда в одном диалекте есть фичи, отсутствующие в другом.

Да, это касается и любых других СУБД. Умная железяка точно так же перепечатает популярный ответ из стаковерфлоу %)

Так его же там может и не быть. Не на все вопросы уже есть готовые ответы на стаковерфлоу. Иногда ответы приходится искать в официальной документации, иногда в древних мануалах, отсканированных и выложенных на богом забытых домашних страничках, иногда в обсуждениях на форумах, а иногда даже лично писать автору на почту.

Какой вы скучный...

Или залезть в исходники и разобраться самому ибо автор уже настолько преисполнился в своём познании )

Реально приходилось декомпилировать dll для Sybase, чтобы исправить в ней ошибку)

Но и ответ от нагугленного не отличается. Такой lmgtfy за миллион баксов.

Ну вот тут как раз ЖПТ и рулит. Так как Ваш запрос о select table size уже изначачально может привести к неправильному результату. А плюс ЖПТ в том, что ему можно задать вопрос человеческим языком, а не языком гугла (правильно сформулировав, учитывая доменную область). К тому же Вы ведь хотели узнать, отчего база распухла, а не размеры таблиц? Скрин прикрепить не могу, но ЖПТ на Ваш же вопрос "что там занимает место в БД, отчего это она распухла" выдал:

"В базе данных может занимать место множество различных объектов, таких как таблицы, индексы, представления, процедуры и триггеры. Размер каждого объекта зависит от количества данных, которые он содержит, а также от способа, которым они хранятся в базе данных.Вот несколько возможных причин того, что может занимать много места в базе данных: .... " И далее список из 6 пунктов, из которых размер таблицы хоть и первый но не единственный.
(Следующий вопрос будет (в зависимости от уже вашего контекта), например: "как узнать размеры таблиц?", "а как индексов?")
А вот подобный запрос в гугле может разве что выдать ссылку на эту страницу.

Я в принципе согласен. Но смотрите, получается, что мы ведем разговор о том, как быстрее или удобнее получить информацию. Чтобы плавно, перетекая от одного вопроса к другому, докопаться до проблемы и решить ее.

То есть речь не о замене программиста. Речь об удобном ассистенте. И с такой ролью ЖПТ вполне справится. Он вряд ли станет универсальным инструментом. Но заменить условный Гугл в определенных случаях сможет.

Заменить самого программиста - нет.

Ну просто потому, что программист, это тот человек, который объясняет машине, что надо делать. Когда-то, как верно было подмечено в статье, для этого надо было пробивать перфокарты. Сейчас - формулировать на высокоуровневом ЯП алгоритм работы. С ЖПТ (возможно) мы перейдем на следующую ступень абстракции, и будем формулировать задачи машине еще более высокоуровнево.

Никуда мы не денемся. Просто вместо условных отверток у нас будут условные шуруповерты.

Вы все ещё делаете сайты и лендинги? Вы закончились. Вы делаете веб-приложения? Что-то вроде фотошоп - онлайн? У вас ещё лет 100.

Проблема нейросетей о которой никто не говорит - это обучающая база. Если никто не выложил онлайн-фотошоп (как пример), то нейросети его и не освоят.

Вы можете предложить творческий потенциал в нейросети. Я соглашусь, но уверен что его ещё недостаточно для соревнования 8 млрд * 200 трон связей.

ChatGPT сегодня выглядит буквально как трехлетний ребёнок с феноменальной памятью. Он даже не умеет лгать, потому что не понимает какова выгода от лжи.

Его фантазии это буквально фантазии ребенка о человеке-пауке. Каждый раз когда он галюцинирует, я, будто обращаясь к собственному сыну, говорю "вот ты фантазер".

Перед нами ребенок с феноменальной памятью. И ему нужны родители и педагоги. А ну идиоты с запретами.

Вы все ещё делаете сайты и лендинги? Вы закончились.

Простите за иронию, но так про wordpress говорили) А потом про шаблонизаторы)

О, кстати, вспомнил, есть еще очень веселая верстка имейлов :) Интересно, сможет ли GPT сверстать нормально, под большинство почтовых клиентов.

А верстальщики всегда были низкоквалифицированной работой. Полноценные фронтендеры- совершенно другой уровень (но все еще ниже бекендеров).

Тут вы не совсем правы. Когда верстальщик это именно верстальщик а не фронтэндер низкого полёта, то зарплата у него высока как и у любого узкого специалиста.

ChatGPT сегодня выглядит буквально как трехлетний ребёнок с феноменальной памятью. Он даже не умеет лгать, потому что не понимает какова выгода от лжи.

спросите в chatgpt откуда пошел мем "сам себе злой буратино". выгоды конечно никакой - но насчет лгать.... :)

А это будет ложь или добросовестное заблуждение?

Ответ чатгпт это фактически голос коллективного бессознательного, расспрашивая его про историю и политику ты скорее всего получишь кучу городских мифов. Да, с кодом или иными техническими сущностями он помогает хорошо, но это обычно связано с качеством обучающей выборки и однозначностью ответа.

Просто из любопытства - кто-то открывал ссылку на канал? Тут дело какое... Там совсем-совсем не канал, я просто терпеть не могу всех этих любителей подписывания и решил пошутить.
И вот я думаю, это все такие сдержанные, никто не написал что ссылка неправильная, или за 10000 просмотров никто на неё не нажал? Если второе, то я перестал понимать, зачем на Хабре вообще эти бессмысленные статьи про что попало с призывами подписываться.

Если Вы хотели увидеть конверсию, то может стоило создать канал с 0 подписчиков, не?

А так кажется вы делаете неверные выводы.

Чой-то неверные? Логичные вполне выводы! Если люди вообще никак не отреагировали на этот "канал", то какие есть причины полагать, что на настоящие каналы они как-то реагируют? Кроме того, вот вам побочный аргумент: мою самую популярную статью прочитало 209000 человек, а подписаны на меня 42. Или у вас есть основания полагать, что люди, подписывающиеся на авторов Хабра это совсем не те люди, которые подписываются на каналы в Телеграм?

В целом аргументацию понимаю, но не согласен. Думаю, что сделаю такую ссылку, но со счётчиком желающих подписаться.

Той-то неверные. Я имел ввиду что вы ждёте, что из-за кривой ссылки люди будут писать "ай-яй-яй ссылка кривая, а я так хотел подписаться", люди обычно ленивые и если что-то не сработало, то забьют болт. И если хотели увидеть репрезентативную статистику по конверсии просмотров в подписчиков было бы эффективнее указать нормальную ссылку на телеграм канал, а не вот это вот всё.

Я посмотрел куда ведёт ссылка. Удивился — я не заметил, что это был перевод? Прыгнул в самый верх — источника перевода нет, странно. Так это не перевод? Ну и ладно, всё равно не собирался подписываться. Пошёл в комменты.

Спасибо за статью, приятно что кто-то таки опускает народ с небес на землю.

Зарегистрируйтесь на Хабре , чтобы оставить комментарий

Публикации

Истории