| RSS



Меню

Bookmark and Share


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





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

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

Облако тэгов
ОС видио Tor Обратная сторона антенна 4.6 PHP Эксплоит Windows Server 2008 qip Virtual chroot kernel proc sysctl tune FreeBSD bridge Boot Disk Bluetooth GEO game directx Emulator Python Shell DDoS червь Conficker вирус троян Лаборатория Касперского пиратство apple iPhone ИТ-отрасль Щеголев Microsoft экономический кризис Twitter социальная сеть анонимность Лицензия Open Source ASP.NET MVC уязвимость MySQL база данных файлообмен закон франция пират Skype мобильный Deutsche Telekom Хакер киберпреступник Trend Micro кибератака Германия робот утечка данных персональные данные ноутбук интернет Китай цензура ядро Linux Торвальдс Windows Vista Acer Linux патент браузер Firefox Internet Explorer Opera Net Applications Safari Intel Linux Foundation Moblin Oracle патч банкомат кардер HSM IBM X-Force Cofee сша кибервойна Эстония Dell ИТ-специалист хакерские атаки Pirate Bay контроль кибербезопасность язык программирования The Pirate Bay Пиратская партия утечка информации приговор Mozilla Chrome безопасность Госдума СМИ Windows 8 Баллмер взлом Пентагон ботнет Украина Facebook Cisco cloud Windows XP нетбук торрент музыка биометрический nokia ФБР IP-адрес CIPAV Comcast sms RSA java Google CAPTCHA Symantec спам конфиденциальная информация инсайдер Perimetrix антивирус тест Anti-Malware Windows 7 операционная система Windows провайдер авторское право RapidShare UNIX свиной грипп шантаж дети EFF BluWiki копирайт экстремизм Panda Security cloud computing McAfee Cybercrime Response Unit Bottle Domains HTTPS ICANN студент шпионское ПО Норвегия школьник New York Times XSS YouTube Warner Music кибершпионаж КНДР Ubuntu свободное ПО AMD ATI касперский Россия РФ сервер хостинг фальшивый антивирус Comodo CA Wi-Fi D-Link суд пароль блог фишинг Одноклассники медведев контрафакт мошенник штраф Sony GPS по Gumblar JAVASCRIPT хакеры вредоносное ПО Yahoo ФАС компьютер Софт MPAA кибероружие PandaLabs Red Hat Минкомсвязи сбой ASUSTeK Computer мошенничество Доктор Веб ВКонтакте Cyber-Arc исходный код PCI DSS МВД фильтр порнография BREIN свобода слова Казахстан GEMA Autodesk сисадмин Gmail кредитная карта кибермошенник LiveJournal шифрование криптография Deep Purple банк нанотехнологии Wikipedia zero-day ColdFusion выборы кража данных DNS BIND Android BASIC атака Black Hat Mac OS X Click Forensics Clampi домен фсб Прокуратура Уголовное дело icq Barrelfish киберпреступность Sophos AT&T ошибка Electa Gamma Knife OpenBSD DARPA военные Сайт Visual Studio 2010 .NET Framework 4 Chrome OS электронная почта турция конференция спамер FTC полиция российская ОС Koobface Великобритания БЕЛОРУССИЯ грузия BSA Bittorrent облачные вычисления Azure Европа Dr.Web Билл Гейтс спецслужбы Cryzip Живой Журнал Royal Bank of Scotland смартфон Canonical Pwn2Own F-Secure Symbian Hotmail фильм

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

14:53
Обновить


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

Поиск


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