Як самостійно перевчитися на веб-розробника, блог про веб-розробці та веб-технологіях

Топік складено із загальних питань відвідувачів сайту на тему «веб програмування для новачків».
Що маю: не вмію нічого, або маю досвід програмування на якій-небудь мові програмування, але не для веб
Що хочу: робити веб-проекти будь-якого ступеня складності. включаючи як серверну, так і клієнтську частини.

Список тем для вивчення веб-розробнику

Знання з базових веб-технологій потрібні всім, хто працює в веб: і верстальщику, і майбутньому розробнику інтерфейсів (frontend developer), і серверного програмісту (backend developer).

Знання по протоколу HTTP

  • як відправляються запити, які бувають «заголовки запиту»
  • якими методами передаються дані користувача (ну, тобто GET, POST, PUT, DELETE, HEAD, OPTIONS і інші), яким чином передаються дані для цих методів, що є «заголовки запиту», «тіло запиту»
  • що таке CORS, коли виникає в ньому потреба і як налаштовувати
  • як на сервер передаються виконавчі файли по HTTP. які заголовки, як кодуються в тілі запиту; чому файли швидше пересилати по FTP
  • як формуються відповіді, які бувають «заголовки відповіді», які бувають «статуси відповіді»
  • що таке «кодування відповіді сервера», як її визначити
  • яким чином стискаються відповіді сервера, чи все можна і потрібно стискати
  • чому HTTPS безпечніше ніж HTTP
  • навіщо і як змусити браузер кешувати відповіді сервера, як запобігти кешування

основи HTML

  • що таке розмітка HTML, як видається сторінка, як подивитися її вихідний код
  • з яких елементів складається сторінка (теги)
  • структура HTML-документа
  • докладніше про тексти, гіперпосилання, списки, таблиці, фрейми, форми, впроваджуються об'єкти (flash)
  • яким чином можна змінити зовнішній вигляд елементів (каскадні таблиці стилів, CSS)
  • що нового в HTML5

основи CSS

  • як стилі вбудовуються в HTML
  • що таке «класи стилів»
  • як позиціонуються елементи
  • що таке «блокова верстка»
  • що таке «кросбраузерний CSS» і «CSS-хакі»
  • що таке «адаптивна / чуйна верстка»
  • як користуватися Photoshop або іншим графічним пакетом для роботи з дизайн-макетами
  • як маніпулювати з об'єктами DOM: шукати, додавати, видаляти
  • як змінювати зовнішній вигляд об'єктів
  • як виконувати дії у відповідь на події
  • яким чином реалізується анімація
  • як реалізується робота через AJAX
  • як працювати з даними в форматі JSON і XML
  • що таке «крос-доменні запити»
  • як розширювати бібліотеку (плагіни)
  • бібліотеки розширень на прикладі jQuery UI
  • особливості програмування для мобільних пристроїв на прикладі jQuery Mobile

Навички веб-розробника, які необхідно виробити: