Почему все так тормозит
Вновь даю простые и лаконичные ответы на сложные вопросы бытия.
Почему все так тормозит?
«Почему мой ноутбук/телефон/виндоус/сайт так тормозят?»
Эти вопросы в той или иной форме задают всем программистам, да и наверное вообще всем имеющим отношение к ИТ.
Задают всю жизнь, задают и пользователи и «эксперты», нижний менеджмент и высшее руководство, ЛПРы и просто шедшие мимо.
Кто-то винит во всем криворукость программистов, кто-то несовершенные технологии, а кто-то — жадность производителей и погоню за прибылью.
Могу сказать что частично это все правда, но не отражает самой важной причины:
— Потому что вы за него не заплатили.
А это и есть ключевая проблема.
Вы правда думали, что современная операционная система может стоить сотку баксов? А супернавороченный редактор графики — 50?
вы покупаете лишь право пользования, причем на потребительский софт общего назначения.
Не более того. По-сути вы покупаете доступ.
Microsoft и Adobe не работают ни для вас ни тем более на вас, на ваши нужды и требования.
Аренда софта
Чуть-чуть раскрою тему модели «аренды софта по подписке» — то что вы покупаете в 99% случаев современных стартапов.
Чтобы было какое-то понимание ответственности перед вами как покупателем и гарантий качества, в том числе отсутствия тех самых тормозов.
Первое, такая модель подразумевает максимальное сокращение издержек и экономить будут в первую очередь на вас как на пользователе:
максимально типовой функционал, ограничение по производительности, часто это будет multi tenant схема — те вы будете использовать одну и ту же копию сервиса с другими пользователями, а все ваши данные технически будут в одной общей базе.
Второе, отказ от ответственности.
В самом лучшем случае в SLA будет что-то из серии «гарантируем простой не более одного рабочего дня». И все.
Гарантий (именно гарантий, подтвержаемых материально) от утечки ваших данных или их потери — никто из вендоров по SaaS вам не даст.
Третье, SaaS подразумевает работу через интернет (обратного еще не встречал) а значит вы автоматически привязываетесь к наличию связи и его качеству:
Нет связи или идут перебои — получите ваши любимые тормоза.
И наконец четвертое — показ рекламы и телеметрия.
Почему тот же Steam так долго грузится и переодически тормозит? — он качает рекламу, которую затем показывает вам. Тоже самое делают последние версии Windows, если только вы не купили профессиональную версию, разумеется.
Примерно раз в неделю ваш Гугл Хром начинает жрать ресурсы как не в себя, а компьютер начинает тормозить — это происходит сбор и отправка телеметрии: отчета об использовании.
Все тоже самое актуально и для смартфонов — точно также каждое второе приложение крутит рекламу и отсылает отчет об использовании.
Это и создает те самые лаги и тормоза, это же явлется частью бизнес-модели, поэтому убирать эту логику ради сокращения тормозов не будут.
Стоит говорить что в заказном ПО такого нет, или это и так очевидно?
Железо.
Вы работаете с вашим профессиональным софтом на чем-то таком? Или может таком? Очень сомневаюсь.
Скорее всего у вас очередной трехкопеечный «low-end business lite» ноутбук на последнем исдыхании. Или не менее живой PC, видевший еще молодого Цукерберга.
Все это забито разнообразным говном, включается пинком ноги, выключается — ударом об стену.
И вот в этих условиях вы спрашиваете «почему все тормозит».
Иногда добавляя про «старые добрые времена» (хотя вас тогда еще на свете не было) и виня во всем криворуких программистов.
Старые добрые времена
Я вас наверное огорчу, но высокие требования к оборудованию у профессионального ПО были всегда:
Второй макинтош и 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 штук баксов за рабочую станцию — как это было тогда так и осталось.
Потому что столько это и стоит.
Как должно быть
Итак, вы хотите чтобы ваш софт не тормозил и не мешал вам работать. Еще у вас есть достаточное количество денег:
- Нанимаете приличных парней — они проводят анализ, собирают требования, в том числе технические к создаваемой системе, в том числе время отклика на действия пользователя;
- Запускается разработка ПО специально под вас, под ваши нужды и требования;
- Тестируется софт все время разработки в вашей же корпоративной среде, с вами, на том оборудовании где будет происходить эксплуатация;
- По завершению разработки, уже ваш готовый софт разворачивается на оборудовании, специально подобранном согласно техническим требованиям, специально для конкретно этого софта;
- Все рабочие места пользователей также соответствуют требованиям, согласованным при разработке и используются для работы а не для похода по порносайтам или видеомонтажа с одновременной раздачей торрентов.
Вот в таком и только таком случае ничего не будет тормозить. Никогда. Пользователи слишком привыкли к универсальности:
«должно работать везде», «сайт должен открываться в любых браузерах», «компьютер должен быть универсальным» и так далее.
А универсальность всегда порождает лишь ненужную сложность и неопределенность.
Другой путь
Есть и другой путь, которым можно добиться того чтобы у вас ничего никогда не тормозило:
Просто начнитес себясерьезно изучать компьютерные технологии, внутреннее устройство компов, операционные системы, сеть, языки разработки и так далее.
Через где-то двадцать лет, полученного опыта хватит для решения любого вопроса с тормозами.
Сможете вот на таком некрожелезе вести разработку любой сложности и гонять виртуалки:
Эпилог
Вообщем прочтите, осознайте и перестаньте еб#ть мозги себе и специалистам. Никто и ничего не должен пока не подписан соответствующий договор.
Пора повзрослеть и начать адекватно смотреть на окружающий мир:
Вы лишь взяли чужой мерседес в аренду и гоняете на нем пьяным, без прав, чтобы только впечатлить телочек — к реальному бизнесу это отношения не имеет.