Pull to refresh

Comments 145

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

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

Что же касается качества ПО - мода не причина, а следствие. Маркетинг не следует недооценивать, а он работает в интересах монополий.

Всё стало агильным. И качество не осталось в стороне.

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

По любому из перечисленных параметров ПО девяностых не просто проигрывает, а даже не играют в одной категории с современным ПО. Это ненадежные, небезопасные, уродливые, неудобные, попросту глючные по каждому чиху программы с функционалом на уровне детского сада, с куцыми тулчейнами в своей экосистеме. Ctrl-S в девяностые — это шорткат, который необходимо было нажимать каждые 2-3 минуты, если не хотел тратить свои нервы, но даже постоянное сохранение не гарантировало то, что ты не потеряешь свои данные из-за, того, что к примеру у файловой системы почесался мизинец левой ноги. А про гербарий гонорей, которым угрожала любая пришлая дискета или сеанс работы в интернете, вообще говорить не приходится (про утро 26 апреля 1999 года до сих пор вспоминаю с легкой дрожью).

Сейчас мир ПО намного богаче, безопаснее, гибче и экономичнее, чем ПО прошлого века. Да-да, экономичнее — любое современное ПО позволяет удешевить рабочие процессы просто в разы (а в иных случаях просто в десятки раз) по сравнению с 90-ми.

UFO just landed and posted this here
UFO just landed and posted this here
UFO just landed and posted this here

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

UFO just landed and posted this here
Все очень красиво говорите. Но почему текстовый редактор на процессоре в 100 раз быстрее, стал работать не то что не быстрее, а порой даже медленнее?
И когда я говорю про «быстрее» я имею в виду не MIPSы и вычисления незнамо чего, а отзывчивость интерфейса — ту мелочь, которая как червь, постоянно гложет и сводит с ума.

>отзывчивость интерфейса

Она затачивается не для вас, а для людей, которым на это все равно.

Если мне надо быстро - возьму FAR, надо красиво - Word.

после таких заявлений вспоминается старючий баг idea подобных редакторов, когда давно было известно что всем хороши эти IDE, но что там есть жесткий лаг вводаю Только вот когда только об этом хоть кто-то где упоминал, то сразу все с тапками накидывались что типа у меня все ок, а это у тебя тормознутый комп. И тут и на хабре https://habr.com/ru/post/305158/ и в блоге джетбрейнса https://blog.jetbrains.com/idea/2015/08/experimental-zero-latency-typing-in-intellij-idea-15-eap/


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


P.S. Этот лаг ввода я ощущал очень сильно (особенно в сравнении с обычными редакторами), до того что приходилось джаву менять на ibm-овскую (тогда это имело смысл)

UFO just landed and posted this here

Ну дайте задачу современному погромисту пишущему на модном ЯП написать аналог лексикона и посмотрите сколько это будет жрать места, памяти, как оно будет тормозить и какие зависимости за собой подтягивать :)

Ну, и Lexicon и MultiEdit в своё время тоже были слегка монструозными. Мне даже Volcov Commander выгружать из памяти приходилось. :D

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

UFO just landed and posted this here
UFO just landed and posted this here
UFO just landed and posted this here
UFO just landed and posted this here
UFO just landed and posted this here

Не согласен с вами полностью. Сравнивать не только можно. А нужно. С какой точностью вымерали каждый байт в программах 30-летней давности, программистам сегодня такой тонкий подход и не снился. Да, фреймворки и железки стали лучше. Но. Уродливости в прошлых вещах нет. От слова вообще. Всё то, что вы сегодня используете - создалось благодаря этим 'уродливым' вещам. Оба вояджеры с 1979 года до сих пор летят в космосе с софтом той эпохи. У вас в жизни не получится создать что нибудь похожее. Поэтому немного респекта тем инженерам которые с тем, что у них было - летали в космос, строили атомные станции итд.

Спасибо, я пописал на 8051 и даже решал задачку как урезать программу на 8 байт, что бы влезла в 8К ROM. И еще операции в циклах по табличкам считаешь, сколько тактов уйдет, да. Вот это романтика, вот это эффективное расходование времени.

Спасибо, не нужно вообще никак. Слава богу что ушло.

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

Уродливости в прошлых вещах нет

Да, но уродливость есть, такой код невозможно поддерживать, потому что там столько триков, что даже самый умный супер программист ничего не поймёт, если автор ему не объяснит. А иногда и автор сам не понимает. Я вот смотрю свои программы под 51 контролёр и мотороллу 68000 и ничего не понимаю, а там даже не ассемблер, а Си. Но алгоритмы, которые я использовал и позволяли выверить каждый байт и сэкономить память или ускорить функцию я уже не помню.

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

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

UFO just landed and posted this here
UFO just landed and posted this here
UFO just landed and posted this here

> Но. Уродливости в прошлых вещах нет. От слова вообще. 

Говоря про уродливость я говорил не только про код, но и про UI/UX, который был адов примерно всегда, а в некоторых случаях это вообще принимало какие-то совершенно гротескные формы (достаточно одну скрепку в ворде вспомнить).

>Всё то, что вы сегодня используете - создалось благодаря этим 'уродливым' вещам.

Ну тут вообще нельзя поспорить с этим. Без алхимии не состоялась бы химия, без Манхеттенского проекта — атомная энергетика, без феодализма не было бы современной демократии, и т.д.

>Оба вояджеры с 1979 года до сих пор летят в космосе с софтом той эпохи. 
Оба вояджера имеют отношение к IT-индустрии прикладного ПО 90-х примерно никакое — современная разработка ПО и хардвара для космических аппаратов точно также ведется на высоком уровне, как и в 79-м году, только в сотни раз усложнилось. Но адовы факапы случались и в тех отраслях, например авария Mars Climate Orbiter, крушение Mariner 1 (в забытом 1962!), или известный баг деления на ноль в первых Пентиумах в связке с WinNT, из-за которого в конце девяностых чуть не отправилась к праотцам вся команда новейшего американского крейсера. То есть лучше не стало.

>У вас в жизни не получится создать что нибудь похожее. 

Довод «сперва добейся» — один из самых банальных манипулятивных приемов. Тоньше надо быть.

>немного респекта тем инженерам которые с тем, что у них было - летали в космос, строили атомные станции итд.

А никто и не говорит, что им не нужно респектовать. Я, например, офигеваю от интеллекта Алонзо Черча и Хаскеля Карри, которые построили весь базис функционального программирования в прямом смысле на кончике пера, буквально строя устройство будущих компьютеров в собственном воображении. Я офигеваю от Томпсона, Кернигана и Ритчи, которые при скуднейших аппаратных возможностей того времени едва ли не от скуки создали не только самый успешный язык программирования, но и один лучший концепт операционной истории, я офигеваю от смелости и упорства известного финского студента и его многочисленных коллег, которые в те самые 90-е построил самую успешную операционную систему за всю историю индустрии буквально на коленке. Именно они создавали основу для современного расцвета, конечно же. Тем не менее это все не делает ПО тридцатилетней давности лучше и качественнее — если бы Photoshop 4.0 идеален, то кому были бы нужны новые версии, все ж и так зашибись?

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

В принципе я согласен со всеми вашими рассуждениями. Но мне кажется, что разговор должен быть не о том, лучше ли последняя версия того-же photoshop(a) чем первая или нет. Конечно так ставить вопрос можно и об этом дискутировать тоже можно, но по мне- это ни о чем. Я думал мы о подходах разговариваем, об инженерном искусстве, о преодолении препятствий.

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

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

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

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

Новые фотошопы как и офисы и виндоусы и т д нужны чтобы продавать, это очевидно.

Такое сравнение некорректно. Сравните автомобили 20-летней давности и современные. Если отбросить маркетинговую шелуху, то 20-летние окажутся не хуже, а в некотором отношении лучше современных, особенно в плане надёжности. В нулевые (до повышения пошлин) ввоз 5-летних подержанных машин процветал, они часто служили еще столько же, если не больше. А сейчас 5-летние машины, зачастую - развалины.

Так и со сравнением ПО, сравните актуальное, скажем, в 2011 году, и современное.

Поездил и на 25+, и на современном. Разница огромна, начиная с ассистентов, заканчивая комфортом. По ресурсу, что те, что эти проезжают свои 200-300 тысяч без проблем. Мне лично мотор милионник и условные ручные стеклоподъемники не так важны, как collision prevention, панорама, нормальный свет и адаптивный круиз-контроль не на премиум-классе.

Мне лично мотор милионник и условные ручные стеклоподъемники не так важны, как collision prevention,

  1. Это самое collision prevention как Вам поможет, если долбодятел на A107 пойдет на обгон фуры и Вы окажетесь на его пути? Или это какой-то другой prevention?

  2. А мне нужен мотор-миллионник, и 25 лет назад его (с задатками на миллион) встретить было проще и дешевле, чем сейчас. А сейчас даже в понтовых тачках с шестизначной ценой встречается вот такая диверсия
    https://nikolagrek.livejournal.com/3405.html
    что хочется к СЕО наведаться и челюсть подравнять за все хорошее?
    Или в Audi за похожее съездить в Ингольштадт и вспомнить с их гешефтфюрера за деда под Оршей?
    http://nikolagrek.livejournal.com/14976.html

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

  2. А мне не нужен, т.к. свои 300 тысяч за 10 лет машина отъездит вообще без проблем, а через 500 морально устареет.

    И, если любителей и ценителей классики 60-70-80 ещё можно как-то понять, особенно в контексте второй/третьей машины. То сравнивать гольф-класс конца 90х с сегодняшним и не видеть разницы -- это уже попахивает троллингом. Плюс, давайте без ошибок выжившего и рассказов про миллион на родном салоне у условного гольфа, в котором только масло меняли. Естественно, при наличии средств. Если на руках 1500 евро и нужны "колёса" то обсуждать нечего, вариантов нет.

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

Открывать какие-то ЖЖ, особенно после "дедов", "Орши" и т.п. не буду -- это вам на пикабу/d3 аргументация.

UFO just landed and posted this here

Где вы видели автострады, на которых вам придётся обгонять кого бы то ни было вообще по встречке o_0? А при опережении и collision control, и контроль слепых зон и все остальное ещё как пригодятся. Да и круиз простаивать не будет.

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

Адаптивный круиз отлично "толкается" в пробках в городе.

Какие час за часом, я тоже не понимаю.

Мне около 40 минут ехать до работы из них 30 минут с ограничением 80, в итоге чуть меньше часа в день без педалей машина сама спокойно едет в потоке, только подруливать иногда нужно. И это не Тесла, а простой универсал пятилетний.

Немного расшифровки за автора:

1. А107 - вот такая дорога под Москвой: https://yandex.ru/maps/?l=stv%2Csta&ll=37.565556%2C56.194713&panorama[direction]=85.407617%2C0.716106&panorama[full]=true&panorama[point]=37.563788%2C56.196818&panorama[span]=114.355280%2C60.000000&utm_source=main_stripe_big&z=14.4
И автор, скорее всего имел в виду случай, когда сам он едет, ничего не нарушая, а на его полосу вылетел несущийся на обгон фур дебил. Как ему поможет в таком случае collision prevention?

2. Я таки сходил по его ссылкам в ЖЖ. И вот что там вижу:
- Астон Мартин DB9 - какую добавленную функциональность (особенно интересно если она связанна с безопасностью вождения) несет блок ЭБУ, вынесенный из сухого моторного отсека в колесную нишу, где его и его незащищенные(!) провода поливает вода с песком с дороги + силовые элементы алюминиевые между собой скреплены либо болтами, либо склеены. Как это назвать иначе, как не запланированную диверсию?
- Audi A4: запихивание блока комфорта под ковровое покрытие салона в ногах у водителя. Это то самое место, куда ставятся ноги в снегу и грязи. Догадайтесь сами, что произойдет с электроникой, регулярно принимающей водные процедуры? Какую добавленную фичу обеспечивает это компоновочное решение? Раньше этот блок находился в гораздо более сухом месте.
- Porsche Cayenne: подвесных подшипников для карданного вала официально нет. Кардан меняется в сборе. Т.е. порвалась манжета ценой 1000р - все, на выброс идет узел ценой 80000р. А чо, вледелец кайена его не на последние брал, чай - еще заплатит. Плюс еще патрубки охлаждения из тонкого пластика вместо хотя бы алюминия, вследствие чего рассыпаются аккурат года через 4 после начала эксплуатации. Что характерно, для этих патрубков есть вполне подходящая алюминиевая замена, но какого МПХ инженеры+маркетолухи Порша не поставили их сразу вместо пластикового говна?

Список "улучшений" можно продолжить...

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

Поднял вам карму.
Но с вами я не согласен. Надежность машин упала. Панорамный вид это дело вкуса. А у знакомого мерс сломался 2018 г.в.(пробег маленький) Сломался какой-то там датчик в дизельном движке. Сломанный мерседес, даже если у него панорамная крыша, хуже чем тойота 10 летней давности которая до северного полюса доедет. И таких примеров у меня много. Копроэкономика одним словом.

Мой круг общения демонстрирует обратное. Тойота 2008 года стуканула на пробеге в 300, а до этого форд 2005 на пробеге до ста тысяч "ушёл вразнос", а более современные (2015+) дизеля на том же vw/skoda/вольво ездят и проблем не вызывают.

Я последние пару лет с умилением наблюдаю за своим отцом, который наконец-то сменил свой старый любимый Pajero Sport 98-го сначала на Outlander 16-го, а последние пару лет вообще на Chevrolet Bolt. Его постоянную реакцию можно описать примерно так: смачный фейспалм и восклицание «господи, почему я столько лет мучался, тратя деньги на эту старую колымагу!».

А где Bolt заряжается? В МО с зарядками не густо.

Ну, у нас проблем вроде нет, в такие края, где нет заправок, он не ездит, дом частный и у него зарядка стоит прям в гараже, а когда ездил куда-то далеко, в Карпаты например — брал аутлендер (но сказал — зря, зарядки и там были).

UFO just landed and posted this here

Блин, я на такси больше трачу :(

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

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

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

А вот качество ПО оставляет желать лучшего с точки зрения производительности. Мощность железа выросла, но ПО по прежнему тормозит. А иногда тормозит даже сильнее, чем было раньше. И свежие версии, без добавления существенных новшеств, требуют все больше ресурсов. Как пример возьмем самой, наверное, популярный пакет MS Office. Какие существенные новшества по части оформления документов появились со времен версии office 2003 до office 2019, чтобы оправдать потерю в производительности. Одно и то же устройство на intel atom с первым работает нормально, а со вторым тормозит.
И это я еще не вспоминаю интернет-магазин одного сотового оператора, который съедает два ядра core i3. Атом там вообще захлебывается =).

>Вы возмущаетесь хаяньем качества ПО, но пишете примеры из области аппаратного обеспечения.
Проблемы стабильности Win95 и его семейства лежало совершенно не в области аппаратного обеспечения, как и проблемы надежности файловых систем того времени. Основные проблемы лежали не в этом (могу навскидку вспомнить одну такую явную — блокирование системы при обращении к флоппи-диску), а все-таки в undefined behaviour, щедро рассыпанных по коду «дефолтной» операционной системы и ПО под нее.

Может вы помните эту историю про Simcity? Одна из моих любимых!

Windows 95? Без проблем. Симпатичный новый 32-х битный API, но все еще запускается старое 16-ти битное программное обеспечение. Microsoft преследовал эту цель, потратив целую кучу денег на тестирование всего старого софта под Windows 95, который они только смогли найти. Джон Росс (Jon Ross), который писал оригинальную версию SimCity для Windows 3.x, сказал мне, что он случайно оставил ошибку в SimCity — он читал память, которую только что освободил. Ага. Это хорошо работало на Windows 3.x, потому что память никогда никуда не девалась. Вот удивительная вещь: на бета версиях Windows 95 SimCity не работал при тестировании. В Microsoft отследили ошибку и добавили специальный код к Windows 95, который искал SimCity. Если обнаруживался запущенный SimCity, то распределитель памяти запускался в специальном режиме, в котором память освобождалась не сразу. Вот такая вот навязчивая идея обратной совместимости заставила людей захотеть перейти на Windows 95.

Емним, этот хак «поддерживался» Майками аж до Win7 включительно!
А целый пласт историй, связанных с недокументированным поведением команды PRINT.COM помните?

 >Как пример возьмем самой, наверное, популярный пакет MS Office. Какие существенные новшества по части оформления документов появились со времен версии office 2003 до office 2019

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

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

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

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

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


Хотя log4j все равно иногда случается..

Си и производные языки дают эффективность и самодостаточность программы, но платить за это надо объемом кода, необходимостью компиляции (+ нет кроссплатформенности готового кода) и так далее.

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

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

UFO just landed and posted this here

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

Программы не становятся хуже.

То, о чем раньше только мечтали стало реальным. То что раньше тормозило - сейчас работает быстро. Но замечают тормоза новых фич, да :)

Видимо, память о зависшей на презентации винде или багах на миллионы из-за пропущенных запятых успешно канула в лету. Все эти виннюки, con/con баги и эксплоит kaht2 для XP без сервиспака, видимо, являются знаками недостижимого качества. Тот кто говорит про страшно забалованные игры явно никогда не играл в Даггерфолл.

Зато сейчас тормозит Teams, ужос, индустрия деградировала.

Но замечают тормоза новых фич, да :)
Это что ж за новые фичи добавились в калькулятор Win11, что он теперь грузится 5 секунд?
Видимо, память о зависшей на презентации винде или багах на миллионы из-за пропущенных запятых успешно канула в лету.
Когда старая винда зависала на презентации, для продолжения работы нужно было всего лишь перезагрузиться. А вот когда вам срочно нужно работать, а на включенном ноуте высвечивается надпись «подождите, Windows устанавливает обновления, не выключайте компьютер», то тут уже только ждать, пока оно закончит. Бывает, что и по полтора часа. Вот что вообще можно делать столько времени? Да полная установка десятки с нуля проходит втрое быстрее! Оно там что, ядро из исходников собирает, что ли?
Я в целом с вами согласен. Но полтора часа установка обновлений? У меня около часа было обновление с десятки на 11. А обычные апдейты заканчиваются всегда быстрее чем я схожу покурить. При том, что у меня не самый мощный ноут.
UFO just landed and posted this here

Оно там что, ядро из исходников собирает, что ли?

Кстати может быть может быть)

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

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

Что значит "даже" :)? Разработчики опенсорса делают так, как считают нужным, там над ними не стоят продукт оунеры и дизайнеры интерфейсов.

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

Ещё кажется, что умышленно сохраняется ситуация, когда актуальный софт на не самом последнем железе работает медленно. Помню, Windows NT 4.0 на AMD 486 DX2-80 тормозила конкретно, а на Pentium работала сильно шустрее. Хотя из перспективы сегодняшнего дня различия между этими процессорами не кажутся чем-то существенным. И таких примеров очень много, если подумать.

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

Что-то столько букв написано при элементарной причине: некачественный софт дешевле в разработке. Остальное лишь следствие. Да, для такого софта хорошо продавать более мощное железо. Но во времена Doom/Quake умудрялись при жесточайшей оптимизации упираться в производительность и так. А сейчас CPU/GPU по сути упёрлись в потолок, растим уже TDP, так как технологический ресурс практически исчерпан. Чтобы убедиться, достаточно посмотреть на активно растущий TDP современного железа, особенно новых GPU. Но качественный софт разрабатывать за время разгона продаж уже разучились. А сейчас уже пришли к новым проблемам: cофта надо много, разработчиков мало. Всё чаще берут без разбора хороший или плохой, лишь бы умел что-то там кодить. Ну тут уже без сомнений качество софта как средняя температура по больнице будет только падать.

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

И да, и нет. Да, ведь гораздо лучше, когда одно и то же можно продать много раз. Как пример по сути одинаковые смартфоны и автомобили. Нет, искусственно заставляют бежать за новым. С другой стороны, если бы софт был качественный за то же время и деньги, от этого бы никто отказываться не стал. Причину сменить придумали бы. Тем же принудительным ухудшением. Как запрограммированное устаревание. Вот только для машин это надо наоборот вкладывать деньги в технологии, чтобы подшипник износился примерно сразу после окончания гарантийного срока. А с ПО особо и делать ничего не надо, надо просто задёшево разрабатывать. Плохо само получится. Ну если только какой-нибудь фанат не испортит план, и не разработает качественный софт за еду, в чём я сильно сомневаюсь.

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

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

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

Наверно потому что за 20 компьютеры стали в овердохрена раз мощнее, а софт стал на порядок тормознее при схожем функционале, не? И да, отзывчивость - это важная метрика. Жизнь у вас одна. Тратить драгоценное время на ожидание запуска банального калькулятора из-за того, что он запилен на модном фреймворке модными погромистами талдычащими "Софт решает задачи пользователей? Решает. Прибыль его авторам приносит? Приносит " приходится юзеру

Не. Разве что вы калькуляторами меряете. Сравните аську и телеграм, например.

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

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

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

З.Ы. в каждой шутке, есть доля шутки.

Альтернатив? Каких таких альтернатив? Почти любой актуальный софт - тормозное хрючево наспех слепленное из такого же тормозного хрючева называемого фреймворками.

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

Также отличный пример годного софта сдохшего от ожирения из-за безудержного обрастания фишечками и говнокодом - ACDSee и Nero.

И всё-таки не нужно делить на чёрное и белое. Я понимаю, что как и большинство современных говнокодеров, вы ни во что не ставите скорость работы и отзывчивость, однако это не менее важный фактор наряду с обилием жира под названием "фишечки". К сожалению, вам платят за <strike>количество строк кода</strike>фичи и скорость выхода релиза, а скорость, оптимизация, отзывчивость и отсутствие багов это все потом, когда-нибудь. Возможно в другой жизни.

Вы что-то сказать хотели?

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

Кстати, ACDSEE и Nero ещё живы или померли? Если померли, то туда им и дорога, не?

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

Не ерничайте. Тем же nginx ползуется куча народу, и написан он человеком совсем другого уровня профессионализма. А продукцией "говнокодеров типа вас" завалены 99% мобильных сторов и каждый второй сайт в интернетике.
Никакого заговора, только бизнес, выше вам весьма обстоятельно и раскрыто ответил mrzar https://habr.com/ru/post/597217/comments/#comment_23858013

>Кстати, ACDSEE и Nero ещё живы или померли? Если померли, то туда им и дорога, не?
Не знаю, погуглите.

Как жаль, что нджинкс ни разу не прикладной софт!

А так-то можно ещё и кафку вспомнить, которая вообще на скале написана. Могут же и без святой сишки годноту делать, если захотят :)

Ну вот видите, сами мои слова и подверждаете. Могут если захотят, а про святую сишку вам никто и не говорил :)

Софт то решает. Да вот потребная минимальная сложность этого софта сильно выросла за последние годы, и продолжает расти. И, очевидно, приводит к удорожанию разработки софта. Вы сейчас с гораздо меньшей вероятностью можете себе позволить сваять софт на коленке, потому что минимальное количество необходимых фич за последнее время сильно выросло. Такое есть, но скорее как исключение из правил. Вы просто не сможете конкурировать, если этих фич не будет. Пользователи уже их попробовали, и на меньшее не согласны. Времена, когда все глядели с восхищением на чудо отправленного email'а давно прошли. А чтобы эти фичи были в должном количестве, вам уже придётся вовлекать больше людей и технологий, спецов более высокого уровня. Всё это стоит денег, а также времени разработки. Извернуться можно конечно, но всё сложнее и сложнее.

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

Я думаю, что психологический комфорт — тоже важная метрика (только как мерять не очень понятно =) )

Софт, который "бесит", в итоге утомляет и снижает работоспособность. Вносит свою лепту в "выгорание". И тем самым снижает прибыльность, т.к. зарплата не меняется, а сотрудник делает меньше.

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

А давайте всё-таки подумаем, куда теряются драгоценные такты?

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

  2. Для той же безопасности появилось несколько новых VM/Runtime: Java, C#, Go. Они и ускоряют разработку, и добавляют нужные проверки. Хотя бы устраняя Use-after-free.

  3. Продолжая тему VM и Runtime надо вспомнить, что там есть Garbage Collector, который может тормознуть ПО в любой момент. Ну и вообще, менеджмент памяти совершенно другой.

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

  5. Конечно, наш UI изменился очень сильно. Когда-то мы довольствовались bitmap-шрифтами, а теперь у нас везде векторные шрифты со сглаживанием. (Которое, впрочем, работает как говно на всех ОС.) Но кроме этого у нас на порядок больше площадь всех слоёв и картинок, с которыми тем же браузерам надо работать.

Я, конечно, не спорю с тем, что всё реально всрато сделано. Тот же Фотошоп как грузился 10-15 секунд на втором пентиуме, так и сейчас на среднем райзене грузится. И приложение СМС на Андроиде в 2021-ом на флагмане Sony грузится те же 2 секунды, что в 2010-ом на дешёвеньком Acer'е.

Одна надежда на Rust, если честно. С его compile-time валидацией, с менеджментом памяти без GC, да и системой сборки, достойной 21-го века.

Я вот сомневаюсь, что "тот же" (в смысле та же версия) фотошоп будет грузиться 10 секунд на последнем райзене :) Почему бы не использовать его вместо самой последней версии?

Да, вы правы, это не тот же фотошоп, а тот же "продукт", но новых версий.

Честно говоря даже не знаю. Есть надежда, что в новых нет тех старых багов с неожиданными вылетами.

Про фотошоп засомневался.
Проверил у себя. 3±0.5 с., PS СС 20, (i7-3770, 3.4 ГГц, 24ГБ), компу лет 8. (Win 7)
Недавно переехал на SSD, но и на HDD не было больших тормозов.

У меня просто Photoshop 2020 версия 21.0.2, грузится 15 секунд всегда.

И это Ryzen 7 3700X, NVMe SSD через PCIe 4.0, 32Гб RAM и т.п.

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

Процессоры толком не знаю как сравнить, всех этих NVMe у меня нет даже на плате.

Capture One даже всего 8 секунд грузится.

Поставил 2022, версия 23.0.0. Грузится за 6 секунд. При этом ни процессор, ни диск, ни видеокарта, почти не используются.

  1. Телеметрия и прочая слежка.

Кстати, телеметрия может быть и полезной. Иногда, если разработчики нормальные.

Как часто и как подробно вы заполняете форму фидбэка? Ну или хотя бы звёздочки ставите в сторе?

И вправду, откуда же такая потребность в сборе статистики...

  1. Антивирусы и прочая защиты от ОС.
    В windows XP все можно было отключить и оставить самый минимум, в 10ке это уже намного сложнее, и при скачивании файла сервис Antimalware отлично съедает половину процессора.

UFO just landed and posted this here

Признаки заговора как то сомнительны.

Мне кажется, что это сочетание нескольких объективных факторов - абстрагирование и развитие инструментов, возросшие мощности и рыночек.

И работают они все вместе.

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

Нужно быстро, программисты дорогие, софт дорогой.

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

Все же до 20 секунд на сайт не доводят.

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

Каждая либа тащит тонну кода, но из нее используется 1% функциональности.

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

И последнее - железо.

Поясню на примере своей области разработки игр.

Основная масса тигры - это ресурсы, текстуры, звуки, описание миров.

Текстуры работают по простому закону - в 2 раза больше детализация - в 4 раза больше размер

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

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

Основные оптимизации все равно нужно делать с текстурами.

И вот этот dependency hell + ресурсы + бесконтрольности и приводят к таким результатам - и пользователи не ропщут, потому что вещи становятся лучше.

Если вам кажется, что мой аргумент про текстуры плохой - iOS 5 весила больше iOS 4 в 2 раза прежде всего из-за шрифтов и эмодзи, на Хабре статья была с разбором файлов

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

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

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

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

Но не уверен, что это заговор и монополисты.

Если бы дела обстояли так - на рынок приходили бы новички и выигрывали бы за счёт подобных аспектов качества.

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

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

Если бы это было важно - мы бы видели такие продукты во всех сферах.

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

Видимо ответ состоит в том, что нельзя взять мс Ворд 95 и расширить его функциональность на 100%, затратив 100% ресурсов. Нужно потратить 400%, так или иначе.

Переписывать - зачем? Ты не получишь плюсы, только минусы. Тебе придется заплатить 100%, чтобы потом заплатить ещё 400% за развитие.

Но у меня есть и хорошая новость - с ухудшением ситуации мы увидим и примеры попыток исправления.

Новые системы от тех же мейджоров, которые будут продаваться как "смотрите, новая windows не только содержит поддержку AR, но и сильно оптимизирована - из нее удалены старые компоненты и сборка стала на 60% меньше"

Правда с этим попробуют продать ещё что нибудь, например приложения только через windows store

Если бы дела обстояли так — на рынок приходили бы новички и выигрывали бы за счёт подобных аспектов качества.

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

Один я вижу противоречащие параграфы?


"Заговор монополий" == неограниченные ресурсы для использования любых "первопричин" рыночных преимуществ.

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

Прошу обратить внимание, что телеграм — редкое исключение.
Исключения не отменяют правил.


Заметим, что скайп тоже таким исключением был (да давно сплыл, известно как). Ну… и я всё же допускаю вероятность, что противостояние Дурова и РКН — инсценировка.


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

Во первых — миру нужно много софта
А действительно ли софта нужно так много? По моим наблюдениям, рынок софта наоборот переживает кризис перепроизводства. Особенно хорошо это на примере игр видно: качественных игрушек больше не стало, зато теперь они похоронены на дне океана дерьма, и просто отыскать их — та ещё задача.
То же самое и с приложениями. Нам и вправду нужно 20 тысяч фонариков под Android, из которых 19900 — полное тормознутое дерьмо, полное рекламы и требующее все разрешения вплоть от отправки SMS?
Для пользователя было бы здорово, если бы порог входа для программистов повысился на порядки. Почему к примеру под консоли шлака намного меньше, а хорошо оптимизированных игр больше? А потому что тут порог входа достаточно высокий, чтобы отмести всех тех, кто только-только закончил трёхмесячные курсы «войти в айти» и пилит свой первый тормознутый клон 2048 на Unity.

Ну, собственно, а почему нет-то? Софт не потребляет место на складе и тонны нефти, пусть себе делается.

Опять же, кто-то же все это скачивает

Только порог входа на консоли ограничивается не качеством игры (или, опосредственно, программистов), а деньгами студии.

Cyberpunk'у привет.

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

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

Если бы мы посадили конструкторское бюро для создания идеала - не факт, что оно справилось бы лучше. А запланированное создание полезных продуктов - вообще фантастика, как показал СССР, которому в голову не приходило, что многие вещи имеют ценность.


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

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

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

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

Мне кажется, трагедия жизни цивилизации в том, что нам как виду нужно "всё сразу и сейчас" а последствия пусть разгребает кто-то другой в будущем.

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

Мы просто не дошли до той стадии когда жизнь и работа станут невозможны. Вот это и будет "ценой" такого поведения.

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

На самом деле жизнь прекрасно справилась с загрязнением без нас

Видимо и нам придется активнее заниматься этими проблемами в будущем в сыязи с их насущностью

Вывод хороший, но нереально это привести в исполнение. Тк. если кто-то 2000+1 фонарь захочет сделать, то его право. Это также, как и то, что пишется в интернете. Вот наша дискуссия на эту тему - наверное уже 200-миллионная, но мы всё равно дискутируем.

Мне кажется, что автор в кое-чём прав, о получилось поверхностно. Потому что...

  1. До сих пор накопилось и используется много архитектурных вещей из прошлого. Например та-же самая ' Von-Neumann' архитектура уже больше 70 лет, а по ней до сих пор все компьютеры и мобильники строятся.

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

  3. Сегодня создаётся много чего нового в IT. Такого, которое хочется купить, использовать, просто напросто любоваться и восхищаться. Примеры приводить - места не хватит.

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

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

    И Автор обратил внимание на последний пункт. От сюда и дискуссия.

...получилось поверхностно...

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

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

Сегодня создаётся много чего нового в IT. Такого, которое хочется купить, использовать, просто напросто любоваться и восхищаться.

Конечно, и это - нормальное развитие. Но:

Сегодня создаётся и создается очень много ширпортреба.

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

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

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

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

Не совсем о программах и не супер достоверно, но по ощущениям Win 98 я переустанавливал чаще, чем перезагружаю ноутбуки с WIn 10. И то, по большей части, из-за обновлений.

Так вы на 20 лет моложе были…
UFO just landed and posted this here

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

UFO just landed and posted this here

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

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

И багов там тоже хватало, порой совершенно эпичных.

У меня такое чувство, что в статье больше брюзжат о ушедшей молодости, когда очередная переустановка полетевшего миллениума даже за задержку не воспринималась :)

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

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


Сложившаяся в мире компьютеров и программ ситуация не устраивает многих

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

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

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

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

Тоже касается и питона. Производительность этого интерпретатора в 80..300(!) раз медленнее Сишной программы. И ситуация не меняется (отсылка к тому, что разработчики свободного ПО делают как удобно им, а не пользователю). А количество программистов на питоне растет. Неужели не ёкается? И это опять же- удобство исключительно разработчика свободного ПО, но не пользователя. В корпоративном секторе ситуация схожая, но в Open Source это ярче проявляется. Некому предъявлять претензии по поводу качества ПО, чтобы исправили.

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

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

Но порог входа в питон не намного легче чем с или с++.
Намного. Как минимум, в Python нет кривой системы сборки и новичку не придётся мучиться, разбираясь, какого хрена оно отказывается линковаться с библиотекой при том, что все нужные функции в ней есть.
И кроссплатформенность в Python из коробки — вам не нужно задумываться, как собрать вашу программу под Linux, если вы сидите на винде.
А ещё по моим наблюдениям такую вещь как «указатель» новички понимают с изрядным трудом, а понятие «указатель на указатель» почему-то заставляет расплавиться мозг 90% новичков — люди просто не способны работать с подобными абстракциями.
Ситуация должна выправиться, когда тормозящая программа станет проблемой не пользователя, а заказчика разработки. Облака этому поспособствуют.
Скажем, если из-за дефицита видеокарт весь гейминг уйдёт в Стадию и подобные сервисы, то игры очень быстро начнут оптимизировать, вылизывая до блеска, чуть ли не до перехода на ассемблерные вставки. Потому что теперь из-за тормозов Google будет терять деньги, и такая ситуация для любой корпорации неприемлема. Поэтому разработчикам вежливо объяснят, что либо они наконец включат мозг, либо им включат удержание дополнительных средств за превышение лимитов по железу.

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

После сообщений о таких процессорах и их возможностях как например Apple M1 Pro или Max - наверное долго ещё ждать надо будет 😉

Статья, вобщем, понравилась. Много правильных мыслей. Но, по моему, если нет базы, хороший софт не возможно создать. А это дестоп, и дальше-веб, мобильное приложение. Я о серьезном ПО.

>почему программы становятся всё хуже

не совсем так, раньше тоже много гуано было, но в целом конечно SW становится менее эффективным, прошу извинить за цитату (из комментария):

"про moore's law вероятно все знают, но возможно действует и anti-moore's law, и именно каждые два года эффективность использования ASICs падает в 2 раза ...",

Что же делать, если современное HW позволяет приемлемо работать даже неэффективному SW?

Как вы думаете о чем заботится (должен думать) в первую очередь руководитель более/менее нормального уровня компании с большой долей sw в продукте, (например в us)?

Неопытный человек возможно ответит - SW технологии, QA, интерфейсах пользователя, надежности и пр., но для опытного есть только один ответ - о конкуренте, точнее как сделать, чтобы тебя не обошли, вся SW индустрия работает по принципам гонки по формуле F1, это может быть не очевидно даже на senior level, но для руководителя уровня director это азбука, отсюда получается очевидный вывод - SW промышленность работает как и любая другая промышленность на основе конкуренции делая все возможное чтобы опередить конкурента, и выйти на рынок с продуктом приемлемого качества, не более, иначе default, таково время в котором мы живем

Значит, если в мире IT у нас появится монополист, то качество его софта сразу возрастёт, потому что о конкуренте заботиться станет уже не нужно?

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

ps

посмотрел ваши статьи, чтобы лучше понять вопрос, но понятнее не стало

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

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

ps

если интересно пишите в личку

Ситуация сейчас двоякая. Что-то стало лучше, что-то стало хуже.

Расскажу на своем опыте.

Раньше винда (95-98) слетала раз в месяц. Если очень повезет - раз в полгода. Сейчас я уже забыл когда переставлял винду. Уже наверно лет 10 этим не занимаюсь. Покупаю ноутбук примерно раз в 3-4 года, и винда так и стоит. Потом бук или продается или отдается родственикам, не переставлял пока ни разу. Один раз как-то SSD'шка частично навернулась, то просто скопировал образ, благо удалось скопировать и вот сейчас с этой же винды пишу.

Скорость загрузки и вообще работы. Раньше винда грузилась долго и нудно. Обновляться могла часами. Сейчас грузится 2-3 секунды, обновления? Ну кроме крупных я дольше единиц минуты не помню давно. Секрет простой: SSD :) Он настолько лучше обычных хардов работает, что общая скорость работы возврастаеет феерически, особенно на ноутбуке.

Скайп. Стал неповоротиливым, неудобны, глючным монстром. Пока гуй был на Делфи, всё работало если не идеально, то очень хорошо. Когда переписали на электрон, работать стало отвратительно как на Винде так и на Андроиде.

Зато к огромному счастью появилась отличная замена. Нативная Телега. Работает в разы лучше во всех смыслах. Из 200та моих контактов за последний месяц ни я ни мне не написал никто. Все полностью перешли в Телеграмм, Скайп уже тупо заброшен, как в свое время Аська. Жалко обе программы, очень во время расцвета нравились обе. Но время идет вперед.

Интернет, браузеры, скрипты и это вот все.

Впечатление, опять же, двоякое. С одной стороны стало больше всего, больше фич, более удобное все. С другой стороны я вижу для примера тормозящий не катастрофично, но очень заметно, поиск по картинкам яндекса и мне грустно. Десятка 3-4 эскизов и фактически всё умирает, на не самом плохом железе, Dell Vostro, i7 9 поколения + GTX 1650.

Браузеры (чаще юзаю Хром) стали заметно стабильнее и явно юзабельнее и прогрессируют.

Какая-то прямо теория заговора получилась :) Если с первой частью про становление рынка софта я более менее согласен, то про всемирный заговор вендоров, о том, что качественный софт ныне не нужен - не очень. Думаю тут не все так однозначно - все в итоге определяется деньгами (что впрочем уже было сказано). Да, когда вам нужно завоевать пустующий рынок - качество приносится в ущерб скорости и стоимости разработки, но когда вам надо выйти на конкурентный рынок, где уже есть масса хороших игроков - вам без нормального качества туда ну никак не попасть. Например, чтобы выйти на рынок офисных пакетов, вам недостаточно просто повторить функционал MS Office - вы должны быть на голову сильнее в плане качества - работать быстрее, потреблять меньше памяти и т.д. Ну ладно, офисный пакет уже наверно нет смысла делать, но например свою IDE - почему бы и нет? Пример JetBrains показывает, что бороться с монстрами вроде Google и Microsoft вполне себе можно.

Здесь нет никакой теории заговора, наоборот - попытка проследить экономические причины тенденции. А о том, что «качественный софт ныне не нужен» Вам расскажет любой опытный продакт-менеджер среднего звена, особенно если Вы его подчинённый-программист. :)

Не ну тогда объясните как выйти на конкуретный рынок с некачественным софтом? Я правда не понимаю

Что интересно вся тема крутится вокруг десктопа, frontend и Windows. В других областях где скорость и надёжность играет роль все может быть чудо как хорошо. БД например могут терабайты данных обрабатывать за секунды и при этом быть надёжными.

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

Причем скорость процессора не важна - если он будет более производительный, то ему вставят больше расчетов физики вот и всё (а чаще всего - оставят настройки по умолчанию, вместо "ой, а давайте делать на 10 точек в кадр интерполяцию, а не на 100, у нас же все-таки шарики а не стрелялка").

Потому что самое тормозящее при старте игр и вообще программ - это загрузка ресурсов (звуки, картинки, сейвы, плагины и т.д.). И если у вас был старый компьютер - то у вас были иконки 16х16, рисунки 640х480 и звуки моно8бит - 1 канал.

Что с этим в новых играх - сами можете увидеть. Я когда в первый раз увидел иконку для ретины айпада 512х512 (а потом и 1024х1024) - я чуть со стула не упал. Всё остальное - точно так же: и если игра не тормозит заметно на целевой конфигурации заказчика - "урезать осетра никто не будет". И плагины - плагины везде. Что удобно в плане расширяемости, но добавляет дельты времени в плане "все части загрузились и отрапортовали о своей готовности".

Вторая беда - это действительно алгоритмы. За ними никто не следит. Фреймворки делаются и проверяются на небольших примерах (n<10), а потом в продакшене вылазит, что там внутри даже не n^2 а 2^n - и по памяти и по скорости. На n<100 - еще как-то проц сможет это скомпенсировать, но уже при n=101 передаст всем привет из следующего дня ...

При этом вы говорите о ААА проектах. Инди, вышедшие в 2021 году, по большей части идут без тормозов на middle class системах пятилетней давности(GeForce 730M выпущен в 2013!).

хо, во первых у инди - совсем другая "целевая конфигурация заказчика" (ака комп самого инди-девелопера), он там будет тюнить будь здоров!

во-вторых - у инди и денег таких нет на ресурсы (миллионные полигоны моделек, 4к видеовставки или 6+ стерео аудиоканалов для OpenAL) чтобы там было чему внутри тормозить...

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

> Что интересно вся тема крутится вокруг десктопа, frontend и Windows. В других областях где скорость и надёжность играет роль все может быть чудо как хорошо.

Денис, если Вас интересует мое мнение изложенное в комментариях (см выше) это как раз не про frontend, windows и пр. , но в основном про embedded systems, именно там "центр тяжести" программирования в us, то что понимается под IT в россии сильно отличается от приоритетов существующих в us

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

У меня имелось подозрение, что необходимо коренным образом менять как подходы к самому программированию, так и к организации рабочих процессов. Всё же плохо верится, что всему виной именно криворукость программистов или неэффективное управление. Да и куда перспективнее ведь выпускать качественный продукт, чем откровенный хлам? В самом деле, если появится аналог того же Фотошопа или Ворда, но работающий на порядок быстрее, потребляющий меньше памяти и более удобный в работе — это даст ему солидное конкурентное преимущество и он сможет потеснить конкурентов? Значит, тому есть объективные препятствия. Оставив общие наблюдения, что сам рынок вырождается, всем рулит извлечение прибылей и нет общего вектора развития, могу назвать более конкретные причины:

  • Чтобы подвинуть доминирующий на рынке продукт, новый должен быть едва ли не подрывной инновацией — НАМНОГО превосходить его во всех отношениях, иначе в силу инерции и привычки пользователи не слезут с того, чем пользуются они и все вокруг.

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

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

  • Безальтернативность подходов, когда в ходу только определённые стили и приёмы программирования, понятные большинству разработчиков. Захочешь поэкспериментировать и что-то улучшить — а не дадут, потому что другие не смогут работать с твоим кодом.

  • Банально прогресс по железу играет на руку раздутому ПО, так как пользователей и разработчиков перестаёт волновать, что где-то есть лишние неиспользуемые байты или неэффективные алгоритмы (пока это не начнёт ощутимо бить по карману).

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

Sign up to leave a comment.

Articles