Почему страницы Facebook открываются без загрузки впрочем и Вконтакте тоже — это Ajax?
В общем там браузерная шаблонизация - нужно смотреть в сторону Angular / Ember / Meteor / React + rx.js
Cейчас вопрос с SEO и браузерной шаблонизаций обычно решается либо дублированием шаблонов на сервере и в браузере, но основе Jade к примеру, либо гоняют рендер в браузере или node.js, как это делается с React'ом или prerender.io.
Ну вот к примеру learni.st написан на Angular'е и отлично индексируется гуглем.
Сейчас наиболее перспективным является GWT-way, когда серверные шаблоны прозрачно транслируются в браузерные, и все изменения модели передаются посредством push нотификаций и по вэбсокетам или comet'у (socket.io / sock.js). Но для этого нужно ещё реализовать нормальную поддержку Virtual DOM суррогата, так как это сделано в React'e. В нём кстати самый толковый рендер DOM'a, из-за этого рождаются вундервафли типа ngReact.
В общем вопрос фронтенда за последние 3 года очень сильно усложнился с появлением различных MVC-подобных браузерных подходов, и jQuery уже "прошлый век". Сейчас всё упирается в реактивности с асинхроном и многопоточностями, а с ними в PHP / Ruby куча проблем. В Python этих проблем меньше, но и костыли там тоже встречаются, а в node.js вообще их нет... но производительность обоих решений оставляет желать лучшего.
Пробуйте golang, или Typesafe Stack / Grails.
На фронтенде веселее всего с React rx.js и socket.io / sock.js, но для коммуникации можно и что-то своё написать.
AJAX. Нет, не стоит.