Изучение одного языка сегодня не имеет смысла– тяжело не согласиться, т.к. сегодня программист просто вынужден знать несколько языков (думаю 2-3 на уровне библиотек и фреймоворков, 5 на уровне стандартной библиотеки, и с десяток на уровне чтения кода). Провериться можно тут.
Очень буду рад, если подскажете какие-нибудь решения на JavaScript или Node.js с OpenCV. Хотя, PHP с его OpenCV тоже подойдутИзвестный мне OpenCV является библиотекой, написанной на C++, поэтому неясно, с чего бы биндинги для Node.JS отличались от биндингов для php. Хотя ни с теми, ни с другими я не встречался, могу ошибаться.
У Google+ есть функция "находить меня на фотографиях друзей". Собственно, реализована она наверное как-то так же.Google и Facebook, вероятно, используют гораздо более крутые алгоритмы, чем я описал (ещё бы: ведь там работают лучшие из лучших). Например, Facebook'овый DeepFace строит 3D модели лица.
В свое время перешли от Wordpress к Django по многим причинам. Одна из главных причин это сам язык - на Python оказалось писать намного приятнее и быстрее. Кастомизация Wordpress иногда напоминает танцы с бубном - часто не ясно где вылезет очередной баг. В этом плане Django оказалась намного предсказуемее, что в итоге выливается в более быстрый процесс разработки и поддержки проектов. Но иногда мы используем Wordpress, но только тогда, когда заранее видно что это проект идеально вписывается в концепцию CMS и не нужно будет городить велосипедов.
Можно спускаться сверху вниз: - пользовались WordPress - отлично, так продолжайте его изучать, параллельно с изучением PHP в целом. Пишите модули, изучайте решение самых популярных проблем на примере архитектуры этой CMC. - посмотрите в сторону других СМС, покопайтесь, пощупайте. - далее можно спустится к фреймворкам, опять же, используя предыдущий опыт, посмотрите, что Вам больше нравится. - затем можете попытаться написать что-то совсем свое на чистом php. Аналогично и с Python, только я не знаком с CMC на нем.
Можно подниматься снизу вверх: - начать изучать сам язык, и выбрать для решения текущих задач тот, который больше нравится и больше подходит. - пробовать решать возникающие проблемы самостоятельно, параллельно подглядывая решения во фреймворках и СМС.
Какой путь выбрать в Вашем случае, зависит еще и от того, что нужно сейчас. Если нужно поддерживать сайт на какой-то СМС, то первый, если нужно решение нестандартной задачи, то проще это сделать на чистом языке и дальше уже как пойдет.