Харвардски курсове. Безплатно обучение в Харвардския университет

Курсът Harvard CS50 е легендарен курс по основи на програмирането и компютърните науки. Той се преподава в Харвард от много години като задължителен за всички основни специалности. Той е не по-малко търсен сред студентите от други специалности. CS50 - основен курс по компютърни науки - един от най-популярните в света.

CS50 е толкова готин, че Yale отпадна от собствения си курс в полза на него.

Harvard CS50 курс по руски език

CS50 е много прогресивен, не стои на едно място и се актуализира от година на година. В същото време, за разлика от повечето университетски програми, той не изисква познания по университетска математика - достатъчно е училищно ниво.

Когато курсът беше публикуван в Интернет за безплатен достъп, той беше оценен от милиони слушатели. Дълго време се предлагаше само на английски, но толкова впечатли публиката, че се намери екип от доброволци, които го преведоха на руски. Просто потърсете "Harvard CS50 Programming Course" и има много връзки за изтегляне. Можете да гледате всички лекции онлайн тук.

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

Специалисти от училището по програмиране за деца CODDY адаптираха курса за деца от 12 години.

За 8 месеца обучение ще говорим за:

  • бройни системи и алгоритми;
  • операционни системи и библиотеки;
  • низове и масиви;
  • сортиране на мехурчета и рекурсия;
  • хеш маси и дървета;
  • Протоколи и бази данни за криптиране;
  • уеб програмиране и оформление;
  • сигурност и изкуствен интелект...

И много други неща, които са в основата на програмирането и компютърните науки.

Курсът е идеален за гимназисти. Уникалният и достъпен образователен материал ще бъде интересен както за тези, които искат да свържат бъдещето си с техническите специалности, така и за хуманитарните науки, които желаят да разширят кръгозора си.

Ученето включва много практика - задачи от реалния свят от различни области на науката. Това значително увеличава стойността на курса, особено за рускоговорящи студенти, които са свикнали с изобилието от теория.

Как да разберем, че ученикът е усвоил програмата?

По време на обучението оценяваме както практическата страна на въпроса (как да го направя?), така и разбирането на темата (защо и защо).

Учениците демонстрират знанията си, като решават задачи по свой начин, обясняват алгоритмите със собствени думи, помагат на съучениците си да коригират грешките и създават презентации за изпълнените си проекти.

Беше открито преди няколко години, но за първи път се превежда на руски. Те взеха за основа най-новата версия - тази, която стартира в самия Харвард през есента на 2015 г.

Нека дадем думата на момчетата от CodeGym.

Преди да стане типичен програмист, човек трябва да извърви пътя на типичен ученик. Под "ученик" тук имам предвид човек, който напълно научава нещо ново. Не е задължително да учи в университет: може би той самостоятелно търси в интернет в търсене на полезна информация. Понякога е възможно да се намерят истински диаманти сред тонове информационен боклук, въпреки че при сегашния размер и структура на глобалната мрежа това е много, много трудно да се направи.

Веднъж Zapp, ръководителят на CodeGush (за CodeGush ще бъде в края на статията), се рови из интернет, опитвайки се да намери такива диаманти за начинаещи в програмирането - студенти на CodeGush - и се натъкна на CS50. Този акроним крие въвеждащ курс в основите на компютърните науки и изкуството на програмирането. Чете се на студенти в Харвардския университет, а отскоро и в Йейл. И „задочно“ по целия свят, чрез образователната интернет платформа edX. И е напълно безплатно!

Честно казано, курсът привлече Зап, въпреки че обикновено той не предпочита (меко казано) университети, които хранят студентите с технологии, които са загубили своята актуалност дори по време на бурната младост на родителите им. Лекциите в университета "ИТ" също са скучни най-често. Толкова много, че намалява скулите. Но не, CS50 не е това, дори и близо! Той е прогресивен (постоянно актуализиран), лекциите могат да се гледат като готин сериал (а не да заспивате на задното бюро или да се занимавате с работата си), задачите са подбрани със смисъл. Искам да гледам курса, да уча и... да продължа да се присъединявам към IT.

Накратко, CS50 прави точно това, което трябва да прави всеки въвеждащ курс: осигурява основата и вдъхновява за бъдещи постижения. В същото време той е универсален, тоест ще бъде полезен на абсолютно всеки бъдещ ИТ специалист, независимо от специализацията. Освен това, за да овладеете CS50, не е необходимо да изучавате „изчисление“, „дискретна“ и друга университетска математика. Курсът ще бъде напълно усвоен от студент по хуманитарни науки или ученик в гимназията. Ако знае английски, разбира се. И ако не? Преди това на тези студенти, които трудно разбираха енергичната реч на лектора, можеха да помогнат само автоматично преведени субтитри, от които е изключително трудно да се извлече смисъла.

Но сега дори няма да ви се налага да учите английски. Макар че не, разбира се, а за работа, не за учене. Защото ние - CodeGym и VertDider studio - преведохме CS50 лекции на руски език.

Какво се преподава на CS50

Би било погрешно да се каже, че CS50 ще ви научи как да програмирате "от" и "до", но според мен правилното въведение в компютърните науки трябва да бъде така. Студентите се учат по малко на всичко, но преди всичко - как компютърът „мисли“. Неговата азбука - двоично число и концепцията за алгоритъм и алгоритмизация са обяснени веднага, а двоичното търсене, върху чието правилно изпълнение трябва да помислите внимателно, се обяснява лесно и бързо още в уводната лекция. Освен това със специални ефекти под формата на разкъсани телефонни указатели и специална топла "лампа" двоична машина. Дори концепцията за сложността на алгоритъма беше обяснена с илюстративен пример, предлагащ начин за бързо изчисляване на приблизителния брой хора в аудиторията (в аудиторията имаше около половин хиляда души, ако това).

CS50 започва да въвежда програмирането като такова на седмица 0. Вероятно, за да не уплашат и най-несигурните от хуманитарните науки, първото нещо, което правят преподавателите от Харвард, е да покажат на студентите визуалния език Scratch, на който могат да съставят програми чрез просто плъзгане и пускане на графични елементи. Тази разработка на Масачузетския технологичен институт (MIT) е предназначена за обучение на студенти, но основните концепции на процедурното програмиране - всякакви цикли и условия - помагат да се разберат много бързо. Никой обаче не се спира на Scratch за дълго време, а веднага преминава към „страхотния и красив“ език C и учениците на CS50 решават повечето практически задачи в него. Много добър избор, дори само защото C е малко по-ниско ниво от повечето други масови езици, тоест е добър за разбиране на компютърната работа. Освен това познаването на основите на C няма да пречи на потребителите на Linux и други администратори. Между другото, в курса се обръща внимание и на Linux и неговите команди.

Освен това на учениците се разказва за концепцията за функция, глобални променливи, параметри, върнати стойности. Обяснете принципа на стека и "хийпа" (heap) и какви данни се съхраняват там, говорете за масиви, низове и аргументи на командния ред, отстраняване на грешки, въвеждане и извеждане във файлове.

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

Научете дали си струва да се страхувате от рекурсията и кога е необходимо. И също така - за такива екзотични неща като указатели, които дават на програмиста огромна сила, но влияят негативно на сигурността.

Щастливите слушатели на CS50 ще придобият разбиране за науката за криптографията и ще разберат силата на най-известните шифри - Цезар, Вигенер, DES.

По същия начин – повърхностно, но точно за първо запознаване – курсът ще ви разкаже за уеб разработката, основите на CSS, HTML, JavaScript и PHP. И малко за SQL с бази данни.

Накратко, CS50 е за:

  • Алгоритми и алгоритми за задачи.
  • Абстракции, структури от данни, капсулиране, управление на паметта.
  • Основи на езика за програмиране C и програмирането като цяло.
  • Концепция за уеб разработка и бази данни: CSS, HTML, JavaScript, PHP, Ajax SQL.
  • "Правилно развитие". Какво е MVC.
  • Изкуствен интелект.
  • Концепция за криптиране.

Кой преподава преди колко време и кой

CS50 се превърна от редовен въвеждащ курс по кодиране до огромен хит. Чете се в Харвард от 80-те години на миналия век, но набира популярност след встъпването си в длъжност. Дейвид Малан... Този професор от Харвард съвсем не е побелял старец, дълбоко в себе си и своята наука. Това е запален диригент (или режисьор, ако желаете), който знае как да зарази с ентусиазма си, да разкаже само за трудни неща и да вдъхнови да продължат обучението си.

Дейвид за първи път прочете CS50 през 2007 г. и още през 2014 г. 12% от студентите в Харвард от всички специализации, тоест повече от осемстотин души, се регистрираха за Основи на програмирането, което го издигна на върха на популярността сред всички курсове в колежа. Преди това всичко не беше толкова забавно и претъпкано. Например, лекция на създателя на Facebook Марк Зукърбърг през 2005 г. е посетена от цели 15 студенти. Вярно е, че тогава тази социална мрежа просто набираше скорост. Всяка година Дейвид се подпомага от много хора, както други преподаватели, така и скорошни студенти от CS50. И още няколко мъпета =).

Може би сте чували за Сюзън Войчицки, главен изпълнителен директор на Youtube. И така, през 1990 г. тя завършва Харвард. Историко-литературния факултет, колкото и да е странно. През последната година момичето скочи и реши да научи повече за компютрите, затова избра CS50. След това имаше Силиконовата долина, приятелството с Лари и Сергей (същите Лари и Сергей), моят собствен увеселителен парк, всичко. Ето как CS50 може да промени живота.

А вие кои сте, господа, преводачи?

VertDider е наш партньор, отлично студио за превод и глас. Работата на студиото включва много интересни и полезни преводи на материали по технологии, астрономия, религия, образование и невробиология.

Къде да намерите преведени лекции

Ето страницата, на която се появяват лекциите по курса на руски език. Те ще бъдат достъпни напълно безплатно за всички потребители на интернет. Преводът на първата лекция се появи на 20 юни, следващата ще е на 27 юни, след това – щом са готови.

Следете за актуализации на страниците на CodeGym в социалните мрежи.

А CodeGym, за тези, които все още не са запознати, е напълно автоматизиран онлайн курс за обучение по Java. Имало едно време благодарение на подкрепата на habrousers и се появи CodeGym. По това време щяхме да преквалифицираме милион души, за да станат програмисти.

Много амбициозно, нали? Но, както се казва, „проект, който може да се направи за две седмици, направихме три месеца. Защото нищо не може да се направи за две седмици."

Ние все още вярваме в нашата мисия да преквалифицираме милион Java програмисти, но също така решихме да си поставим по-скромна тактическа цел: да направим страхотен онлайн курс по Java. Мисля, че успяхме. Продължаваме успешно да изрязваме и довършваме нашия CodeGym, придобихме успешни „възпитаници“... Но сега малко за нещо друго.

Към основния въпрос

Един ден член на нашия екип случайно се натъкна на видеокасети от лекции от курса на Харвард CS50 (Основи на компютърните науки и програмирането). Всъщност съм известен с това, че много остро критикувам университетите за техните скучни, безинтересни лекции, които са на 10 години още в момента, в който студентите ги чуват за първи път.

Но няма правила без изключения. Harvard CS50 е университетски курс, за който свалям шапка. Искам всички наши ученици и учители да го гледат. Ето как трябва да изглежда един модерен университетски курс: ярък, информативен, вдъхновяващ.

Курсът е просто прекрасен, въпреки че опитните програмисти няма да намерят там много полезна информация за себе си: той е предназначен за начинаещи. Но за тях - начинаещи - препоръчвам определено да изучават CS50.

Курсът е толкова готин, че Yale се отказа от собственото си въведение в програмирането в полза на CS50. Освен това от няколко години не само студентите от Харвард, но и всички, които желаят, могат да вземат CS50 на уебсайта на edX и то абсолютно безплатно. Единственото "но": курсът е на английски...


Накратко, CS50 ни впечатли толкова много, че решихме да го преведем на руски, въпреки че там няма нито дума за Java. Намерихме страхотни момчета - преводаческото студио Vert Dider - и заедно започнахме да адаптираме лекциите.

И сега повече за CS50

За кого е

Ако сте начинаещ, попълнете CS50. Ако някой, когото познавате, свиква с ИТ и програмирането, посъветвайте CS50, без да гледате. Сериозен съм.

CS50 е подходящ за всеки човек, който е решил да стане IT специалист. Може би той може да бъде препоръчан както на талантливи 12-годишни, така и на опитни „дезертьори“ от други професии. Идеален за гимназисти и студенти.

Курсът е много прогресивен и се актуализира от година на година. В същото време, за разлика от повечето подобни програми за университетско обучение (например MIT 6.00X), студентът не се нуждае от знания по университетска математика, достатъчно е училищното ниво.


Който води

Професор по компютърни науки Дейвид Малан... Може би, когато го видите, ще имате почивка в шаблона „университетски професор“: той е изключително енергичен и представянето му на информация е много оживено. Мисля, че успехът на курса се дължи до голяма степен на него. Помагат му и множество асистенти. Някои от тях са опитни момчета, други са от онези, които току-що са преминали CS50.

Какво научават в CS50

  • Основи на компютърните науки и програмирането. Системи с числа, работещи с командния ред в Linux, цикли, условни скокове и други радости.
  • Понятията за алгоритми и алгоритмично мислене. Ще научите какви проблеми могат да бъдат решени с помощта на програмиране и как. За двоичното търсене, което е просто по същество, но много ефективно и изисква внимателно изпълнение, Дейвид Малан ще разкаже веднага, точно на нулевата лекция. И след това се опитайте да забравите сцената с разбиването на телефонния указател, а с него - и придобитите знания! Като цяло курсът обхваща всички основни алгоритми, които ИТ специалистите трябва да знаят и разбират.
  • Концепции за абстракция, структури от данни, капсулиране, управление на паметта. Основи на компютърната сигурност. Процес на разработка на софтуер и уеб разработка.
  • Основи на езика за програмиране C и визуалния Scratch език. Всъщност учениците изпълняват всички основни примери и задачи в C.
  • Основи на базите данни и SQL.
  • Уеб разработка: Основите на CSS, HTML, JavaScript и PHP. Естествено, само най-основните неща.
  • Основи на подготовката на презентацията на проекти за програмиране.
  • Курсът CS50 се появява в Харвард през 80-те години.
  • През 2014 г. Йейлският университет реши да се откаже от собствен курс по компютърни науки в полза на CS50. През есенния семестър на 2015 г. Дейвид Малан изнасяше една лекция всяка седмица в аудиторията на Харвард и една в аудиторията на Йейл.
  • Да, CS50 веднага стана най-популярният курс в Йейл, с 510 студенти, записани през есента на 2015 г., повече от всеки друг курс в която и да е специалност.
  • В Харвард през 2012 г. CS50 беше вторият по популярност с 691 регистрирани студенти, но през същата година курсът беше стартиран на образователната платформа edX, което разшири аудиторията си с още 53 000 слушатели от цял ​​свят.
  • През есента на 2014 г. CS50 се очертава като лидер в родния си Харвард с 818 записани студенти. Това са 12% от всички студенти.
  • Веднъж CS50 лекцията беше проведена от бившия главен изпълнителен директор на Microsoft Стив Балмър... В собствен уникален и запомнящ се стил;).
  • През 2005 г. Марк Зукърбърг беше домакин на една от лекциите на CS50 като поканен гост. 15 души дойдоха да го слушат.
  • Курсът се избира не само от специализанти, но и от тези, които искат да разширят кръгозора си, да научат нещо за компютрите. Понякога това драстично променя живота на тези „неосновни“ студенти. Например, завършилата история и литература Сюзън Войчицки взе CS50 в последната си година. И тогава тя се премести в Силиконовата долина. Днес тя е главен изпълнителен директор на YouTube.


Къде да намерите преведени лекции

Страницата, на която ще бъдат публикувани лекциите по курса на руски език: javarush.ru/cs50.html. Те ще бъдат достъпни напълно безплатно за всички потребители на Интернет. В ресурса вече е публикуван преводът на първата лекция на 20 юни. Изчакайте следващата лекция на 27 юни и тогава те ще се появят веднага щом са готови.

Следете за актуализации на страниците на CodeGym в социалните мрежи.

За кого е курсът CS50?

Ако сте нов в CS50. Ако някой, когото познавате, свиква с ИТ и програмирането, посъветвайте CS50, без да гледате. Сериозен съм.

CS50 е подходящ за всеки човек, който е решил да стане IT специалист. Може би той може да бъде препоръчан както на талантливи 12-годишни, така и на опитни „дезертьори“ от други професии. Идеален за гимназисти и студенти.

Курсът е много прогресивен и се актуализира от година на година. В същото време, за разлика от повечето подобни програми за университетско обучение (например MIT 6.00X), студентът не се нуждае от знания по университетска математика, достатъчно е училищното ниво.

Какво се научава в CS50?

Основи на компютърните науки и програмирането. Бройни системи, работещи с командния ред в Linux, цикли, условни скокове и други радости;

Понятията за алгоритми и алгоритмично мислене. Ще научите какви проблеми могат да бъдат решени с помощта на програмиране и как. За двоичното търсене, което е просто по същество, но много ефективно и изисква внимателно прилагане, Дейвид Малан ще разкаже веднага, точно на нулевата лекция. И след това се опитайте да забравите сцената с разбиването на телефонния указател, а с него - и придобитите знания! Като цяло курсът обхваща всички основни алгоритми, които ИТ специалистите трябва да знаят и разбират;

Концепции за абстракция, структури от данни, капсулиране, управление на паметта. Основи на компютърната сигурност. Процес на разработка на софтуер и уеб разработка;

Основи на езика за програмиране C и визуалния Scratch език. Всъщност учениците изпълняват всички основни примери и задачи на C;

База данни и основи на SQL;

Уеб разработка: Основите на CSS, HTML, JavaScript и PHP. Естествено, само основите;

Основи на подготовката на презентацията на проекти за програмиране.
Приятно гледане!

1-ва лекция: въвеждаща, запознава общите понятия за езиците за програмиране, както и екипа от преподаватели и системата на предстоящите часове.

Лекция 2: Също така е въвеждаща и въвежда общите понятия за езиците за програмиране, като продължава темата на първата лекция.

Лекция 3: въвежда концепцията и функциите на компилацията и разказва как се появяват бъгове в програмите (започвайки от първата "компютърна грешка"), как да ги разпознаем и как могат да бъдат причинени.

4-та лекция: представя типове данни и цикли, някои основни функции и основната схема на програмиране, а също така демонстрира ограничените възможности на компютрите и исторически примери за грешки, които не са преминали безследно.

5-та лекция: продължение на грешки, плюс разкрива концепцията за структурата на програмата, обяснява защо функциите са необходими вътре в кода, защо обхватът на стойностите е важен и въвежда функцията strlen. Също така от него ще научите как CS50 се бори срещу ентусиастите на измамите и ще научите как да спестявате RAM на компютъра, за да избегнете грешки при сегментиране.

6-та лекция: за основите на криптографията, масивите и аргументите на командния ред.

7-ма лекция: представя основните методи за сортиране на данни. Дейвид Мейлън говори за сортиране с балончета, сортиране на избор, сортиране на вмъкване и сортиране на сливане и публиката ги подлага на изпитание.

Лекция 8: за сортиране на данни чрез сливане, както и кратка екскурзия в света на побитовите операции.

Лекция 9: Продължаване на запознаването с оператора на условието - if, въвеждане на концепцията за рекурсия, както и обсъждане на скандала с Volkswagen Group и проблема с компютърната сигурност. Лекторът разглежда подробно суап функцията, демонстрира техники за работа с програмния дебъгер и разкрива структурата и механиката на RAM паметта.

Лекция 10: за различни методи за създаване на списъци, съхраняване на информация за програмата и използване на указатели и указатели.

Лекция 11: изучаване на указатели, анализ на структурата на функциите на библиотеката CS50, запознаване с течовете на паметта, въвеждане на концепцията за свързан списък и други структури от данни с подробна демонстрация.

12-та лекция: за характеристиките на стека, опашката и свързания списък. Анализ на възможни проблеми, свързани с достъпа до паметта. Той също така обсъжда структурата на двоично дърво, префиксно дърво и работата с компресиране на файлове.

Лекция 13: За хеширането на данни, мрежовите протоколи и как да използвате криптирани връзки, за да се предпазите от подозрителни непознати.

Лекция 14: Въведение в уеб програмирането и запознаване с HTML и CSS.

Лекция 15: Темата на петнадесетата серия от цикъла е въведение в уеб програмирането и запознаване с езика за програмиране PHP и езика за маркиране HTML.

Лекция 16: Шестнадесетата серия от поредицата продължава да изследва PHP, сега за разработване на уеб приложения, а също така въвежда бази данни и MySQL.

Лекция 17: Епизод 17 от поредицата продължава да въвежда зрителите в SQL бази данни.

Лекция 18: тема от осемнадесетата серия от цикъла - въведение в JavaScript и програмирането от страна на клиента.

Лекция 19: в деветнадесетата серия от цикъла продължава запознаването с езика JavaScript, а също така демонстрира използването на компютърни технологии в областта на археологията.

Лекция 20: В двадесетата серия от поредицата се разглежда темата за компютърната сигурност: разясняват се основите на личната сигурност в Интернет, принципите на работа с пароли и спецификата на злонамерения софтуер. Лекцията засяга и проблемите на поверителността на личните данни в съвременната дигитална ера, включително в обществено-политическия контекст.

Лекция 21: В епизод 21 от поредицата професор Скаселати от Станфорд говори за системите за обработка на естествен език. Лекцията разглежда алгоритми за разпознаване на реч, разкрива концепцията за статистически модели на разпознаване на реч, скрити модели на Марков, система за въпроси и отговори, семантична обработка на текст, а също така засяга темата за създаване на невербални комуникационни системи.

Лекция 22: В епизод 22 от поредицата професор Скаселати от Йейлския университет демонстрира използването на изкуствен интелект в игрите.

Лекция 23: в двадесет и третата серия от цикъла се обобщават резултатите от курса, някои теми се повтарят по игрив начин, има лесна комуникация.

А CodeGym, за тези, които все още не са запознати, е напълно автоматизиран онлайн курс за обучение по Java. Едно време, благодарение на подкрепата на habrauzera и статии за habr, се появи CodeGym. По това време щяхме да преквалифицираме милион души, за да станат програмисти.
Много амбициозно, нали? Но, както се казва, „проект, който може да се направи за две седмици, направихме три месеца. Защото нищо не може да се направи за две седмици."

Ние все още вярваме в нашата мисия да преквалифицираме милион Java програмисти, но също така решихме да си поставим по-скромна тактическа цел: да направим страхотен онлайн курс по Java. Мисля, че успяхме. Продължаваме успешно да изрязваме и довършваме нашия CodeGym, придобихме успешни „възпитаници“... Но сега малко за нещо друго.

Към основния въпрос

Един ден член на нашия екип случайно се натъкна на видеокасети от лекции от курса на Харвард CS50 (Основи на компютърните науки и програмирането). Всъщност съм известен с това, че много остро критикувам университетите за техните скучни, безинтересни лекции, които са на 10 години още в момента, в който студентите ги чуват за първи път.

Но няма правила без изключения. Harvard CS50 е университетски курс, за който свалям шапка. Искам всички наши ученици и учители да го гледат. Ето как трябва да изглежда един модерен университетски курс: ярък, информативен, вдъхновяващ.

Курсът е просто прекрасен, въпреки че опитните програмисти няма да намерят там много полезна информация за себе си: той е предназначен за начинаещи. Но за тях - начинаещи - препоръчвам определено да изучават CS50.

Курсът е толкова готин, че Yale се отказа от собственото си въведение в програмирането в полза на CS50. Освен това от няколко години не само студентите от Харвард, но и всички, които желаят, могат да вземат CS50 на уебсайта на edX и то абсолютно безплатно. Единственото "но": курсът е на английски...

Накратко, CS50 ни впечатли толкова много, че решихме да го преведем на руски, въпреки че там няма нито дума за Java. Намерихме страхотни момчета - преводаческото студио Vert Dider - и заедно започнахме да адаптираме лекциите.

И сега повече за CS50

За кого е

Ако сте начинаещ, попълнете CS50. Ако някой, когото познавате, свиква с ИТ и програмирането, посъветвайте CS50, без да гледате. Сериозен съм.

CS50 е подходящ за всеки човек, който е решил да стане IT специалист. Може би той може да бъде препоръчан както на талантливи 12-годишни, така и на опитни „дезертьори“ от други професии. Идеален за гимназисти и студенти.

Курсът е много прогресивен и се актуализира от година на година. В същото време, за разлика от повечето подобни програми за университетско обучение (например MIT 6.00X), студентът не се нуждае от знания по университетска математика, достатъчно е училищното ниво.

Който води

Професор по компютърни науки Дейвид Малан... Може би, когато го видите, ще имате почивка в шаблона „университетски професор“: той е изключително енергичен и представянето му на информация е много оживено. Мисля, че успехът на курса се дължи до голяма степен на него. Помагат му и множество асистенти. Някои от тях са опитни момчета, други са от онези, които току-що са преминали CS50.

Какво научават в CS50

  • Основи на компютърните науки и програмирането. Системи с числа, работещи с командния ред в Linux, цикли, условни скокове и други радости.
  • Понятията за алгоритми и алгоритмично мислене. Ще научите какви проблеми могат да бъдат решени с помощта на програмиране и как. За двоичното търсене, което е просто по същество, но много ефективно и изисква внимателно изпълнение, Дейвид Малан ще разкаже веднага, точно на нулевата лекция. И след това се опитайте да забравите сцената с разбиването на телефонния указател, а с него - и придобитите знания! Като цяло курсът обхваща всички основни алгоритми, които ИТ специалистите трябва да знаят и разбират.
  • Концепции за абстракция, структури от данни, капсулиране, управление на паметта. Основи на компютърната сигурност. Процес на разработка на софтуер и уеб разработка.
  • Основи на езика за програмиране C и визуалния Scratch език. Всъщност учениците изпълняват всички основни примери и задачи в C.
  • Основи на базите данни и SQL.
  • Уеб разработка: Основите на CSS, HTML, JavaScript и PHP. Естествено, само най-основните неща.
  • Основи на подготовката на презентацията на проекти за програмиране.
  • Курсът CS50 се появява в Харвард през 80-те години.
  • През 2014 г. Йейлският университет реши да се откаже от собствен курс по компютърни науки в полза на CS50. През есенния семестър на 2015 г. Дейвид Малан изнасяше една лекция всяка седмица в аудиторията на Харвард и една в аудиторията на Йейл.
  • Да, CS50 веднага стана най-популярният курс в Йейл, с 510 студенти, записани през есента на 2015 г., повече от всеки друг курс в която и да е специалност.
  • В Харвард през 2012 г. CS50 беше вторият по популярност с 691 регистрирани студенти, но през същата година курсът беше стартиран на образователната платформа edX, което разшири аудиторията си с още 53 000 слушатели от цял ​​свят.
  • През есента на 2014 г. CS50 се очертава като лидер в родния си Харвард с 818 записани студенти. Това са 12% от всички студенти.
  • Веднъж CS50 лекцията беше проведена от бившия главен изпълнителен директор на Microsoft Стив Балмър... В собствен уникален и запомнящ се стил;).
  • През 2005 г. Марк Зукърбърг беше домакин на една от лекциите на CS50 като поканен гост. 15 души дойдоха да го слушат.
  • Курсът се избира не само от специализанти, но и от тези, които искат да разширят кръгозора си, да научат нещо за компютрите. Понякога това драстично променя живота на тези „неосновни“ студенти. Например, завършилата история и литература Сюзън Войчицки взе CS50 в последната си година. И тогава тя се премести в Силиконовата долина. Днес тя е главен изпълнителен директор на YouTube.

Къде да намерите преведени лекции

Страницата, на която ще бъдат публикувани лекциите по курса на руски език: javarush.ru/cs50.html. Те ще бъдат достъпни напълно безплатно за всички потребители на Интернет. В ресурса вече е публикуван преводът на първата лекция на 20 юни. Изчакайте следващата лекция на 27 юни и тогава те ще се появят веднага щом са готови.