Бойтесь упоротых С++-ников

Бойтесь С++ девелопера, суки

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

Итак, первый холиварный, но от этого не менее справедливый, признак нашего героя — это лютая упоротость по С++. Вот этот весь лютый дроч на boost, темплейты и чувство неебического превосходства над остальными. Особо любил опускать «пхпешников». Не поймите меня не правильно, все мы знаем, что пхп это не то, о чем нужно писать на сайтах про ИТ, но речь идёт о личностых качествах.

Безусловно, упоротость по чему-бы то ни было — это плохо. Но С++ особенен тем, что его освоение до уровня упоротости занимает 5 лет университета плюс еще 5 лет работы. Итого, целых 10 (вдумайтесь в эту цифру!) — десять ебаных лет, потраченных на то, чтобы научиться писать программки, которые наконец-то не будут течь или сегфолтиться. Да это же уровень полубога! Есть чем гордиться. Собственно, упоротость тут и возникает от такого срока.

Упоротый питонист, к примеру, менее опасен — на освоение нужного сабсета Питона уходит на порядок меньше времени, поэтому эта упоротость несравнима. В итоге, питонисты более прагматичны, и, почуяв халяву, быстро перескочат на что-то более эффективное при надобности, оставив Zen of Python в сердцах, но писать будут на том, на чем удобней и легче.

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

Так вот, самое ужасное, когда такой упоротый С++-ник становится тим-лидом. Во-первых, он начинает набирать себе людей с таким же майндсетом, которые тоже дрочили на boost, знают наизусть STL, презирают Qt и все остальные технологии. Особое внимание уделяется тому, чтобы ещё на собеседовании показать, кто главный пахан. Во-вторых, он начинает строить архитектуру проекта исходя из тех познаний, в которых он себя заточил, и 80% которых были заложены в университете.

В итоге, вы получаете одного главного упоротого С++ника и группу неглавных — послушных безинициативных кодеров, восхищенно внимающих каждому слову главного.

И эти люди должны будут создавать современный продукт 2016-го года

Например, 5 месяцев писать REST-бекенд с парой десятков простеньких вызовов. Или тащить в проект целый сервис для туннелирования просто чтобы не заморачиваться с HTTPS на C++. Или засовывать логику работы с базой в rc-скрипт просто чтобы не работать с базой в С++-коде. И тим лид вам будет яростно доказывать, что это красивый дизайн.

Как вы уже догадались, умением расширять свои знания такие персонажи не блещут. И вот реальный случай — один парень рассказал всему тиму про Docker и показал, как тот ускорит тесты и сборку, и уберет кучу геморроя в 10 раз. Про Docker в 2015-м году никто из тима не знал — механизмов получения новых знаний там просто нет — некогда. Послушали они послушали, и забыли. «Чушь какая-то», сказал тим-лид. Но через пол-года, когда пришел внешний консалтинг и сказал — «Ребята, да вам тут докер надо бы заюзать» и менеджер спросил — почему не послушали раньше того парня, наш герой ответил — «Доклад про Docker делал тот парень, а он для меня не авторитет, поэтому я и не оценил насколько это круто».

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

Поэтому бойтесь упоротых С++-ников. Они похоронят вашу компанию.

 

46 Комментариев

  1. Емельян:

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

    26

    0
    • Проходил мимо:

      Согласен. Зоопарк тоже еще то удовольствие. Выпиливаешь всю эту поебень за ненадобностью и сложность сопровождения.

      3

      1
  2. lol:

    Просто попался еблан и говнокодер на функцию «софтвер архитект», частое явление в доморощенном IT. Советую нанимать для построения архитектуры стороннего архитектора сдельно, или консалтинговую компанию. Лучше не доверять простому строителю-макаке план дома, наймите архитектора, тогда криворукий исполнитель не сможет навредить всему зданию.

    1

    1
  3. Anonimous:

    Вот она правда про ИТ: что бы реально шарить в ИТ мало прочитать книгу «С++ за 21 день» или даже отсидеть пару лет на багфиксе.
    Научить клепать говносайты можно и обезьяну. Написать сложную программу — реально могут только «упротоые» синьор — задроты!
    Так же точно, как доказать какую-нибудь заумную теорему, как которую дают миллионные премии, может только какой-нибудь «упоротый» математик — задрот вроде Перельмана:
    http://www.kp.ru/f/4/image/13/35/393513.jpg
    И доказательство он напишет такими тензорами, роторами и дивергенциями что ни один студент прочитать не сможет. А смогут такое понять только несколько таких-же «упоротых» во всем мире.
    Вот поэтому если вы создали ИТ компанию для зарабатывания бабла — никогда не берите туда нобелевских лауреатов! Да и вообще любых «упоротых» задротов, которые в ВУЗе учились, а не пиво бухали. Ибо они напридумывают звездолетов — и свалят. А нахрена вам потом эти звездолеты если их некому продать?
    Смело берите на свою «галеру» толпу джунов, которые умеют писать 100500 слов в минуту. И не важно что получается поток говнища: навоз то же денег стоит — главное его правильно продать!
    Все решает магический аджайл: говнище оно мягкое и можно слепить что угодно. Сегодня слепили одно — завтра помяли, подмазали и получили другое. Главное перед показом золотой краской покрыть. А клиент платит и радуется как быстро все его бредовые идеи в золото воплощаются!

    21

    3
    • iow256:

      Сайтики не требовательные, посему там до задницы — кто и на чем педалит. Использовать C++ для сайтиков можно, есть библиотеки http://cppcms.com/wikipp/en/page/main http://www.webtoolkit.eu/wt . Но зачем? Зачем растрачивать спеца на «сайтики», если есть более серъезные задачи. Аджайл здесь рулит. Клиенту насрать, он дурак. Тот что такой подход дает накопление дефектов в процессе налепливания говна поверх другого не оглядываясь ни на что, заказчик не знает.

      «Упоротые» рулят миром, да. Никто не знает кто придумал транзистор или там графен какой-нибудь. Все этим пользуются, везде оно применяется, но имен людей не знают. Это проблема [s]конченного[/s]конечного обывателя, который видит только интерфейс. Видит руль и педали, а как оно там работает!? А фиг его!!! Но обыватель становиться в позу и сосает, когда автомобиль ломается внезапно, или просто приходит срок запланированного устаревания и он не знает что делать с этим. Те же принтеры, где есть специальный счетчик. Если у человека кривые руки — плати.
      «Упоротые» меньше шумят, меньше по количеству. В данной ситуации к «упоротому С++ программисту» уже это не относиться. Пытается гнуть свою линию, вместо того чтобы развиваться. Язык тут причем в виду области его применения, где есть над чем подумать. И вот это «думалка плюсовика» тратиться на доминирование, а не на написания вирусов или эксплоитов для захавование мира.

      1

      4
  4. iow256:

    Сам таким был. Быстро излечился. С++ был основным ЯП.
    Про отрицания Qt, вообще маразм. А на чем тогда все пишется? Есть GTK, FLTK, и есть Qt на котором тот же скайп или еще какая фигня сделана. Быстрый, удобный, интересный фреймверк для GUI приложений. CSS стили, быстрый дизайн и наброска формочек. И все прелести и скорость C++. Тот же MFC — убогое недоООП страшилище, использующие страшный синтаксис и препроцессорные макросы.

    Я встречал любителей шаблонов(generic для джавистов), они использовались там где в принципе не нужны. Шаблоны ради шаблонов. Boost — хорошая библиотека, но это мелочи. Просто расширение STL.

    После C++ хорошо пошли другие языки. Как семечки. Писать сценарии, логику для той же 3D игрушки на С++ — это просто термоядерный ппц. Lua для C++ вообще легкотня. Заморочки только с метатаблицами. Подучил и уже колбасишь во всю сценарии, повидение NPC, хранишь в Lua тупо данные(как замена упоротому XML).

    А башовские скрипты вообще иногда позволяют выдрать целый кусок времени.

    Кароче я плюсовик, который жанглирует ЯП и говорю, что лучше использовать 10 лет опыта на C++ как лучший плацдарм для освоения новых языков и сред под них, и не привествую делания всего и вся на одном.

    P.S. Фроентедщики с жабойскрипт тоже начинают подобным потихоньку страдать.

    6

    6
    • Проходил мимо:

      Извини, но ты какую-то хуйню тут написал. Навалил кучу говна и забыл покрыть ее золотой краской.

      15

      7
  5. loopzilla:

    По мнению автора, если попался один долбоеб использующий технологию «X» то все кто использует эту технологию перманентно долбоебы.

    Автор просто глуп.

    4

    5
    • iow256:

      Автор намекаэ на «упоротость».
      Хотя есть некоторый ньюансик. Ведь по сути те же REST колбасят джависты. А джава как известно похожа на C++. Придераться к «классовости» С++ не получиться любителям «прототипного». На PHP тот же самое, но без типов, все через гребанный знак доллара. Вопрос просто в значениях скорости разработки. Сайтики производительности не требует. Cобственно выбирать между «public function f()», «void f()», «public void f()» трудно. Играет роль то что дает чучуть больше скорости в разработки. На 5 секунд быстрее педалиться.

      0

      2
      • loopzilla:

        Автор просто терпила — да и все.
        И пускай засунет свои намеки в жопу себе — нубяра сраный…
        Меня бесит что какое-то нубло делает подобного рода посты с красочным описанием и умными словами — типа шарит в разработке.
        А скорее всего был уволен — и сейчас то и может шо изливать понос на все шо знает..

        Из-за таких пидарасов, могут не получать финансирование достойные люди или проекты…
        Rest-ы, хуесты — все до пизды. Вы один хер не знаете как надо. Не нужно заливать тут про классы-хуяссы и функции-хуюнкции — вы всеравно не в теме. Скажу по секрету: никто не в теме…

        2

        6
        • Ашот:

          подгорело, э? любишь boost? а? признайся, ведь любишь? и РЕСТ хуяришь поихоньку, э?

          5

          1
          • loopzilla:

            Признаюсь — да люблю boost и даже stl. И 11-е плюсы тоже люблю, и надрачиваю на 17-е.
            Но превосходства перед другими рабами не чувствую.
            Почти все ваши любимые web технологии были зделаны на С++.
            А Вы нубасы что зделали в своей жизни ? Чем можете похвастаться ? Что зделали полезного для сообщества ? Ну или хотяб для рынка своей страны ?

            4

            4
            • Ашот:

              е, генацвале, я сделал все шо мог — вовремя съебался с галер. чем смог помог

              3

              0
            • also:

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

              8

              1
              • loopzilla:

                А может я хахол ? По хохляцки Зробили/Зделали — один хер… Такшо невыебуйся грамматей.
                И да Я — дартаньян в белом — хули бы нет ? Защищаю одну из лучших технологий которая двигает всю индустрию от таких пидарасов как автор.

                1

                8
                • also:

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

                  Как вы блять работаете с такими гнойными ублюдками в коллективе.

                  8

                  0
                  • loopzilla:

                    Ахахаха, какие мы нервные 🙂 Иди подрочи, придурок — може попустит с психами..

                    0

                    4
                    • владею ассемблером со словарём:

                      Здесь скорее написано не о недостатках конкретного языка\фреймворка, а о проблемах процессов внутри команды (хотя какая это нахуй команда,если все безоговорочно выполняют тупые приказы?).
                      Если бы там был Пайтон, Джава итц и архитектор с такими же подходами, то на выходе было бы более-менее тоже самое. Так что здесь проёб тех, кому архитектор дышал в жопу -а именно менеджмента.

                      Хотя да, видимо, никто не задумывался о сопровождении продукта в будущем и теперь будущее внезапно застало их в расплох. А хитрый архитектор просто обеспечивал себе job security.
                      И если он не полный болван, то будет работать на них и дальше, но только в роли внешнего консультанта и за совсем другие лавэ…

                      0

                      0
                • iow256:

                  А может ты просто тролль?!

                  1

                  0
                  • loopzilla:

                    На самом деле, Я С++ погроммист.
                    Просто улыбает как уровень топика так и уровень комментов..

                    3

                    3
                    • iow256:

                      Ну так, объясни в чем проблема?

                      0

                      0
                    • Ашот Камшот:

                      е, генацвале, сперва добейся, запили свой топик с блэкджеком и, в твоем случае, трансвеститами

                      2

                      0
            • iow256:

              Тролль. Ибо нормальный разработчик на С++ не заморачивается на всяких библиотечках. Скорее заморачивается на архитектуре и некоторой логике их работы.
              По сути учить не надо, знать все названия функций, методов, процедурок — это лишнее. Есть справочник, подсмотрел глазком и уже используешь. Boost прост, STL прост. Qt как бы прост, но нужно понимать механизм сообщений(сигналы, слоты, очередь), метапрограммирование.

              А вот те же никсовые сокеты(select, bind, connect и т.д.), одного API знать не достаточно. Ну выучил ты сигнатуру, название процедур, как подключать библиотеки. Но этого мало. Нужно вникать в сетевой протокол, ньюансы, условия работы, как работает.

              0

              0
              • loopzilla:

                Дай угадаю, Junior C++ programmer ? 🙂

                1

                0
                • iow256:

                  Дай угадаю, провоцируешь?

                  1

                  0
                  • loopzilla:

                    А че, унижает ?
                    Все кто говорит что что-то просто в С++ — обычно жуниоры или интерны, ну или были ими потом перешли на чето другое по разным причинам.
                    Я бы гордился гордым званием «Junior C++ Developer !»
                    Эти люди не выбрали легкий денежный путь — а готовы трудиться !
                    Это вразы лучше senior java developer..

                    0

                    2
                    • also:

                      ооо тут еще и кпсс да ты бля просто кладезь, «легкий денежный путь», «люди готовы трудиться» бляя))

                      3

                      0
                • iow256:

                  Ниже написал про «героически преодолевать трудности, которые создает твой собственный инструмент», читай!

                  Конечно, тот кто осилил C++ во всех позах — молодец. Но это все частности. Я вырос уже с «программировать на» до «программировать для». Я стал выше всего этого, и для меня все это всего лишь инструменты. Проекты были мультиязычные. Сейчас же я работаю сам по себе и занимаюсь не очень «популярными вещами», скажем так.

                  1

                  0
  6. botan:

    Ну пиздец проект в руинах, а их беспокоит сборка через докер.

    7

    0
  7. Ашот:

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

    0

    0
  8. Дембель-С++:

    На самом деле все так и есть, чистая правда.
    У нас в ебаной «СНГ» только кичатся на сбс и работах по шаблонам и прочей хери С++.
    За рубежом пишут на С++ как С с классами. А у нас пишут мега запутанный код с нахрен никому не нужными шаблонами-выебонами

    -2

    2
    • iow256:

      Тыкать шаблоны где не подрозумевается использование кода для разных типов, может это не очень. Но когда надо сделать метапрограммирование или вычисления на этапе компиляции — то это сила. Boost скрывает все эти сложности, весь этот лес из угловых скобочек, и дает готовый инструмент. Однако с ключевым словом template получается «многа букафф», не как в жабе или решетке. Еще компиляция может длиться вечно.

      Обощенное программирование вроде бы мощно смотриться на всяких YASM(хотя это препроцессорная макросота)

      0

      0
  9. iow256:

    «»»
    C++ — довольно таки примитивное, но монстровое поделие, полное исторически сложившихся нелепых нагромождений. Человек, который хорошо в нем ориентируется — это хорошее зубрилко, а не хороший программист. Умение героически преодолевать трудности, которые создает твой собственный инструмент, вместо того, чтобы решать непосредственно прикладную задачу, в современном мире ценится разве что только среди прыщавых сосок. Работодатель же это сомнительное умение не ценит, и совершенно справедливо.

    В общем, так: хороший программист обязан знать Си. Хороший программист может знать C++, но это не обязательно уже. Главное, чтоб C и C++ не были единственными доступными программисту инструментами — иначе это адски паршивый программист.
    «»»

    2

    1
  10. Vlad:

    Не, автор, я понимаю что тестируешь вбросовые тем,
    но шаблон Язык N — гавно не работает.

    Надо Язык N vs Язык К — так хейтеров в два раза больше набежит

    3

    0
  11. DarkBoost:

    Я мамку автора ебал

    2

    0
    • Ашот Камшот:

      е, слышь я твой мать ебал отец ебал брат сестра ебал твоя кепка насрал
      понял, ссвиня?

      0

      0
  12. whoops:

    «Доклад про Docker делал тот парень, а он для меня не авторитет, поэтому я и не оценил насколько это круто».

    из той же оперы: человека не взяли на вакансию,потому что была похожа на бывшую ПМа или лида

    4

    0
  13. Driver:

    Галеру в студию!

    0

    0
  14. OneSin:

    Статья написана питонистом-дауном из-за неспособности разобраться в более сложных вещах

    0

    0
  15. Windows9:

    Эй, автор, ты что курил, пока писал?

    0

    0