Обновить

Комментарии 45

Где записываться? Срочно ссылку на форму регистрации!

P.S. Я думаю мое мнение понятно без дополнительных комментариев. Вцелом и программа и литература подобраны отлично.
Где записываться? Срочно ссылку на форму регистрации!

Пишите в скайп. Как таковой «регистрации» нет.
Мы ответим на все Ваши вопросы, вы решите — платить или нет.
У нас все административные вопросы решаются в общей скайп-группе.
Я бы предложил изменить последовательность подачи материала:

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

— соответственно, низкоуровневые и аппаратные механизмы перенести в конец, когда ученики станут способны чувствовать параллелизм и его проблемы

— не повторять в учебном плане историю развития, оставляя “неклассические архитектуры” на потом, а выработать наиболее усвояемую классификацию задач и решений и ей следовать. Научить сначала классифицировать задачу, а только потом подбирать для нее готовое решение из запаса. А то весь ваш план — список решений, причем разные решения для одной и той же задачи изучаются в разных местах, что затрудняет возможность выбора (например synchronized/wait/notify vs Lock/Condition), в то время как о проблематике как таковой ничего не говорится.

— добавить изучение CompletableFuture из java8
Я бы предложил изменить последовательность подачи материала:
— начать с высокоуровневых понятий, а именно передачи сообщений синхронным (блокирующие очереди) и асинхронным (акторы) способом, чтобы ученики сразу имели возможность писать работоспособные программы
— соответственно, низкоуровневые и аппаратные механизмы перенести в конец, когда ученики станут способны чувствовать параллелизм и его проблемы


Полностью с Вами согласен. Этот список с разбиением на модули — это не точный хронологический порядок. Это скорее классификация материала с примерной разбивкой по часам.

Сейчас составляю вторую программу — по задачам. И сам курс будет «нанизываться» на задачи.
В ближайшее время опубликую. На вскидку, я пожалуй начну с простейшего в 50-100 строчек HTTP-сервера на блокирующих сокетах — сразу используется пул потоков для обработки каждого соединения + шаблон производитель-потребители через блокирующую очередь (поток на ServerSocket.accept() передает принятые Socket-ы «потребителям»). Потом добавить shared state, скажем простейший механизм сессий на ConcurrentHashMap.
Получилось легкое введение в j.u.c.
Потом вместо блокирующей очереди из j.u.c пишем свою на synchronized/wait/notifyAll, другую на ReentrantLock/Condition, третью на семафорах.

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

Собственно было бы вообще интересно составить подборку из 10-20 «классических» задач по многопоточности. «Классических» — в смысле популярности «в жизни».
— добавить изучение CompletableFuture из java8

Да, это пропустил.
Надо выделить время и в целом помедитировать над тем, что Future — это монада, и что мы можем из этого выжать. Посмотреть что там в Akka, кажется в Netty реализовывали свое Future.
Какова цена вопроса? И если она отсутствует, то выложите ли записи вебинаров в свободный доступ?
Тогда я боюсь желающих будет чуть больше чем 0.
Ну с хабра может и 0, а вообще цена как цена. У Специалиста вот например курсы по основам РНР по 12-20к (часов меньше, чем тут как я понимаю) www.specialist.ru/dictionary/definition/php и ничего, ходят люди. По Java тоже аналогично www.specialist.ru/dictionary/definition/java
Приятно посмотреть на сайт. Глаза прям радуются, сразу видно — специалисты.
достаточно 475$ — вы получаете все (выше писал что) включая задания, но я их не проверяю.
975$ — это с code review и общению по заданиям, персональному обсуждению литературы.
Какова цена вопроса?

1. Участие в вебинарах, доступ к записанному видео, доступ к коду с лекций, доступ к электронной литературе – 475$.
2. Пункт 1 + проверка лектором заданий для самостоятельной работы (16 больших заданий) – 975$.
.
Если Вас несколько человек — можем обговорить значительную скидку.
выложите ли записи вебинаров в свободный доступ?

Скорее всего — нет.
Иначе эта деятельность теряет смысл как источник заработка:(
Люто плюсую!

Задумка классная, но есть сомнения насчёт того, получится ли. Во-первых, тема непростая, а во-вторых, не уверен, что джуниоры потянут.

P.S.: я тут полез в ваши лекции, услышал слово «J2EE» и понял, что могут быть проблемы с актуальностью ваших материалов. Следите за актуальностью внимательнее :)
А что не так с J2EE?
НЛО прилетело и опубликовало эту надпись здесь
P.S.: я тут полез в ваши лекции, услышал слово «J2EE» и понял, что могут быть проблемы с актуальностью ваших материалов. Следите за актуальностью внимательнее :)

Да, спасибо. Во время лекции иногда тяжело отслеживать терминологические тонкости.
Они сменили название:
  • J2EE 1.2 (December 12, 1999)
  • J2EE 1.3 (September 24, 2001)
  • J2EE 1.4 (November 11, 2003)
  • Java EE 5 (May 11, 2006)
  • Java EE 6 (Dec 10, 2009)
  • Java EE 7 (May 28, 2013,[3] but April 5, 2013 according to spec document. June 12, 2013 was the planned kickoff date[4])

Да, больше 10 лет назад.
есть сомнения насчёт того, получится ли. Во-первых, тема непростая

Тема действительно непростая. Но при грамотно составленной программе, большом количестве примеров кода и нормальных источниках — должно получиться.
До этого читал короткие курсы по многопоточности — 4-6 лекций. При хороших примерах — слушатели усваивают.
есть сомнения насчёт того, получится ли.… а во-вторых, не уверен, что джуниоры потянут.

Ну тут каждый выбирает для себя.
Но мой опыт показывает, что джуниоры с математическим бэкграундом (мехматы, прикладная математика) — тянут.
Канал на Youtube у вас интересный. Есть материалы где то еще, на торрентах например?
На торрентах — нет.
Большая часть материалов на youtube в публичном доступе. Там около 800 часов, кажется.
В следующем посте опишу, что есть на youtube по Java Core + Junior Java Developer.
Место проведения Москва?
«в режиме вебинаров»
Задумка крайне интересная, но, имхо, с монетизацией все плохо. Поясню мысль: поскольку на каждого дополнительного слушателя тратится крайне мало дополнительных ресурсов (ибо вебинар и я не учитываю code-review), то для получения большей прибыли было бы целесообразно снизить цену ниже некоторого психологического порога, предположим $150. Проще говоря, при цене в $100 можно ожидать в 100 раз большую аудиторию чем при цене в $1000.
Ну а для тех кто желает кроме прослушивания курсов, иметь доступ к code-review стоит оставить, озвученную выше цену, т.к. данный вариант предполагает довольно большой объем ручной работы для лектора.
Согласен. При всему уважении к автору курса, который действительно умеет пояснять мысли и доносить до слушателя многие полезные вещи. Меня тем не менее очень отпугивает цена. + ко всему я сторонник небольших порций лекций, после которых можно задавать вопросы и сделать перерыв, чтобы мозг не за туманился. Очень часто себя ловлю на мысли что по середине большой лекции уже теряю нить лектора (
Очень часто себя ловлю на мысли что по середине большой лекции уже теряю нить лектора (

У меня большинство слушателей как раз пересматривают лекции несколько раз и с перерывами на чай.
Плотность материала обусловлена тем, что необходимо за ограниченный срок (40-100 часов) дать огромный объем теории, примеров, подходов. Иначе — ну вы знаете: 11 семестров по 5 экзаменов + 5 зачетов:)
Как известно устав бизнес-модель написана кровью:)
Я пробовал разные схемы монетизации (я полтора года преподаю Java Core + Junior Java Developer).
Сумма 400$-600$ показала себя как самая разумная и выгодная.
на каждого дополнительного слушателя тратится крайне мало дополнительных ресурсов

Это правда. Но учитывайте, что есть начальный порог затрат на ведения сложного курса длительностью N месяцев. Это примерно N * 4.000$.
— надо готовиться заранее. Сейчас месяц до старта, а я уже занимаюсь курсом
— обязательное требование — не работать во время чтения курса. Необходимо время на продумывание примеров, вычитку статей, ответы на вопросы. Да и вообще чтение лекции 2.5 часа тратит много сил.
— реклама. Блог на habrahabr, скажем, стоит 1.500$ за три месяца
— офис. У меня дома ребенок, значит мне вечерами необходимо помещение
— з.п. бухгалтера
— налоги
— и т.д.

Если бы я был уверен, что этот порог будет пройден — я могу снижать цену. Я не могу сказать курс по 100$, приходит 30 человек, я пересчитываю и говорю — нет ребята, курс по 300$.

Скажем можно по другому, курс стоит 12К. Если соберется 120 человек, то всем будет по 100$. Соберется 480 человек — по 25$. Не вопрос.
Проще говоря, при цене в $100 можно ожидать в 100 раз большую аудиторию чем при цене в $1000.

1. Базовая цена — 475$, а не 1000$. В реальности практически ни у кого не хватит времени/мощности И пересмотреть все примеры с лекции И почитать ссылки И ЕЩЕ поделать примеры за 3 дня между лекциями.
2. Мой опыт показывает, что психологических порогов несколько. 100$ — это первый порог, 500$ — второй. 100-долларовый порог уменьшает аудиторию НЕ в 10 раз, а примерно в 2-3 раза.

Есть люди которые согласны платить/инвестировать в образование, а есть те, кто не согласен.
Мой опыт показывает, что хорошее знание многопоточности позволяет повысить зарплату примерно на 100$ (на з.п. в 1000$-1500$ в месяц) и сменить сферу деятельности на более интересную (игровые сервера, сетевые сервера, движки игр, ...). Итого инвестиция в 475$ отбивается за 5 месяцев и потом начинает приносить 100$ в месяц.
Весьма разумный вариант, не хотите попробовать в качестве эксперимента?
У меня иногда интернет «отваливается», смогу ли я пересматривать лекции прошедшие «сегодня»?
1. Вы можете переподключиться в течении хода лекции.
2. Сейчас запись лекции выкладывается с задержкой 12-24 часа: конвертация из внутреннего формата вебинаров в mp4 + заливка на внешний сервер.

Так что сейчас смотреть с задержкой 30 минут — не получится.
Но если найдем (посоветуете) хорошего провайдера вебинаров, у которого видео доступно сразу (с задержкой 1-10-100 минут после трансляции), то Ваша проблема будет решена.

Мы сейчас ищем.
НЛО прилетело и опубликовало эту надпись здесь
Стоит обдумать. LockSupport, думаю, можно читать и в начале.
Но AQS крайне сложно устроен и имеет нетривиальное API:
— попытка блокирующего/неблокирующего захвата (Lock.lock()/tryLock())
— попытка блокирующего захвата с таймаутом и без (Lock.lock()/lock(long))
— прерываемая и непрерываемая через interrupt() попытка захвата (Lock.lockInterruptibly()/lock())
— «четная» и «нечестная» блокировки
— exclusive и shared захват
— и т.д.

Я предполагаю, что сначала слушателю стоит поиграться с Lock/Semaphore/CountDownLatch, что бы он понят как эти свойства «выглядят», для чего могут быть полезны. И только потом самые сильные могут попробовать разобраться на каком основании это все построено.
а у вас между ними ещё и пулы вклинились.

Тоже обсуждаемо.
Но методически синхронизаторы необходимо учить сразу с пулами. Для демонстрации синхронизаторов необходимо иметь множества потоков и создавать их по new Thread(new Runnable() {...}) как-то уже некрасиво.
НЛО прилетело и опубликовало эту надпись здесь
Извините, я тут недавно, но разве этот пост не должен быть в разделе «Я пиарюсь»?
Пост в блоге компании, так что нет.
Спасибо, понял!
Судя по описанию — отличный курс! Подборка тем прямо в точку.
Иван, я смотрел ваши ролики на ютубе и мне они понравились.
И я даже был готов купить курс для джунов, но остановили некоторые вещи:
— нет нормальной информации по курсу, везде какие-то куски, сайт полурабочий
— вместо форума для учащихся какая-то скайп группа, куда скидывают материалы, все туда пишут спамят и найти материалы к лекции к концу дня просто невозможно
— видео просто оставляет желать лучшего, вы говорите про команду, про оператора, но зачем платить оператору, который по 5 минут не может сфокусироваться на доске? последние лекции это просто ад (когда вы проводите онлайн конфу), я плакал кровью от звука и видео. И я это я не платил за курс, а если бы заплатил и получил такое качество, то скорее всего, попросил вернуть деньги.
Полностью поддерживаю, предыдущего комментатора, подача информации очень хороша, но не хватает того, что есть у Hexlet University (Проект Рахима Давлеткалиева), то есть хорошей упорядоченности материала и структурированности. За указанную сумму хотелось бы иметь:
— лекции в хорошем качестве (то есть хорошее качество звука, нормальное освещение, трансляция экрана во время демонстрации исходного кода);
— деление лекций на более короткие логические блоки (так как это сделано в курсах на coursera.org);
— форум для обсуждения лекций, домашних заданий и т.п.
— какое-либо описание лекции с основными рассматриваемыми темами.

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

Система поощрений и мотивации: бейджи, ачивки, балловая система, скидки на будущие курсы, сертификаты с публикацией на linkedin.

После прохождения курса, необходима возможность просматривать лекции и доступ к сделанным проектам с комментариями лектора.
IvanGolovach
А у Вас есть возможность организовать видеоматериала еще в доп. формате, в формате мобильного видео? Приведу пример один из докладов на суботнике в яндексе:
* Скачать видео 536 МБ
* Скачать мобильное видео 231 МБ

Дело в том что живу в Моск.Области и у меня достаточно много времени в дороге, 20 мин в электричке + мин 35-40 в метро. Есть смартфон и периодически по нему смотрю полезные видео-лекции. На просмотр в онлайн с ютуба надеятся не приходится, т.к. то интернет отвалится или WiFi и поэтому скачиваю на карточку заранее, отсюда встает желание иметь не большого размера видео, т.к. карточка быстро расходуется.
Этот курс не будет в свободном доступе:(
Другие, которые выложены на youtube (Java Core, Junior Java Developer) — можно подумать, но Вы первый из 4.000 подписчиков, кому такое потребовалось.
Так что, вряд ли.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Информация

Сайт
www.golovachcourses.com
Дата регистрации
Дата основания
Численность
2–10 человек
Местоположение
Украина