webdevdao
webdevdao copied to clipboard
База вопросов собеседований и roadmap (карта знаний) web-программиста
Что это?
Roadmap или карта знаний современного web-программиста и список рекомендуемой литературы.
А также список типичных вопросов и тестовых заданий с собеседований Rails разработчика и тестировщика.
Сделано и развивается при поддержке начинающих программистов в телеграм чате @rubyrush 👍
Оригинал здесь: https://github.com/aristofun/webdevdao
Базовые навыки
-
Математика
- Выбирайте из первых курсов ВУЗа любую понятную вам книгу, или понятный вам курс по темам Алгебра, Линейная алгебра, Дискретная математика.
-
Computer science
-
МакКонелл "Анализ алгоритмов" отличная обучающая книга для понимания основ
http://www.technosphera.ru/lib/book/8
https://books.google.com/books?id=mW4S0AHFKrAC&source=gbs_book_other_versions
-
Математические основы информатики от отцов (в печатном виде на русском не достать, но можно нагуглить в эл. виде скан)
https://ru.wikipedia.org/wiki/Конкретная_математика
-
Адитья Бхаргава "Грокаем алгоритмы" - возможно, лучшая книжка для старта познания алгоритмов (очень простым и понятным языком; можно нагуглить, но лучше печатный вариант)
-
Курсы по алгоритмам:
https://www.coursera.org/learn/algorithms-part1
https://www.coursera.org/learn/analysis-of-algorithms
-
Чарльз Петцольд "Код" (беллетристика про устройство компьютера для всех)
https://www.litres.ru/charlz-petcold/kod-taynyy-yazyk-informatiki/
-
-
Воображение
-
Косвенно хорошо развивается математикой, программированием, рисованием, изучением языков. Причем практикой всего этого а не чтением книг.
-
Перельман и все его книги серии "Занимательная..." (прежде всего занимательная физика, занимательная математика, занимательная арифметика)
https://ru.wikipedia.org/wiki/Перельман,_Яков_Исидорович
-
-
Соображалка
-
Книги Мартина Гарднера полны интересных задач и остроумной математики (Математические головоломки и развлечения, Математические досуги, Математические новеллы и т. д.)
https://ru.wikipedia.org/wiki/Гарднер,_Мартин
-
Рэймонд Смаллиан менее известен, чем Гарднер, но тоже хорош
https://ru.wikipedia.org/wiki/Смаллиан,_Рэймонд_Меррилл
-
Книга об остроумных задачах для программистов на собеседованиях
http://www.litres.ru/uilyam-paundstoun/nayti-umnogo-kak-proverit-logicheskoe-myshlenie-i-tvorcheskie-sposobnosti-kandidata-2/?lfrom=14517722
https://www.amazon.com/How-Would-Move-Mount-Fuji/dp/0316778494
-
Хорошая книга о математических парадоксах и взгляде на мир
https://www.livelib.ru/book/1000964673-son-razuma-matematicheskaya-logika-i-ee-paradoksy-haver-fresan
-
-
Культура программирования
-
Для уже работающих программистов
http://www.litres.ru/stiv-makkonnell/sovershennyy-kod-prakticheskoe-rukovodstvo-po-razrabotke-programmnogo-obespecheniya/?lfrom=14517722
-
Мартин Фаулер "Рефакторинг" — обязательна к прочтению после полугода работы программистом (ищите в эл. виде или англ. версию)
https://www.ozon.ru/context/detail/id/1308678/
-
Курсы хорошего программиста
https://goo.gl/jIKpgW
-
Для программистов от 1 года работы: Кент Бек "Test driven development" (есть перевод)
https://www.amazon.com/Test-Driven-Development-Kent-Beck/dp/0321146530
-
Роберт К. Мартин "Чистый код. Создание, анализ и рефакторинг. Библиотека программиста"
https://www.ozon.ru/context/detail/id/142429922/
-
-
Проектирование и ООП
-
Грэди Буч "ОО анализ и дизайн", обязательна к прочтению, основополагающая книга
http://www.helloworld.ru/texts/comp/other/oop/ch01.htm
Статья по алгоритмам и структурам данных (примеры на JavaScript).
https://dou.ua/lenta/articles/what-you-should-know-about-algorithms/?utm_source=dlvr.it&utm_medium=linkedin
-
-
REST архитектура
- https://www.youtube.com/watch?v=IB1IhWbgOws
-
Git, GitHub
-
Толковые ссылки для начинающих:
https://git-scm.com/book/ru/v1/Введение
http://rgblog.ru/page/git-dlja-chajnika-komandy-kotorye-pomogut-nachat-rabotu
https://habrahabr.ru/post/123111/
-
Интерактивная обучалка
http://learngitbranching.js.org
-
Frontend
-
HTML/CSS
-
Книга
http://www.litres.ru/erik-frimen/izuchaem-html-xhtml-i-css-8511974/?lfrom=14517722
-
Справочник с примерами
http://htmlbook.ru/html
https://devdocs.io/
-
Learn CSS Layout
http://learnlayout.com
-
-
JS (JavaScript)
-
Хорошая книга для начинающих
https://karmazzin.gitbooks.io/eloquentjavascript_ru/content/
http://eloquentjavascript.net
https://learn.javascript.ru/
-
Хорошая книга для продолжающих
https://github.com/getify/You-Dont-Know-JS
-
Backend
-
Ruby, Ruby on Rails
-
Лучший онлайн туториал для самостоятельного изучения
http://railstutorial.org
-
Коллекция отличных скринкастов (частично устаревшая)
http://railscasts.com
-
Онлайн-интенсив «Хорошего программиста»
https://goo.gl/w5BZkM
-
Онлайн-справочник всех языков программирования
https://devdocs.io/rails~5.2/
https://devdocs.io/ruby~2.5/
-
Онлайн-курс по Ruby (Eng).
https://leetcode.com/explore/learn/card/become-a-web-developer/
-
Игорь Симдянов: Самоучитель Ruby - возможно, одна из лучших книжек для начала, поможет построить прочную базу знаний по Ruby
-
Фултон, Арко: Путь Ruby (в печатном виде, но лучше нагуглить) - хорошая книга для начинающих и продолжающих, чтобы заполнить пробелы по Ruby
-
-
Python/Django
Среди питонистов нет единства в том, какие ресурсы считать лучшими, поэтому ниже ссылки с наиболее авторитетными мнениями:
-
https://www.quora.com/Which-is-the-best-book-for-learning-python-for-absolute-beginners-on-their-own
-
http://www.codepancake.com/5-python-books-for-beginners/
-
https://stackoverflow.com/questions/4048973/whats-the-best-way-to-start-learning-django
-
https://www.quora.com/What-are-the-resources-to-learn-Django
-
https://devdocs.io/python~3.7/
-
-
NodeJS
Хороших курсов и книг практически нет (при выходе, они сразу устаревают), основа работы с нодой — хорошее знание JavaScript (выше ссылки) + практический опыт работы с ним (знание лучших практик и приемов).
-
https://www.quora.com/What-is-the-best-Node-js-course-online
-
https://www.quora.com/What-are-the-best-resources-for-learning-Node-js
-
https://devdocs.io/node/
-
-
PHP
Учить пхп мы не советуем вообще, поэтому приведем только одну ссылку, которую вы должны изучать постоянно, если все-таки отважились на этот отчаянный шаг:
- http://www.phptherightway.com
Базы данных
Приведем ссылки на вики и оф. сайты, где есть хорошие руководства по установке и использованию (их нужно читать внимательно). Все, что глубже вам надо искать самому после того как обрастете опытом программирования.
-
https://ru.wikipedia.org/wiki/Система_управления_базами_данных
-
https://ru.wikipedia.org/wiki/Реляционная_база_данных
-
https://www.postgresql.org
-
https://ru.wikipedia.org/wiki/NoSQL
-
https://redis.io
-
https://www.w3schools.com/sql/default.asp
DevOps (сисадминство и настройка)
- Книга How Linux works
Скринкасты о простой настройке linux серверов и деплое приложений, не исчерпывающая информация, но хороший старт:
-
https://www.youtube.com/watch?v=aJLRnDJ2CVg
-
https://www.youtube.com/watch?v=vY9QNwX_IsY
-
https://www.youtube.com/watch?v=tQLpAefAKuA
Изучение Английского языка
-
Поиск перевода на английский в контексте для русских слов, выражений и идиом
http://context.reverso.net
-
Английский язык по плейлистам
https://www.youtube.com/channel/UC_3oKG5Szq-m6Xz-MjRZgpw
PS
Эти материалы и ссылки взяты из уроков онлайн-интенсива по web разработке на Ruby on Rails «Хорошего программиста» — goodprogrammer.ru
Список не претендует на универсальность, дополнения и поправки присылайте пулл-реквестами.