1. Сообщество

JavaRush ориентирован на большое количество практики: она занимает больше 80% всего процесса учебы. Мы превратили его в большой и интересный квест (даже целую серию квестов).

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

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

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

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

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


2. Вопросы по задачам

Требования, рекомендации и виртуальный ментор — это действительно круто. Но что делать, если валидатор все еще не принимает ваше решение, а в чем ошибка — неясно?

И на этот случай у нас есть решение. Встречайте – Раздел Помощь. В этом разделе сайта студенты JavaRush могут задавать вопросы по задачам, разбирать решения друг друга, а также давать советы и подсказки. Публиковать правильные решения не разрешается.

Звучит очень просто и примитивно, хотя на самом деле все как раз наоборот.

Во-первых, у каждого вопроса можно указать задачу, с которой он связан. Поэтому вам нет смысла копаться во всех вопросах, если вас интересуют вопросы по определенной задаче. Вы всегда можете легко отфильтровать вопросы только по задаче, которая вас интересует. Просто введите название задачи в строке поиска:

Во-вторых, если вы во время решения задачи в WebIDE нажмёте на кнопку «Помощь сообщества», сразу перейдете в раздел Помощь, где будут отфильтрованы только вопросы по той же задаче, которую вы решали в WebIDE.

В-третьих, аналогичный функционал доступен и в плагине к IntelliJ IDEA. Вы можете нажать кнопку «Помощь» или комбинацию клавиш Ctrl+Alt+W, и тут же откроется браузер, в котором будет открыт раздел Помощь. И конечно же, в нем уже будут отфильтрованы только вопросы по задаче, которую вы решаете в IntelliJ IDEA.


3. Создание своего вопроса

Если же вы не нашли хорошего разбора вашей ошибки в разделе Помощь, вы всегда можете создать свой вопрос. Делается это достаточно легко: нужно всего лишь нажать кнопку «Задать вопрос» и заполнить необходимые поля:

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

И кстати, вам не нужно копировать код вашего решения из WebIDE или Intellij IDEA и добавлять его к вашему вопросу. При создании вопроса по задаче к нему автоматически добавится код вашего решения и информация о статусах требований: какие требования прошло ваше решение, а какие — нет.

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


4. Код решения

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

Быстро и качественно задать вопрос — это целое искусство. На обычных сайтах вам придется или потратить полчаса на оформление вопроса, или смириться с тем, что вам никто не отвечает. Хороший вопрос по задаче просто обязан содержать такие данные:

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

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

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