Робота з вентиляторами [закрито]


14

Ми, напевно, зустрічали когось подібного, того розробника, який просто знає, що його мова є єдиною справжньою мовою, і не заважає на цьому. Як ти поводишся як хтось подібний? Я не хочу когось ображати (тим більше, що фанбой на моєму робочому місці є старшим розробником). Але я хочу мати можливість використовувати свій власний вибір мови сценаріїв, коли мені потрібно написати сценарій викиду, який ніколи не потрапляє до сховища, і нікому більше не потрібно знати, що існувало.

Думки, з якими я мав справу з цим:

  1. Смійся - "Так, можливо, мова X трохи легша, я думаю, я мазохіст!"
  2. Ідіть з цим - я б дійсно вважав за краще уникати цього, оскільки не можу дозволити собі падіння продуктивності, пов’язане з вибором нової мови.
  3. Приховати мою мову - Станьте програмістом шафи і ховайте монітор щоразу, коли я щось сценаріюю або автоматизую.

Що б ти запропонував у цій ситуації?


14
Чи не було б просто проігнорувати його, і, можливо, попросити навіть легкого професіоналізму, коли виникає ситуація?
zxcdw

25
Абсолютно впевнений, що ви самі не є фанатом, оскільки наполягаєте використовувати свій вибір ?
Doc Brown

11
@DocBrown Я не неупереджений, але я впевнений, що Perl (мій вибір) краще підходить для розбору текстових файлів, а потім VB (його вибір)
Daniel Gratzer

4
Питання в тому, чи справді хлопець є фанатським хлопчиком? Так він знає лише одне і має слабке обґрунтування того, чому він вважає, що це "найкраще", чи він справді дуже хороший і вибирає певне щось більшу частину часу, тому що це справді найкращий шлях? Я прошу це зовсім не саркастичним способом, оскільки я позначив декілька ppl як фанатів, перш ніж зрозумів, що вони просто знають набагато більше, ніж я.
Shivan Dragon

8
@jozefg Я ненавиджу залишати неконструктивну і, можливо, самовпевнену тему в якості модератора, але не рухається до VB від Ruby гігантським кроком назад?
maple_shaft

Відповіді:


14

Мало чого не вискакує з питання.

  • Це справді сценарій, що викидається? Якщо це так, дивно, що це обговорюється.
  • Ви впевнені, що сценарій викидання залишиться таким, який є? Багато виробничих речей було певним сценарієм.
  • Чи збираєтесь ви переписати сценарій, якщо він рекламується та потребує інтеграції в систему?
  • Чи є вибір мови суто синтаксичним чи це мова з іншої сфери?

Я якось розумію частину фан-хлопця, тому що з одного боку я поводяться ніби як любитель фанатів, захищаючи мої небагато мов на вибір. А також я мав справу з іншими хлопцями-фанатами, які намагаються внести нові речі.

Мій погляд на цю ситуацію такий:

  • Якщо це нова мова, вона належить до сміттєвого відро.
  • Якщо це галузева перевірена мова, її можна використовувати, якщо вона спеціалізована для виконання цього завдання.
  • Якщо це дуже непопулярна мова, вона належить до смітника, навіть якщо це супер круто і супершвидко.

Це тому, що ніхто не знає, як писати безпечне та швидке програмне забезпечення невідомою мовою, і це має все, чому розробники повинні вивчити. Дурний сценарій доведеться підтримувати протягом 20 років або переписувати. За 20 років принаймні 50 розробників змінюються в середньому магазині. Якщо кожен пише кілька фантазійних сценаріїв новою мовою, вам потрібно 50 мов виконання, 50 різних експертиз команди, а в кодовій базі є помилковий код на 50 мовах. А деякі мови більше не підтримуються в Windows або Linux. І потрібен неперевершений 10-річний користувацький сервер без запасних частин, 24/7.

Крім того, ніхто не хоче підтримувати мертві мови, такі як VB, Silverlight, D тощо., Коли база коду, ймовірно, переживе саму мову.


9
+1 для допиту до сценарію, що викидається. Колишній колега наголошував, що більшість тимчасових рішень є постійними.
Joris Timmermans

12
-1 для категоричного відхилення всіх нових мов. Це настільки неправильно, що воно переповнює решту порад, які є хорошими. Це саме те, як ви закінчите з гігантською базою коду у C, тоді як ваші конкуренти обертаються навколо вас з Ruby (або Clojure чи будь-яким іншим), оскільки вони можуть висловити логіку того, що їм потрібно зробити набагато швидше, ніж ви можете. Щоб досягти успіху замість кульгавого, потрібно рано вибирати переможців .
Рекс Керр

2
-1 для позначення VB & Silverlight як "непопулярного". Ви ще довго підтримуватимете свої непопулярні мови ... tiobe.com/index.php/content/paperinfo/tpci/index.html
deworde

3
Д мертвий? Це для мене новина, тим більше, що на другому тижні вийшла нова версія! -1 dlang.org/changelog.html
Gary Willoughby

4
чітко згадуючи мови: погана ідея.
Надір Сампаоолі

16

Він вирішує, що ви використовуєте, грунтуючись на політиці компанії? Зверніться до своєї справи; якщо він все-таки вирішить проти цього, замовкніть і виконайте свою роботу з інструментами, за якими ваш начальник каже, що вам слід скористатися.

Ви працюєте там , а не граєш. Зрештою, це не в ваших руках.


Навіть якщо він не ваш начальник, я б врахував усі кути. Вам би хотілося, якби він знав Фортран і одного разу ви успадкували весь його код. Вам доведеться вивчити абсолютно нову мову з нуля на льоту , що це дуже напружений. Тепер уявіть його сторону, ви можете писати свої сценарії за допомогою Кобола, і він може не знати Кобола.

Використовуйте те, що знає більшість вашої команди.


6
"Ти там працюєш, а не граєш там". +1
funkybro

1
Але перший крок до внесення змін, які ви хочете внести, - це довести, що вони ефективні в безпечному середовищі.
deworde

9

"2. Іди з цим"

Це єдина розумна відповідь. Ви маєте чудову можливість тут.

  • Використовуйте коментарі старшого програміста, щоб заохотити вашу компанію заплатити час та / або курс та / або сертифікацію для вивчення нової мови. Найгірший сценарій: сертифікація та мова покращать ваше резюме, ви можете отримати хорошу рекомендацію щодо того, щоб бути гравцем у команді, і зможете посміятися до кращої роботи десь в іншому місці.

  • Я здобув цінну інформацію про програмування з кожної мови, яку вивчив. Навіть найменш практична мова ( кашель XSLT кашель ) мала своє приємне місце і була повна цікавих можливостей навчання (і платила мої рахунки протягом декількох років). Постійне навчання - одна з великих переваг бути програмістом.

  • Усі круті проекти, ймовірно, використовують улюблену мову старшого розробника. Знаючи цю мову, ви ставите в базу талантів, які можуть працювати над цими проектами.

  • Хтось, мабуть, платить вам певним чином виконати певну роботу. Будь-яка інша реакція, ймовірно, непідвладна і, ймовірно, закінчиться погано.

Старший розробник / архітектор зазвичай обирає основну мову, що використовується в магазині, і гарантує, що всі користуються цією мовою. Таким чином, компанія будує базу знань з певних технологій, щоб один співробітник (ви) міг взяти відпустку, а хтось інший зможе забрати ваш код і виправити його, поки вас немає. Також компанія може залучити відповідний навчальний талант, і відділ кадрів дізнається, які модники шукати у резюме.

Вивчаючи його мову та використовуючи її для роботи, ви накопичуєте політичний капітал, необхідний для ефективного відстоювання своєї улюбленої мови. Багато компаній мають офіційну інфраструктурну мову та офіційну мову скриптів для звітів. Підготуйте список «за» та «проти», де відображатиметься місце, де його мова переважає, а де - твоя, а також там, де кожен не відповідає. Цей список потрібно зберігати в контексті конкретної програми, наприклад, звітів, які ви пишете. Плануйте час з ним приватно і з повагою показати йому список і обговорити його з ним. Запишіть його заперечення, вивчіть їх після зустрічі, і якщо у вас є хороші контр-аргументи, сплануйте подальшу зустріч.

Удачі!


4
але насправді хто хоче вивчати VB?
Майкл Браун

Фанбою подобається VB? Я впевнений, що ти можеш добре заробити за допомогою VB, але я побіг кричати від цього у своїй кар’єрі. Я все ще не люблю варіанти 1 або 3. Я б додав варіант 4: Оновіть своє резюме та знайдіть собі нову роботу. Також варіант 5: Оновіть резюме Fanboy і знайдіть HIM нову роботу! Якщо це не варіант, то мої попередні поради щодо варіанту 2 все ще застосовуватимуться.
GlenPeterson

7

Покажіть, що в конкретному контексті інша мова є більш прагматичним вибором.

Якщо людина захоплюється C ++ і ви працюєте над проектом веб-додатків, це буде не надто складно. Таким же чином, деякі контексти дуже схильні до функціонального програмування, і використання нефункціональної мови було б не дуже розумним.

Примітки:

  • Уникайте ситуацій, коли і ваша, і його бажана мова дуже схожі.

    Наприклад, я навряд чи уявляю собі контекст, де Java буде "кращою", ніж C #, або C #, "кращою", ніж Java.

  • Пам'ятайте, що вибір мови дуже часто суб'єктивний і пояснюється скоріше попереднім досвідом розробника, а не деякими елементами, заснованими на доказах.

    Наприклад, якщо мене попросять зробити заявку відносно фінансового сектора, я б все-таки використовував C #, а не Haskell, навіть якщо я вважаю Haskell більш доречним і справді захоплюючим. Причиною цього вибору є те, що я маю багаторічний досвід роботи з C #, але коли мова йде про Haskell, я прочитав лише кілька навчальних посібників і ніколи не використовував це професійно.


1
Лінк хотів би сказати слово. ;)
сергсерг

@MainMa, не кажи, що C # навряд чи може бути кращим за Java. Він працює набагато швидше, і має багато вбудованого функціоналу)))
superM

14
Це фанати аж донизу!
Froome

2
@superM: "швидше" настільки суб'єктивне, що я навіть не відповім на цей аргумент. Що стосується вбудованої функціональності, то вбудована функціональність Java виглядає для мене досить великою.
Арсеній Муренко

3
"[Вибір мови] більше пояснюється попереднім досвідом розробника", - а також поточними професійними цілями розробника, тобто "Я можу уявити вміння в X (на долар компанії)".
funkybro

3

Відповідь 2) Ідіть з цим.

  1. Єдиний спосіб заткнути фанбоя - це вільно (до певної міри) володіти мовою, яку вибираєте.
  2. Втрата продуктивності не є проблемою. Ви робите так, як вимагає ваш старший, тому зміни продуктивності повинні враховувати проект.
  3. Вивчення нової мови покращить роботу вашого мозку.
  4. Навчання відкритості до вивчення нових мов принесе вам ще більше користі.

Це win-win-win-win. Насолоджуйтесь!


3
Чи справедливо це, навіть якщо нова мова є VB?
Надір Сампаоолі

Навчання Visual Basic навчило мене багато корисних речей, яких я б не дізнався, якби я дотримувався моїх мов на вибір (C та PL1, якщо добре пам’ятаю)
Домінік Кронін

2

Відповідь - ви цим не займаєтесь. Сперечаючись з ними, просто перетягує аргументатора до їхнього рівня (де вони перемагають вас досвідом) і в кінцевому підсумку неконструктивний, оскільки вони недоброзичливці.

Ігноруйте будь-які аргументи, які вони висловлюються за або проти їхньої мови, і висловлюйте власну думку. Використовуйте звичні прийоми, як-от уникнути контакту з очима, відповідати односкладно та переходити на новий предмет, коли тиша забезпечить. Навчіть їх, аби дратувати людину поруч із вами.

Завдання полягає в тому, щоб фанат-хлопець асоціював мову зі своєю особистістю, і будь-який негатив, пов’язаний із цією мовою, є особистим. Не нападайте і не захищайте. Просто ігноруйте.


Ви не можете ігнорувати назавжди. Особливо, коли ця людина переконує вас використовувати мову за своїм вибором
superM

2

Дуже мало речей на роботі - це справді сценарії, що викидаються. Я закінчую розміщувати багато таких речей на вікі чи сховищі в будь-якому випадку, у разі необхідності знову.

Навіть речі, які, на мою думку, знаходяться під рівнем спільного використання, мої товариші по команді часто відчувають інакше. Наприклад, у мене .profile є псевдонім rgrep. Це просто констатація пошуку з параметром, оскільки я не маю доступу до реального rgrep на цьому сервері. Товариш по команді отримав вітер і захотів його на вікі. Так, заява в одному рядку. Очевидно, у нас не було дискусій щодо мови впровадження - це повинен бути UNIX. Але це підкреслює необхідність робити те, що інші в команді можуть зрозуміти.

Ще одне враження полягає в тому, що, можливо, старший розробник має причину, якої ви не знаєте про використання цієї мови. Ви запитали?

Можливо, спробуйте зробити один і той же сценарій на обох мовах один раз, щоб показати, чому ваш краще.


1

Спробуйте спробувати запотівання . Це означає погодитись із усім, що говорить фанбой (частково або цілком), але робіть свою справу, якщо прямо не доручено робити інше.


1
Ви праві (в принципі;).
янніс

3
Бути пасивно агресивним?
Gary Willoughby

Існує різниця між тим, що бути пасивно-агресивними та використовувати методи боротьби з напористими людьми. Впевнений, якщо напористість зійде на догму, то це може перейти в пасивно-агресивну поведінку. У такому випадку ситуація все одно тяжка ... тому найкращий варіант - піти. ;-)
Пітер К.

0

Пасивно-агресивні варіанти 1,3 призводять до більш емоційного розладу, тому дайте мені 2) взяти його на підборіддя.

Деякі загальні поради щодо дорожнього руху: 4) Якщо ви не слухаєте розумного старшого, зробіть власне вивчення мови / компілятора. Виберіть мову та дізнайтеся, які думки у неї увійшли. У чому полягає компроміс між характеристиками, продуктивністю та виражальною силою. Які ще варіанти є. Це одне лише надасть вам нелюдські наддержавні програми. Дізнайтеся навіть NBL , це буде величезно.

Ствердження себе за допомогою підштовхування думок до інших гальмує продуктивність і спілкування. Люди можуть подумати, що відмовитись від емоційного потягу корисно, але це просто допомога на їхню незахищеність.

Будучи скромним та добрим із порадами та вдосконалюючись, ти будеш робити чудеса, щоб висловити свої відчуття кишечника на технічному рівні. Ви відчуєте себе краще і побачите речі такими, якими вони є, тому що ви зможете міркувати. Важко зійти з розуму, коли екстерналізуєш критику до технічного контексту.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.