Веб-программирование на Физтехе
В октябре 2017 года мы начинаем проходить курс маленьким сообществом. Напишите Виталику, и вас добавят в чатик.
Спецкурс читался в МФТИ в Долгопрудном в 2014-2015 учебном году.
Видеолекции курса есть на Ютьюбе
Ещё у меня есть начальный курс Питона Snakify.org с интересными задачами. Хорошие задачи, порешайте. Змейка для привлечения внимания:
Курсы на Физтехе в 2015-2016 году
- Веб-программирование, лектор Вадим Марковцев. Материалы, группа в ВК.
- Компьютерная безопасность и CTF. Репозиторий, группа в ВК.
- Анализ данных. Репозиторий, группа в ВК.
Осенний семестр
29 октября. Какие языки и технологии используются на вебе. HTML. CSS. CSS-фреймворки. Хостинг для статического сайта.
12 ноября. Введение в язык Python 3.
26 ноября и 3 декабря. Менеджер виртуальных машин Vagrant. Деплоймент на VPS через tmux и gunicorn. Тестирование Flask-приложений, Travis CI. Cookies, sessions. Передача и хранение паролей, HTTPS. Декораторы
Весенний семестр
20 февраля. Язык SQL. Sqlite3, работа с базой sqlite3 из Питона. Фреймворк Django: ORM, админский интерфейс базы
27 февраля. Django: статика, регистрация пользователей, ajax, JSON API, кастомизация админки, миграции базы, XSS
6 марта. Деплоймент: nginx, uWSGI, PostgreSQL, логгирование
13 марта. Графические компоненты (виджеты)
20 марта. Node.js: зачем нужна асинхронность. Npm. Автоматизация фронтенда: Bower, Grunt, JSHint, LESS, ES6
27 марта. Node.js, Express.js. Socket.io. Облачный хостинг: heroku
1 апреля. Гостевая лекция: Дмитрий Елисов о том, что бизнес надо делать на простых технологиях
8 апреля. Фреймворки для одностраничных приложений: концепция MVC, виртуальное DOM-дерево
15 апреля. Тестирование фронтенда: QUnit, Mocha, Karma. Тестирование API: requests. Selenium WebDriver
22 апреля. React.js. Кроме того, Плагины для Хрома. Букмарклеты
29 апреля. WordPress, создание интернет-магазина на WooCommerce
Проект нашего ученика
Миптакар - сайт поиска попутчиков на Физтехе
Что не рассказано на курсе
Вёрстка
- Сетки, позиционирование. Декоративные элементы. Вёрстка меню
- Вёрстка писем
- Вёрстка для мобильных устройств
- Вёрстка для печати
Фронтенд
- Yeoman
- Normalize.css
- Препроцессоры HTML: Jade, HAML
- Современные CSS-препроцессоры Sass, Stylus
- Языки, компилируемые в JavaScript: CoffeeScript, Dart, Closure Compiler
- Зависимости в JavaScript: AMD, Require.js, CommonJS, ES6-подход
- Векторная графика на вебе: raphael, d3.js
- Web Components, Polymer
- Как лечить scrolling amnesia?
Бекенд
- Полнотекстовый поиск
- Авторизация через соцсети
- Кеширование
- Безопасность. Атаки, механизмы защиты
- Очередь задач: celery
Разное
- Проектирование интерфейсов
- Читаем чужой код: сервис Plunker
- Интернационализация
- Яндекс.Метрика. Микроформаты
Материалы
Фронтенд
- Scalable and Modular Architecture for CSS
- Какие фреймворки используются на популярных сайтах
- 7 Principles of Rich Web Applications
- HTML5 Game Development - Udacity Online Course
Бекенд