Гарвардский курс по основам программирования CS50 теперь на русском

    image

    Предыстория: кто мы и как дошли до жизни такой

    Мы — команда проекта JavaRush. А JavaRush, кто еще не в курсе, — это полностью автоматизированный обучающий онлайн-курс по Java. Когда-то давно, именно благодаря поддержке хаброюзеров и статьям на хабре, JavaRush и появился. В то время мы собирались переучить на программистов миллион человек.

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

    В нашу миссию — переучить на Java-программистов миллион — мы по-прежнему верим, но также решили поставить себе тактическую цель поскромнее: сделать офигенный онлайн-курс по Java. Считаю, нам это удалось. Мы продолжаем успешно пилить и допиливать наш JavaRush, обросли успешными «выпускниками»… Но сейчас немного о другом.

    К сути

    Однажды человек из нашей команды случайно наткнулся на видеозаписи лекций Гарвардского курса CS50 («Основы программирования и компьютерных наук»). Вообще-то я известен тем, что очень жестко критикую вузы за их скучные, неинтересные лекции, которые устарели лет на 10 уже в тот самый момент, когда студенты слышат их в первый раз.

    Но нет правил без исключений. Гарвардский CS50 — это такой университетский курс, перед которым я снимаю шляпу. Хочу, чтобы все наши студенты и преподаватели посмотрели его. Именно так должен выглядеть современный университетский курс: ярко, познавательно, вдохновляюще.

    image

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

    Курс настолько крут, что Йельский университет отказался от собственного введения в программирование в пользу CS50. Более того, уже несколько лет CS50 могут проходить не только студенты Гарварда, но и все желающие, на сайте edX, причем, абсолютно бесплатно. Единственное «но»: курс на английском…

    image

    Короче говоря, CS50 нас настолько впечатлил, что мы решили перевести его на русский, хотя там нет ни слова о Java. Мы нашли классных ребят — студию переводов Vert Dider — и совместно принялись за адаптацию лекций.

    А теперь подробнее о CS50


    На кого рассчитан

    Если вы — новичок, пройдите CS50. Если кто-то из ваших знакомых приглядывается к ИТ и программированию, советуйте CS50 не глядя. Я серьезно.

    CS50 подойдет любому человеку, кто решил стать «айтишником». Пожалуй, его можно рекомендовать и способным 12-летним, и умудренным опытом «перебежчикам» из других профессий. Идеально — старшеклассникам и студентам.

    Курс очень прогрессивный и обновляется из года в год. При этом в отличие от большинства подобных университетских обучающих программ (например, MIT 6.00X) от слушателя не требуются знания университетской математики, достаточно школьного уровня.

    image

    Кто ведет

    Профессор компьютерных наук Дэвид Малан. Возможно, когда вы его увидите, у вас произойдет разрыв шаблона «профессор университета»: он чрезвычайно энергичен и подача информации у него ну очень живая. Думаю, успех курса — во многом его заслуга. Также ему помогают многочисленные ассистенты. Некоторые из них — опытные ребята, некоторые — из числа тех, кто сам совсем недавно прошёл CS50.

    Что изучают на CS50


    • Основы компьютерных наук и программирования. Системы счисления, работа с командной строкой в Linux, циклы, условные переходы и прочие радости.
    • Концепции алгоритмов и алгоритмичности мышления. Вы узнаете о том, какие задачи можно решать с помощью программирования и каким образом. О бинарном поиске, простом по сути, но очень эффективном и требующем тщательности в реализации, Дэвид Малан расскажет сходу, прямо на нулевой лекции. И попробуйте потом забыть сцену с разрывом телефонного справочника, а вместе с ней — и полученные знания! Вообще, курс охватывает все основные алгоритмы, которые нужно знать и понимать «айтишникам».
    • Концепции абстракции, структуры данных, инкапсуляции, управления памятью. Основы компьютерной безопасности. Процесс разработки ПО и веб-разработка.
    • Основы языка программирования C и визуального языка Scratch. Собственно, все основные примеры и задания студенты делают на языке C.
    • Основы баз данных и SQL.
    • Веб-разработка: основы CSS, HTML, JavaScript и PHP. Естественно, только самые азы.
    • Основы подготовки презентации проектов по программированию.

    Интересные факты о CS50


    • Курс CS50 появился в Гарварде в 80е годы прошлого столетия.
    • В 2014 году Йельский университет решил отказаться от собственного курса по основам компьютерных наук в пользу CS50. В осеннем семестре 2015 года Дэвид Малан на каждой неделе проводил одну лекцию в аудитории Гарварда, вторую — в аудитории Йельского университета.
    • Да, CS50 сразу же стал самым популярным курсом Йеля: в осеннем семестре 2015 года на него записалось 510 студентов, больше, чем на любой другой курс любой специальности.
    • В Гарварде в 2012 году CS50 был вторым по популярности с 691 зарегистрированным студентом, однако в этом же году курс стартовал на образовательной платформе edX, что расширило его аудиторию еще на 53 000 слушателей со всего мира.
    • Осенью 2014 года CS50 выбился в лидеры в родном Гарварде с 818 записавшимися студентами. Это 12% всех учащихся колледжа.
    • Однажды лекцию CS50 вёл экс-CEO Microsoft Стив Балмер. В своем неповторимом и запоминающемся стиле ;).
    • В 2005 году Марк Цукерберг вел одну из лекций CS50 в качестве приглашенного гостя. Его пришло послушать… 15 человек.
    • Курс выбирают не только профильные студенты, но и те, кто хотят расширить кругозор, узнать что-то о компьютерах. Порой это кардинально меняет жизнь этих «непрофильных» студентов. Например, выпускница факультета истории и литературы Сьюзен Войчицки (Susan Wojcicki) прослушала CS50 на последнем курсе. А затем переехала в Кремниевую Долину. Сегодня она — исполнительный директор YouTube.

    image

    Где найти переведенные лекции


    Страница, на которой будут размещены лекции курса на русском языке: javarush.ru/cs50.html. Они будут доступны совершенно бесплатно всем пользователям интернета. Перевод первой лекции 20 июня уже был опубликован на ресурсе. Следующую лекцию ждите 27 июня, и далее они будут появляться по мере их готовности.

    Следите за обновлениями на страничках JavaRush в социальных сетях:

    vk.com/javarush
    www.facebook.com/www.javarush.ru

    JavaRush

    35,00

    JavaRush — это интерактивный онлайн курс по Java.

    Поделиться публикацией
    Комментарии 38
      +2
      Ух как круто, спасибо большое! Лучшие.
        0
        Прям сериал выходит какой-то =)
        Бастарды будут?
          +1
          Конечно) И эпичная битва в последней серии =)
          0
          Супер, надо будет посмотреть
            +1
            Классный курс. Надеюсь хотя бы наши внуки будут иметь подобное образование.
            Кто понимает «бусурманский» — http://cs50.harvard.edu/
              +2
              EDX/cs50

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

              Вопрос к JavaRush: почему не использовать stepic/edx/lektorium для курса?
                +1
                1. Ссылка в посте есть:

                Курс настолько крут, что Йельский университет отказался от собственного введения в программирование в пользу CS50. Более того, уже несколько лет CS50 могут проходить не только студенты Гарварда, но и все желающие, на сайте edX, причем, абсолютно бесплатно. Единственное «но»: курс на английском


                2. У нас будет своя реализация.
              +8
              Прочитав вот это
              Курс выбирают не только профильные студенты, но и те, кто хотят расширить кругозор, узнать что-то о компьютерах. Порой это кардинально меняет жизнь этих «непрофильных» студентов. Например, выпускница факультета истории и литературы Сьюзен Войчицки (Susan Wojcicki) прослушала CS50 на последнем курсе. А затем переехала в Кремниевую Долину. Сегодня она — исполнительный директор YouTube.

              я немного удивился и решил посмотреть подробнее как это получилось.
              Но база знаний гугл сама всё подсказала.
              По запросу «Susan Wojcicki» в карточке базы знаний в похожих запросах первым номером «Анне Войжитски сестра».
              Клямкаем и получаем
              Анне Войжитски
              Предприниматель
              Родилась: 28 июля 1973 г. (42 года), Сан-Матео, Калифорния, США
              Супруг: Серге́й Миха́йлович Брин (в браке с 2007 г. до 2015 г.)


              А я-то на секунду подумал, что CS50 — действительно чудодейственный курс :)
                +3
                Курс действительно классный =)
                  +7
                  Да я ж разве критикую курс? :))) Просто наткнулся на интересное совпадение — казалось, при чём здесь Лужков? :)
                  А курс посмотрю ради интереса обязательно.
                +5
                Курс локализирован и на украинском языке тоже:
                Prometheus/CS50
                  +5
                  К сожалению, прямо сейчас сайт, кажется, под атакой — хромиум и файрфокс выдают предупреждения безопасности. Для тех, кто не заходил туда раньше, подтверждаю, это правильная ссылка и правильный сайт. Попробуйте чуть позже. Курс CS50 там переведен практически полностью — не только лекции, но и текстовые конспекты, задания и всё остальное. Сайт работает на движке EdX, так что интерфейс будет привычный для всех, кто был на Курсере. Как раз недавно стартовал пилотный цикл переводного курса, идет 8-я неделя, то есть две трети материалов уже опубликованы.
                    +1
                    Я был одним из переводчиков данного курса на украинский. Курс офигенный, Прометеус под атакой — жалко, но наверняка скоро всё придёт в норму.
                    +3
                    Первые впечатления от курса замечательные. Молодцы ребята!
                      0
                      Вы большие молодцы.
                      Но ждать перевода серии по неделе — это очень долго.
                      Предлагаю выложить сразу все серии с переводом субтитрами на русском языке (на официальном сайте уже есть готовые субтитры) а потом добавлять переводы по готовности.

                        0
                        Спасибо за ссылку. А что значат буквы в лекциях? Например, в 0й — f/ и w/?
                          0
                          Wednesday
                          Friday
                          Тут понятней.
                        0
                        Если бы сделали шарилку не только на fb но и на вк, многие бы поделились страницой!
                          0
                          шикарно ) Молодцы!
                            0
                            Успех данного курса, как впрочем и всех похожих — это, как и было сказано, его доступность детям в 8-9 классе. Легко делать «занимательным» то что не требует глубокого понимания. А может кто-нибудь показать курс с таким же «живым и веселым» лектором который, скажем строго докажет формулу Ньютона-Лейбница (отоносительно не сложный матанчик)?
                            Сам курс к слову очень хороший для соотвествующей возрастной категоии и многим школьникам может быть его полезно посмотреть.
                              0
                              Умение сделать новый материал интересным и понятным — это именно то, что отличает учителя от человека, называющего себя таковым. Сложно объяснить — просто, просто объяснить — сложно. По другому и не скажешь.

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

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

                              Ценность курса в первую очередь в том, что он демонстрирует, что многие вещи можно объяснять проще и интереснее, чем это привыкли делать.
                                +1
                                Проблема всех этих простых объяснений одна на всех — они ничего не объясняют. ОТО по листу резины понимать это конечно замечательно чисто для любознательных школьников, но понимания теории это не дает ровным счетом никакого. Шажок чуть дальше и начинается самая суть, без которой смысла во всех этих красивых объяснения на пальцах мало. Взять туже теорию струн. Да, можно школьникам рассказать про колеблющиеся с разной частотой струнки, только ценности в этом объяснении никакой. Суть понимания в том, что на основе этого можно потом строить новые суждения и понимать явления реального мира. Из этих примитивных объяснений ничего этого не сделать. Когда я начал смотреть курс лекций небезызвестного Леонарда Сасскинда по космологии, то мягко говоря прифигел. Все эти «простые объяснения» бесконечно далеки от реальной теории.

                                Поэтому все эти красивые курсы это лишь завлекалочка. А дальше остается надеяться, что запала хватит на реальное понимание, а не то представление, которое было до этого. Надо все таки разделять эти вещи, а не пытаться в очередной раз рассказывать про миф о том, что сложные вещи можно объяснить простыми словами.
                                  +2
                                  Суть понимания — построение ментальной модели адекватной стоящим задачам. Как правило, это процесс итеративный, когда следующая итерация запускается при исчерпании адекватности текущей модели новым задачам. Не зная задач вы не можете судить о том достаточно ли человек понимает что либо, или нет.
                              0
                              Начинал пару лет назад, посмотрел штук 5-7 уроков и из-за нехватки времени бросил. Возможно опять начну. Спасибо вам дорогие. Плюсую.

                              P.S. Было бы здорово это все оформить торрентом или вобще на git или еще как-то, чтобы была возможность взять все разом или докачивать новые уроки по мере поступления.
                                0
                                А будут ли субтитры на русском? А то ничего не понятно (тугоухость и сложно воспринимать аудиоинформацию).
                                  0
                                  В оригинальном есть субтитры на русском cs50.tv/2015/fall
                                  Первое видео www.youtube.com/watch?v=zFenJJtAEzE
                                    +1
                                    Вы бы хоть качество субтитров посмотрели. Сейчас это несмотрибельно. Проще уж английские скачать.

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

                                    Или такое?
                                    «А Триумф математическое и механической умение это большой новый автомат калькулятор в Гарвардском университете. Сложные проблемы математики положил через машину в закодированном виде на ленте точно решена в ничтожно малая часть времени, необходимого для расчета человека. Предназначен для ускорения всех форм математическое и научное исследование, гигант механическая мозг будет работать для ВМС США до конца войны.»

                                    Для такого серьёзного курса как-то странно выкладывать субтитры, полученные путём машинного перевода.
                                      0
                                      Тыкнул наугад, было более-менее, прошу прощения.
                                  0
                                  Ух ты! Спасибо! Курс для меня чрезмерно уж базовый, но такой классный, что обязательно весь посмотрю. Тем более, что качественным образованием обделён.
                                  Жаль что ваш собственный курс по Java, так что по ряду причин мне будет мало полезен.
                                  А ещё будет что новичкам советовать.
                                    0
                                    По долгу службы сам занимаюсь преподаванием.
                                    Всегда интересно что и как можно объяснить по другому.
                                    Посмотрим что дальше будет, но пока данное напоминает цирковое шоу.
                                    Причем некоторые вещи можно еще более доходчиво донести с большим информационным содержанием.
                                      0
                                      Спасибо за перевод! После просмотра захотелось к ним присоединиться.
                                      Было бы здорово найти еще их доп материалы с задачниками, чтобы не только смотреть, но и практиковаться
                                        0
                                        Планируете ли перевод учебных материалов — заданий, текстовых конспектов?
                                        В первой лекции рассказывают, что заданий будет много, а смотреть только лекции без самостоятельных занятий будет не слишком эффективно в плане обучения. Наверное, хочу слишком много, но перевода текстового материала правда очень не хватает.
                                          0
                                          На данный момент планируем перевести только лекции. Но поскольку очень многие хотели бы получить перевод конспектов и заданий, возможно, сделаем и это.
                                          0
                                          Отличный курс, мне нравится! Понимая простые вещи — легче понимать сложные. А иногда, ну так получается, что мы за сложным невидим простого или наоборот. Такая вот философия. Думаю, данный курс не столько дает базовые знания, сколько разъясняет общую парадигму в программировании, отсюда и не важно на каком языке идет преподавание, важна суть.
                                            +1
                                            Порылся на сайте cs50.tv, для каждой лекции доступны субтитры, в том числе, на русском языке. Собственно вопрос к автору, это Ваш авторский перевод или озвучивание имеющихся субтитров?
                                              +1
                                              А вы посмотрите эти субтитры на русском языке) Там просто Google Translate.

                                              Перевод авторский.
                                                0
                                                Ага, спасиб. Посмотрел еще внимательнее…
                                                Спасибо за перевод, уже пару конструкторов подсадил на этот курс…
                                              0
                                              Почему пятьдесят-то? Просто так в восьмидесятых такой номер выпал или в этом есть некий смысл, вроде количества лекций, или может быть связь с количеством недель, типа «программист за год» (с двумя неделями каникул :)

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

                                              Самое читаемое