Мозг программиста

в 12:06, , рубрики: Без рубрики

Спасибо за статью habrahabr.ru/post/191210/! Хорошую тему подняли.

Поделюсь и своим опытом. Ниже — идентичное содержание и первой, и заключительной лекции в программе подготовки стажеров.

В программировании, помимо ЭВМ, методик и софта с разных сторон, есть еще такой ключевой элемент, как программист.

Почему он самый главный? Потому что, как знают многие, большую часть решений можно создать без ЭВМ, без методик и без софта – карандашом на бумаге или вовсе в воображении. А без программиста создать программу нельзя. Потому что он, программист, как раз программу и создает. О нем, о программисте, как о решающем факторе, и поговорим.

Рациональное использование ресурсов

Станочник ознакамливается с конструкцией станка до начала работы. Автомобилист изучает устройство автомобиля, его механику и физику, хотя бы на базовом уровне. Швея изучает швейную машинку. Многие художники практически знакомы с поведением ворса на различных видов кистей в различных условиях, с разной силой нажима и углом прикосновения…

Для создания программ ЭВМ программист помимо прочего использует устройство /dev/brain, также известное в миру как головной мозг.

Помимо аналитической части, принципы работы которой до сих пор малоизвестны и сомнительны, основные функциональные части /dev/brain – это каналы восприятия и память. В том числе “оперативная память”, работу которой можно ассоциировать с мышлением.

Так получилось, что каналы восприятия соответствуют разделам памяти, и имеют некоторые связанные свойства. Используя тот или иной канал восприятия – задействуется соответствующий вид памяти.

Каналы восприятия

Кинестетическое восприятие – то, что можно ощущать. По прежнему, лучшим способом передачи информации между поколениями является подзатыльник.

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

Аудиальное восприятие – то, что можно услышать. Отсутствие шума, музыка, слова коллег, обсуждение, поорать на кого-то или послушать чьи-то вопли – это все отсюда.

Зоны памяти

Кинестетическая память

Самая сильная. В детстве будущего физиолога Павлова укусила собака. Собака укусила и позабыла. А Павлов вырос и не позабыл…
Не знаю, как охарактеризовать объем. Скорость доступа – наивысшая, этот механизм очень близок к инстинктам и рефлексам.

Визуальная память

Имеет самый большой объем. Скорость доступа, пожалуй, ниже средней. Однако, как будет показано ниже, имеет огромнейшие просторы для применения, и является наиболее эффективной.

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

Для решения задач программирования – вполне приемлемые, и даже отличные параметры.

Аудиальная память

А здесь у разных людей по разному. У кого-то она развита хорошо, а у кого-то не развита вовсе. Но всем полезна. Каким образом – покажу ниже.

Абстрактная память

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

Имеет самый маленький объем! Человек в состоянии одновременно удерживать в голове от 3 до 7 абстрактных фактов. Если его фамилия не Вассерман – в тот момент, когда он попытается учесть восьмой фактор в анализируемой системе – из области логической видимости пропадет один из ранее актуализированных.

И все это можно и нужно учитывать.

Юзкейсы

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

Тупить в монитор

Самый частый и самый низкопроизводительный случай. Программист сидит и тупит в монитор. Читает тексты на разных языках, ищет что-то, пытается что-то решить. При этом основной используемый ресурс – это абстрактное решение. Поэтому продукты, действительно, гениальны, но приходят они с огромными временными и энергетическими затратами. Это самый низкоэффективный из всех кейсов.

Как избавиться от проблемы тупления в монитор?

Весьма просто. Достаточно поместить часы в область зрения, и каждые 20 минут обязательно покидать рабочее место на 10 минут. Хорошая идея – занять это время физическими занятиями или общением.

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

Нарисовать картинку

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

Есть академические приемы использования этой методики. Во-первых, это прекрасный UML. Во-вторых, это методы XP (экстремального программирования) и SCRUM. Эффективность этих методов неоспорима.

Про XP можно почитать в википедии, а про UML отмечу немедленно некоторые из его замечательных свойств:

  • Легко позволяет управлять уровнями абстрагирования и контролировать детализацию при разработке любого рода решений при программировании. Практически это единственный метод для действительно эффективного решения задач по декомпозиции (“Разделяй и влавствуй!”).
  • Единственно эффективный метод для достоверной передачи абстрактной информации между коллегами. Все поймут точно то, что задумал автор схемы, когда видят ее собственными глазами. Удивительно, но когда содержание схемы передается на пальцах – текстом или на слух, качество восприятия существенно снижается! Люди просто не понимают друг друга, или понимают вовсе не то и не так, как было задумано.
  • UML в частности и вообще визуальные методы – известнейший прием менеджмента, когда нужно быстро и достоверно передать информацию между коллегами различной квалификации, различных специальностей, и получать фидбеки, организовать общение и обмен мнениями.
  • UML в частности и другие визуальные методы – один из самых эффективных методов передачи рекламных сообщений.
  • UML очень дешев – нарисовать схему карандашами, фломастерами или в векторном графическом редакторе можно легко и быстро. Эффективно заменяет многие часы тупления в монитор, фактически снижая количество затрачиваемого времени и энергии на решение логических задач.

Вообще визуальные методы – самые эффективные для обучения. Помните девочек-отличниц из средней школы? (Осторожно, сейчас будет разновидность юмора — сарказм) Большинство из них – дуры… Но ничто не мешает им систематически получать пятерки. Если вы заглядывали в их тетради – информация всегда хорошо структурирована, и представлена ЦВЕТНОЙ графикой. Поэтому они отлично запоминают материал, и легко используют его даже для абстрактных выводов.

Умные не зубрят. Они конспектируют и рисуют.

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

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

Обсудить с коллегами

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

Что происходит при этом?

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

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

Яркие примеры многие из читателей сотни раз встречали в курилках и на планерках у талантливых руководителей.

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

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

Из ТРИЗ. Японские инженеры на внутренних семинарах (планерках, мозговых штурмах – не суть) используют интересный метод. Вначале все участники высказывают как можно более глупые, дикие и сумасбродные идеи. В результате происходит, простите за терминологию, критичное расширение незавершенного гештальта, которое приводит к мгновенному расширению менталитета и получению новых ракурсов восприятия. Таким образом они рождают действительно гениальные, эффективные решения.

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

Спасибо за внимание и удачи всем!

Автор: customtema

Источник

Поделиться

* - обязательные к заполнению поля