software-development
February 2, 2023

Почему все так тормозит

Вновь даю простые и лаконичные ответы на сложные вопросы бытия.

Притормози. Подумой.

Почему все так тормозит?

«Почему мой ноутбук/телефон/виндоус/сайт так тормозят?»

Эти вопросы в той или иной форме задают всем программистам, да и наверное вообще всем имеющим отношение к ИТ.

Задают всю жизнь, задают и пользователи и «эксперты», нижний менеджмент и высшее руководство, ЛПРы и просто шедшие мимо.

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

Могу сказать что частично это все правда, но не отражает самой важной причины:

— Почему мой софт тормозит?

 — Потому что вы за него не заплатили.

Внезапно, правда?

А это и есть ключевая проблема.

Вы правда думали, что современная операционная система может стоить сотку баксов? А супернавороченный редактор графики — 50?

Я вас огорчу:

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

Не более того. По-сути вы покупаете доступ.

Microsoft и Adobe не работают ни для вас ни тем более на вас, на ваши нужды и требования.

Аренда софта

Чуть-чуть раскрою тему модели «аренды софта по подписке» — то что вы покупаете в 99% случаев современных стартапов.

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

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

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

Второе, отказ от ответственности.

В самом лучшем случае в SLA будет что-то из серии «гарантируем простой не более одного рабочего дня». И все.

Гарантий (именно гарантий, подтвержаемых материально) от утечки ваших данных или их потери — никто из вендоров по SaaS вам не даст.

Модель бизнеса такая.

Третье, SaaS подразумевает работу через интернет (обратного еще не встречал) а значит вы автоматически привязываетесь к наличию связи и его качеству:

Нет связи или идут перебои — получите ваши любимые тормоза.

И наконец четвертое — показ рекламы и телеметрия.

Почему тот же Steam так долго грузится и переодически тормозит? — он качает рекламу, которую затем показывает вам. Тоже самое делают последние версии Windows, если только вы не купили профессиональную версию, разумеется.

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

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

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

Стоит говорить что в заказном ПО такого нет, или это и так очевидно?

Вот на таких дровах и работает основная масса юзеров.

Железо.

Вы работаете с вашим профессиональным софтом на чем-то таком? Или может таком? Очень сомневаюсь.

Скорее всего у вас очередной трехкопеечный «low-end business lite» ноутбук на последнем исдыхании. Или не менее живой PC, видевший еще молодого Цукерберга.

Все это забито разнообразным говном, включается пинком ноги, выключается — ударом об стену.

И вот в этих условиях вы спрашиваете «почему все тормозит».

Иногда добавляя про «старые добрые времена» (хотя вас тогда еще на свете не было) и виня во всем криворуких программистов.

Старые добрые времена

Я вас наверное огорчу, но высокие требования к оборудованию у профессионального ПО были всегда:

4 дискеты с самым первым фотошопом.

А теперь читаем требования:

Полный скан вот тут

Второй макинтош и 2 Мб памяти на 1990й год, неплохо так. Вот сколько стоила такая машинка:

When introduced, a basic system with monitor and 20 MB hard drive cost US$5,498 (equivalent to $13,110 in 2021). With a 13-inch color monitor and 8-bit display card the price was around US$7,145 (equivalent to $17,040 in 2021).[2] This placed it in competition with workstations from Silicon Graphics, Sun Microsystems, and Hewlett-Packard.

Вообщем 17 штук баксов за рабочую станцию — как это было тогда так и осталось.

Потому что столько это и стоит.

Как должно быть

Итак, вы хотите чтобы ваш софт не тормозил и не мешал вам работать. Еще у вас есть достаточное количество денег:

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

Вот в таком и только таком случае ничего не будет тормозить. Никогда. Пользователи слишком привыкли к универсальности:

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

А универсальность всегда порождает лишь ненужную сложность и неопределенность.

Другой путь

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

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

Через где-то двадцать лет, полученного опыта хватит для решения любого вопроса с тормозами.

Сможете вот на таком некрожелезе вести разработку любой сложности и гонять виртуалки:

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

Эпилог

Вообщем прочтите, осознайте и перестаньте еб#ть мозги себе и специалистам. Никто и ничего не должен пока не подписан соответствующий договор.

Пора повзрослеть и начать адекватно смотреть на окружающий мир:

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

Так что смиритесь и копите деньги на заказную разработку.