diff --git a/README.md b/README.md
index be82b19..30eab51 100644
--- a/README.md
+++ b/README.md
@@ -1,16 +1,48 @@
-# Интенсив StartJava — программирование на Java для начинающих
+# StartJava — курс программирования на Java для начинающих
-
+
-Вы решили начать изучать язык программирования Java и, возможно, в будущем хотели бы пройти обучение и на других наших [курсах](https://topjava.ru/) и получить достойную профессию разработчика!
-Но знаний еще не хватает и выполнить вступительное домашнее задание (его вы получите сразу после регистрации на проекте) на курсе [BaseJava](https://topjava.ru/basejava) не получается...
+Если вы оказались на этой странице, значит, решили начать изучать язык программирования Java. Если вы достаточно упорны и терпеливы, то рано или поздно старания принесут ожидаемые плоды — вы освоите профессию разработчика. В современном мире — это один из немногих видов деятельности, который позволит вам чувствовать себя прекрасно во всех отношениях. Но достичь этого положения очень не просто: не каждому суждено в итоге стать программистом.
-Что бы помочь вам начать программировать, наша команда разработала курс — StartJava
+Чтобы облегчить ваше обучение, помочь начать программировать, видеть прогресс и повысить шансы на успех, мы разработали авторский курс StartJava, который значительно ускорит процесс освоения Java, заложив прочный фундамент для дальнейшего и более глубокого его изучения. Курс StartJava является первым шагом на пути к профессии Java-программист. Именно с него следует начинать изучать этот язык.
-Все уроки интенсива содержат наши авторские видео, а также ссылки на дополнительные материалы и домашние задания, которое позволят вам закрепить изученные темы
+**Отметим достоинства курса:**
+- тщательная и качественная проверка ДЗ, минимум, два раза в день
+- ответы наставником на любые вопросы, связанные с изучаемыми темами
+- ДЗ проверяется до тех пор, пока оно не будет решено
+- терпеливый наставник без вредных привычек :)
+- большое количество практических заданий разной сложности на каждую тему
+- множество тестов на пройденные темы после каждого урока
+- написание выпускного проекта и ревью его кода наставником
+- авторские видеолекции и статьи с пошаговым разбором материала
+- обилие дополнительных источников для углубленного изучения материала
+- учебный материал хорошо структурирован, последователен и понятен: подается с постепенно возрастающей сложностью
+- обучение не только Java, но и всем сопутствующим технологиям и инструментам: от работы в консоли до Git и баз данных
+- обучение техникам Clean Code, Refactoring и форматированию кода с первого урока
+- получение навыка писать красивый и читаемый код — его качество вырастет в разы
+- привитие культуры профессиональной работы с кодом и правильных привычек
+- закладывание качественного и серьезного фундамента для дальнейшего изучения Java
+- развитие мышления программиста, а также умения искать решение проблем
+- подготовитесь к поступлению на курс BaseJava
+- наконец-то почувствуете прогресс от обучения и начнете программировать
-Также предлагаем вам посмотреть наш вебинар на тему ["Как стать Java-программистом"](https://vk.com/wall-18505771_829)
+**Общие сведения:**
+- электронный сертификат по окончанию на русском и английском языках
+- среднее время обучения 10 недель
+- курс можно проходить в удобные для себя время и темп
+- старт обучения сразу после оплаты
+- по завершению - скидка на курс BaseJava
+**Формат обучения:**
+- вы смотрите наши авторские видеолекции, изучаете дополнительный материал, выполняете ДЗ
+- по мере готовности сообщаете наставнику, что его нужно проверить
+- он проверяет и пишет, что требуется исправить
+- вы исправляете, он снова проверяет. И так повторяется до тех пор, пока ваше решение не будет соответствовать условию ДЗ и представлению наставника о том, как его нужно выполнить
+- если все верно, то наставник напишет, чтобы вы выполняли следующее ДЗ
+
+Курс очень интересный и насыщенный, постоянно развивается и улучшается. Если еще есть сомнения, то [ознакомьтесь с отзывами](https://vk.com/topic-18505771_38447031?offset=80) выпускников.
+
+Также предлагаем вам посмотреть наш вебинар на тему ["Как стать Java-программистом"](https://vk.com/wall-18505771_829).
## Программа интенсива
- **Занятие первое**
@@ -23,8 +55,9 @@
- [Ветвление: if, if else](https://github.com/JavaOPs/startjava/blob/master/lesson%201.md#-7-ветвление-if-if-else)
- [Циклы: for, while, do while](https://github.com/JavaOPs/startjava/blob/master/lesson%201.md#-8-циклы-for-while-do-while)
- [Система управления версиями Git](https://github.com/JavaOPs/startjava/blob/master/lesson%201.md#-9-система-управления-версиями-git)
- - [Домашнее задание](https://github.com/JavaOPs/startjava/blob/master/lesson%201.md#-10-домашнее-задание)
- - [Советы по выполнению домашнего задания](https://github.com/JavaOPs/startjava/blob/master/lesson%201.md#11-советы-по-выполнению-домашнего-задания)
+ - [Итоговые домашние задания](https://github.com/JavaOPs/startjava/blob/master/lesson%201.md#10)
+ - [Опросник](https://github.com/JavaOPs/startjava/blob/master/lesson%201.md#11)
+ - [Общие рекомендации по выполнению ДЗ](https://github.com/JavaOPs/startjava/blob/master/lesson%201.md#12)
- **Занятие второе**
- Разбор домашнего задания
@@ -32,7 +65,8 @@
- Что такое класс
- Что такое объект
- Инкапсуляция: геттеры/сеттеры
- - Домашнее задание
+ - Итоговые домашние задания
+ - Опросники
- **Занятие третье**
- Разбор домашнего задания
@@ -40,15 +74,18 @@
- Компиляция Java-программ. Часть II
- .gitignore
- Домашнее задание
+ - Опросники
- **Занятие четвертое**
- Разбор домашнего задания
- - Среда разработки — IntelliJ IDEA
- - Массивы. Цикл for each
+ - Среда разработки IntelliJ IDEA
+ - Массивы. Цикл foreach
- Задачки на массивы
- Сортировка массива методом пузырька
- Класс java.util.Arrays
- - Домашнее задание
+ - Итоговые домашние задания
+ - Выпускной проект
+ - Опросники
- Бонусные видео
- **Занятие пятое**
@@ -58,19 +95,24 @@
- Домашнее задание
## Рекомендуемые книги
- - [Изучаем Java](https://www.ozon.ru/context/detail/id/7821666/)
- - [Pro Git](https://git-scm.com/book/ru/v2)
- - [Объектно-ориентированный подход. Мэтт Вайсфельд](https://www.ozon.ru/product/obektno-orientirovannyy-podhod-vaysfeld-mett-vaysfeld-mett-211432428)
- - [Java Programming for Kids (есть русский перевод)](http://myflex.org/books/java4kids/java4kids.htm)
- - [Книга для детей: Яша учится программировать](https://drive.google.com/file/d/1ukTlzMrFX3Zj8X9TXp6U-mJUH1fOKUED/view?usp=sharing)
+- [Список книг для начинающего Java-программиста](https://topjava.ru/blog/spisok-knig-dlya-nachinayushchego-java-programmista)
-## Полезные курсы
+## Полезные плейлисты
- [Яков Файн: "Введение в программирование на языке Java"](https://www.youtube.com/playlist?list=PLkKunJj_bZefB1_hhS68092rbF4HFtKjW)
- [Мирончик И.Я.: "Основы программирования на языке Java"](https://www.youtube.com/playlist?list=PL4535B9D2F8203AC7)
+## Полезные ссылки
+ - [Вопросы и ответы для подготовки к собеседованию](https://github.com/enhorse/java-interview)
+ - [Программа для сохранения вашего зрения](https://justgetflux.com/)
+ - [Топовый курс для изучения английского с нуля](https://youtube.com/playlist?list=PLD6SPjEPomauFCdDQwuHubP7F2yIVJnwN)
+ - [Google Переводчик — плагин для браузера](https://chrome.google.com/webstore/detail/google-translate/aapbdbdomjkkjkaonfhkkikfgjllcleb?hl=ru)
+ - [Клевая музыка для кодинга](https://www.youtube.com/channel/UCwVQIkAtyZzQSA-OY1rsGig)
+ - [Плагин для браузера: переводит на русский язык видео с YouTube](https://github.com/ilyhalight/voice-over-translation)
+
+## Благодарности
+ - Спасибо всем, кто дает обратную связь по урокам — она помогает нам делать этот курс еще лучше
+
## Контакты
- - информация о курсах, процессе обучения, трудоустройстве: [topjava.ru](https://topjava.ru/)
- - наша группа в [vk](https://vk.com/topjavaru)
- - skype автора курса (Максим): *canbezam*
- - для общения по данному проекту подключайтесь в группу в мессенджере [Slack](https://join.slack.com/t/startjava/shared_invite/enQtMjk1ODAxNjgzMjY1LWNlNmY5MzFlMGNjMGYzMDI4MTk3YWM1Zjc3ZDhmZjAwNmE3NzUzYWNiY2ViMjg2NTk3NjBkMGI5NWZmYjhjMjk)
- - Максим в Slack: [*@chimax*](https://startjava.slack.com/messages/@chimax)
+ - Информация о курсах, процессе обучения, трудоустройстве: [topjava.ru](https://topjava.ru/)
+ - Наша группа в [vk](https://vk.com/topjavaru)
+ - Мой telegram: *ch1max*
diff --git a/lesson 1.md b/lesson 1.md
index 5eb3b3b..747a42a 100644
--- a/lesson 1.md
+++ b/lesson 1.md
@@ -1,7 +1,9 @@
>  — эта иконка означает, что рядом с ней находится ссылка, содержащая видеоурок: кликайте на нее для его просмотра
+## [Отзывы выпускников о курсе](https://vk.com/topic-18505771_38447031?offset=100)
+## [Демонстрация проверки ДЗ наставником](https://youtu.be/H_PYOW9Qq80?si=isPC3-aYYPhDWL5B)
-#  [Занятие первое](https://drive.google.com/file/d/1l2g_mGPw3XEJ9OyURaXosRVqmeDz4kId/view?usp=sharing)
+# Занятие первое
## Темы занятия
1. [Подготовка рабочего окружения](#1)
@@ -13,74 +15,67 @@
1. [Ветвление: if, if else](#7)
1. [Циклы: for, while, do while](#8)
1. [Система управления версиями Git](#9)
-1. [Домашнее задание](#10)
-1. [Советы по выполнению домашнего задания](#11)
+1. [Итоговые домашние задания](#10)
+1. [Опросники](#11)
+1. [Общие рекомендации по выполнению ДЗ](#12)
+
+# [Видеообзор курса StartJava](https://youtu.be/vM1ygW7pKTE)
+- На данный момент проверка ДЗ проводится в **Telegram** в индивидуальном режиме
+- Обязательно читайте книги из [списка](https://topjava.ru/blog/spisok-knig-dlya-nachinayushchego-java-programmista) параллельно изучаемым темам
##  1. [Подготовка рабочего окружения](https://drive.google.com/file/d/1gWrBFrly3BdXKq868Xr0QkGtpM9FCmI4/view?usp=sharing)
-- Установите Java SE Development Kit 8:
- - для пользователей [Windows](http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html)
- - для пользователей [Ubuntu Linux](http://help.ubuntu.ru/wiki/java)
- - альтернативная сборка [JDK 8](https://libericajdk.ru/pages/java-8u275/) для всех платформ (не требует регистрации; при установке автоматически прописыват в `PATH` путь до папки с java)
-- Откройте консоль и введите в ней `java -version`, а затем `javac -version`
-- Если при этом возникнет ошибка `"java/javac" не является внутренней или внешней командой, исполняемой программой или пакетным файлом`, то
- - [занесите](https://youtu.be/EEqScHr_bec) в переменную окружения `PATH` полный путь до папки, где хранятся файлы `java` и `javac`. Перезапустите консоль
-- Напишите в консоли для вывода значения переменной `PATH` одну из следующих команд:
- - `echo %PATH%` (для Windows)
- - `$PATH` (для Linux)
-- Убедитесь, что в отображаемом результате присутствует путь до указанных выше файлов
-- Установите систему контроля версий [Git](http://git-scm.com/downloads)
-- Создайте аккаунт на [GitHub](https://github.com/)
-- Для удобной навигации по файлам на GitHub установите расширение для браузера — [Octotree](https://www.octotree.io/download)
-- Скачайте и установите [Sublime Text](https://www.sublimetext.com/3). Именно в нем мы будем писать наши программы (с четвертого урока перейдем на IntelliJ IDEA)
-- Выполните [настройку](https://docs.google.com/document/d/1Ebi46kxKng45PLBH2dXpCnXXCHRI18rwXuDrXskWaa0/edit?usp=sharing) Sublime Text
-
-Использовать какую-либо из IDE до четвертого урока — запрещено! Консоль, Sublime Text и "голый" Git — ваши лучшие друзья!
+
+- [Установите и настройте Java](https://topjava.ru/blog/ustanovka-i-nastroyka-java)
+- Скачайте и установите [Sublime Text 4](https://www.sublimetext.com/download). Именно в нем мы будем писать наши программы (с четвертого урока перейдем на IntelliJ IDEA)
+
+**[Отключите](https://chromefaq.ru/nastrojki/kak-perevodit-stranitsy-v-google-chrome-s-anglijskogo-na-russkij#i-6) в браузере автоперевод страниц. Из-за него уроки могут отображаться некорректно**
**Материалы:**
+- [Знакомство с языком Java](https://www.youtube.com/live/QGHGR0xEcFA?si=xW98gPEVGZX_UrG5)
- [Что такое JDK? Введение в средства разработки Java](https://topjava.ru/blog/what-is-the-jdk)
- [Что такое JRE? Введение в среду выполнения Java](https://topjava.ru/blog/what-is-the-jre)
- [Что такое JVM? Знакомство с виртуальной машиной Java](https://topjava.ru/blog/what-is-the-jvm)
-- [Популярность Java-технологий в 2019 году](https://topjava.ru/blog/sostoyanie-java-v-2019-godu)
+- Отчет о популярности Java-технологий в [2019](https://topjava.ru/blog/sostoyanie-java-v-2019-godu), в 2023 ([1](https://drive.google.com/file/d/1KAqubG1ETRfRioEcM46M-OKOh2ZNpzJQ/view?usp=sharing), [2](https://drive.google.com/file/d/14V5UBnbGI7pSa2_kIir36eilF36LiZOD/view?usp=sharing), [3](https://www.jetbrains.com/ru-ru/lp/devecosystem-2022/java/))
##  2. [Первая программа](https://drive.google.com/file/d/1anXQBZ80wvfzozUNlfhy1wtS-eS50cZi/view?usp=sharing)
-Перепишите данный код в Sublime Text:
+- Изучите статью [Java с нуля: первая программа](https://topjava.ru/blog/pervaya-programma-na-java). В ней показано создание простой программы MyFirstApp с main-методом, а также дается подробный разбор каждой строки кода:
``` java
public class MyFirstApp {
public static void main(String[] args) {
- System.out.println("Hello, world");
+ System.out.println("Write once, run anywhere");
}
}
```
-и сохраните его в файле под названием `MyFirstApp.java`
+
+- [Настройте](https://topjava.ru/blog/nastroyka-sublime-text-dlya-java) Sublime Text для Java
+- [Настройте](https://topjava.ru/blog/nastroyka-sublime-text-dlya-java#7) проверку правописания для Sublime Text
**Материалы:**
-- [Обзор и настройка Sublime Text](https://youtu.be/xWhTf_o86Lg) — видео дано для ознакомления с возможностями редактора. Это не значит, что вам нужно делать все то, что делает его автор (youtube)
-- [Установка плагина Terminal для SublimeText](https://youtu.be/9cFW481D2lU) (youtube)
-- [Первая программа на Java – Hello World](http://pr0java.blogspot.com/2015/03/java-hello-world.html)
-- ["Hello World!" Application](https://docs.oracle.com/javase/tutorial/getStarted/application/index.html)
-- [Java "Hello World" Program](https://www.journaldev.com/481/java-hello-world-program)
-- [Java main method](https://www.journaldev.com/12552/public-static-void-main-string-args-java-main-method)
+- [Обзор и настройка Sublime Text](https://youtu.be/xWhTf_o86Lg) — видео дано для ознакомления с возможностями редактора. Это не значит, что вам нужно делать все то, что делает его автор (youtube)
+- [Установка плагина Terminal для SublimeText](https://youtu.be/9cFW481D2lU) (youtube) — можно использовать либо этот плагин, либо `Terminus`
##  3. [Ручная компиляция и запуск программы](https://drive.google.com/file/d/1u0jyGJkFFLUwfj0c21uY2i2louNtIm_3/view?usp=sharing)
Для компиляции и запуска программы необходимо в консоли перейти в папку, в которой находится файл `MyFirstApp.java`, и ввести последовательно следующие команды:
- `javac MyFirstApp.java` — компиляция java-файла
- `java MyFirstApp` — запуск программы
-Для того, что бы русский текст корректно отображался в консоли, компилируйте свои программы с помощью ключа `-encoding utf8`:
-- `javac -encoding utf8 имя_класса.java`
+Для однофайловых программ, начиная с Java 11, процесс компиляции и запуска можно совместить в одной команде:
+- `java MyFirstApp.java`
-Если вы используете windows 10, то можно [настроить](https://drive.google.com/file/d/1LTDN9reLiQFdlgc8Nnx4itfMQ0hhxgkb/view?usp=sharing) ОС на поддержку Юникод. В этом случае ключ `-encoding utf8` уже не требуется.
+Для того, чтобы русский текст корректно отображался в консоли, компилируйте свои программы с помощью специального параметра `javac -encoding utf8 имя_класса.java`
+
+Более подробно об этом рассказывается в статье [Компиляция и запуск Java-программ](https://topjava.ru/blog/kompilyatsiya-i-zapusk-programm-na-java)
+
+А из статьи ["Основы командной строки для Java-программиста"](https://topjava.ru/blog/osnovy-komandnoy-stroki-dlya-java-programmista) вы узнаете о самых нужных и часто используемых командах консоли для работы с файловой системой
**Материалы:**
-- [Работа с командной строкой Windows](https://www.youtube.com/watch?v=8_tkUJhuogA) (youtube)
+- [Getting Started with Java](https://dev.java/learn/getting-started/)
- [Введение в командную строку Windows](https://www.youtube.com/user/Iidsp/videos) (youtube)
-- [Работа с Java в командной строке](https://habr.com/post/125210/)
-- [Сответствие консольных команд Windows и Linux](https://white55.ru/cmd-sh.html)
## 4. Этапы компиляции и запуска
-
+
##  5. [Байт-код](https://drive.google.com/file/d/19Tl7dEpPszjQfulzQBEwyn9sQL0DK3ji/view?usp=sharing)
Для отображения байт-кода класса необходимо в консоли перейти в папку, в которой находится файл `MyFirstApp.class`, и написать:
@@ -88,7 +83,7 @@ public class MyFirstApp {
**Материалы:**
- [Java байт-код «Hello world»](https://habr.com/post/264919/)
-- [javap — Disassembles one or more class files](https://docs.oracle.com/javase/8/docs/technotes/tools/windows/javap.html)
+- [javap — Disassembles one or more class files](https://docs.oracle.com/en/java/javase/17/docs/specs/man/javap.html)
##  6. [Переменные: примитивные типы данных](https://drive.google.com/file/d/1mrsKC-wU7NpxQiNt47rgfySsDGTwB8Wb/view?usp=sharing)
@@ -97,146 +92,97 @@ public class MyFirstApp {
- [Примитивные типы данных](http://developer.alexanderklimov.ru/android/java/types.php)
- [Variables](https://docs.oracle.com/javase/tutorial/java/nutsandbolts/variables.html)
- [Primitive Data Types](https://docs.oracle.com/javase/tutorial/java/nutsandbolts/datatypes.html)
+- [Про размеры типов данных](https://youtu.be/3BmznLJAgaA?t=782)
-
-
-## Все домашние задания показывайте ментору по одному, не копите их!
-- [Чек-лист](https://docs.google.com/document/d/1CcFKdXwgnL3h65izX1oY6PtUKQe9DV-I-YEQQ2RKu74/edit?usp=sharing) наиболее часто совершаемых ошибок при форматировании Java-кода. Ориентируйтесь на него при форматировании своих программ
+
-**Домашнее задание:**
-- Создайте класс **Variable** с методом **main**
-- Объявите в методе переменные всех существующих в Java примитивных типов данных. Каждой переменной присвойте значение
-- В качестве значений используйте информацию о своем компьютере: количество ядер, частота процессора и тд.
-- Выведите все значения переменных на консоль
-- Разберитесь с [Git/GitHub](https://github.com/JavaOPs/startjava/blob/master/lesson%201.md#9): почитайте рекомендации о том, как с ними работать, настройте свой локальный репозиторий
-- **Покажите Д/З наставнику** (пришлите ему ссылку с решенным ДЗ на ваш репозиторий на github)
+- **Домашнее задание:**
+ - Разберитесь с [Git/GitHub](https://github.com/JavaOPs/startjava/blob/master/lesson%201.md#9)
+ - Пришлите наставнику ссылку на удаленный репозиторий с решенными ДЗ
+ - ["Именование переменных"](https://docs.google.com/document/d/1Dv-eo8acvOVFJtUVbaWd1Mfb77Q1IiTlhepgy56qMbc/edit?usp=sharing)
+ - ["Примитивные типы данных"](https://docs.google.com/document/d/1kJqeCC-fKWUjBjrmHJ1mjDu45SGRL39Q5vW4DmLJflA/edit?usp=sharing)
##  7. [Ветвление: if, if else](https://drive.google.com/file/d/1r-UVn4Z9OhV-SUvJdMrC6EG_v9qowAJS/view?usp=sharing)
-
**Материалы:**
- [Ветвление в Java](https://javarush.ru/groups/posts/2726-vetvlenie-v-java)
-- [Оператор if else](https://youtu.be/ryR033ld_N0) (youtube)
-- [The if-then and if-then-else Statements](https://docs.oracle.com/javase/tutorial/java/nutsandbolts/if.html)
-
-**Домашнее задание:**
-- Создайте класс **ConditionalStatement** с методом **main**
-- Перепишите псевдокод, приведенный ниже, с помощью Java
-- Используйте переменные, условные операторы, оператор ! [(логическое НЕ)](http://developer.alexanderklimov.ru/android/java/logic_operators.php)
-- Выводите сообщения на консоль
-- Не используйте переменные типа String
-
-``` java
-ЕСЛИ(возраст > 20) {
- сообщение
-}
+- [Оператор if-else](https://youtu.be/ryR033ld_N0) (youtube)
+- [Тернарный оператор](https://topjava.ru/blog/ternarnyy-operator-v-java)
+- [The if-then and if-then-else Statements](https://dev.java/learn/language-basics/controlling-flow/)
-ЕСЛИ(мужскойПол) {
- сообщение
-}
-
-ЕСЛИ(!мужскойПол) {
- сообщение
-}
-
-ЕСЛИ(рост < 1.80) {
- сообщение
-} ИНАЧЕ {
- сообщение
-}
+
-ЕСЛИ(перваяБукваИмени == ‘M’) {
- сообщение
-} ИНАЧЕ ЕСЛИ(перваяБукваИмени == ‘I’) {
- сообщение
-} ИНАЧЕ {
- сообщение
-}
-```
-- **Покажите Д/З наставнику**
+- [Домашние задания по теме "Ветвление: if-else"](https://docs.google.com/document/d/1LZLCupFXrCmTuaT4KCUW9nKjrzaFDCCH7i5PDpWSLjI/edit?usp=sharing)
+- Покажите ДЗ наставнику
##  8. Циклы: [for](https://drive.google.com/file/d/1MxaPlSwY6-Nv2zOrQGYy5lOSDjYTfnfU/view?usp=sharing), [while, do while](https://drive.google.com/file/d/1YQHY9C1QbueWYFMRBpHFTqg1wt9N_333/view?usp=sharing)

**Материалы:**
-- Циклы в Java [1](http://nikulux.ru/java-uroki/tsikly-v-yazyke-programmirovaniya-java/), [2](http://android-study.ru/cicli-v-java/)
+- Циклы в Java [1](https://timeweb.cloud/tutorials/java/cikly-v-java-osnovy-raboty), [2](https://vertex-academy.com/tutorials/ru/cikly-v-java/)
- [Оператор while](https://youtu.be/15PjODTSTaw) (youtube)
- [Оператор for](https://youtu.be/UYbdAmgcNVc) (youtube)
**Домашнее задание:**
-- Создайте класс **Cycle** с методом **main**
-- Выведите на консоль с помощью цикла for все числа от [0, 20]
-- Выведите на консоль с помощью цикла while все числа от [6, -6] (с шагом итерации 2)
-- Подсчитайте с помощью цикла do-while сумму нечетных чисел от [10, 20]. Выведите ее на консоль
-- **Покажите Д/З наставнику**
+- [Домашние задания по теме "Циклы: for, while, do while"](https://docs.google.com/document/d/1lHSSOzARTx6tfD-4MV-t41S5bnvdNw5hczkQPT05png/edit?usp=sharing)
+- Покажите ДЗ наставнику
##  9. [Система управления версиями Git](https://drive.google.com/file/d/1IMw7DA_lodW2GueWpU1nMUmYx0pnlPGA/view?usp=sharing)
-
+
+
+- [Установите и настройте Git/GitHub](https://topjava.ru/blog/vvedeniye-v-git-github-ustanovka-i-nastroyka)
**Материалы:**
- - [Система управления версиями](https://ru.wikipedia.org/wiki/Система_управления_версиями) (wiki)
- [Базовый курс по обучению Git](https://www.youtube.com/playlist?list=PLIU76b8Cjem5B3sufBJ_KFTpKkMEvaTQR) (youtube)
- [Git. Быстрый старт](https://www.youtube.com/watch?v=4-NX17Ip-xQ&list=PLmRNNqEA7JoM77hOJkPrLOfJQGizCLR3P) (youtube)
- Интерактивные Git-обучалки: [1](https://githowto.com/ru), [2](http://learngitbranching.js.org)
- [Официальная книга про Git](https://git-scm.com/book/ru/v2)
### Настройка локального репозитория
-- Создайте в удобном для вас месте папку под названием `startjava`. В ней будет храниться ваш код
+Более подробно об этом рассказывается в статье [Введение в Git/GitHub: базовые команды](https://topjava.ru/blog/vvedeniye-v-git-github-bazovyye-komandy).
+
+- Создайте в удобном для вас месте папку под названием `StartJava`. В ней будет храниться ваш код
- Создайте на GitHub репозиторий с названием `startjava`
- Напишите в консоли (при этом консоль должна быть открыта в папке `startjava`):
- - [`git init`](https://git-scm.com/book/ru/v1/Основы-Git-Создание-Git-репозитория#Создание-репозитория-в-существующем-каталоге) — создание локального репозитория
- - [`git status`](https://git-scm.com/book/ru/v1/Основы-Git-Запись-изменений-в-репозиторий#Определение-состояния-файлов) — вывод состояния файлов
- - добавьте адрес созданного на GitHub репозитория в git — [`git remote add origin url_на_ваш_startjava-репозиторий.git`](https://git-scm.com/book/ru/v1/Основы-Git-Работа-с-удалёнными-репозиториями)
+ - `git init` — создание локального репозитория
+ - `git status` — вывод состояния файлов
+ - добавьте адрес созданного на GitHub репозитория в git — `git remote add origin url_на_ваш_startjava-репозиторий.git`
- проверьте, добавился он или нет — `git remote -v`
### Рекомендации по Git
1. Последовательность стандартных шагов при работе с Git:
- - [`git add файл_с_кодом.java`](https://git-scm.com/book/ru/v1/Основы-Git-Запись-изменений-в-репозиторий#Отслеживание-новых-файлов) — добавляем файлы/изменения в git (файлы с расширением class не добавляйте)
- - [`git commit -m "краткое описание изменений, которые вы внесли в программу"`](https://git-scm.com/book/ru/v1/Основы-Git-Запись-изменений-в-репозиторий#Фиксация-изменений) — фиксируем (коммитим) изменения
- - [`git push -u origin master`](https://git-scm.com/book/ru/v1/Основы-Git-Работа-с-удалёнными-репозиториями#Push) — [устанавливаем связь](https://qna.habr.com/q/118865) между локальной и удаленной веткой master
-2. На GitHub отправляйте не только файлы с расширением `*.java`, но и папки, например, `Lesson 1`
-3. Если вы хотите в Git добавить папку с файлами, но при этом какие-то файлы требуется проигнорировать (например `*.class`):
- - `git add "Lesson 1"`
- - `git reset "Lesson 1/имя файла, который необходимо проигнорировать"`
-
-##  10. [Домашнее задание](https://drive.google.com/file/d/1Svgm_03td3Aj_MeVt-MBqSCv-PEhXD0A/view?usp=sharing)
-
-> Перед отправкой домашнего задания на проверку обращайте внимание на [`Советы по выполнению домашнего задания`](https://github.com/ichimax/startjava/blob/master/lesson%201.md#11), которые содержат ряд полезных подсказок и разъяснений
-- Прочитайте первую и третью (до стр 84) главы книги [Изучаем Java](https://www.ozon.ru/context/detail/id/7821666/)
-- Прочитайте первые две главы книги [Pro Git](https://git-scm.com/book/ru/v2)
-- Дополнительные книги:
- - [Программирование на Java для детей, родителей, бабушек и дедушек (есть русский перевод)](http://myflex.org/books/java4kids/java4kids.htm)
- - [Яша учится программировать](https://drive.google.com/file/d/1ukTlzMrFX3Zj8X9TXp6U-mJUH1fOKUED/view?usp=sharing)
-- Реализуйте `Калькулятор`, который должен уметь выполнять математические операции (`+, -, *, /, ^, %`) над целыми положительными числами:
- - что бы программа могла выполнить ту или иную математическу операцию (одну, а не все сразу), делайте проверку математического знака, используя `if else`
- - выведите на экран результат вычисления с помощью `System.out.println()`
- - Символ `^` используется в данном задании для обозначения операции возведения в степень, но в Java он выполняет совсем иную функцию. Использовать его для возведения в степень не получится. Самостоятельно реализуйте данную операцию
- - Символ`%`, похожий на проценты, называется [оператором деления по модулю](https://welcome4u.ru/languages/java/ostatok-ot-deleniya-v-java#i-8). В калькуляторе не надо считать проценты! Считайте остаток от деления
-- Напишите игру `Угадай число`:
- - компьютер "загадывает" целое число от (0 до 100], которое необходимо угадать
- - после каждой неудачной попытки выводите подсказку:
- - `"Данное число больше того, что загадал компьютер"` или
- - `"Данное число меньше того, что загадал компьютер"`
- - если число угадано — `"Поздравляю, число угадано!"`
- - меняйте значение переменной, хранящей числа игрока, автоматически по какому-то простому алгоритму (без применения ввода с клавиатуры или генерации рандомных чисел)
- - игра продолжается до тех пор, пока число не будет угадано
-- Выведите в цикле символы кодировки [Unicode](https://ru.wikipedia.org/wiki/Юникод) в диапазоне [9398, 10178]. Если выводятся кракозябры, то [33, 126]
-
-## 11. Советы по выполнению домашнего задания
+ - `git add файл_с_кодом.java` — добавляем файлы/изменения в git (файлы с расширением `class` не добавляйте)
+ - `git commit -m "краткое описание изменений, которые вы внесли в программу"` — фиксируем (коммитим) изменения
+ - `git push -u origin master` — [устанавливаем связь](https://qna.habr.com/q/118865) между локальной и удаленной веткой master
+1. На GitHub можно отправлять не только файлы с расширением `java`, но и папки, например, `Lesson 1` (при этом они не должны быть пустыми)
+1. Если вы столкнулись с проблемами при использовании Git, то статья ["Ошибки использования Git"](https://topjava.ru/blog/vvedeniye-v-git-oshibki-ispolzovaniya-ch-9) поможет их решить
-1. Ментору ссылку на репозиторий достаточно прислать один раз (для самого первого ДЗ). Для последующих ДЗ просто сообщайте, что оно готово и можно проверять
-2. Учитесь грамотно формулировать свой вопрос: "у меня не получается" может иметь тысячи причин. Пишите больше подробностей о том, что вы сделали, что конкретно не получилось, какие появляются ошибки. Присылайте в чат скрины с этими ошибками
-3. При выполнении ДЗ используйте только те темы, которые изучались в текущем уроке
-4. Все задания выполняйте в разных классах
-5. Код пишите только **ВНУТРИ** метода `main` (для каждого класса метод `main` будет своим)
-6. Ввод с клавиатуры, методы класса `Math` или `Random` пока не используйте (но, если вы знаете про них и хотите использовать — дерзайте)
-7. Так должна выглядеть структура ваших папок и файлов
+##  10. [Итоговые домашние задания](https://drive.google.com/file/d/1Svgm_03td3Aj_MeVt-MBqSCv-PEhXD0A/view?usp=sharing)
+
+- [Итоговые домашние задания](https://docs.google.com/document/d/1m6y5qBMfwKjm0DIo3JYqQ9_QNyhroDvsRAirEyDEP7s/edit?usp=sharing)
+
+Так должна выглядеть структура ваших папок и файлов
+
+
+
-
+## 11. Опросники
+- [Итоговый тест](https://forms.gle/YFc2pf6qZw6jdfXM7) позволит вам проверить, насколько хорошо вы освоили пройденные в уроке темы
+- В этом небольшом [опроснике](https://forms.gle/dsthsvh1tRhdJyhu9) вы сможете поделиться своими впечатлениями (анонимно) по поводу первого урока: что (не)понравилось, как его можно улучшить и тд. Ваши ответы помогут нам доработать урок, сделав его еще лучше!
+
+## 12. Общие рекомендации по выполнению ДЗ
+
+1. [Правила](https://github.com/JavaOPs/startjava/blob/master/rules.md) проверки ДЗ наставником
+1. Ментору ссылку на репозиторий достаточно прислать один раз (для самого первого ДЗ). Для последующих ДЗ просто сообщайте, что оно готово и можно проверять
+1. При выполнении ДЗ используйте только те темы, которые изучались в текущем уроке
+1. Ввод с клавиатуры, методы класса `Math` или `Random` пока не используйте (но, если вы знаете про них и хотите использовать — дерзайте)
## Немного мотивации
+- [Как приучить себя к дисциплине и осуществлять свои планы](https://youtu.be/wbItXmjm7tY?si=RceAgonMsijaz3KD)
- [Shia LaBeouf Motivation for Coding](https://youtu.be/J1usv2Hn-pU)
- [Мотивация для программистов](https://www.youtube.com/watch?v=NOVaNe3jx6c)
- [Речь Стива Джобса Перед выпускниками Стенфорда](https://www.youtube.com/watch?v=WVz9E7o1mmk)
- [Мотивационный совет от Стива Джобса](https://www.youtube.com/watch?v=Z2qSUZ1o47U)
- [12 минут сильнейшей мотивации. Перелом сознания](https://www.youtube.com/watch?v=69MkvKrraC0)
+- [Почему мне так сложно учиться программировать?](https://youtu.be/TtT8UNK0sGg)
+- [Простой прием стать программистом быстрее](https://youtu.be/iw3E-Gdncwc)
diff --git a/rules.md b/rules.md
new file mode 100644
index 0000000..0c649ce
--- /dev/null
+++ b/rules.md
@@ -0,0 +1,34 @@
+## Правила на курсе StartJava при проверке ДЗ наставником
+
+1. Проверка ДЗ проводится в Telegram
+1. Все друг с другом общаются на Ты
+1. Доступ к видеолекциям предоставляется только к текущему уроку. Последующие уроки открываются по мере завершения текущего (сделано с целью профилактики списывания)
+1. Проверка ДЗ действует 10 недель с момента оплаты с возможностью продления
+1. Взаимодействие с наставником проходит по следующей схеме:
+ - вы смотрите видеолекции (ссылки на них находятся рядом с иконками логотипа ютуба), изучаете дополнительный материал, выполняете ДЗ и **сдаете их по одному (а не все сразу!)**
+ - по мере готовности сообщаете наставнику, что его нужно проверить
+ - он проверяет и пишет, что требуется исправить
+ - вы исправляете, он снова проверяет. И так повторяется до тех пор, пока ваше решение не будет соответствовать условию ДЗ и представлению наставника о том, как его нужно выполнить
+ - если на вашем последнем сообщении наставник ставит 📌, то он его прочитал. Если стоит 🧐, то в данный момент ваше ДЗ на проверке. Если стоит ✔️- ДЗ проверено
+ - если все верно, то наставник напишет, чтобы вы выполняли следующее ДЗ
+1. Ссылку на свой репозиторий наставнику достаточно скинуть один раз
+1. Комментарии к вашему коду будут даваться наставником в краткой форме. Если вам требуется пояснение по какому-то пункту, то задавайте ему дополнительные вопросы для получения более развернутого ответа
+1. Переходить к следующему уроку можно после того, как вам об этом сообщит наставник. Не делайте это самостоятельно
+1. Для минимизации "простоев" допускается выполнять последующие ДЗ до того, как наставник вам об этом напишет
+1. Максимальное время проверки ДЗ до суток, но как правило раньше
+1. Если наставник не проверил ДЗ за указанный срок, то напомните ему о себе (он вас мог случайно пропустить)
+1. Если у вас закончился срок проверок ДЗ, то его можно продлить еще на месяц в личном кабинете (ссылка на него есть в любом нашем письме) [на сайте](https://javaops.ru/)
+1. Доступ к материалам курса у вас остается навсегда
+1. Пришлите наставнику свою гугл-почту для доступа ко второму и последующим урокам
+
+#### Общие рекомендации
+- Учитесь грамотно формулировать свой вопрос: "у меня не работает" может иметь тысячи причин. Пишите больше подробностей, что вы сделали, что конкретно не работает, какие появляются ошибки. Присылайте в чат скрины с этими ошибками
+- Учитесь гуглить с первых уроков - это важный навык, который нужно качать
+- Перед тем как задать вопрос наставнику сначала погуглите; если в течении 2-3 часов вы не найдете ответ, то опишите подробно свою проблему наставнику
+
+#### Расписание проверок ДЗ
+
+[Максим Чимаев](https://t.me/ch1max)
+- выходные дни вторник и четверг
+- время проверки с 11:00 по 13:00 и с 17:30 по 19:30 (но не позднее 21:00 по мск. времени)
+- проверка в выходные дни не гарантируется, но возможна