Двата типа програмисти
Jeff Atwood от Coding Horror публикува наскоро една статия, озаглавена Двата типа програмисти, която разпали страстите и събра огромно количество противоречиви и емоционални коментари. По-късно, усетил, че нещата залитнаха в неправилната посока, той написа още един пост, опитвайки се да потуши страстите и да донесе мир, но войната вече се беше разгоряла. Аз ги прочетох и двата, при това няколко пъти. Прочетох и всички коментари и все още не съм много сигурен какво точно искаше да каже Джеф и защо го каза по този начин. Тук ще се опитам да представя моето виждане за нещата..
Той казва, че съществуват два вида програмисти – тип 0 (20%) са хората, които програмират за удоволствие. Тези хора живеят и дишат програмиране. Те използват Linux и участват в Open Source проекти. Иначе казано, (макар и той да не го казва в прав текст), това са готините пичове, истинските, умните програмисти. Другата група са тип 1 (80%) – хората, които програмират, за да си вадят хляба. Такива хора бихме могли да наречем “професионалисти”, но той ги нарича по-скоро “чиновници”. Те работят от 9 до 5, използват само Microsoft технологии и не четат технически статии и новини по интернет. “Те не са глупави”, казва той, но аз мисля, че точно това иска да каже, защото финалният призив е към умните момчета да преглътнат гордостта си и да помогнат на глупавите си другарчета да поумнеят и те.
Целта е всъщност благородна. Ако пък случайно вие почувствате, че сте от онези 80% – глупавите програмисти – не се притеснявайте. Една от най-важните характеристики на групата на 20-те процента е, че четат блогове, особено неговия. Така че, вие просто трябва да прочетете поне една статия от неговия блог и автоматично ще се прехвърлите в елитната група.
Съжалявам, Джеф, но не мога да приема това!
Мога да се съглася, че програмистите биха могли да бъдат разделени на две групи – една за тези, които обичат програмирането заради самото програмиране и друга, за хората, които допринасят полза с приложенията, които пишат. Но това разделение е толкова архетипно, че носи много малко полза. А да твърдиш, че разработчиците от едната група са умни, а тези от другата – тъпи, е не само обидно. То е просто погрешно.
Първо, никога не съм виждал или чувал за програмист, който никога не е чел технически статии. Всеки чете – било от интернет или от специализирани списания. Второ, никой не е броил програмистите и не знае какво е съотношението между двата вида. Няма никакво доказателство, че то е точно 20/80. Мисля, че то просто е заимствано от Принципа на Парето, без да се базира на каквото и да е изследване. Трето, да наречеш някого глупав, само защото той цени личното си време или защото използва технологии от Microsoft, е просто разпалване на поредната религиозна война.
Производството на софтуер е бизнес като всеки друг
Това е важен и мощен бизнес. Той има нужда и от двата типа програмисти. От онези, които обичат процеса на програмирането, които изобретяват нови идеи и нови решения. И от онези, които превръщат тези идеи в реалност, които реализират изискванията на потребителя и правят софтуер, който му носи истинска полза. Може би истинското съотношение е 20/80, 10/90 или някакво друго – то вероятно зависи от конкретната бизнес област. Важното е, че всички видове разработчици са ценни, защото са полезни по различен начин. Техните различия, тяхното многообразие, са тяхното истинско богатство.
Не можеш да наричаш някого глупав или неопитен, само защото не пише код по нощите или защото пише на Visual Basic .NET. Човек е неопитен ако му липсва опит. Ако ти си по-опитен, можеш да му помогнеш, като споделиш с него своя опит или му посочиш важни източници на информация. Хората се учат и се променят. И тези, които си наричал глупави и неопитни, скоро ще придобият опит и знания и ще станат професионалисти. Точно като теб.
Този пост е достъпен и на английски език.
Ако харесвате статиите в този блог и се интересувате от тематиката, която разглеждаме, за да си гарантирате, че няма да изпуснете публикация, абонирайте се напълно безплатно за нашия бюлетин чрез RSS feed или по имейл
Според мен категорията е само една – “Програмисти”. Но попадналите в тази категория минават през два етапа – етап 0 и етап 1. През 0-евия етап (когато са млади) те четат статии в нета, разцъкват нови технологии и писането на код им носи удоволствие. След това преминават в етап 1 – работят за пари и си тръгват от работа в 18:00.
“Само в мечтите си сме свободни, през останалото време имаме нужда от заплати”
Тери Пратчет
Много хубав цитат!
В интерес на истината, познавам хора, които никога не са надраствали етап 0, както и такива, които пък въобще не са преминавали през него. Вторите са предимно жени. Не че имам нещо против тях – само отбелязвам факта. 🙂
[…] This post is also available in Bulgarian language. […]