Главное — алгоритмическое мышление 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Главное — алгоритмическое мышление



Здесь стоит отметить, что пока мы вообще не учитывали технологии. Речь шла исключительно о двух «беседующих» людях. Теперь, когда у нас есть хороший способ, то есть хороший алгоритм, озаботимся тем, как его автоматизировать при помощи подходящих технических средств. Мы могли бы использовать систему управления с помощью движения глаз, которая распознает моргание, или шапочку с электродами, которая улавливает, «да» у человека в мыслях или «нет». Но дело в том, что, какую бы технику мы ни использовали, ей все равно потребуется алгоритм поиска. Если выбрать его неверно, то при всех ее преимуществах общение все равно пойдет медленно — придется задавать 13 вопросов вместо пяти. И нет никакой разницы, будет ли помощником компьютер или человек. Если сначала не продумать алгоритм, система может оказаться мучительно медленной. Вычислительная техника — это не только технологии. Это и вычислительное мышление, которое необходимо, чтобы найти хорошее решение.

Еще важнее — понять человека

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

В качестве показателя успеха, или нашей абстракции, мы использовали количество заданных вопросов. Задавать вопросы — задача помощницы, и это нетрудная работа, хотя и нудная. А что, если Боби было трудно моргать? При его решении надо было моргать один раз на каждую букву. Наш алгоритм типа «разделяй и властвуй» требует, чтобы он моргал пять раз. Умножьте это на всю книгу. Не исключено, что наше решение сделало бы его задачу в пять раз сложнее! Но возможно, моргать было легко и наш алгоритм действительно лучше. Мы не знаем ответа, потому что не задали вопрос. А стоило бы сначала спросить. Боби не рассказал об этом в книге, и у каждого может быть свой ответ на этот вопрос. Поэтому и надо начинать с человека.

Более того, решение Боби понятно любому. Наше же относится к более сложным и, вероятно, потребует объяснений. И объяснять этот метод будет не Боби. Думать о людях — это важно.

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

Ему подошло

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

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

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

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

Глава 3

Магия и алгоритмы

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

«Сон об австралийском маге»



Поделиться:


Последнее изменение этой страницы: 2021-01-14; просмотров: 93; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.222.239.77 (0.005 с.)