Составные индексы делают ровно то, что вам требуется - оптимизируют скорость выборки при запросах, которые их используют.
Это не рационально в том смысле, что при каждой вставке БД вынуждена выполнять дополнительную работу. Но если ваша цель - оптимизация, а скоростью вставки вы можете пренебречь...
Ян Александров, да вздор это все - защита по старинке в веб-приложениях. Это либо не работает вовсе, либо работает плохо и ваши же затраты на такую защиту будут больше, чем прибыль, а потенциальных клиентов вы ей отпугнете.
С веб-приложениями, имхо, работают только две схемы: армия юристов, которую вы не можете себе позволить, и завязка на получение обновлений, которые ваш сервер просто не отдает без подтверждения лицензии. Использование старых версий на халяву проще считать рекламной компанией, чем всерьез с этим бороться.
Артем Спиридонов, мой кошелек пополняется как раз за счет того, что я не упираюсь в узкую специализацию. Возможно, он мог бы пополняться эффективнее со специализацией, но для этого придется как минимум валить в Москву, а я против.
Ян Александров, я бы предложил не препятствовать установке вовсе, но в процессе запрашивать домен установки и отправлять информацию на ваш сервер, возвращая уникальный ключ для пары "лицензия - домен". И в рамках запроса обновлений проверять их. Если вдруг у кого-то из купивших многовато пар - пообщаться, что за дела.
Если установки идут косяком без лицензии вовсе - поздравляю, вы стали популярны ;)
nnkrasovok, я вообще не в курсе, как там у вас "обращается пользователь". Пользователю можно прописать PATH в его .bashrc так, что /opt/php71/bin/ будет раньше, чем /usr/bin, например.
Артем Спиридонов, есть глубокая уверенность, что если более удачные решения и появятся, они точно так же будут "все еще в разработке" все эти ближайшие годы. И базироваться они будут все на тех же принципах, что Vue, при создании которого постоянно оглядывались на React и Angular.
Так что откладывать изучение JS-фреймворков по той причине, что могут появиться новые - бессмысленно.
yatanai, признаки - должны? Вы сами поняли, что написали?
Понимаете, интеллект появляется не на пустом месте. Если человек много читал - у него поневоле формируется нормальный язык общения. Если аноним строит предложения, как пятиклассник - его просто не будут воспринимать всерьез в подобных обсуждениях, предполагая, что его интеллект недостаточно развит. Просто предположение, за отсутствием иной информации. Но обычно информация, поступающая в рамках дальнейшего общения, только подтверждает это предположение...
Я бы не рекомендовал выступать в темах об обучении и интеллекте тем участникам, которые затрудняются сформулировать свои мысли по этому поводу сколько-нибудь литературным языком и без ошибок.
Sasha Odarchuk, "взрослые" продукты имеют одну неприятную особенность: они решают 90% ваших проблем (поскольку они типовые), но лишают вас возможности решить остальные 10%. Если это не пугает - естественно, изобретать велосипеды незачем.
Если же хочется развиваться и ни от кого не зависеть (так же, как сейчас - от екселевского файлика)... можно задуматься и попробовать. Взрослые-то продукты никуда не денутся.
Вопрос, что имеется в виду под головоломками.
Головоломки в широком смысле вынуждают решающего искать закономерности, использовать абстрактное мышление, проводить анализ - это навыки, необходимые и постоянно используемые в решении любых задач, в том числе и алгоритмических.
Естественно, если понимать увлечение головоломками как задротство над кубиком Рубика до двухсекундного решения, оно скорее отупит, чем разовьет ;)
Сергей Горностаев, а что, для подтверждения банальной логики - что интроверты эффективнее копаются в том, что умещается в голову, но неважно решают задачи, требующие общения и кооперации - требуются исследования и статьи?
Решение головоломок тут вообще ни при чем, просто олимпиадники - это нерепрезентативная выборка.
Совет чайнику: забей. Если оплата за лицензию - проблема, значит, тот VPS просто не вытянет такие затеи. После долгой стойки в гамаке в лучшем случае получишь систему, работающую со скоростью захода солнца.
Vocler, сервер всегда имеет всю необходимую информацию для создания хэша, кроме пароля.
Так что взломщики получат соль, и никакой "невозможности" в переборе хэшей нет и не будет.
Фишка в том, что если соли нет или используется общая соль для всех паролей, достаточно составить радужные таблицы один раз и сверить их с базой.
Индивидуальная соль для каждого пароля вынудит взломщика составлять радужные таблицы заново для каждой строчки в базе. А это уже гарантировано нерентабельно.
Если, конечно, в этой строчке не зашифрован доступ банковского админа... Но там безопасность обеспечивают другими методами.