| RSS



Меню

Bookmark and Share


Статистика
Ваш IP: 216.73.216.86
Вы используете: v





Сейчас на сайте:

Тех поддержка ->

Облако тэгов
Брутер ОС написать свою операционную систему своя ОС os видио Обратная Tor сторона антенна для php ultimate libc rand() эксплоит Windows Server 2008 FreeBSD Jail Elastix QIP Virtual Limit kernel proc sysctl Tune freeBSD GEO Bluetooth game emulator Python Shell phpinfo поколения червь Conficker вирус троян лаборатория касперского пиратство Apple iPhone Microsoft twitter социальная сеть анонимность лицензия Open Source уязвимость MySQL база данных PostgreSQL Закон Франция Пират Skype мобильный хакер trend micro кибератака Германия робот Персональные данные Ноутбук Интернет китай цензура windows vista Linux патент браузер Firefox Internet Explorer Opera Safari Intel Motorola патч Oracle Банкомат IBM Интерпол США Dell контроль кибербезопасность приговор Mozilla Chrome безопасность Госдума СМИ Windows 8 взлом Пентагон Украина Facebook Cisco Windows XP нетбук торрент музыка Биометрический Nokia ФБР IP-адрес sms RSA java Google Captcha Symantec Спам Антивирус тест Windows 7 операционная система windows провайдер авторское право rapidshare UNIX свиной грипп шантаж Дети копирайт McAfee HTTPS кризис icann студент Норвегия New York Times YouTube Warner Music КНДР Ubuntu касперский Россия РФ Патриоты сервер хостинг Wi-Fi суд пароль блог фишинг одноклассники Медведев контрафакт мошенник sony warner Gps по Росгосстрах JavaScript Хакеры Yahoo фас компьютер софт Минкомсвязи Сбой Toshiba мошенничество Доктор ВЕб Вконтакте исходный код МВД фильтр порнография свобода слова казахстан Autodesk сисадмин Gmail кредитная карта LiveJournal шифрование банк Нанотехнологии военная техника wikipedia выборы DNS KaZaA Android атака Mac OS X Security Essentials домен ФСБ прокуратура уголовное дело ICQ Singularity Sophos ошибка военные DARPA сайт Либрусек турция конференция спамер Полиция Koobface Перевод Великобритания модем белоруссия Грузия Европа Linux Mint Билл Гейтс спецслужбы Royal Bank of Scotland смартфон Canonical F-Secure Symbian фильм SP1 Новая Зеландия Adobe Австралия IDC Internet Explorer 9 iPad Ирландия поиск киркоров GOOGLE EARTH МТС Реклама слежка Zeus личные данные eset Вымпелком защита Defcon виртуализация МСЭ Черный список BlackBerry индия Москва Голосование социальные сети flash player paypal BitDefender сертификат Anonymous технологии Чипы наркотик OpenOffice Ассанж Оптоволокно передача данных Сколково ГОСТ сенат арест мобильные устройства Samsung Иск учетная запись XBOX LIVE комментарии оборудование исследование угрозы Санкт-Петербург вандализм SOPA PIPA обвинение взятка запрос ico Megaupload CES отчет приложение опрос правительство Иран Инвестиции платформа отключение санаторий роскомнадзор zbot сигнал КНР

Главная » Статьи » Общие Статьи

Четыре уровня компетентности в программировании

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

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

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

В этой статье мы попытаемся применить эту простую схему на том умении, которое мы с вами практикуем каждый день – программировании.

Уровень 1. Неосознанная некомпетентность.

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

В реальности Джон – это безжалостный копипастер. Он считает, что выскакивающие при клике сообщения это и есть весь JavaScript. PHP? Проще простого – он может установить Wordpress. Linux? Он умеет загружаться с лайвсиди Ubunt’ы, он может организовать кластер сбалансированных по нагрузке веб-серверов Apache. Его знания не знают границ.

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

Джон – неосознанно некомпетентен.

Уровень 2. Осознанная некомпетентность

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

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

Он выбирает наиболее подходящий, по его мнению вариант и начинает с изучения документации и туториалов на сайте, а после этого, наконец, загружает программу. Все его восторги и энтузиазм исчезают в мгновение ока, когда он видит перед собой сообщение ‘Database connection error’. Он пытается ещё раз и ещё раз, трижды проверяя каждый шаг вплоть, но всё без толку. Однако Марк нисколько не раздражён, он прекрасно знает, что это просто не его сфера компетенции.

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

Марк – осознанно некомпетентен.

Уровень 3. Осознанная компетентность

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

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

На днях он написал 30-40 строк кода для своего собственного проекта. Однако он не может скрыть лёгкого разочарования, когда через пару дней замечает в сети гораздо более элегантно решение, объёмом при этом в добрых два раза меньше. Он мечтает о том, что будет когда-то способен и сам самостоятельно писать код такого качества. Однако уже после минутных мечтаний он начинает просматривать свои собственные файлы в поисках ошибки. Он знает, что если он сейчас не перепишет этот участок, он сегодня не заснёт. Но он, так или иначе, не будет копипастить.

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

Адриан – осознанно компетентен.

Уровень 4. Неосознанная компетентность

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

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

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

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

Категория: Общие Статьи | Добавил: aka_kludge (30.04.2009)
Просмотров: 2123 | Рейтинг: 0.0/0
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
    Главная      
...
На службе : дней

08:45
Обновить


Пользователи
aka_kludge
qwerty
LeadyTOR
aka_Atlantis
AdHErENt
mAss
Sissutr
hiss
DrBio
tHick

Поиск


Copyright tHR - TeAM 2026 г. admin: aka_kludge (ICQ:334449009) Moderator's: LeadyTOR, ... Яндекс.Метрика