Вычислительное мышление подразумевает не только поиск решений в виде алгоритмов. Это целый набор приемов, который обеспечивает нам эффективный способ улучшения жизненных условий и осмысления мира. Но мы не будем погружаться в специфические термины, а продемонстрируем эти методы на примере задач как серьезных (например, помощь инвалидам), так и развлекательных (игры, головоломки и фокусы).
Глава 2
В поисках способа говорить
Одним из самых тяжелых патологических состояний, какие только можно вообразить, является синдром «запертого человека». Человек в таком состоянии полностью парализован и в лучшем случае в состоянии только моргать. Разум заключен в тюрьму бесполезного тела. Человек воспринимает все вокруг, но не может передавать информацию. Тем, кто хотел бы помочь людям с таким синдромом, очевидно, нужно учиться на медиков. Но может ли что-нибудь сделать программист?
Сидром «запертого человека»
Синдром «запертого человека» – это полный паралич тела после инсульта. Вы продолжаете думать, видеть, слышать. Вы так же разумны, как и прежде. Это может случиться с каждым. Лечения этого заболевания нет, поэтому максимум, что могут сделать медики, – позаботиться об удобстве пациента. Но возникает важный вопрос: как помочь пациентам с синдромом «запертого человека» «разговаривать». Как им общаться с врачами, семьей и друзьями? Очевидно, специалист по информатике мог бы изобрести новую технологию, которая была бы полезна в этой ситуации. Однако благодаря вычислительному мышлению мы можем предложить способ гораздо лучше, чем просто «полезная технология».
«Скафандр и бабочка» – невероятно жизнеутверждающая книга. Это автобиография Жан-Доминика Боби, которую он написал после того, как очнулся в больнице полностью парализованным. Он рассказывает о жизни с синдромом «запертого человека». То есть у него был способ общения, который позволил не только разговаривать с медиками, друзьями и семьей, но и написать книгу. Боби сделал это, вообще не прибегая к технике. Но как?
Представьте себя в его положении – очнулись на больничной койке. Как вы могли бы общаться? Как могли бы написать книгу? Только человек с ручкой и бумагой смотрит на вас, готовый записывать слова. Вы из тех, кому повезло, – вы можете моргать одним глазом, но это все. Это единственное движение, которое вам доступно. Значит, разговаривать вы не в состоянии. Однако вы видите и слышите.
Теперь представьте, что вы врач такого пациента и вам необходимо придумать способ общения с ним.
Вам нужно условиться о способе превратить моргание (все, что доступно пациенту) в буквы. Возможно, сначала вам придет в голову такой вариант: когда он моргнет раз, это будет означать «А», два раза – «В» и так далее. Тогда помощнице останется посчитать, сколько раз моргнул пациент, и записать соответствующие буквы.
Предложив такую идею, мы уже рассуждаем как программисты. То, чем мы занимаемся, лежит в основе вычислительного мышления – это алгоритмическое мышление.Мы придумали серию шагов, которым могут следовать больной и его помощница, чтобы гарантированно передать и понять нужные буквы. В информатике такой способ коммуникации называют алгоритмом. Он представляет собой серию шагов, которые необходимо пройти в заданном порядке, чтобы достичь определенной цели (в данном случае – передать буквы и слова). Алгоритмическое мышлениенеобходимо, чтобы разрабатывать алгоритмы для решения задач.
Красота алгоритмов в том, что им следуют, не имея представления, чтó именно они значат. В случае с нашим алгоритмом помощница предположительно знает, что и для чего она делает, но книга все равно была бы написана, даже если бы она ничего не понимала. Все, что нужно делать, – считать моргания и записывать буквы в соответствии с полученными инструкциями. Мы могли бы дать помощнице таблицу, чтобы сверять по ней буквы, и тогда работа выполнялась бы без какого-либо ее осмысления вообще. Красота алгоритмов заключается в возможности действовать механически, и в этом их смысл – ведь компьютеры тоже слепо выполняют инструкции. Это умеют абсолютно все компьютеры.
Наш алгоритм общения на деле состоит из двух частей. Одну часть выполняет Боби (моргнуть нужное количество раз), а другую – помощница (сосчитать, сколько раз моргнул Боби, и записать соответствующую букву, когда моргание прекратится). Более того, в информатике есть специальное название для алгоритма, при помощи которого делятся между собой информацией два человека или компьютера, – он называется протокол. Если оба человека выполнят свою часть протокола, то слова, которые задумал Боби, окажутся записанными на бумаге. Если кто-то сделает ошибку – например, собьется со счета и таким образом отойдет от протокола, – то сообщение не будет доставлено. В компьютерах хорошо то, что они не делают таких ошибок, каждый раз точно выполняют инструкции. Коль скоро инструкции верны, машины-то уж точно их верно выполнят.
Читать дальше
Конец ознакомительного отрывка
Купить книгу