Чи варто програмісту робити завдання при замовнику?
Викликав начальник. У нього в кабінеті відряджений.
- Потрібно вирішити проблему, - каже шеф, вказуючи очима на гостя. Той привітно киває. - Павло Іванович пояснить.
А Павло Іванович - сама ввічливість. Всі розповів, по поличках розклав, описав, які біди їх управління терпить з цим, здавалося б, незначним незручністю. І довірливими ясними очима дивиться на програміста.
У того - підняття тонусу. Завдання не з важких, йому по плечу, а, точніше, по пояс, не більше. Є деякі тонкощі, через які колеги Павла Івановича не можуть виникнути. І так хочеться допомогти цим добрим нехитрим очам, що очікують інформації, що програміст відразу починає пояснювати і показувати.
Відряджений дуже уважно слухає, заохочувально підтакує і борознить кульковою ручкою пошарпану записну книжку. Перший етап проходить без сучка і задирки. Результати в наявності. Голова Павла Івановича, осінена розумінням, радісно киває. Але на другому - програміст заплутується, заплутується в добре знайомих тонкощах. Щось не йде.
- Який крок змінити? - Хмуриться Павло Іванович, але тут же натягує на губи доброзичливу посмішку. - Третій пункт прибрати? - Він простягає свої записи. Від них програміст ще більше плутається. Щось не так зафіксовано. Нарешті, після кількох спроб стає ясно: приклад трохи не підходить. Треба було взяти інший. І починається пояснення спочатку ... Десятихвилинний питання розтягується до обіду.
Знову кабінет начальника. Відряджений перевіряє записи і задоволено покашлює: - Я думав, ви добре все освоїли. Але все-таки молодці! Спробуємо.
Фраза боляче відгукується в програміста. Куди вже краще? Тільки треба було спочатку самому спробувати. Начальник пропускає зауваження повз вуха (у нього повно та інших питань) і міцно тисне Павлу Івановичу руку: - Ради завжди допомогти!
Часто, коли до тебе приходять як до фахівця, прямо підмиває чітко і швидко відповісти на будь-яке питання і виконати всі моментально. Безсумнівно, це піднімає твій престиж в очах відвідувачів, та й у своїх власних. Відчуваєш себе суперменом або, вірніше, програм-меном. Але, на жаль, не завжди це можливо, а часом просто не потрібно. Якось, коли я готувався прийняти аналогічних гостей, одна співробітниця мене запитала: - Ви ж не будете все робити прямо при них? Нехай залишать завдання і йдуть.
Я зам'явся з відповіддю, бо саме при «них» я і збирався все робити. Що можна сказати? Рада досить мудрий. Важко часом вирішити навіть саму незначну задачу, якщо у тебе стоять над душею. А підуть - вона вирішується сама і з легкістю. Програміст, як і кожна людина, здатний помилятися. При пошуку рішення він це робить набагато частіше, хоча і дуже швидко все виправляє. Однак якщо розтягнути в часі цей процес, то замовник жахнеться: - З ким я зв'язався? Вони ж нічого не розуміють!
Тому при можливості слід усамітнитися для виконання будь-якого, навіть крихітного завдання. Тим часом, можливість така не завжди існує. Тебе викликали, наприклад, у відділ, де перестав друкувати принтер або не завантажується комп'ютер. Рішення потрібно прийняти тут і зараз. Яке там усамітнення? Чудово, коли відразу зрозуміла причина. Збилися налаштування, пропав системний файл, який можна скопіювати з іншої машини. Але якщо лягла система, то усамітнення неминуче, а на час відновлення потрібна заміна техніки.
Ще один важливий момент. Споживачі програм не завжди дійсно розуміють, що їм треба. А вже формулюють свої запити абсолютно непередбачуваним чином. Доводиться вникати в проблемну частину їх роботи.
Все частіше і частіше на підприємствах потрібні програмісти, які знають бухгалтерію, економіку, фінансову звітність. Програмування в цьому випадку йде на другий план, хоча і залишається необхідним. На перший виповзає знання законодавства, оперативна реакція на його зміну. А як не хочеться цим займатися! Але виробництво диктує нові закони, новий підхід. Необхідно все ретельно опрацювати і вчасно змінити налаштування - і не в присутності замовника, а без нього.
А Павло Іванович нехай поки погуляє ... Або сходить в буфет, помилується на нові ціни ...