Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/aristofun/webdevdao

База вопросов собеседований и roadmap (карта знаний) web-программиста
https://github.com/aristofun/webdevdao

Last synced: 18 days ago
JSON representation

База вопросов собеседований и roadmap (карта знаний) web-программиста

Awesome Lists containing this project

README

        

# Что это?

Roadmap или карта знаний современного web-программиста и список рекомендуемой литературы.

А также список [типичных вопросов](interview/README.md) и [тестовых заданий](test_assignments/README.md) с собеседований Rails разработчика и [тестировщика](interview/README_QA.md).

Сделано и развивается при поддержке начинающих программистов в телеграм чате [@rubyrush](https://t-do.ru/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](https://books.google.rs/books/about/How_Linux_Works.html?id=wOGUuoHUyAEC&printsec=frontcover&source=kp_read_button&redir_esc=y#v=onepage&q&f=false)

Скринкасты о простой настройке 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](https://goodprogrammer.ru)

Список не претендует на универсальность, дополнения и поправки присылайте пулл-реквестами.