Java – Основи
Якщо ще немає досвіду в програмуванні, то наступні безкоштовні матеріали рекомендовані до проходження:

‣ Книга Якова Крамаренко: Введення в Разробку Програмного Забезпечення (на прикладах з HTML, CSS, JavaScript) і/або курс CS50 від Гарварду (російською)
‣ Курс від code-basics.com: Java для начинающих
‣ Курс stepik.org: Java. Базовый курс

Якщо досвід в програмуванні є, але не з Java, то можна швидко познайомитись з ним через:

‣ Швидке введення в синтаксис мови: Learn X in Y minutes Where X=java (російською)
‣ Інтерактивні прості задачки по синтаксису у вигляді тестів: Java Koans

Якщо залишиться час, можна попрактикуватись на одному з наступних ресурсів:

exercism.io: Java Track
CodinGame
codewars

Також, тобі буде зручніше, якщо будеш зберігати версії свого коду для вирішення тих чи інших завдань в системі управління і контролю версій. Я рекомендую використовувати git і один з найпопулярніших серверів – github.com. А ось і безкоштовний гайд на тему: Github - Hello World. І курс від hexlet.io: «Системы контроля версий (GIT)». А може тобі буде достатньо мого вступного відео про гіт на 50 хвилин.