Не существует ни одного сервиса по чему-то ни было, ни одной книги, с помощью которой (исключительно только нее/него) можно было бы изучить какой-то предмет. В 100% случаев тебе придется изучать что-то и с помощью других источников..."
(с) Hubert J-Farnsworth, герой JavaRush
ВСТУПЛЕНИЕ Итак, базовые характеристики нашего персонажа:- Доступный язык - русский.
- Знания и понимания мира IT - юзверь.
- Желание - захватить мир.
- Задача на ближайшее время - пройти JavaRush и отправиться на стажировку.
1 - 10ур: Начало
Вроде и самое легкое, но по факту самое сложное - эти уровни проходят лишь сильные духом. Задача на этом этапе просто "пощупать" мир программирования и понять,"а оно мне надо?". Лекций непосредственно для Java более чем достаточно. Мы не идем смотреть документацию по Спрингу или все видео Головоча, вместо этого тихо и спокойно, в ритме вальса проходим эти уровни. А вот с пониманием к чему мы стремимся - тут немного сложнее. Поэтому читаем следующие книги:
В них нету кода, нету специфического IT сленга, нету того что нужно запомнить, только понять и принять.
* Дядя Боб и Чэд Фаулер, "Идеальный программист" и "Программист - фанатик" два сборника практических советов и рекомендаций, касающихся ситуаций, с которыми порой сталкивается любой разработчик: отсутствие мотивации, выбор приоритетов, психология программирования, отношения с руководством и коллегами и многих других. Хороший старт для понимания того, что требуется от программиста.
* Отъявленный программист - сборник рассказов известных работников IT, в том числе и наших соотечественников.
* Just For Fun - вероятно первая книга из Золотой классики, история Линуса Торвальдса и созданию Linux. Скандалы, интриги, расследования.
Книги это хорошо, а вместе с самыми популярными русскоязычными IT ресурсами - лучше. Делаем аккаунты, даже если не найдем себя как авторы статей - там всегда найдем ответы на свои вопросы, а так же товарищей в своей нелегкой, но интересной судьбе.
ХабрахабрStack Overflow на русском
Видео? Пока достаточно того, что дается на самом JavaRush. Мотивирующие ролики, всевозможные истории успеха ... да кому они нужны?
11-20ур: Боль
Вот оно, начало конца, вот он тот этап, что отсеет слабых и укрепит сильных. Мы прошли предыдущий этап, мы смирились с нашей судьбой, мы поняли наше предназначение и стали ближе к цели. Что есть Java? - В настоящий момент это самый популярный язык программирования. А что это значит? - Огромное количество материала для изучения: книги, статьи, документация и так далее и так далее. Как выбрать и не утонуть? Технически можно попробовать изучать самое-самое свежее, но вот проблема - не получится. На данном этапе мы слабо понимаем в каком направлении двигаться и чем действительно хотим заниматься. Конечно, мы можем послушать экспертов и начать учить hibernate, spring, mysql, bootstrap, jquery и много других страшных слов, а можем начать с основ без привязки к конкретной технологии, а практику и лекцию JavaRush этих уровней мы будем использовать как приятное и наглядное дополнение, а заодно - как возможность опробовать знания. Чем такой подход лучше? Понимая основы выучить конкретную технологию займет куда меньше времени и сил + дополнительное время и дополнительная информация для принятия решения - вполне возможен вариант перехода на другой язык программирования и опять же, с общими основами это не составит труда. Итак, второй этап - создаем базу. На чем же она будет строиться?
Не хватит слов описать эти книги и их авторов - это альфа и омега программирования. В самих книгах имеются ссылки на дополнительные ресурсы авторов, их контакты, их блоги и их проекты. Эти книги слишком сложные, чтобы пытаться пройти их с первого, да и с десятого раза. Для начала хватит "Введения", а продолжать есть смысл уже на этапе 3+.
* тут небольшое дополнение. Недавно я наткнулся на видеокурс по основам компьютерных сетей. Я надеюсь для владельцев ПК не будет новостью начинка компьютера и понимание "что есть Операционная Система", а вот с сетями, скорее всего, зацепиться будет нечем и этот курс должен немного прояснить картину.
Курс "Компьютерные сети"
Далее
Параллельно чтению этих книг и просмотру курса все же не будем забывать про Java.
* Есть смысл сделать небольшой перерыв в JavaRush и полностью пройти эти 3 книги последовательно - собственных примеров и заданий хватит для понимания. От попытки совместить - толку будет мало, а вот проходить 11-20 уровни после них - одно удовольствие.
* Почему Философия, а не многие другие? Потому что написана основательно и без привязки к версии, не прочитаете в самом начале - вернуться не захотите. Сложная, немного устарела, но это классика.
* Структуры и Алгоритмы Лафоре? Многие любят говорить "Математика не нужна, алгоритмы не нужны" - это не так, но тем не менее, Лафоре это компромисс - более хороший уровень алгоритмов можно получить из "Алгоритмы. Разработка и применение" Дж. Клейнберг, Е. Тардос и "Анализ алгоритмов Дж.Макконнелл" .
Прошли их - вернулись на JavaRush и продолжаем решать дальше.
Тут на любителя, но я Шилда оставляю на 3 этап. Тут же проще, понятнее и дружелюбнее будет Хорстманн, а с ним хорошо проходится Нимейер - опять же "на любителя".
И последнее из книг на этом этапе.
Это на "легкое чтение". Совсем необязательно читать одну книгу от корки до корки. Никто не мешает читать их параллельно. Более того - тут лучше чередовать. Простое и понятное - сложное и непонятное.
Тут всего одно дополнение - ГЭБ. Крайне сложная и крайне своеобразная книга. Ее цель - научить работать с уровнями абстракций. Как и все книги из раздела "легкого чтения" и Танненбаума - ГЭБ читается несколько раз, на разных уровнях знаний.
Видео.
И опять на любителя. Но все же в статье про "Топ-5 полезных видеокурсов" все уже сказано. Добавлю в копилку
Технострим Mail.Ru Group
Компьютерная школа Hillel
Дополнительно на этапе
Лучший друг программиста в час одиночества и нужды. В момент когда так не хватает душевного тепла и компании GitHub всегда рядом...
А заодно их канал на ютубе и книга в помощь. На данном этапе достаточно будет регистрации и "Hello, world" в репозитории. Пора бы начать прокачивать репутацию..
ПЕРЕЙДИТЕ В ПОЛНУЮ ВЕРСИЮ
Удачитерпения вам в ваших учебных муках :)