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