При условии, что современные поисковые боты умны и не проверяют whitespace (табуляция + пробелы + переводы строк) ;)
Но будем считать, что современные поисковые боты умны :)
В Javascript'е желательно разбираться из-за того, что "призрак бродит по Европе" и имя тому призраку Ajax
откуда такие цифры? это справедливо только для бесплатного и очень дешевого хостинга.
мои цифры мне говорят, что на корпоративном (и особенно западном рынке) 70% - это Java, и что сейчас туда ломится .NET
Делов в том, что хостинг дешевеет с каждой минутой. Если раньше любые решения, кроме РНР и/или Perl и/или ASP 3.0 были дорогими, то теперь за 20 баксов в месяц можно экспериментировать с любым языком программирования вообще - от Java до Питона.
ЗЫ. Все это - все равно оффтоп для данного топика
По поводу РНР также см. мой пост здесь: http://rsdn.ru/Forum/?mid=2161433
Даже в России народ уже разрабатывает сайты на Ruby, Питоне, Яве и .НЕТе
Еще по теме топика - Что такое ТЗ (техническое задание)
Нууу... Гугл во-первых :)
Потом, например
Статика и динамика: http://webstudent.ru/modules/wfsection/article.php?articleid=420
Javascript
Java
Ну и так далее :)
Соглашусь с Kart_01.
SEO не обязательно знать какой-то отдельный язык программирования. Важно понимать саму идею серверных технологий. Понимать схему взаимодействия браузер-сервер.
Неплохо обладать знаниями в том или ином языке программирования - любом, но в привязке к Вебу, но! Четко понимать, что браузеру - абсолютно фиолетово, на каком языке написан сайт, он все равно видит HTML + CSS + JavaScript
SEO нужно понимать, чем отличается статическая страница от динамической. Понимать принципы и схемы кэширования страниц. Владеть HTML и CSS на продвинутом (advanced) уровне. Знать, чем Javascript отличается от Java, и что с этим связано. Понимать, пусть и грубо, принцип работы веб-браузера и поисковых ботов. Великолепно владеть русским языком (для русскоязычного сайта) или тем языком, на котором написан продвигаемый сайт.
При этом полезно понимать, как действует тот язык программирования/тот фреймворк, на котором сделан сайт, потому что они зачастую сильно влияют на такие параметры, как время отклика сайта, кэширование и просто элементарные вещи, как смена заголовков страниц. Но эти моменты должен объяснить SEO программист/админ сайта, а не сам SEO должен лезть и копаться в нутре какого-нибудь Spring+Hibernate, RoR или Django. Это ему не нужно.
Вобще в идеале SEO должен сказать: "хочу", а программист сайта должен ответить: "есть" ;) Но, увы, мы живем не в идеальном мире
ЗЫ. [off]Насчет HTML... Много копий сломано по поводу того, можно ли считать его языком собственно программирования. Если хотите, можно пойти на такой компромисс: HTML - это декларативный(описательный) язык программирования. Но только не спорьте, все равно истины не добьетесь ;)[/off]
Если страница не типа http://www.2advanced.com/, то смысла использовать Флэш практически нет, потму что все остальное (типа динамической подгрузки контента и простейшей анимации) легче сделать на, например scriptaculous или jQuery + Interface
Вдобавок на Линуксе практически нет Флэша выше 7-й версии 😡
А, ну да. Есть еще кэширование контента по пути к клиенту :)
Например, веб-браузеры кэшруют контент типа CSS и JS файлов и изображений для того, чтобы при перезагрузке страницы (например при нажатии на кнопку "Назад" в браузере) не лезть лишний раз в интернет.
Опера, например, кэширует всю страницу целиком, за счет чего у нее самая быстрая из существующих навигация по страницам "вперед-назад"
Есть кэширование на (излишне умных :) ) роутерах, которые также могут кэшировать различные типы пересылаемого контента - изображения, например. Такие роутеры ставят в крупных сетях, где внешний трафик дорог, например.
Грубо говоря, так:
Статическая страница - это страница, использующая только "статические" технологии - (x)HTML + CSS + JavaScript без AJAX
Динамическая страница - эта страница, собираемая на сервере каким-нибудь языком - РНР, Java, C++ - без разницы.
Кэширование - это когда результат работы серверного языка сохраняется в виде статической страницы и отдается в таком виде клиенту. Причем могут кэшироваться как страницы целиком, так и части страницы.
Кэширование используется для ускорения работы сайта, потому что
(a) - не надо запускать зачастую сложные и "тяжелые" скрипты
(б) - не надо лишний раз дергать базу данных
(в) - иногда не надо дергать лишний раз файловую систему (в случае, если использубтся какие-то XML-шаблоны)