Когда тетрис тормозит
Только месяц назад на Хабре видел, как новички в статье про битовые операторы делились на два типа: первые говорили «спасибо», вторые — «на фиг вашу оптимизацию». Две недели назад приглаживал волосы, которые шевелились от ужаса, при чтении комментов о нюансах проектирования и реализации GUI: опять же «на фиг не надо, на глазок сделаем». Во что выливаются подобные вещи в итоге?
Люблю в свободное время поиграть, для этого у меня собрана дома достаточно мощная машина. Но последнее время она часто простаивает. Современные игры поражают следующими болезнями в количестве от нуля до всех и даже более, причём последнее время тенденция не радует.
1. Отсутствие оптимизации. Продукт по совокупности качеств не лучше аналога, вышедшего десять лет назад, но ставит мою машину на колени.
2. Мнение компании-разработчика о себе как о гуру во всём. Зачем оплачивать лицензию движка, который отлаживают и улучшают уже десять других контор? Незачем — сделаем медленнее, дороже, хуже, но свой.
3. Интерфейс. Конечно, тут частично виноваты дизайнеры, но иногда заметно, что идея-то была неплохая, но реализация… Вы сами-то пользовались тем, что создали?
4. Баги. Тысячи их, хотя 80% можно было избежать, следуя двум старым правилам: «не доверяй входным данным» и «прорабатывай все случаи».
Не буду описывать остальное, там вина программистов может быть минимальна, но даже эти четыре пункта могут сделать из игры (или прочего продукта) нечто совершенно неюзабельное.
Вершиной всему стал недавно повстречавшийся сайт солидной рекламной компании. На нём есть всё, что можно рекомендовать никогда не делать: звук, видео, анимация, кривой непонятный интерфейс, долгая загрузка, слабая оптимизация… Деградируем, господа, деградируем. И это всё при том, что сейчас, куда ни посмотри, на какой сайт ни зайди, у всех свои сервера, админы и прогеры. А на деле, когда втыкаю в очередной PHP-код error_reporting E_ALL, испытываю дичайший ужас.
Надеюсь, скоро наступит некий переломный момент, и рынок просто поглотит тех, кого по ошибке называют программистами.