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

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

 

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

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

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

 

 

 

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

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

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

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

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

 

Кэмерон Эрл

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

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

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

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

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

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

 

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

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

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

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

 

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

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

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

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

Рубрики: 

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

Читайте также

 

Комментарии

Страницы

mike пишет:

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

я не ставил никаких оценок, и я точно не девушка

kuzmenoka пишет:

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

Если это считать автоматическим программированием, то такой язык практически и довольно давно существует. Посмотрите визуальный язык "ДРАКОН" Паранджанова. Я не патриот, то что это советский продукт чистая случайность. Разница только в том, что свои пожелания нужно не бубнить в микрофон, а рисовать. В отличии от UML и иже с ним, это истинно совершенно строгий язык на самом верхнем, доступном не программисту, пользовательском уровне. К сожалению существующий, довольно эффектный, легкий в части рисования редактор, так и не доведен до ума ни по интерфейсу (ужасно допотопный), ни в части генерации кода (хотя, принципиально, все очень просто задумано и работает).

Увы, не в тех руках, и при уже погасшем энтузиазме. Туда бы вложить для начала ~$100K – была бы глобальная бомба (и боюсь, сильно ударила бы по программистам (которые при озанкомлении чуют это спинным мозгом, и наполняются отвращением...)). И без всякого ИИ.

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

...Я не ставил никаких оценок...

А я и не утверждал, что ставили.

Посмотрите визуальный язык "ДРАКОН" Паранджанова.

И что? Вы подменяете понятие "машина вместо человека" на “программирование без программистов”. Такого программирования -- воз и малая тележка.

Единственная, но довольно расхожая мысль в тему.

Другими словами -- банальность, кроме которой оппоненту нечего сказать, так?

Я справедливый.

Я тоже. Хотите анек?

Едет Виссарион Григорьевич на извозчике. Тот видит: клиент одет бедно, но чисто; интересно ему стало: "Вы барин, кем будете-то?" -- "Критик." -- "А как эта?" -- "Ну вот, напишет чего автор, а я, значит, критикую." Извозчик себе в усы: "Ишь, говна какая..."

mike пишет:

И что? Вы подменяете понятие "машина вместо человека" на “программирование без программистов”. Такого программирования -- воз и малая тележка.

Я отвечал другому человеку на его конкретную реплику. Приглядитесь

Едет Виссарион Григорьевич на извозчике. Тот видит: клиент одет бедно, но чисто; интересно ему стало: "Вы барин, кем будете-то?" -- "Критик." -- "А как эта?" -- "Ну вот, напишет чего автор, а я, значит, критикую." Извозчик себе в усы: "Ишь, говна какая..."

....аааа, ну тады, oй!

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

Я отвечал другому человеку на его конкретную реплику. Приглядитесь

?

На ту реплику я ему ещё до Вас отвечал. Но Вы пожелали как бы поддержать его. Поэтому я ответил вам двоим: не подменяйте понятия.

Хотя, думается, есть область и, возможно, не одна, где машина может найти решающий алгоритм, следовательно, и закодировать его. Но это тема статьи, не комментария.

mike пишет:

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

Ключевой вопрос полностью автоматического программирования ("включая постановку задачи") – чей мотив? Если собственный машины, то это полноценный ИИ. А если ИИ, то это уже не автоматическое программирование, а обычное интеллектуальное ... И машина, кстати, тогда уже не объект, а субъект.

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

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

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

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

-1
Аватар пользователя savely

> Админ выделяет слишком мало времени на правку, мысль осталась незаконченной. 

О! А я о чем тут давеча! 

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

mike пишет:

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

Попробуйте формулировать мысль до того, как нажимать "Сохранить".

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

Страницы