Машина вместо человека: можно ли автоматизировать программирование?

Автоматизация постепенно проникает во все сферы нашей жизни. Не избежало такой участи и программирование. Сможет ли робот или ИИ заменить человека в этом деле? Посетители сайта Quora поделились своим мнением по этому неоднозначному поводу. 

 

Эрик Пепке, гик

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

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

 

 

Гарри Тэйлор, занимается программированием еще с момента существования 8-битных компьютеров

Нет, это принципиально невозможно.

Как вы сможете без языка программирования объяснить автоматизированной системе, что именно вы бы хотели создать? Как донести, где вы хотите расположить кнопки, как они должны выглядеть и исходя из каких действий они будут появляться и исчезать? За что будет отвечать каждая кнопка? Будет ли нажатие на одну кнопку каким-то образом влиять на то, что произойдет с остальными кнопками? Что будет происходить, если после нажатия на кнопку пользователь решит отменить последнее действие?

И это всего несколько вопросов, которые касаются кнопок одного окна.

У компьютера нет CMYK-системы (цветовая модель «голубой-пурпурный-желтый»), нет концепции комбинированных цветов, он не знает, что такое комплект шрифтов и что собой представляют картинки. Компьютер вообще ничего не понимает. Все, на что способен компьютер, это следовать полученным инструкциям. На данный момент наилучшим способом донести наши инструкции до системы является использование языка программирования.

 

Кэмерон Эрл

Да. В конечном итоге любой сможет «программировать» — на естественном и привычном нам языке сообщать компьютеру, что именно мы хотим.

Программирование — это процесс коммуникации с компьютерами. Сначала мы говорили на естественном для компьютера языке — бинарном. Чтобы иметь возможность общаться с компьютером, нам необходимо было выучить его язык. И с тех самых пор умные люди непрерывно упрощают данный процесс коммуникации. Сначала единицы и нули были трансформированы в короткие команды (как команды для собак, «сидеть» или «голос»). Потом данные команды постепенно переросли и развились в некое подобие человеческого языка. Те общепринятые вещи, которые раньше требовали достаточно времени и уточнения многих деталей, сейчас могут быть донесены при помощи всего нескольких слов.

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

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

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

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

 

Филипп Лхост, увлекается языками программирования

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

Но для меня программирование — это не просто техническая задача с несколькими стандартными решениями. Это также и творческий процесс, в котором важны воображение, остроумие, чувство эстетики (для создания пользовательского интерфейса), а также понимание пользовательских потребностей. Кроме того, некоторые алгоритмы только предстоит улучшить или даже создать. 

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

 

Ричард Кеннет Энг, использует Fortran, Tandem TAL, C/C++, C#, Obj-C, Java, Smalltalk, Python, Go

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

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

Версия для печатиВерсия для печати

Рубрики: 

  • 1
  • 2
  • 3
  • 4
  • 5
Всего голосов: 5
Заметили ошибку? Выделите ее мышкой и нажмите Ctrl+Enter!

Комментарии

Страницы

mike пишет:

Да нет, всё равно объект; субъект СОЗНАЁТ своё существование и выделяет себя из остального мира, защищая своё существование.

Боюсь "мотив" (не триггер и даже не рефлекс) это атрибут свободной воли, которая по умолчанию подразумевает осознание своего существования. Но это тема другого разговора, надеюсь, в обозримом будущем не актуального.

Аватар пользователя mike

На сим, полагаю, закончим.

Попробуйте сформулировать ...

Уважаемый админ, я старый зануда-разработчик. Мне трудно отредактировать мысль, не записав её. Особенно на смартфоне. Я бы предпочёл не получать советы "попробуйте то, попробуйте это". Увеличьте, пожалуйста, хотя бы вдвое время на правку. Это не скажется на редактировании задним числом. И т.к. в смартфоне я не нашёл CtrlZ, то введите, пожалуйста, значок отката. Если не трудно.

Аватар пользователя admin

mike пишет:

Попробуйте сформулировать ...

Уважаемый админ, я старый зануда-разработчик. Мне трудно отредактировать мысль, не записав её. Особенно на смартфоне.

Что вам мешает редактировать мысль до того, как вы нажали "Сохранить"?

Я бы предпочёл не получать советы "попробуйте то, попробуйте это".

А я, в свою очередь, предпочел бы не получать указания в стиле: "Мне не важно, почему у вас сделано именно так. Я хочу, чтобы было сделано по-моему".

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

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

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

mike пишет:

И т.к. в смартфоне я не нашёл CtrlZ, то введите, пожалуйста, значок отката. Если не трудно.

Готово.

+1
Аватар пользователя mental

Про язык для бухгалтера - SQL и Кобол задумывались именно в такой парадигме. Оба вышли не особо удачными. 

Аватар пользователя mike

Что вам мешает редактировать мысль до того, как вы нажали "Сохранить"?

Вот эта кнопка и мешает.smiley

Почему именно вдвое?

Потому что хотя бы.

Готово.

Спасибо.

Аватар пользователя mike

SQL и Кобол задумывались именно в такой парадигме.

surprise Видимо, ни того, ни другого Вы не знаете.

+1
Аватар пользователя mental

Почитайте историю, гуру вы наш. 

Аватар пользователя mike

гуру вы наш.

Не обзывайтесь. С SQL работаю постоянно. И много лет. С Коболом знаком только по статьям. И то, и другое требуют вмешательства квалифицированного программиста. 

Аватар пользователя mental

О чем и речь 

savely пишет:

Я-то с какого начальникwink 


А капитанская кепи?

Страницы