— Приветствую, друг Амиго (прости за тавтологию!). Ты наверняка слышал пословицу: "тяжело в учении — легко в бою"?

Что ж, действительно, в обучении часто бывает непросто! Ты осваиваешь новую для себя профессию программиста, и, вполне возможно, кардинально меняешь свой род деятельности. Кем только не работали раньше наши выпускники! Среди них были и строители, и физики, и даже альпинисты.

JavaRush ориентирован на большое количество практики, она занимает больше 80% всего процесса учебы.

Мы превратили его в большой и интересный квест (даже целую серию квестов), но все люди разные: кто-то учится быстрее, а кто-то медленнее. Кому-то новый материал дается легче, а кому-то сложнее. Но наша задача состоит в том,чтобы к финишу пришел каждый из наших учеников.

— Профессор, а что делать, если очередная задача никак не дается, а объяснение какой-то темы, хоть убей, не укладывается в голове?

— Ответ очень прост: сообщество. Это такие же ученики, как и ты, выпускники, учителя, профессиональные разработчики...

Программисты — это не просто несколько миллионов человек, которые пишут код на разных языках и в свободное время создают стартапы. Они образуют глобальную сеть, внутри которой постоянно делятся знаниями с другими, готовы отвечать на вопросы и помогать разбираться в сложных темах.

Крупнейшее в мире сообщество разработчиков — сайт StackOverflow — зародился именно из необходимости программистам перенимать знания друг у друга. Его идея проста, ты задаешь вопрос, и любой программист в мире может на него ответить. Удобно, правда ведь?:)

Мы на JavaRush считаем обмен знаниями между учениками огромной ценностью. Помогая другим, программист развивается сам (ведь нет способа лучше в чем-то разобраться самому, чем объяснить это другому человеку).

Именно поэтому мы создали специальные разделы, призванные дать всем нашим ученикам возможность делиться знаниями и помогать друг другу в процессе учебы.

Итак, что же делать, если застопорился на очередной задаче? Искать готовое решение в интернет — плохая идея. Если найдешь, квест тебе засчитается. Только вот пробел в знаниях никуда не денется и в будущем обязательно аукнется. Уж поверь.

Гораздо лучше начать активно пользоваться разделом Помощь.

Полезные ссылки от профессора – 1 - 1

Если тебе нужно найти конкретную задачу с конкретного уровня,просто введи её название в строке поиска.

Полезные ссылки от профессора – 1 - 2

Или сделай иначе — выбери нужный квест и уровень из выпадающего списка.

Полезные ссылки от профессора – 1 - 3

Если установить фильтр "Решенные", ты увидишь те вопросы, на которые сообщество JavaRush дало успешный ответ.

Достаточно просто нажать на кнопку "Задать вопрос", приложить ссылку на задачу и рассказать о проблеме.

Обрати внимание: в разделе Помощь запрещено приводить готовый работающий код в качестве ответа. Смысл этого раздела в том, что участники дают друг другу подсказки, с помощью которых ты сам придешь к правильному решению. С одной стороны, у тебя не остается пробелов в знаниях, с другой — можно быть довольным собой: ты решил задачу, а не пропустил ее и не нагуглил готовое решение. Сплошные плюсы!:)

Но и набравшись опыта на JavaRush, не стоит забывать о разделе Помощь! Как я уже отметил выше, нет способа лучше выучить что-то, чем объяснить это другому. Ученики JavaRush будут рады, если ты придешь на помощь им так же, как когда-то кто-то приходил на помощь тебе. Просто выбери фильтр "Новые", и попробуй ответить на вопросы коллег по цеху. Они будут благодарны, а ты лишний раз углубишься в тему и покопаешься в чужом коде (а разбираться в чужом коде — критически важный для программиста навык!).

Но на JavaRush мы не только учимся! Мы еще и общаемся с другими программистами (начинающими и уже состоявшимися).

В социальных сетях для общения единомышленников обычно создаются группы. Мы решили, что это хорошая идея, поэтому на нашем сайте группы тоже есть.

Как видишь, группы бывают разными. Они делятся по интересам в ИТ-сфере (есть группы front-end'щиков и тестировщиков), по городам (там публикуется информация о вакансиях, стажировках и конференциях в конкретном городе). Есть отдельная группа для участников онлайн-стажировки, или тех, кто хотел бы туда попасть.

Обязательно вступи в три основные группы нашего проекта!

В группе JavaRush мы публикуем самые свежие новости проекта, информацию о стажировках JavaRush, конкурсах и акциях. Вся новая информация о проекте и изменениях в первую очередь появляется там.

В группе Random публикуются интересные статьи об ИТ в целом, многие из которых написаны нашими учениками и выпускниками! Там ты сможешь прилично расширить свой кругозор новыми технологиями, найти обзоры на книги, получить советы в поиске работы, расслабиться за чтением айтишного юмора и многое другое:)

Там же расположен и раздел "Рейтинг".

Успешно решай все задачи, и однажды сможешь стать лучшим среди всех учеников!:)

В группу Java Developer попадают интересные статьи о Java, дополнительные учебные материалы и новости языка.

А еще группы JavaRush — лучшее место для начинающих авторов! Написание статьи — отличный способ систематизировать свои знания по какой-то теме. Наши ученики активно пишут свои посты, а мы — мотивириуем их! Например, мы периодически проводим конкурсы, где авторы лучших статей выигрывают книги по программированию. Отзывы участников о конкурсах и подарках публикуются в группе Random!

— Ну хорошо. С практикой всё понятно. А что с теорией?

— Теория, конечно, вещь тоже очень важная. Если бы физики не систематизировали свои знания в теории, а занимались исключительно экспериментами, это, конечно, было бы очень весело, но вряд ли очень полезно! Программирование тут не исключение. На JavaRush мы сосредоточились в основном на практике и задачах, которые позволят максимально быстро добиться прогресса. Но ты можешь (и мы настоятельно советуем!) черпать знания и из других источников информации, прежде всего — из книг.

Все люди разные: кому-то достаточно прочитать одну короткую лекцию и JavaRush и все сразу понятно; другим удобнее черпать информацию из разных источников, обобщать и делать выводы.

Вот лучшие книги по программированию на Java, по которым ты можешь учиться параллельно с JavaRush. Каждая из них давно себя зарекомендовала и точно не станет пустой тратой времени и денег.

1) Кэти Сиерра, Берт Бейтс, "Изучаем Java" (ориг. "Head-First Java")

Полезные ссылки от профессора – 1 - 4

Однозначно лучшая книга по Java для новичков! Head-First — серия из многих десятков книг по разным языкам программирования. Авторы придерживаются собственной оригинальной манеры подачи материала, благодаря чему книга читается быстро и очень легко. А еще писать код и решать задачи можно прямо в книге!

Полезные ссылки от профессора – 1 - 5

Ее можно читать с любого уровня JavaRush, даже с нулевого:)

2) Герберт Шилдт: "Java: полное руководство"

Полезные ссылки от профессора – 1 - 6

Эта книга также хороша для новичков. От предыдущей она отличается прежде всего манерой подачи материала: здесь она более строгая и последовательная (многие предпочитают именно такую форму подачи материала игровой). К её несомненным плюсам можно отнести "разжевывание" материала до самых мелочей, иногда — многократно.

3) Брюс Эккель, "Философия Java"

Полезные ссылки от профессора – 1 - 7

Библия Java-программиста. Это не преувеличение — каждый Java-разработчик должен прочитать ее. Она довольно объемная, и тому есть причина. Такое название дано ей неспроста: здесь не только разбираются конкретные темы по языку, но и объясняется философия языка Java, его идеология; причины, по которым создатели языка сделали что-то по-своему, а не так как в других языках.

Она не подходит для совсем начинающих программистов, но дойдя до 20-го уровня JavaRush, ты уже можешь приступать к ее изучению.

Это основные книги по языку Java, которые ты можешь прочесть (есть и многие другие). Но помимо языка, с помощью книг ты можешь расширить кругозор в понимании программирования вообще. Вот лучшие книги для этого:

4) Чарльз Петцольд, "Код. Тайный язык информатики"

Полезные ссылки от профессора – 1 - 8

Рейтинги этой книги на Amazon (4.7/5), Ozon (5/5) и восторженные отзывы говорят сами за себя.

Великолепная книга для тех, кто давно забыл школьный курс информатики, или вообще никогда им не владел. Важные вещи о работе компьютера и кода объясняются буквально на пальцах. Как, например, компьютер вообще выполняет написанный программистом код? И как он понимает по тексту кода, что от него хотят?

Ответы на эти вопросы — в этой ставшей уже классикой книге. Она прекрасно восполнит знания тех, кто изучает программирование без профильного образования.

5) Адитья Бхаргава, "Грокаем алгоритмы".

Полезные ссылки от профессора – 1 - 9

Алгоритмы и структуры данных — тема очень важная и необходимая. Значительную часть работы программиста занимает их использование, и оно должно быть эффективным! Как, например, отсортировать по порядку 1000 чисел, записанных в случайном порядке?

На самом деле, это можно сделать кучей способов! И все они далеко не одинаково эффективны. Книг и курсов по алгоритмам и структурам данных очень много, но для людей, которые только начали изучать программирование, книга Бхаргавы однозначно является лучшей. Легкий язык, подробные объяснения с картинками и не очень большой объем — то что нужно для начала!

А вот тут, в группе, ученик JavaRush написал свои рекомендации по книгам для новичков. И — знаешь что? — я и другие учителя с ними согласны!

Читай книги, решай задачи и участвуй в жизни сообщества — идеальный рецепт того, как стать программистом!