Ablazzing

На Пикабу
поставил 42 плюса и 4 минуса
проголосовал за 0 редактирований
2481 рейтинг 211 подписчиков 136 комментариев 24 поста 11 в горячем

Августовская встреча для желающих начать программировать на java с нуля

2 недели назад встречались с пикабушниками, рассказывал про то, как начать программировать на java, интерес был бешенный, но все таки пятница вечер подкосила многих. Решил повторить. В понедельник в 20:00 по мск.
Для получения ссылки пишите в телеграмм @Ablazzing

5

Набор на бесплатный курс по основам java (для людей без опыта программирования)

В связи со слабой учебной активностью людей в августе, Объявляю БЕСПЛАТНЫЙ набор на месячный курс по основам java. Курс подойдет новичкам в программировании, а так же переходящим с другого языка.
Формат обучения: онлайн по четвергам в 20:00, в воскресенье в 15:00.
Старт 18.08!
По вопросам пишите в телеграмм @Ablazzing

Новый набор на программирование на java с нуля!

Для тех кто хочет начать программировать с нуля, не понимает что делать и куда идти, предлагаю присоединиться к моему 3 потоку «java с нуля». Занятия проходят онлайн: в программе zoom.
Обучение будет длиться месяц, раз в неделю вы будете получать домашку и через неделю ее сдавать)

Если вы мечтали начать программировать,пишите мне в телеграм @Ablazzing. Поток стартует 17.08 по средам в 20:00 мск и воскресенье в 15:00. Более подробная инфа в личке)

Отзывы о моем обучении:
1. Как я учил пикабушников программировать с нуля (новый набор!)
2. Как я пикабушников бесплатно java учил

Новый набор на программирование на java с нуля! IT, Программирование, Обучение, Учеба, Java, Длиннопост
63

Онлайн встреча для тех кто хочет начать программировать на Java

Всем привет! Меня зовут Юрий, я ведущий java разработчик в крупнейшем банке России. Не понаслышке знаю, как тяжело войти в мир разработки (учился на множестве сайтов и курсов, прошел около 30 собеседований перед устройством).
В эту пятницу, в 20:00 по мск проведу встречу, где буду отвечать на вопросы: как начать обучение по java, какие материалы, курсы лучше всего изучить. Какие знания нужны для  первого устройства на работу. Сколько времени в среднем нужно потратить до начала рассылки резюме в компании. За ссылкой пишите мне в телеграмм @Ablazzing. Встреча бесплатная и будет выложена на youtube.
Мои предыдущие посты:
5 причин которые замедляют ваше обучение программированию
Как я учил пикабушников программировать с нуля (новый набор!)

Чему можно научить человека с нуля за месяц в программировании java?

Всем привет, я создатель курсов по java для новичков и хотел бы рассказать, что может освоить человек за месяц (в конце новый набор).

1. Ученик узнает как вообще начать разработку. Какие редакторы кода есть, как ими пользоваться. Часто бывает так, что на онлайн обучениях пишут код в браузере, но когда доходит дело до разработки своего первого проекта - ученик теряется.


2. Система контроля версий и репозитории - понимает для чего вообще нужен git, как сделать коммит,  как отправить свой код в удаленный репозиторий на github, скачать чужой код к себе на локальную машину.


3. Переменные, типы данных - знает как создать переменную с нужным типом данных: какие  нужны типы данных для чисел, строк, символов, булевых значений. Чувствует разницу между ссылочным типом данных и примитивом.


4. Массивы и циклы - осваивает создание массивов, итерацию по ним через for each,  пользуется for i, while. Может создать цикл который выполнит 100 раз блок кода


5. Работа со строками и числами - знает про популярные методы класса String. Слово "конкатенция" - становится не ругательным. Спец символы: перевод строки, табуляция - перестают быть магией. Осваивает математические операции.


6. Булева логика и условные конструкции - понимание логических операторов && (И), || (ИЛИ), !(не). Может написать конструкцию "если условие такое то, то выполни этот блок кода, иначе выполняй другой".


7. ООП (Объектно-ориентированное программирование) основы  - осваивает такие понятия как: класс, экземпляр класса, атрибут, метод, конструктор, статические атрибуты и методы. Может рассказать в общих словах о 3 принципах ооп - инкапсуляция, наследование, полиморфизм. Знает как описать объект из реального мира.


8. ООП расширенный - знает про абстрактный класс и в чем разница между обычным классом. Знает как вызвать конструктор, метод класса родителя. Понимает разницу между интерфейсом и абстрактным классом. Может сложить объекты разных классов в один массив на основе полиморфизма. Умеет применять Enum.


9. Работа с файлами - чтение (посимвольное, построчное), запись в файл. Может прочитать данные из первого файла, изменить их и записать во второй файл.


10. Ошибки(exceptions) в java - знает про классы exception, runtimeexception, понимает разницу между ними. Может создать свой exception. Понимает когда нужно использовать try catch, а когда нужно прокинуть ошибку в сигнатуру метода.


11. Класс Object - узнает для чего нужен, знает про все методы, кроме wait, notify, notifyAll.


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



Отзывы о моем обучении:

1. Как я учил пикабушников программировать с нуля (новый набор!)

2. Как я пикабушников бесплатно java учил

Чему можно научить человека с нуля за месяц в программировании java? IT, Программирование, Обучение, Учеба, Java, Длиннопост
Показать полностью 1

Не закрывается пластиковое окно , помогите советом

У меня дома есть пластиковое окно, и находясь в положении открытого окна (по горизонтали), перестало закрываться, упирается в железную конструкцию внизу у окна (второе фото). Подскажите, как можно закрыть его?

Не закрывается пластиковое окно , помогите советом Окно, Помощь, Длиннопост
Не закрывается пластиковое окно , помогите советом Окно, Помощь, Длиннопост
Показать полностью 2
52

5 причин которые замедляют ваше обучение программированию

Первая причина - Непонимание, что нужно учить.
Казалось бы ты выбрал язык программирования python, java или c++. Ты прошел курсы, получил какой-нибудь сертификат, но при просмотре вакансий - много неизвестных слов: orm, sql, git, http и тд. Вдруг оказывается, что знать сам язык оказывается мало, и нужно освоить несколько технологий, которые вообще с твоим языком не связаны. Усложняет то, что в вакансиях часто бывают разные наборы технологий (maven/gradle, java/kotlin, oracle/ms sql). Что учить непонятно!
Только взгляд со стороны сможет помочь вам, в какую сторону нужно двигаться.

Вторая причина - Неумение преодолевать ошибки/сложные моменты.
В программировании является нормой когда твой код выдает ошибки. И тут у многих начинается паника: "Что делать? Вроде все правильно написал".  Есть несколько способов решить эту проблему: использовать отладку программы, выводить в консоль состояние переменных, спросить у более опытных программистов, штурмовать StackOverFlow.

Третья причина - Падение мотивации в середине обучения.
Вы влетаете в мир программирования, быстро проходите простые темы - переменные, циклы, условные выражения, все кажется очевидным. А дальше начинаются темы, которые уже требуют более сильного внимания: ООП, структуры данных, паттерны, тестирование и тд. И этот запал быстро угасает. Здесь на первый план выходят ваши источники обучения: вам придется искать разные объяснения одной и той же темы, ибо объяснение подходящее одному человеку, может не подойти другому.

Четвертая причина - Затяжная длительность обучения.
Когда делаешь что то очень долго, и не получаешь от этого никаких плодов (материальных), то само собой руки начинают опускаться. Чем больше времени тратишь, тем меньше мотивация. Характерно для многих отраслей. Ваша задача освоить необходимый минимум для трудоустройства, за короткий промежуток времени. Без наставника твое время обучения будет больше.

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

Если вы вдруг хотите начать программировать, этот пост для вас: Как я учил пикабушников программировать с нуля (новый набор!)

Показать полностью
198

Как я учил пикабушников программировать с нуля (новый набор!)

Как я учил пикабушников программировать с нуля (новый набор!) Обучение, Программирование, IT, Учеба, Java, Образование, Длиннопост

Набор

Месяц назад я объявил набор на обучение java с нуля (Как я пикабушников бесплатно java учил). Причем объявил неявно, написав в конце поста о наборе на новый курс. Я ожидал что придет человек 20. Никогда еще так не заблуждался. 20 человек пришло в первый день, а дальше я не успевал отвечать всем, и на количестве 50 человек, закрыл набор! Удивительно то, что спустя 2 недели после начала курса продолжал получать письма. Задавал всего лишь 2 вопроса перед приемом: готов ли человек делать домашнюю работу и есть ли микрофон. На этом этапе около 5 человек отсеялось.


Цель курса:

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


Формат обучения:

Первым делом я создал группу в телеграмме, чтобы участники могли познакомиться друг с другом и задавать вопросы. Дальше создал телеграмм канал, где публиковал объявления.

Встречи онлайн два раза в неделю: среда в 20:00, воскресенье 15:00. Встречи проходили в Zoom. Все записывалось и выкладывалось на youtube, чтобы можно было пересмотреть лекцию.

Домашние задания выдавались раз в неделю (в воскресенье после лекции), и проверялись в пятницу.

Домашки были разделены на 3 уровня: базовый (для новичков в программировании), продвинутый (для тех кто хорошо понял тему, или уже немного изучал java), экспертный (для людей с опытом программирования)

У нас был документ в google docs, где можно увидеть успеваемость учащихся.

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


Начало обучения

На первой встрече мы познакомились, я рассказал о себе, а потом устанавливали программы необходимые для разработки: редактор кода Intellij idea, система контроля версий git + создали профиль на Github. Я начал показывать действия на своем экране, и установил с нуля все программы. При виде git у некоторых началась паника :) Стало понятно, что на первых парах лучше не трогать git и обойтись встроенным функционалом Intellij idea. Первой домашкой стала установка того же самого на своем компьютере и создание репозитория на Github. В течении недели мы переписывались, созванивались и я лично помогал настроить свои компьютеры ученикам. Чтобы не сдать эту домашку, нужно было ничего не делать и никому не писать, в случае проблем :) На этом этапе произошел самый большой отсев: около 9 человек тупо забили и не сделали ничего.


Учебный процесс

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

После этой домашки ушло 5 человек, и дальше уже не было такого количества ушедших - остались только те, кто действительно хотел учиться.

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

Спустя несколько дней после начала, образовалось "ядро" курсов - самые мотивированные ученики: они готовы были помочь другим, шутили, задавали вопросы по профессии, кидали интересные статьи.

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

Для "экспертов" пошла уже более интересная информация: если объявление переменных выглядит более менее одинаково на других языках, то особенности ООП java уже не так очевидны.

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


Что будет дальше?

В связи с большими затратами личного времени, я решил, что следующие курсы буду делать платными - все таки труды должны вознаграждаться)


Поэтому я объявляю новый набор на Модуль №1: основы java и git

Занятия будут по вторникам в 20:00 по мск, и в воскресенье в 13:00. Старт 10.07. Продолжительность месяц.

В эту пятницу в 20:00 по мск, будет онлайн встреча, где я отвечу на ваши вопросы. Пишите мне в телегу, для получения ссылки @Ablazzing



Для тех кто уже знает основы, будут следующие модули:

Модуль №2: Generics, структуры данных, Stream Api, Reflection api. - по средам в 20:00 и воскресенье в 15:00. Старт 06.07. Продолжительность месяц.

Модуль №3: Углубление в git, maven, lombok, введение в тестирование. - на будущее

Модуль №4: Sql, jdbc, hibernate. - на будущее

Модуль №5: Spring core + boot + web + rest + data. - на будущее


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


Если вы хотите начать погружение в мир Java, пишите мне в телеграмм @Ablazzing, спасибо за внимание :)

Показать полностью 1
195

Как я пикабушников бесплатно java учил

Как я пикабушников бесплатно java учил Программирование, IT, Обучение, Java, Длиннопост

Полтора месяца назад я сделал два поста(Бесплатные курсы по java, Бесплатные курсы по java продолжение набора), в котором приглашал на бесплатное обучение java , тех кто уже знает основы, чтобы показать как разрабатываются промышленные приложения.

Предлагаю отчет об обучении: как это было, что нового извлек и что будет дальше (спойлер: новые курсы в конце поста).


Формат обучения

Курс предполагал занятия 3 раза в неделю: в среду в 20:00(МСК), субботу и воскресенье в 15:00. Занятия проходили по 2 часа, в google meet. Структура урока была следующая: я рассказывал 30 минут теорию, с демонстрацией в миро, а дальше один из участников курса расшаривал экран (показывал свой экран другим), и все вместе пытались реализовать наше приложение.


Цель обучения

Создать web приложение, которое является справочником вкусовых предпочтений людей.

Есть справочник существующей еды (банан, яблоко, помидор...), и есть список людей, у которых указан их любимый продукт из справочника. Мы должны были иметь возможность с помощью http запроса добавлять/удалять/получать/изменять наш справочник и список людей. Для упрощения обучения вместо реляционных баз данных, были выбрано хранить данных в файлах csv. Технологии которые использовали на проекте: Java 11, maven, lombok, junit, mockito, spring boot, spring web, git + github.



Этап 1: Набор

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

Так же поставил для себя лимит в 12 человек.

Соотношение готовых потянуть и не готовых было 50/50. Задавал следующие вопросы: чем static метод отличается от не static, разница между интерфейсом и классом, ключевое слово final, что такое Map, List.

Если человек совсем плохо отвечал, то говорил ответы на заданные вопросы, далее предлагал подтянуть теорию и ожидать следующего курса.

Если отвечал средне, то задавал доп вопросы, и старался понять как человек мыслит. Обычно эта категория проходила в набор.

Если все хорошо, то сразу предлагал присоединиться к нам.


После первого поста мне написало 10 человек, после второго около 20. Были и интересные люди, которые писали, но как только ты им отвечал, они сразу испарялись. Кто то не успел.

В результате записалось 12 человек (10 с пикабу + 2 с других источников). Перечислю некоторых пикабушников: @maximysUA, @VoodoomanRUS, @VitMGN, @RntNgn, @EnotOrNot.


Этап 2: Обучение

На 1 этапе, я создал группу в телеграмме, где опубликовал список необходимых программ для установки. Все благополучно справились с задачей (Отдельно хочу выделить человека, который стал душой чата и помогал всем: Дмитрий @VoodoomanRUS), и в субботу началось первый урок.

Сначала рассказывал я, потом ученики по очереди, в режиме онлайн выполняли задания, а я им помогал. Каждая встреча записывалась и поэтому те кто не мог присутствовать, пересматривали в записи и писали вопросы.


Были темы, которые прошли относительно легко - например git, lombok, работа с maven. Были темы, которые тяжело зашли: spring core, mockito, создание взаимодействия слоёв приложения. Во первого касания spring core, была гробовая тишина, и складывалось ощущение, что никто ничего не понял, но во время практики ученики развенчали этот миф).


В какие то моменты между уроками, приходилось еще раз объяснять основы java, потому что внезапно оказывалось непонимание базовых тем. Так же много времени уделялось работе в Intellij idea: горячие клавиши, как работать с гитом через idea, как рефакторить код и тд. Чуть чуть коснулись команд bash - cd, mkdir, touch, cat, echo.


Познакомились с жизненным циклом сборки проекта в maven, как подключать зависимости, плагины и тд... Написали unit и интеграционные тесты (к сожалению времени не хватило на данный функционал). Создали все слои приложения: Repository, Service, Controller.

Создавали http запросы разных видов через приложение Insomnia, чтобы тестировать наше веб приложение.


В группе были двое человек, которые значительную часть времени смотрели уроки в записи, но по их утверждениям все поняли). Весь код отправляли мне на репозиторий. За 13 уроков мы написали приложение (в котором я не написал руками ни одной строчки кода), и счастливо расстались друг с другом.


Проблемы обнаруженные мной:

1. Первоначально, я отказался от домашней работы и планировал давать только тем, кто не понял материал. Это оказалось ошибкой, ибо тяжело понять, понял ли человек материал, пока он не сделает сам задачу. Те кому задавал домашки, кидали мне свой код (делали pull request в мой репозиторий) и я давал комменты.

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

3. Не хватило времени на рефакторинг проекта, написания тестов на весь функционал.

4. Поверхностно коснулись spring

5. Разные уровни у людей: когда ученик с более хорошим уровнем java писал код, часто другие не успевали за полетом его мысли.

6. Нехватка знаний по java core у некоторых учеников.

7. Не успели на практике использовать Generics


Итог:

1. По результатам курсов, я понял, что обучать людей мне нравится.

2. Нужно сделать несколько курсов, чтобы была возможность обучать людей с нуля: java core + git -> java collections + generics + lombok -> spring web app


Новые курсы

Передо мной встала дилемма: объявить о начале платных курсов или наработать еще опыта, чтобы выйти в свет со всеми курсами. И тут я вспомнил про эксперимент одного ресторана в Великобритании: а что если каждый сам решит, сколько стоит пройденный курс!

Поэтому приглашаю всех желающих, на обучение с нуля Java, где после окончания курса вы сами определитесь сколько стоит мне платить!

Старт нового курса 1 июня, в 20:00 по МСК, два раза в неделю: в среду 20:00 и в воскресенье 15:00.

ВНИМАНИЕ: Курс для новичков (будут только java core + git). Если у вас есть база, следите за моими постами.

За подробностями в телеграм @ablazzing

Показать полностью
7

Ответ на пост «Риэлтор - гарант чистой хаты?»

Имел положительный опыт взаимодействия с риэлтором при продаже квартиры:
Риэлтор выставлял объявления, сам общался с потенциальными покупателями (а есть очень много неадекватов), предлагал мне в какие часы сделать просмотр,после просмотра обзванивал потенциальных покупателей и спрашивал о их готовности ( отвергал их попытки необоснованного торга), договаривался об авансе и схеме сделки, когда наступил момент сбора документов для сделки, по своим каналам ускорил изготовление дубликата.

Перед сделкой встретил клиента на машине, еще раз убедился что я никакие документы не потерял.

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

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

Отличная работа, все прочитано!