Я написал своё первое одностраничное веб-приложение на Javascript в 2005 году, сразу после того, как узнал о XMLHttpRequest и до появления серьёзных фреймворков. Я оставил профессиональную веб-разработку примерно в 2009 году (а начал её в 1997 году с WebObjects), а последний десяток лет своей карьеры занимался мобильными.

Сегодня я смотрю на мир веб-разработки, и меня поражает его безумие. Существует так много фреймворков для веба, и каждый день появляются новые. Для создания веб-приложения (в отличие от веб-сайта, например, моего сайта про искусство, который сгенерирован статически и содержит лишь немного Javascript), часто требуются кучи инструментов и технологий, часто меняющихся с большой частотой и содержащих бесконечные объёмы других технологий, о существовании которых мы и не подозреваем (о, смотрите-ка, в папке пакета две тысячи файлов).

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

На моей первой работе мобильного разработчика в туристической онлайн-компании (к сожалению, теперь это лишь бренд) команда веб-разработчиков выбирала веб-фреймворки для нового мобильного веб-приложения (для съёма номеров в отелях/покупки авиабилетов/аренды автомобилей). В конце концов она выбрала то, что, по её мнению, подойдёт лучше всего. Однако год спустя этот опенсорсный фреймворк был практически заброшен; к счастью, это было уже не важно, потому что наш бренд продали, а все технологии и сама компания исчезли.

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

Я помню первые два разработанных мной одностраничных приложения; это было интересно, а для их создания не требовалось почти ничего, кроме текстового редактора и браузера (для получения данных потребовался небольшой фреймворк маршалинга и немного кода на Java). Комиссия по архитектуре, в которой я состоял, пожаловалась на то, что я задействовал какую-то неодобренную ею технологию, поэтому мне пришлось показать ей, что это просто браузер и Javascript. Моим клиентам (приложение было только для внутреннего пользования) понравилось, что можно было быстро искать информацию, как будто это десктопное приложение, а не постоянно перезагружать страницу. Разумеется, это было не такое огромное приложение, как Gmail.

Сегодня если вы не крошечная команда, разрабатывающая мелкие приложения, то вы вкладываетесь в выбор экосистемы наподобие React, Angular и Vue, или комбинируете мелкие фреймворки с другими инструментами для развёртывания собственного окружения. Вам нужно заботиться о фреймворках CSS, упаковщиках/сборщиках ассетов и о множестве других опенсорсных фреймворков и утилит, изготовленных на основе нескольких слоёв ещё большего множества опенсорсных технологий. А после этого вам нужно постоянно всё обновлять, избегая несовместимостей и дыр в безопасности.

Какой же морокой должно быть всё это. Зато есть гарантии работы!

Когда я начинал в 80-х, программирование было гораздо более прямолинейным — тебе нужно было знать язык программирования, операционную систему и то, что тебе сказали создать, а всё остальное нужно было изобретать самостоятельно! Помню, как важно было для Trapeze (приложение для работы с электронными таблицами, которое мы выпустили в январе 1987 года), что мы получили от друга с доступом к Unix копию Lex и Yacc, позволившую нам создать парсер формул.

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

В последнем крупном проекте, выпущенном на моей предыдущей работе, не было опенсорсных элементов; его писали на чистом Swift. Нашему юридическому отделу было сложно угодить, и оказалось проще самостоятельно создать всё с нуля, чем иметь дело с ним.

Я не хочу сказать, что в современных экосистемах веб-фреймворков нельзя создавать и поддерживать сложные системы. Однако это может быть не особо увлекательно, и сейчас я задумываюсь, как будут эволюционировать приложения, учитывая постоянное изменение их экосистем. Кто-то до сих пор использует и поддерживает программы на Cobol, которые едва ли не старше меня, так что возможно всё. Любопытно, сможет ли когда-то ИИ взять на себя работу с постоянной каруселью бесконечных слоёв веб-окружений, или он не справится и этим придётся заниматься людям?

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

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

Приложение Deltagraph, которое я начал разрабатывать в 1988 году, жило с одним и тем же кодом тридцать лет (моя команда работала над ним только пять лет), прежде чем пандемия не убила последнюю компанию, которая его продавала. В конечном итоге, оно больше не может запускаться в MacOS, поскольку исходный код на C, которому уже четверть века, невозможно апгрейднуть до 64 битов. Я и представления не имел в 1988 году, что принятые тогда мной решения повлияют на кого-то тремя десятками лет позже. Основное веб-приложение моего последнего работодателя было сплавом такого количества технологий, что когда я впервые увидел его, разобраться в нём оказалось очень трудно.

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

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

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

Больше всего меня раздражает добавление новых возможностей к генератору сайта и самому сайту, только там я вижу признаки сложности в поддержании актуальности, но это не является моей повседневной работой. Я не завидую современным веб-разработчикам, им приходится быть в курсе постоянных изменений и эволюции, проблем безопасности и ситуаций наподобие бомбы left-pad. Даже работа с Github становится раздражающим процессом.

Сколько веб-фреймворков существует на данный момент? Вы не сможете ответить, ведь их количество только что снова увеличилось!

Комментарии (147)


  1. aelaa
    22.12.2023 13:51

    Ну хоть книжку «введение в профессию» не стал писать, уже хорошо.

    Но в чем смысл плакаться?


    1. TheMrWhite
      22.12.2023 13:51

      а что не так с книжкой?


      1. aelaa
        22.12.2023 13:51

        Радикальный луддизм ее автора?


  1. Delagen
    22.12.2023 13:51

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


  1. YourDesire
    22.12.2023 13:51

    Автор притянул всё, что вообще смог притянуть (и веб, и свой опыт, и ИИ, и бог знает что ещё). Но всю суть можно свести к "раньше трава была зеленее". Раньше была ручная коробка передач, знать надо было меньше и...

    Вы себя поймали на мысли, что где-то такое читали? И даже помните ответы в стиле "Сейчас никто не мешает писать ровно также, без использования всего, только какова будет цена поддержки и подбора новых специалистов в проект"? Да, вы где-то такое читали. Читали о том, как человек, как тут уже выразились, хотел бы в свои 15 лет назад, но, увы, не может.


    1. ParaMara
      22.12.2023 13:51

      Это же перевод. Чего ещё ожидать? Такое не надо воспринимать буквально, это возможность с другого угла посмотреть на то, что и как у них ТАМ, чем оно и интересно. А Вы реагируете так, как если бы автор сидел от Вас через стол…


      1. aspect04tenor
        22.12.2023 13:51

        Что в его реакции заставило вас думать, что автор сидел от него «через стол»?


        1. ParaMara
          22.12.2023 13:51

          Ничего. Попробуйте перечитать комментарий.


          1. aspect04tenor
            22.12.2023 13:51

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


    1. Inoutcomer
      22.12.2023 13:51

      Вот в этом и проблема, которую никто не видит. Когда коробка передач была ручная, знать надо было Больше. И люди знали больше. 99.99% современных программистов абсолютно не понимают о чем это.


  1. SerJook
    22.12.2023 13:51

    Лично мне разработка для веб всегда доставляла боль, хочу обратно в теплый ламповый десктоп, но его убили!


    1. Kerman
      22.12.2023 13:51

      Ох, как же задолбали хоронить десктоп! Он живее всех живых, у него свои ниши, где веб по удобству даже близко не стоял. При прочих равных, десктоп быстрее разрабатывается и быстрее работает.

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


      1. rastop123
        22.12.2023 13:51

        На счет работает, согласен, но на счет разрабатывается, прям спорно мне кажется


      1. dyadyaSerezha
        22.12.2023 13:51

        Процент дескопа в списке вакансий на основных российских сайтах по поиску работы очень маленький, и это факт.


        1. alan008
          22.12.2023 13:51

          Это пройдёт


          1. Thseru
            22.12.2023 13:51

            Типа вообще вакансий не будет?


            1. dyadyaSerezha
              22.12.2023 13:51

              ))


          1. dyadyaSerezha
            22.12.2023 13:51

            Не согласен, но допустим. Но работа и деньги нужны сейчас, а не когда пройдёт.


        1. Kerman
          22.12.2023 13:51

          Может это говорит больше о текучке в вакансиях на веб, чем о востребованности десктопа?


      1. Oceanshiver
        22.12.2023 13:51

        Вы правда не видите разницы между тем, что было раньше (все приложения были декстоп), и тем что сейчас (свои ниши)?


        1. Kerman
          22.12.2023 13:51

          Я где-то говорил, что не вижу разницы? Я где-то говорил, что времена те же самые остались?

          xkcd_extrapolation.jpg


      1. AlexandrNeschadin
        22.12.2023 13:51

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

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

        мир.


        1. Chamie
          22.12.2023 13:51

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

          Почему тогда на мобилках для каждого первого сайта своё приложение?


          1. nin-jin
            22.12.2023 13:51

            Которое просто открывает сайт в вебвью.


          1. muxa_ru
            22.12.2023 13:51

            Почему тогда на мобилках для каждого первого сайта своё приложение?

            • потому что начальник не лох и хочет своё приложение

            • потому что позволяет маркетологам собирать больше данных о пользователе

            • потому что иконка приложения мозолит глаза на экране и ссылка в браузере - нет


            1. Chamie
              22.12.2023 13:51

              Это всё про интерес для компании, а я про тейк о том, что юзеры, дескать, используют сайты вместо приложений. А они, почему-то, ставят 9000 приложений из стора, под каждый сайт своё.


              1. nin-jin
                22.12.2023 13:51

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


    1. ReadOnlySadUser
      22.12.2023 13:51

      Как по мне, разницы между десктопом и вебом не так чтобы и очень много сегодня. Раньше страдали от поддержки нескольких ОС, сейчас страдают от поддержки нескольких браузеров.

      Тулинг концептуально тот же самый, просто под другими названиями. Единственная разница - всё тормозит как не в себя. Но тут уж ничего не поделаешь.

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


  1. jodaka
    22.12.2023 13:51

    Бредятина какая-то.

    Реальный ад в веб.разработке был лет 15 назад, когда нужно было под разные браузеры разную верстку и код делать. И не было нормальных (да почти никаких) средств отладки.

    А сейчас есть выбор. Никто не заставляет использовать фреймворки и JS. Делай статику и радуйся жизни.


    1. hVostt
      22.12.2023 13:51

      Речь видимо о слишком большой фрагментации. Грубо говоря, каждый день изобретается новый шлиц.

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

      Не так много людей, как кому-то может показаться, готовых в принципе вести разработку на любом фреймворке, каждый из них -- отдельный и плотный пласт знаний, подводных камней. Или перейти на другой фреймворк, и сделать это быстро.. Это искусственно созданная сложность, такая конкуренция делает разработку сложнее и дороже.


      1. Gugic
        22.12.2023 13:51

        Три шприца которые сейчас повсеместно используются не меняются уже сколько времени? Ангуляр 2 в 2015м или в 2016м зарелизили? Тайпскрипт? Реакт? Вью? Экосистема эволюционирует потихоньку, да и все. На беке тоже все уже давно выбрали на чем сидеть и сидят.


        1. Mephistophele
          22.12.2023 13:51

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


          1. dimatsourkan
            22.12.2023 13:51

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


      1. kipy
        22.12.2023 13:51

        Ну вы же понимаете, что для обычного разработчика, который не только что после курсов, нет большой проблемы не то, что фреймворк поменять, - язык изучить за неделю - другую. Это, в сравнении со сроками разработки достаточно крупных приложений, капля в море. Оригинал статьи - вода. Вероятно, даже сгенерировано нейросетью.


    1. NuckChorris
      22.12.2023 13:51

      Проблема в том что этих фреймворков много и не факт, что они долго проживут, где jQuery, Backbone и, например, CoffeeScript? А ведь они тоже долгое время были популярны. Ещё проблема в менеджерах, я вот всегда был фулл-стеком и знаю базу JavaScript(даже ECMA), HTML5, CSS3, но "У нас все проекты на React, ты с ним не работал" - И? Я будучи бекендером ковырялся и правил ваш фронт на React - "Нет, мы не можем так рисковать"

      Никто не заставляет использовать фреймворки и JS

      Всё те же менеджеры скажут - "Сейчас модно использовать Angular или React, а чистый JS, HTML это что-то неприличное"


      1. nin-jin
        22.12.2023 13:51

        Самое забавное, что самый популярный сейчас Реакт - это даже не фреймворк, а личинка фреймворка, поэтому на каждом проекте пилят свой уникальный кривой фреймворк, но так как в нём используется Реакт, то врут этим менеджерам, что "проект на Реакт", а не на своём велосипеде.


        1. Vitimbo
          22.12.2023 13:51

          Явно не изобретателю своей личинки фреймворка что-то говорить в сторону реакта.


          1. nin-jin
            22.12.2023 13:51

            Ага, куда уж мне до этого шедевра технической мысли.


            1. Vitimbo
              22.12.2023 13:51

              Вашу библиотеку никто не пытается пожарить не потому, что она идеальная, а потому, что никто ей не пользуется или даже не в курсе что такое есть. Это первое.

              Второе. Создатели реакта явно не дебилы и, если у них есть какие-то технические косяки, то надо смотреть не на сами косяки, а на причину их появления. Мб исправление будет слишком дорогим, а эффект никто не заметит. Или сломают совместимость. Или ещё из-за чего. Короче, рассматривать любое явление надо в движении, а не просто 'у них Х сделано криво'.

              Третье. Сами же пишете, что все эти косяки можно теми или иными всем известными способами обойти. Значит, можно использовать привычный и всем известный фреймворк и, опять же, всем известные костыли для него. Это намного лучше, чем изучать новую библиотеку, о косяках которой никто не знает и которой никто не пользуется, что даже не погуглить частые проблемы.

              Короче говоря, преимущества непонятны, а проблемы неизвестны.


              1. nin-jin
                22.12.2023 13:51

                Вы думаете внедрение хуков, асинхронного рендеринга, серверных компонент было простым и не ломало совместимость? По сути исправление архитектурных косяков этих недебилов неизбежно приводит к выпиливанию Реакта.


                1. Vitimbo
                  22.12.2023 13:51

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


                  1. nin-jin
                    22.12.2023 13:51

                    Только чтобы их внедрить пришлось изрядно сломать совместимость.


                    1. Vitimbo
                      22.12.2023 13:51

                      Все ещё игнорируем доводы?


              1. Surr1os
                22.12.2023 13:51

                Ох уж эти реакт разработчики) Angular уже давно превзошел реакт как 3 года назад. То,что считалось преимуществом реакта, появилось в angular. А,кстати, какого это видеть миллион откликов по реакту?)))


        1. kspshnik
          22.12.2023 13:51

          Самое забавное, что разработчики React в голос орут на главной странице официального сайта, что это не фреймворк.


          1. GothicJS
            22.12.2023 13:51

            И что он не реактивный?


            1. kspshnik
              22.12.2023 13:51

              Пачиму? :)


      1. arielf
        22.12.2023 13:51

        Вы ещё Prototype забыли! Который был весьма популярен в нулевые.


    1. muxa_ru
      22.12.2023 13:51

      Реальный ад в веб.разработке был лет 15 назад, когда нужно было под разные браузеры разную верстку и код делать.

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

      Если заниматься вёрсткой, а не понтами, то всё нормально показывается и сейчас.


      1. Chamie
        22.12.2023 13:51

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

        Подождите, то есть, когда один и тот же код/вёрстка в разных браузерах вели себя по-разному — это не считается? Напомню, даже box-sizing изначально не существовало, и браузеры на своё усмотрение решали, откуда докуда считать размер элементов, и включать ли в него паддинге, бордюры и марджины.


        1. muxa_ru
          22.12.2023 13:51

          Подождите, то есть, когда один и тот же код/вёрстка в разных браузерах вели себя по-разному — это не считается?

          Он себя вёл по разному двух случаях:
          - верстальщик был выпендрёжным рукожопом, который не знал как верстать нормально
          - padding который считали по разному (не буду скрывать, то к какому общему решению пришли, это идиотия )

          Была ещё проблема с масштабированием, которая в разных браузерах была реализована по разному (где-то масштабировалось всё, а где-то только текст), но в те годы масштабирование не включалось по дефолту и пользователь включал его добровольно, принимая на себя риски.

          Вобщем, рассказы про несовместимость исходят от историй типа "А вот мозилла придумала скругление уголков, а больше никто их не поддерживает." Ну так тебе деньги платят за то, чтобы ты продукт делал, а не играл в ребёнка-истеричку "мне хочется, поэтому мне должны это дать".

          В интернете есть сайты которые верстались 10-15-20 лет назад и они до сих пор отображаются так как должны отображаться.

          И на archive.org дофига старых сайтов и они до сих пор отображаются так как должны.


          1. Chamie
            22.12.2023 13:51

            box-sizing — это не только про паддинги, если что. В IE та же width устанавливала ширину включая паддинги и бордюр, а в FF и прочих — то, что внутри, без бордеров, паддингов и марджинов. И это только один пример, просто он самый выдающийся — как ты будешь нормально верстать, если даже самая базовая вещь, размер элементов, может меняться в зависимости от браузера?

            А как вам тот же Ajax? Он вообще в IE первым появился, и вызывался там через дыру в безопасности внешний ActiveX-компонент, его тоже не нужно было использовать?


  1. zergon321
    22.12.2023 13:51

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


  1. arielf
    22.12.2023 13:51

    Я безумно счастлив, что больше не iOS разработчик! Как Apple начала заменять няшный Objective-C на богомерзкий Swift, покинул это поле ещё в 2017. Objective-C был лучшим языком программирования на Mac OS X.


    1. Rusondi
      22.12.2023 13:51

      Если бы успели попробовать SwiftUI - были бы еще счастливее.


  1. arielf
    22.12.2023 13:51

    Автор прав на 100% -- в программировании вообще глубокий кризис. А Web так вообще безумное поле кучи технологий и вечных начинаний с нуля.

    Более или менее нормальные направления -- это системное программирование и игровое программирование. В них многолетние циклы разработки и хоть какая-то уверенность в завтра.


    1. c_kotik
      22.12.2023 13:51

      Не переживайте, астрологи скоро объявят неделю палачей про геймдев с их кранчами и тд и тп. Ничто не ново под луной.


    1. ussrisback
      22.12.2023 13:51

      В чем нормальность? Шлепать одно и тоже годами радости мало. Еще и зарплаты низкие.


      1. Bobovor
        22.12.2023 13:51

        Ну в вебе высокие же зарплаты.


        1. Gugic
          22.12.2023 13:51

          Ну вообще да, не низкие. И фронтендщики и бэкендщики, как это не парадоксально, по рынку получают больше условных unreal девелоперов с экспертизой в с++ (при одинаковом уровне). По крайней мере в Калифорнии.


          1. PowerMetall
            22.12.2023 13:51

            Может это как раз таки та самая "плата за изменчивость"?
            За вечную гонку, когда сегодня одно, завтра - другое, послезавтра - третье (и четвертое уже на подходе)
            Как вариант просто


      1. arielf
        22.12.2023 13:51

        У них настоящие алгоритмы и низкоуровневые фичи -- конечно это интересно! В этих сферах вы программируете целые замкнутые системы, и они будут жить годами или вообще десятилетиями! В игры из нулевых (а порой и из 90-x) всё ещё играют. Интерфейсы операционных систем (например, POSIX) меняются мало, и это хорошо, ибо ваши нынешние знания будут ценны ещё много лет, а значит вы можете тратить ваше время на решение реальных проблем, а не на вечное изучение новых фреймворков и крысиные бега.

        Еще и зарплаты низкие.

        И вообще -- нужно заниматься тем, чем нравится, а не есть жрать говно за высокую зарплату.


        1. dedmagic
          22.12.2023 13:51

          И вообще -- нужно заниматься тем, чем нравится, а не есть жрать говно за высокую зарплату.

          Объясните это жене/детям/престарелым родителям, в общем – своей семье, которую ты, как настоящий мужчина, должен содержать.

          Если же Вы одиночка, без семьи – тогда да, можете работать кем угодно, хоть бомжом.


          1. arielf
            22.12.2023 13:51

            Вы знаете -- разница в зп у web и game разработчиков не настолько критична, чтобы так унижаца.

            Ещё интереснее, что в США к примеру зп у биоинженеров примерно $150,000 -- что вполне сравнимо с зп у программных инженеров. При том, что конкуренции намного меньше, а перспектив больше. Так что не понимаю говорящих, что мол зарабатывают нормально лишь программисты.

            Что касается семьи -- какая-то у вас патриархальная позиция. А родители могут жить на пенсию и свои накопления, или чем они всю жизнь занимались, что ничего не заработали? И зачем нужна жена, которая ничего не умеет и не работает? Жену нужно выбирать из такого же круга как и вы, чтобы она была полноценным партнёром.


            1. ReadOnlySadUser
              22.12.2023 13:51

              А родители могут жить на пенсию и свои накопления, или чем они всю жизнь занимались, что ничего не заработали?

              Молодость моих пришлась на 90-е, где парочка неудачных финансовых решений и других ошибок, вылилась череду переездов, долгов, и довольно бедных (а иногда и голодных) времён, вплоть годочков до 2010-х, т.к нас было трое детей.

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

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

              Вы видимо совсем... Даже не знаю, какое бы слово подобрать, чтобы не забанили... Скажем, "неопытный", раз считаете, что бедности не существует, что 90-е были "нормальным временем", и что никого они на обочину жизни не выкинули.

              Кому-то повезло, кому-то нет, кто-то нашел себя в новом времени, а кто-то нет. Не важно как люди оказались в ситуации, в которой они оказались, проблема существует прямо сейчас.


        1. GothicJS
          22.12.2023 13:51

          И вообще -- нужно заниматься тем, чем нравится, а не есть жрать говно за высокую зарплату.

          Да откуда же вы знаете, кому что нравится, и кому чем заниматься надо...


  1. TimsTims
    22.12.2023 13:51

    в 80-х, программирование было гораздо более прямолинейным

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

    Шутка). Конечно же веб сильно изменился. Появились одностраничные приложения, появилось PWA. Сейчас на фронтенде можно даже документы формировать, и делать сверх-интерактивные приложения. Это вам не падающий снег на .js реализовывать. Я уже молчу про всеми нелюбимый, но повлиявший на мир ПО - Electron. Насколько бы он не был ужасно тормозящим, но он сильно сдул команды разработки. Вы только представьте себе - даже Microsoft похоронил свою команду нативных разработчиков-на-всём Skype в пользу одного универсального скайпа на Electron.

    А Браузеры? Молодые пожилые помнят что раньше нужно было верстать страницы под 3 браузера: IE, Opera и Firefox. Потом появился Google Chrome, он устаканил правила игры, благодаря которым появилась пачка фреймворков, спокойно учитывающих единый движок chromium. Больше не надо писать 3 разных версии сайта для 3х браузеров - можно наконец то сосредоточиться на функционале и коде во фронте.

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


    1. arielf
      22.12.2023 13:51

      Microsoft похоронил свою команду нативных разработчиков-на-всём Skype в пользу одного универсального скайпа на Electron

      А сколько весит и как тормозит этот Skype -- вы знаете? Жрёт как Photoshop! Не высока ли цена? Почему в нулевые программы на хилом железе нормально работали, а в 20-e на мощном железе торозят? У меня на телефоне программы с парой функций занимают 500 метров! Что в них такого? Правильно -- ваши фреймворки!


      1. nin-jin
        22.12.2023 13:51

        Ну а вот на $mol заставить приложение тормозить - это нужно ещё постараться.


        1. nin-jin
          22.12.2023 13:51

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


          1. SergioT4
            22.12.2023 13:51

            Тут сравнивают не $mol vs [любой web framework], а electron vs desktop app (например winforms).

            electron браузер и js engine за собой тянет, так что упоминание мола тут не при делах.


            1. nin-jin
              22.12.2023 13:51

              Ну а я сравниваю приложения на WPF, которые работают только на винде с установленным последним .NET рантаймом и то и дело реагируют на нажатие с 5 секундной задержкой, и любое приложение на $mol, которое не тянет за собой ничего, кроме уже установленного в системе браузера, и реагирует на нажатия мгновенно.


              1. SergioT4
                22.12.2023 13:51

                WPF приложение на том же железе в среднем будет быстрее работать чем браузер.

                установленного в системе браузера

                Тут проблема браузера, что либо надо реально nodejs (или подобное) тянуть за собой, либо у тебя доступов к локальным ресурсам не будет. Т.е. получается что тот-же электрон.


                1. nin-jin
                  22.12.2023 13:51

                  Теоретически да, а на практике - я вот открываю приложение настроек в винде и наблюдаю адский лагодром. И так почти с любым родным приложением на WPF.

                  Многим приложениям прямой неконтролируемый доступ к любым локальным ресурсам не нужен и даже вреден. А там, где без него никак есть Tauri, который тянет всего 600кб.


              1. hVostt
                22.12.2023 13:51

                Ну а я сравниваю приложения на WPF ... и то и дело реагируют на нажатие с 5 секундной задержкой

                Вот это экспертиза! Добиться реакции с 5 секундной задержкой можно исключительно тем, что операция выполняется реально 5 секунд (в сеть лезет, например, или долгий запрос в БД) и при этом разработчик совершенно неопытный (даже не джун) и сделал это по своему неумению синхронно. В иных случаях, такого быть не может.

                Со стороны выглядит так, что вы привираете или просто выдумываете на ходу в рекламных целях. Это приводит к тому, что вашим словам про $mol также доверять не стоит. И проверять тем более.


                1. nin-jin
                  22.12.2023 13:51

                  Ну значит в Майкрософт работают одни даженеджуны, раз не понимают, что реакция на действия всегда должна происходить до загрузки чего либо, а не после того, как все необходимые для рендеринга всего экрана данные будут получены. И судя по архитектуре всяких Реактов (транзакционный рендеринг) с Ангулярами (резолверы роутов) это массовое явление в силиконовой долине. Но не слушайте меня, не то вся картина мира потечёт, а психолухов-то на всех не напасёшься.


            1. c_kotik
              22.12.2023 13:51

              Ну как не при делах. То-что-никому-не-нужно само себя не пропиарит.


          1. slonopotamus
            22.12.2023 13:51

            Возможно ваш $mol даже хорош. Но вы так задолбали пиханием его во все дыры, что минусуют вас лично, а не $mol.


            1. nin-jin
              22.12.2023 13:51

              Ну так залатайте дыры, чтоб никакой $mol не пролезал. А то сначала наговнокодят, а потом обижаются, когда ты на это указываешь.


              1. IhnatKlimchuk
                22.12.2023 13:51

                Вот люди на ассемблере пишут и все летает. Вон написали же веб сервер, что даже хабраэффект не взял. А тут проходят всякие с молью которая жрет две фуры рамы...


                1. nin-jin
                  22.12.2023 13:51

                  А можно пруфпик про две фуры рамы?


            1. p07a1330
              22.12.2023 13:51

              Я сходил и потыкал веточкой. Он не очень хорош. Я наверное даже больше скажу - он пованивает.
              Синтаксис в духе Хескеля, куца документация и отсуствующее комьюнити


              1. nin-jin
                22.12.2023 13:51

                1. kAIST
                  22.12.2023 13:51

                  Что то не понял про пруф в виде большого комьюнити. Какой то ролик с 23 просмотрами за пол года?


                  1. nin-jin
                    22.12.2023 13:51

                    Ну так люди люди помирают же, поэтому и отсутствует комьюнити. А 23 просмотра - это всё накрутка.


                    1. kAIST
                      22.12.2023 13:51

                      То есть у других проектов комьюнити есть, а у вас умирают люди? Правильно понял?


                      1. nin-jin
                        22.12.2023 13:51

                        Да, они как видят наши шаблоны, так у них глаза вытекают. А у тех, кто всё же продолжают с ними работать вслепую, просто сердце останавливается.


              1. gev
                22.12.2023 13:51

                Вы имете что-то против хаскеля? =)


          1. murkin-kot
            22.12.2023 13:51

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

            Гуглы и прочие фэйсоморды имеют возможность охватить массы. Значит они реально двигают прогресс. Даже если это движение назад. Надеюсь, опять понятно почему.

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

            Теперь причина.

            Ну сначала идёт устройство общества. Хотя да, вам же это надоело, неинтересно ну и всё такое.

            Тогда второй пункт - ваше демонстрационное приложение тормозит. Не так, как скайп, но всё же медленнее нормальных приложений. У вас, разумеется, есть оправдания. Но я вас уверяю, от сотрясения воздуха вашими оправданиями приложение быстрее работать не будет. А психологическое давление с целью заставить поверить в то, что вы лучший, не смотря на очевидные недостатки, воспринимается исключительно негативно.

            Ну и третий пункт. Если вы сами не смогли написать быстрое приложение (ведь именно на скорость вы упираете в саморекламе?), то как это сможет сделать кто-то другой?

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

            Конец такой - надо начинать всё сначала. Переосмысливать и выкидывать старые велосипеды. А думать нужно над пунктом номер один. Остальные сами подтянутся.


            1. nin-jin
              22.12.2023 13:51

              Движение назад называется регресс. А то, о чём вы говорите, называется движением масс. К прогрессу это движение никакого отношения не имеет.

              До сих пор не изобретённый мной подход к программированию называется "Объектное Реактивное Программирование". К "компонентам в браузере" оно имеет мало отношения. И оно реально ускоряет разработку на порядок. Про принципиальные отличия была статья 4 года назад. С тех пор разрыв только увеличился.

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

              Ну и прежде чем с умным видом давать советы, не плохо было бы хотя бы поверхностно разобраться в вопросе.


              1. murkin-kot
                22.12.2023 13:51

                Движение назад называется регресс

                Понятно, что указания на мысль не осознаны получателем.

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

                "Объектное Реактивное Программирование"

                Передача компонентам неких обработчиков придумана тысячи лет назад (вот умный перец - возьми его и сделай с его помощью что я хочу). Вариаций на эту тему с той поры придумано бесконечное количество. Ваш вариант всего лишь строит несколько альтернативных цепочек на фоне океана из факториала от двойки хотя бы в степени 32. Критерии оптимальности такого выбора, разумеется, от общественности скрыты. Почему? Потому что их нет, то есть они не формализованы. Вы даже не думали на эту тему. И с таким "продуктом" вы выступаете гордо и смело с надеждой победить гуглов. Но у них тупо больше разработчиков, что бы перебрать гораздо больше цепочек из упомянутого океана. И да, они тоже что-то знают про алгоритмы.

                И оно реально ускоряет разработку на порядок

                Необоснованное личное мнение. Вам кажется, что вы делаете быстрее. С кем конкретно вы сравнивали? В каких условиях? Ответа нет. Но если вы вспомните, что у проблемы есть много измерений, то возможно, смените тон. Вот парочка измерений для примера - количество разработчиков в группе, время освоения технологии отдельным разработчиком. Это очевидные направления, о них очень стоит подумать. А есть и другие измерения.

                Про принципиальные отличия

                Ну да, про "ориентацию на компоненты" там прямым текстом написано. Чем это принципиально отличается от написанного мной?

                о каком таком тормозящем демонстрационном приложении вы говорите

                О любом вашем. Возьмите ваши ссылки из поста выше, или ваш сайт "обо мне". Везде есть некое дерево слева (шаблон?), которое при нажатии на узел запускает серию морганий. От первого моргания до последнего проходит две секунды. Приложение загружено, всё в наличии, но юзер всё равно страдает - морготня и ожидание. Зачем так делать? Сравните с деревьями, которые раскрываются мгновенно, и без морганий. В браузере, разумеется.

                не плохо было бы хотя бы поверхностно разобраться в вопросе

                Вот выше попробовал.


                1. nin-jin
                  22.12.2023 13:51

                  Ох уж этот воинствующий дилетантизм..

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

                  Тут есть сравнение разработки похожих приложений на $mol и Vue. Там же можете глянуть и другие бенчмарки. С глубоким анализом разных подходов к реактивности можете ознакомиться здесь. А если захочется больше технических деталей, как проектировалась наша реактивная система, то и про это есть материал. Приятного чтения несуществующей документации.


      1. MiraclePtr
        22.12.2023 13:51

        А сколько весит и как тормозит этот Skype -- вы знаете

        MS Teams они перевели на Webview2, и после этого он прям очень резко похудел (теперь не тащится ещё один целый браузер, а используется системный компонент). Подозреваю, что со скайпом это или уже случилось, или очень скоро случится.


      1. M_AJ
        22.12.2023 13:51

        Не высока ли цена? 

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


        1. arielf
          22.12.2023 13:51

          Хорошие новости в том, что скоро железо упрётся в физические ограничения. И писать такие жирные, как Бетельгейзе, программы станет невозможно. И вот в это время программистов вновь жизнь заставит вспомнить алгоритмы и нормальные языки, и маленькие эффективные программы вновь вернутся. Наступит эпоха Ренессанса в программировании.


          1. Wan-Derer
            22.12.2023 13:51

            Упрётся оно ещё очень и очень не скоро. Так как есть горизонтальное масштабирование: всегда можно (и нужно, хотя бы для повышения надёжности) поставить больше серверов. А чем больше закупается серверов, тем дешевле они стоят, а значит, можно купить ещё больше :)


      1. summ
        22.12.2023 13:51

        Так там еще и ненужная графика для не твоего экрана, к примеру у нас экран hdpi, а в приложении графика для xhdpi и xxhdpi - глупо? глупо


      1. nkrrr
        22.12.2023 13:51

        да брось причем здесь фреймворки у тебя на простеньком приложении шквал метрики навешен


    1. dyadyaSerezha
      22.12.2023 13:51

      Ну и где теперь этот Скайп? Правильно, в ... гусары молчать!


      1. MiraclePtr
        22.12.2023 13:51

        Он реинкарнировался в виде MS Teams и очень много где используется в корпоративной среде.


        1. dyadyaSerezha
          22.12.2023 13:51

          То есть, просто переименовали? Не знал. Но именно что в корпоративной среде - если всё подсажено на MS, то и тут выбор очевидный. Но это не говорит о функциональных преимуществах Teams.


          1. MiraclePtr
            22.12.2023 13:51

            Я им вынужден пользоваться на работе (вся компания на нем), и могу сказать, что за последние годы он стал тормозить гораздо меньше и работает в целом нормально. Чаты работают, группы работают, обмен файлами работает, шаринг экрана работает, аудиозвонки работают, видеозвонки работают, интеграция с другими сервисами экосистемы (Outlook, OneDrive, Office) работает. Разве что бесит херня с неотключаемой комбинацией клавиш, но к этому уже привыкли.


            1. SergioT4
              22.12.2023 13:51

              У нас им тоже пользуются и в принципе всё ок. Единственное что мне не нравиться, очень бедные возможности для реализации плагинов.

              Было несколько идей, но не получилось реализовать из-за огранчений. Например фильтр для входящих, чтобы всякие "спасибо" не вызывали нотификацию.

              Или например на "привет" или "есть вопрос", не было нотификации и автомат отвечал "привет, говори"


            1. ookami_kb
              22.12.2023 13:51

              за последние годы он стал тормозить гораздо меньше и работает в целом нормально

              Ничего, это пофиксили. Сейчас на смену Teams Classic идет новый Microsoft Teams, так там сломали даже то, что в старом работало (камера регулярно отваливается, шаринг десктопа так и не завелся у меня). Тормозит меньше, да, видимо потому, что ничего толком не работает.


              1. MiraclePtr
                22.12.2023 13:51

                Сейчас на смену Teams Classic идет новый Microsoft Teams

                Так я про него и говорил


            1. Ares_ekb
              22.12.2023 13:51

              Если Teams открыт и на компе, и на телефоне, то уведомления о новых сообщениях всегда приходят на телефон, даже если уже прочитаны на компе. Это выглядит совершенно базовой функциональностью, в телеграме почему-то работает. Чтобы включить эти уведомления тоже понадобились дополнительные настройки на телефоне, хотя в телеграме всё работало из коробки. Это на столько раздражает, что я отключил звук уведомлений на телефоне и вообще хочу удалить это приложение. С одной стороны, это плюс, потому что после удаления мобильного Teams станет только лучше. Но с другой стороны удивительно как можно сделать на столько раздражающее приложение... Может я единственный, человек, кто установил Teams и на комп, и на телефон? В моём рейтинге самых плохих приложений Skype и Teams делят первое место.

              После звонка не отключается микрофон - это видно по значку микрофона в области уведомлений. Немного напрягает.

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

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

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

              При первом запуске часто не видны чаты, приходится перезапускать.

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

              Мобильное приложение почему-то занимает в 3 раза больше, чем телеграм.

              В целом работает ощутимо медленнее, чем телеграм.

              Поиск в чатах и прокрутка - это какая-то жесть, всё перескакивает. Хотя, проверил сейчас, вроде стало нормально, ура! Ещё недавно этим было невозможно пользоваться.


              1. onepumpum
                22.12.2023 13:51

                В моём рейтинге самых плохих приложений Skype и Teams делят первое место.

                Ох, видели бы вы Slack. Опустим нереальное количество визуальных багов, два месяца назад они релизнули фичу от невероятного гения, суть которой в отображении сообщений от muted каналов в счётчике уведомлений приложения (при тегах тебя или через группы по типу @channel@here). Slack, инструмент для работы, а они спамят мусором в уведомления... Я просто не могу представить как такое г**но могло пройти путь от идеи до релиза в прод. Через месяц откатили или пофиксили это убожество.


            1. Wan-Derer
              22.12.2023 13:51

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


      1. xsepsisx
        22.12.2023 13:51

        Там же, где все клиенты "аськи", львиная доля UI которых, к слову, была написана на чём-то нативном. Просто арсенал средств коммуникаций стал шире. Корпоративный же сектор съели Zoom и Slack. Последний написан с использованием... Ну, вы поняли меня.


    1. GothicJS
      22.12.2023 13:51

      И да, javascript - ужасный язык

      А с точки зрения джаваскрипта ужасный язык какой то другой. Эталонный язык для вас какой?


  1. i360u
    22.12.2023 13:51

    Кто эту ерунду плюсует? Какое-то старперское нытье от мимокрокодила. JS - прекрасный язык: производительный, выразительный и имеющий богатейшую, на сегодняшний момент, экосистему. Веб-платформа, в своей эволюции, очень похорошела за последнее время и это самая свободная и независимая платформа на текущий момент. Да, мусора тоже много накопилось, но кто вас заставляет в нем копаться, если вы способны его отличить от действительно полезных вещей? А если не способны, то да, конечно, все плохо... Для вас.


    1. flancer
      22.12.2023 13:51

      Абсолютно согласен. JavaScript очень далеко ушёл от того, чем он был изначально. Да и браузеры теперь предоставляют гораздо больше возможностей (workers, caches, IDB, web sockets, ...). Эволюция веб-приложений сама за себя говорит, что это очень сильно популярная область в IT. Пока некоторые другие области отмирают, эта эволюционирует. Сейчас каждый не начинающий веб-разработчик может себе свой собственный скайп запилить на Web RTC. А там есть ещё куча других интересных возможностей.

      Лично я сижу в веб-разработке около 25 лет, и я могу сказать, что веб-разработка за это время стала гораздо лучше. Гораздо. Автор оригинала Andrew Wulf просидел в веб-разработке 12 лет, причём последние 10 ей не занимался, а теперь говорит, что там всё плохо? Ну это примерно как 12 лет поездить на дизельных автомобилях, потом 10 лет не ездить вообще, а потом заявить "Говно эти ваши электромобили - непонятно, куда соляру заливать!"

      И мы на серьёзных щах это комментируем...


    1. VasiliyMakogon
      22.12.2023 13:51

      JS - убогий, отвратительный язык, созданный на коленке. Достаточно одного примера, что бы понять, что это - незаслуженно долго существующее дерьмо:

      console.log([] == ![]); // true


      1. nin-jin
        22.12.2023 13:51

        Такой себе пример. У него есть куда более существенные проблемы: отсутствие файберов, стат типизации, макросов, неконсистентная стандартная библиотека, и тд


  1. Obormottt
    22.12.2023 13:51

    Воодааа! )


  1. c_kotik
    22.12.2023 13:51

    Ну да ну да. Где мой любимый VGA-монитор! Тёплая шариковая мышка! Проклятые Java-скриптизеры все похоронили...


  1. themen2
    22.12.2023 13:51

    Мне кажется проблема в том, что браузеры уже стати по-сути как ОС - выполняют кучу функций : и сайты и видео и приложения итд итп.

    Раньше веб был для простых гипертекстовых документов. Он для этого и создавался. Если хочешь приложение - так делай десктоп приложение, не надо его в браузер пихать! Но нет, подавай теперь приложения и в браузере. Вот поэтому так все сложно и стало и конца и края этому он видно....

    А ещё все эти вебасембли, эмуляция файловой системы, стораджа, веб воркеры. Да это же ОС уже по сути))


    1. ReadOnlySadUser
      22.12.2023 13:51

      Это настолько ОС, что так-то уже хромбуки придумали)


  1. Konstantin_Loginovskikh
    22.12.2023 13:51

    Кажется, автор забыл упомянуть, насколько сложным и объемным является производство мобильных приложений, где он в данный момент трудится


  1. sogarkov
    22.12.2023 13:51

    Мне кажется вы опоздали лет на 5 с данной позицией. По факту сейчас в топе идут вью и реакт в некст инкарнации, от ангуляра где возможно стараются отказываться в пользу некста, иногда мелькает свелте. И это всё, гонка практически закончилась. На бэке остался в топе экспресс и его инкарнация нест. Разработка движется в сторону типизации, пакетных монорепо (привет турборепо) и серверлес для бэка.


    1. themen2
      22.12.2023 13:51

      Почему кстати от ангуляра отказываются? Где фатальный недостаток? Ведь этот фреймворк предлагает сразу все из коробки, а с реактом и др., как понимаю, надо самому стек собирать


      1. SergioT4
        22.12.2023 13:51

        Отказываются кто поделками занимается, слишком сложно для них, в энтерпрайзе всё ок


  1. eugrus
    22.12.2023 13:51

    https://youtu.be/Uo3cL4nrGOk


    1. zergon321
      22.12.2023 13:51


      1. ef_end_y
        22.12.2023 13:51

        Потому что jQuery это как раз то, что осиливает бекендер т.к не надо его учить, достаточно уметь гуглить


        1. Vitimbo
          22.12.2023 13:51

          Так его селекторы от обычного жс отличаются только синтаксисом, можно и без него обойтись.


  1. Spaceoddity
    22.12.2023 13:51

    Т.е. когда 12 лет назад помирал ActionScript (Flash) (целая отрасль похоронившая под своими завалами кучи студий) - это нормально, это интенсивный путь развития. А когда всё более-менее наконец устаканилось - "Шеф, всё пропало!"(с)


    1. zergon321
      22.12.2023 13:51

      Ничто не вечно. В том числе и то, что имеется сейчас


  1. firehacker
    22.12.2023 13:51

    Такие статьи на Хабре только переводить и можно. Ведь переводчику не сольют карму за то, что перевёл, что король голый. А вот скажи, что король голый, от своего имени — можно и без головы остаться.


  1. rubinstein
    22.12.2023 13:51

    Javascript — ужасный язык

    Дальше читать что-то уже не хочется...


  1. sergey-gornostaev
    22.12.2023 13:51

    Мне нравится, как автор приравнял web-разработку фронтенду, а потом объявил её плохой из-за огромного количества фронтенд-фреймворков и быстрых изменений. Web-разработчики, которые последние 15 лет пишут бэкенд на Spring'е, смотрят на эту статью с недоумением.


  1. muxa_ru
    22.12.2023 13:51

    Самое забавное в веб-разработке, то что и сейчас, и 15-25 лет назад эти самые веб-разработчики озвучивают одну и ту же идею "я тут освоил кое-что, а если у пользователя это не отображается, то пусть поставит тот же браузер что у меня".

    Ещё любили верстать под широкие мониторы выданные на работе, а пользователь пусть себе монитор получше купит.

    В подвалах веб-сайтов вешали кнопки 88x32 о том, в каком браузере оучше всего смотреть их творение.

    Ну, ок, нетскейповкие layer вроде вымерли и все живём в майкрософтовском DOM.

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


  1. NibiruanChild
    22.12.2023 13:51

    На сколько вижу, сейчас фронтендеры чаще всего знают только один из 3 популярных фреймворков и строят на нем одном карьеру, зарабатывают 200-400 и в ус не дуют. Просто т то что раньше было веб-разработкой сначала поделилась на фронт и бек, а теперь на разработчик под конкретный язык\фреймворк. Просто при поиске работы ищут проекты в которых тот же фреймворк.


  1. Wan-Derer
    22.12.2023 13:51

    Javascript — ужасный язык, никогда не задумывавшийся для чего-то подобного

    А для чего он задумывался?

    Сегодня я даже не могу представить, из какого количества вариантов нужно выбирать

    Зачем выбирать? Просто пили на том что знаешь.

    специализация на одной технологии может усложнить карьеру

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

    для их создания не требовалось почти ничего, кроме текстового редактора

    Или тогда просто нет толком ничего другого не было?

    Какой же морокой должно быть всё это. Зато есть гарантии работы!

    Зато есть гарантия что твоё приложение ( достаточно сложное чтобы удовлетворить потребителя) может быть запилено в разумные сроки.

    Когда я начинал в 80-х, программирование было гораздо более прямолинейным

    Ага-ага, а чтобы обратиться к кому-нибудь по сети, требовалось реализовать сетевой протокол, инфу о котором надо было искать на бумажных носителях хрен знает где. А на следующем проекте надо было раелизовывать новый протокол, не совместимый с предыдущим... Не жизнь, а сказка!

    Как долго написанное вами сегодня приложение проживёт с тем же исходным кодом и в том же фреймворке, который вы выбрали изначально?

    До тех пор пока будет актуально. Если будет сверх-актуальным, лет через 15 его полностью перепишут на тех фреймворках, которые будут модными тогда.

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

    Хорошо когда человеку есть чем заняться :)


  1. doox911
    22.12.2023 13:51

    Я один не вижу статью? Это уже не первая статья только с заголовком..


    1. nin-jin
      22.12.2023 13:51

      Это на Хабре такая талантливая "оптимизация" после моего наброса. Когда вы открываете комментарии - статья хоть и грузится, но скрывается. Нужно кликнуть по заголовку, чтобы открылась статья.


      1. doox911
        22.12.2023 13:51

        Я уже по другому нашел способ посмотреть, но спасибо. И да, это неприятное поведение.


  1. ALexKud
    22.12.2023 13:51

    Вопрос web разработки достаточно сложный. И причина сложности не только в самой разработке, хотя и это тоже важно, но и в том что разработка это один из этапов жизненного цикла ПО, который включает стадию поддержки после запуска в эксплуатацию, изменения ПО в процессе жизненного цикла ( может поменяться модель бизнеса, технология приложения или его части больше не поддерживатьcя и т д и т п). Та команда которая все это делала может исчезнуть или отсутствовать документация, выбранные технологии в разработке не могут обеспечивать лёгкую доработку и сопровождение, которые требуют высокой квалификации разработчика, которого давно уже нет в команде и тд. В web это достаточно реальный сценарий, судя по тому клубку различных инструментов разработки и развёртывания приложений. Здесь явственно отображается сегодняшняя ситуация в этой области - это модно, за это платят большие деньги те кто заказывает, но что будет лет через 5 или 10 никто об этом не думает. Да и есть ли реальная потребность именно работы через браузер, а не через десктопное приложение с удалённым доступом к бд, допустим, в корпоративном сегменте ? Получается иногда так что для grud приложения нужно разворачивать всю эту бодягу с Web? Наверно нет. Это не оптимально. Это требует больших затрат и ресурсов.


  1. An_Sm_ru
    22.12.2023 13:51

    Прям вспомнил, ностальгия, как создал для расчета, в своей тогда типографии, заказа для печати различных вариантов, от визитки до книжки в твердом переплете.

    А на пейджер приходило сообщение о себестоимости и стоимости для заказчика. (Если что скидку удобно делать)


  1. mazdayka
    22.12.2023 13:51

    "В конечном итоге, оно больше не может запускаться в Macos". Это ни такая уж большая проблема. Можно купить старый компьютер или виртуалку запустить... А автор просто негативщик.


  1. bazil_safronov
    22.12.2023 13:51

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

    2. Хороший специалист, профи в своей стизи, должен приводить аргументы к своим словам. Вы используете очень много слов "могут/ не могут", "раньше / когда-то", я считаю такими словами вы проявляете не компетентность в своей специальности.

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

    4. Вы пишите что выбор фреймворков настолько обширен и это плохо. Дайте мне таблеток пожалуйста, у меня колит уже в груди. (Шучу)

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

    5. Делаю саммари для ребят, которые только хотят вкатиться, и кому действительна интересна фронтенд разработка, не принимайте близко к сердцу, заварите себе чай и покушаете вкусняшки, авторы таких публикаций не понимают о чём сами говорят в том что плохо разбираются, поэтому никого не слушайте и используйте инструменты технологий по назначению.


  1. smokevadim
    22.12.2023 13:51

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


  1. artviz
    22.12.2023 13:51

    Вся эта история с фреймворком задумана для удобства. Все равно код транспилируется обратно в нативный JS. А эти удобства нужны для поставки на конвейер фронтенд разработчиков. Чтобы написать приложение на Vue или React, можно потратить пару недель на чтение документации, и MVP готово. Это создаёт как и хорошие вещи так и плохие. Лично считаю, что самый лучший фреймворк - это TypeScript.
    P.S. Я очень огорчен тем, что современная разработка совсем не заботится о ресурсах системы. При наличии большого количества ресурсов отпадает необходимость в хорошей ужимке приложений, и теперь то, что могло работать быстрее, - не работает, а то, что могло весить меньше, - не весит.


  1. partyzanx
    22.12.2023 13:51

    А я вместо фронтенда попал в UX UI и кайфую) Да и UX UI дизайнер со знанием фронта и всех его технологий очень ценится)


  1. mikryukovsl
    22.12.2023 13:51

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


  1. neverblued
    22.12.2023 13:51

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


    1. themen2
      22.12.2023 13:51

      Десктоп. Qt, wfp