Самый полный русскоязычный перевод Гарвардского курса по программированию CS50 2015, бесплатно на YouTube

В этой статье я хочу немного рассказать о самом лучшем в мире курсе по программированию.

С 2013 года наша небольшая команда занимается переводом и адаптацией англоязычных видеокурсов. За это время мы перевели и адаптировали свыше 150 часов материала. Перед тем как приступать к работе, мы анализировали материалы нескольких обучающих онлайн-школ, и выбирали, на наш педагогический взгляд, самую лучшую, которая максимально доступно, структурированно и кратко подаёт обучающий материал. В результате чего нам приходилось просматривать по несколько курсов касающихся одной и той же тематики, а после выбирать тот, который наиболее качественный и доступный для понимания новичкам.

Как оказалось, действительно качественных курсов и преподавателей не так уж и много. В русскоязычном обучающем пространстве достаточно часто встречаются пересъёмки или адаптация зарубежных курсов, которые пользуются популярностью у американских или европейских специалистов.

image

На данный момент с точки зрения нашей команды для начинающих программистов наилучшим является Гарвардский курс CS50. По ниже указанным ссылкам вы сможете найти самый полный русскоязычный перевод этого курса в одном месте.


Из нулевой недели вы изучите то, как, не зная ничего о программировании можно создать простое приложение используя программу SCRATCH, как компьютер понимает ваши команды и что такое ASCII, Алгоритмы и Бинарная нотация.


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

image


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

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


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


Просмотрев пятую неделю, вы узнаете о том, что такое Valgrind и связные списки, а также, мы рассмотрим подключаемую к нашим программам библиотеку CS50.


Просмотрев шестую неделю, вы узнаете о том, что такое хеш-таблицы, очереди, деревья и рекурсивные деревья.


Просмотрев седьмую неделю, вы узнаете о том, что такое http, html, css и какие особенности синтаксиса у языка php.


Просмотрев восьмую неделю, вы узнаете о том, какие бывают специфические особенности в PHP веб-разработке, что такое PHP веб-сессии, IP и SQL.


Просмотрев девятую неделю, вы узнаете, что такое DOM, MVC и TCP.


Просмотрев десятую неделю, вы узнаете, что такое JavaScript и Ajax.

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

P.S. В ближайшем будущем мы выложим на нашем канале курс по стартапам и бизнесу от Стэнфордского Университета с ведущими лекторами, которые создали такие компании, как PayPal, Facebook, WhatsApp, Airbnb, Pinterest, Xerox и т.д.
Поделиться публикацией
AdBlock похитил этот баннер, но баннеры не зубы — отрастут

Подробнее
Реклама

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

    +1
    1. CS50 влегкую смотрится в оригинале…
    2.… но уже есть и перевод: habr.com/company/javarush/blog/303806
    3. Очень мало тегов к статье. Нужно больше.
      +1
      По указанной ссылке находиться перевод только лекций, а это примерно 30-40% всего курса. По указанным мной ссылкам 100% весь курс. Там кроме лекций есть практические задания для проверки своих умений, путеводитель в котором вы шаг за шагом напишете свои первые строчки кода и первые программы, короткие видео, в которых более широко рассматриваться затронутые в лекции темы и дополнительные видео в которых максимально широко рассматриваются те темы, которые затрагивались в лекциях.
      0

      Глянул первые 4 видео, первые два коротких ролика объясняют разницу между 10-чной и двоичной системами исчисления. Для 5-6 класса средней школы очень даже ничего. Далее 2 лекции на 2 часа с рассказом что же такое алгоритм, и средой программирования для детей SCRATCH ...


      Для детей и общей эрудиции пойдет, но программистом после этого курса точно не станешь !

        0
        Я категорически с Вами не согласен. По окончанию этого курса человек становится junior программистом, с потенциальной возможностью в течении года-полтора стать middle программистом.

        Этот курс придерживается педагогической логики от простого к сложному, поэтому он имеет очень низкий порог вхождения, который могут преодолеть даже ученики начальной школы. Однако с каждой неделей этот порог становиться всё выше и выше. Если Вы нашли лёгким SCRATCH, то попробуйте свои силы с декодированием изображений. Основная цель этого курса показать людям, что программирование не область только для «умников» из математических классов или зубрил из физмата и так далее, а обычный инструмент, которым может овладеть каждый, кто этого захочет сделать. Программирование ничем не сложнее других профессий, а иногда даже и намного легче. Кроме того, этот курс дает не только фундаментальные знания о программировании начинающим программистам, но также заполнить пробелы в образовании или знаниях программистов, которые уже имеют опыт.
          0
          По окончанию этого курса человек становится junior программистом

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

            0
            Этого даже многие «синьоры» не знают, и самое главное УСПЕШНО выполняют свои обязанности.
              0
              Этого даже многие «синьоры» не знают

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

              0
              Нет — не становится, даже джуниором, ибо базы ноль.

              Можете подсказать как вы обходитесь в своей профессиональной деятельности (программировании) без переменных, методов, условий, циклов, библиотек и других понятий, которые рассматриваться в этом курсе?
                0
                Ладно, поменяю немного коммент, а то могут не так понять.
                без переменных

                методов

                циклов

                Без всего вышеперечисленного можно прекрасно обойтись. Особенно — без переменных, они вредные :)
                  0
                  как вы обходитесь в своей профессиональной деятельности (программировании) без переменных, методов, условий, циклов, библиотек

                  А зачем себя ограничивать? Хотя если вопрос стоит как "могли бы Вы обойтись без всего вышеперечисленного", то да — мог бы с помощью: — лямбды, маппинга на словарь,nuget ну и т.д.

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

                Ваши слова с равной степенью относятся и к математике, в ней так же нет ничего сложного в принципе, и ей так же может овладеть каждый кто реально этого захочет ;-)

                  0
                  Именно так, и кто больше всего использует математику? Профессор математики или бухгалтер? А кого в мире больше профессоров или бухгалтеров? А кто больше валового продукта производит? Так что тогда есть «настоящая математика»?
                  На программирование сами сможете перенести?
                  Какой программист настоящий? Тот что сайты на пхп пишет и апстор наполняет, или тот, что использует теорию графов?
                    0
                    Именно так, и кто больше всего использует математику?

                    Если я правильно понимаю развиваемую мысль — то кассир на кассе и "кавказец" на рынке :-)

                      0
                      Именно так. Образование это продукт, так-же как и прочие. Если человек хочет «стать программистом», то скорее всего он хочет писать обычный софт за обычные деньги. Именно это и должно давать обычное образование. А для тех, кто хочет выше, есть адвансед курсы.

                      спасибо — повеселили :-)

                      ну даже не знаю что и ответить ...

                      Конечно, ни какой другой реакции у вас и быть не может. У вас просто неверная модель мира и рынка труда. Советую более детально изучить рынок труда, не под себя любимого, а в целом. Каких вакансий и за какие деньги больше всего в мировом масштабе. Какой тип софта больше всего строк кода СУММАРНО содержит. Я уж молчу, про то, какие открытия вас ждут, когда вы начнете других людей собеседовать.

                      Могу сказать, что ни один раз на моей практике, человек который не знает теорию графов и О БОЖЕ! паттерны, работал лучше, чем дипломированный специалист со знанием модных технологий. Талант нельзя подменить модными знаниями, а писать продукт, который работает, в срок, без багов, и что-б другие могли поддерживать — это талант. К сожалению ни теории ни паттерны ни как не помогают, а может даже и вредят в некоторых случаях. «Астронавт от архитектуры» это горе для проекта.
                        0

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


                        писать обычный софт

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


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

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

                          0
                          Конечно не дураки, только знание паттернов из дурака, не сделает программиста. А так-то софт писали и до и будут писать после любой методологии и модной технологии. Молодежь склонна хайпиться от модных технологий, не более того. И т.к. в отрасли очень много молодежи — то и отрасль штормит от хайпа.
                0
                Вы посмотрите основные лекции которые пиарятся, в то время как это является доп материалом к ним.
                Заголовок спойлера


                И вот первые это совсем треш, из которых полезной информации ноль. Там сложно сказать что вообще чему то учат. CS50 это для полных нулей — уровня «для школьников».
                И первые плейлисты мне как то тоже не оч, а вот в последующие уже получше, но все равно. На мой взгляд это все быстрее прочитать и проверить самому, чем слушать такие лекции. У того же Шилдта почти все это было.
                Я понимаю почему снимают видео, это проще быстрее тому кто делает. Но это отнимает СТОЛЬКО времени %) у тех же ITVDN даже на скорости 2 и то все затянуто.
                  0

                  А вот это уже совсем другое дело !

                0
                Скажите, а зачем переводить курсы по программированию?
                  0

                  Ибо один из основных навыков программиста — это английский язык :-)

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

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

                      0
                      Скажите, а зачем переводить курсы по программированию?

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

                          [quote] Если курс на том языке на котором общается человек, тем намного ниже порог вхождения в обучающий процесс. [/quote]
                          Вот честно старался, но не понял этой фразы.
                          Вы же на русский курсы переводите? А если на этот язык, то опять же, зачем? В чем ценность перевода на такой язык?

                      0
                      Youtube убивает манюалы…

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

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