ул. Белинского, 9б
8 (831) 428-30-09
Разработка сайтов это не совсем программирование. Под «программированием» понимают реализацию определенного функционала. При этом программист, как правило, не очень задумывается над интерфейсом своей программы (даже если пишет эту программу самостоятельно).
С веб-разработчиком этот фокус не пройдет, а потому, что сайт - это все же не стандартное системное приложение, которому больше пользы будет от того, что он не выделяется среди прочего софта установленного в системе. Сайт должен хотя бы чем-то, но все же выделяться от других ресурсов сети, иначе его, как минимум, не запомнят. А как максимум могут и заподозрить во вредных намерениях (слишком сайт Х напоминает ресурс В. Уж не пароли он похищает?)
Веб-разработка - это ...
Если в вашей команде есть хороший дизайнер и верстальщик, тогда программист должен сосредоточиться исключительно на разработке функционала. Но для фрилансера (особенно начинающего) такая узкая специализация может быть существенным недостатком.
HTML
Каким бы ни был «фаршированным» функционал на сайте (или в веб-приложение) его каким-то образом необходимо показать конечному пользователю. Самым популярным способом отображения - это генерация и выдача пользователю html-страницы. Конечно, знать все теги «от» и «до» необязательно, сейчас в сети есть много хороших библиотек, детально описывают каждый тег, есть даже и российские ресурсы. Но понимать, что тег - это объект (контейнер), который имеет соответствующие свойства должен знать каждый веб-мастер. Также полезным будет знать, что такое DOM и как она настраивается. И не ленитесь - те теги, которые чаще всего используются, заучите наизусть, чем сэкономите свое время и улучшите результат работы.
CSS
На голом HTML сегодня далеко не уедешь. Фактически и практически ничего не сделаешь. И вообще, умение верстки HTML-страницы сводится не столько к знания HTML, как и к умениям создавать и использовать каскадные таблицы стилей, то есть CSS. Здесь также нельзя не запоминать каждый параметр для каждого тега (справочники помогут), но основы в голове следует таки держать.
В общем, HTLM и CSS лучше изучать параллельно. Это не сложно, главное понять принцип «контейнерности» тегов, а также разобраться чем отличается блочный элемент от строчного.
JavaScript
Думаю, что вы не раз замечали, что страницы весят все меньше и меньше и являютя статичными, а все больше информации отгружается при запросе пользователем той же информации, а не во время начального загрузке страницы. А о количестве различных окон, слайдеров, спинов и других визуальных эффектов я вообще молчу. И подобное поведение веб-страниц - это уже давно норма, а не исключение. Поэтому продолжать предлагать полностью каменно-статические страницы - это не современно, и, если уж совсем честно, совсем неудобно.
И конечно все эти эффекты становятся возможными благодаря JavaScript (не следует путать с Java - это совершенно разные языки). И кроме основ JavaScript неплохо было бы изучить jQuery, поскольку именно он является на сегодня одним из самым популярным JS-фреймворком.
PHP
Несмотря на все шутки в адрес PHP и PHP-программистов, именно PHP продолжает держать первенство как серверный язык для веб-разработки. Поэтому здесь «при всем множестве выбора другой альтернативы нет».
Использовать чистый PHP, фрейворкы или CMS - личное дело каждого. Но сегодня веб-приложения зачастую создаются на фреймворк. Что же касается десктопных языков программирования (C ++, C #, Pascal и др.) - Их знать совсем не обязательно, но их знание не помешает - вам гораздо легче будет освоить PHP. Хотя и веб-разработка отличается от разработки десктопных приложений, но есть и много общего.
Что же касается «планирования купить несколько книг, потому что это проще, чем читать с монитора», то ваше личное дело, но стоит ли? Конечно сидеть, сгорбившись перед монитором не совсем приятно, но начинать на диване с ноутбука или планшета можно и электронные книги.
Конечно, все и сразу вам вряд ли удастся, но настойчивость и труд принесет свои плоды.