1 00:00:00,000 --> 00:00:03,440 >> [MUZYKA GRA] 2 00:00:03,440 --> 00:01:57,217 3 00:01:57,217 --> 00:02:00,710 >> [Aplauz] 4 00:02:00,710 --> 00:02:05,700 5 00:02:05,700 --> 00:02:09,669 >> David J. MALAN: To CS50, Wprowadzenie Uniwersytetu Harvarda 6 00:02:09,669 --> 00:02:12,370 do intelektualnej Przedsiębiorstwa z informatyki 7 00:02:12,370 --> 00:02:14,180 i sztuki programowania. 8 00:02:14,180 --> 00:02:17,530 Teraz, jeśli jesteś wśród tych, które każdego roku siedzą tutaj 9 00:02:17,530 --> 00:02:21,450 z nieco nerwów w głowie, takie że uważasz, że nie należysz tutaj, 10 00:02:21,450 --> 00:02:24,270 że najbardziej ktoś siedzi wokół ciebie 11 00:02:24,270 --> 00:02:27,730 wie o wiele więcej niż ty, to rzeczywiście bardziej komfortowe niż ty na komputerze 12 00:02:27,730 --> 00:02:30,430 nauka lub komputery bardziej ogólnie, realizować 13 00:02:30,430 --> 00:02:36,140 że 78% studentów, którzy teraz podjąć CS50 mają bez wcześniejszego doświadczenia. 14 00:02:36,140 --> 00:02:39,570 >> Rzeczywiście, jest tam 100 punktów na wyświetlaczu, przy czym 78 15 00:02:39,570 --> 00:02:43,540 są stałe zielone, co oznacza, jeśli jesteś wśród tej grupy demograficznej, 16 00:02:43,540 --> 00:02:46,420 są w bardzo dobrym towarzystwie na na zewnątrz. 17 00:02:46,420 --> 00:02:50,320 A jeśli jesteś, a nie między 22% studentów CS50, którzy rzeczywiście zrobić 18 00:02:50,320 --> 00:02:53,920 wcześniejsze doświadczenia, czy w liceum lub jakiś inny program, 19 00:02:53,920 --> 00:02:56,430 sobie sprawę, że Ciebie też będzie być kwestionowane w toku. 20 00:02:56,430 --> 00:02:59,930 >> Nie tylko mają różne ścieżki dla studentów mniej wygodne i bardziej 21 00:02:59,930 --> 00:03:03,789 wygodne zarówno w części, my również tak zwane wersje hakerów 22 00:03:03,789 --> 00:03:06,080 z problemem określa, że ​​najbardziej będzie wyzwaniem dla tych uczniów 23 00:03:06,080 --> 00:03:09,650 z tego dodatkowego doświadczenia zbadać podobny materiał 24 00:03:09,650 --> 00:03:12,140 lecz z bardziej Elegancki perspektywy. 25 00:03:12,140 --> 00:03:13,900 >> Ale co to jest komputer? 26 00:03:13,900 --> 00:03:17,750 Cóż, w końcu, co się względu na to, jak zbadać to pole nie jest 27 00:03:17,750 --> 00:03:20,500 tak wiele, gdzie kończy się w stosunku do swoich kolegów, 28 00:03:20,500 --> 00:03:25,350 ale gdzie ty sam zakończyć się 12. tygodniu w porównaniu z którym zaczynają się tutaj 29 00:03:25,350 --> 00:03:26,720 w tygodniu zerowym. 30 00:03:26,720 --> 00:03:31,850 Teraz komputer science-- dobrze, niech nazwać to nauką computation-- 31 00:03:31,850 --> 00:03:35,910 gdzie obliczenia jest naprawdę fantazyjny sposób na powiedzenie, mając swój wkład, 32 00:03:35,910 --> 00:03:39,460 produkuje jakieś wyjście, i robi tak przez algorytmy z systemem, 33 00:03:39,460 --> 00:03:43,700 zestawy instrukcji rozwiązywania jakiś problem na tych wejściach 34 00:03:43,700 --> 00:03:48,460 W celu otrzymania pewnego wyjścia lub Rozwiązanie, w którym jesteś zainteresowany. 35 00:03:48,460 --> 00:03:51,310 >> Więc niedawno okazja do podróży z 36 00:03:51,310 --> 00:03:53,170 do Kalifornii na spotkanie z alumna. 37 00:03:53,170 --> 00:03:54,650 Nazywa się Susan Wojcicki. 38 00:03:54,650 --> 00:03:57,190 A ona chciałbym mówić do ty tutaj na wideo 39 00:03:57,190 --> 00:04:01,690 aby dać świadectwo, jak zastosowanie nawet tylko smak komputera 40 00:04:01,690 --> 00:04:03,770 nauka w Poziom wprowadzająca może być. 41 00:04:03,770 --> 00:04:06,870 Nawet, jeśli nie przejdź do kontynuowania informatyka jako dziedzina, 42 00:04:06,870 --> 00:04:09,330 lub nawet inżynieria, lub macierzystych ogólniej 43 00:04:09,330 --> 00:04:12,360 zobaczysz, w rzeczywistości, w jaki sposób pewne Oczywiście tak, pod wpływem jej życie. 44 00:04:12,360 --> 00:04:16,630 A ona tylko po prostu wziął go, kiedy był starszy tutaj w Harvard College. 45 00:04:16,630 --> 00:04:19,482 >> Czy możemy przyciemnić światła dla Susan. 46 00:04:19,482 --> 00:04:20,690 SUSAN Wójcicki: Witaj, świecie. 47 00:04:20,690 --> 00:04:22,100 Jestem Susan Wojcicki. 48 00:04:22,100 --> 00:04:24,110 Jestem CEO YouTube. 49 00:04:24,110 --> 00:04:29,150 I wziąłem CS50, kiedy byłem Senior na Harvardzie w 1990 roku. 50 00:04:29,150 --> 00:04:31,220 I był rzeczywiście historia i literatura głównym. 51 00:04:31,220 --> 00:04:36,760 >> A mój młodszy lato, Zdałem sobie sprawę, że być może 52 00:04:36,760 --> 00:04:39,060 Chciałem dowiedzieć się czegoś o komputerach. 53 00:04:39,060 --> 00:04:40,930 I tak, wróciłem. 54 00:04:40,930 --> 00:04:42,500 Wziąłem CS50. 55 00:04:42,500 --> 00:04:46,940 Było ciężko, ale było Najbardziej niesamowite klasy wziąłem. 56 00:04:46,940 --> 00:04:49,630 >> To zmieniło, jak myślę o wszystkim. 57 00:04:49,630 --> 00:04:55,810 A kiedy ukończył Harvard w 1990 roku, pojechałem do Doliny Krzemowej. 58 00:04:55,810 --> 00:04:57,140 I dostałem pracę. 59 00:04:57,140 --> 00:05:00,150 I pracuję w tech dziś. 60 00:05:00,150 --> 00:05:02,650 David J. MALAN: co teraz Susan nie wspomnieć w tym filmie, 61 00:05:02,650 --> 00:05:05,340 że była ona w niej Garaż, który był sam Google 62 00:05:05,340 --> 00:05:07,420 założona przez Larry'ego i Sergeya. 63 00:05:07,420 --> 00:05:11,169 >> Teraz możemy dotrzeć do naszych przyjaciół w code.org, organizacji 64 00:05:11,169 --> 00:05:13,460 w ciągu ostatniego roku nie było uzyskiwanie osób szczególnie 65 00:05:13,460 --> 00:05:16,520 podekscytowany informatyki i programowania, w szczególności. 66 00:05:16,520 --> 00:05:20,590 Ale warto zauważyć, że programowanie informatyka nie jest per se. 67 00:05:20,590 --> 00:05:22,090 Informatyka nie jest programowanie. 68 00:05:22,090 --> 00:05:24,560 Raczej programowania jest tylko tool-- z których każdy z was 69 00:05:24,560 --> 00:05:27,510 będzie zbyt dobrze zaznajomieni przez end-- semestru 70 00:05:27,510 --> 00:05:30,650 tak, że można nie stosować tylko do przyszłych kursów w CS 71 00:05:30,650 --> 00:05:33,670 ale do dowolnych pól skąd idziesz, w naukach humanistycznych, 72 00:05:33,670 --> 00:05:36,090 nauk społecznych, przyrodniczych Nauka, lub podobne. 73 00:05:36,090 --> 00:05:39,740 >> Rzeczywiście, pozwalają kilka innych absolwenci i ich koledzy 74 00:05:39,740 --> 00:05:43,400 mówić do stosowania w dziedzinie, która czeka. 75 00:05:43,400 --> 00:05:52,340 76 00:05:52,340 --> 00:05:57,350 >> Bill Gates: miałem 13, kiedy pierwszy ma dostęp do komputera. 77 00:05:57,350 --> 00:06:00,485 >> JACK DORSEY: Moi rodzice kupił mi Macintosh w 1984 roku 78 00:06:00,485 --> 00:06:01,640 kiedy miałem osiem-letni. 79 00:06:01,640 --> 00:06:02,990 >> Mark Zuckerberg: jestem w szóstej klasie. 80 00:06:02,990 --> 00:06:04,670 >> Głośnik 1: nauczyłem się kodować w college'u. 81 00:06:04,670 --> 00:06:09,080 >> Ruchi Sanghvi: na pierwszym roku, pierwsza Semestr, Wstęp do informatyki. 82 00:06:09,080 --> 00:06:11,850 >> Bill Gates: Napisałem program że grał tic-tac-toe. 83 00:06:11,850 --> 00:06:14,100 >> DREW HOUSTON: Myślę, że to było bardzo skromne początki. 84 00:06:14,100 --> 00:06:16,370 Myślę, że pierwszy program Napisałem zapytał rzeczy jak, 85 00:06:16,370 --> 00:06:17,820 jaki jest twój ulubiony kolor? 86 00:06:17,820 --> 00:06:18,696 Lub ile masz lat? 87 00:06:18,696 --> 00:06:21,070 ELENA SILENOK: Po raz pierwszy dowiedziałem jak zrobić zielone kółko 88 00:06:21,070 --> 00:06:23,670 i czerwony kwadrat pojawiają się na ekranie. 89 00:06:23,670 --> 00:06:25,420 GABE NEWELL: pierwszy I rzeczywiście miał czas 90 00:06:25,420 --> 00:06:27,360 coś wymyślić i powiedzieć: Witaj, świecie. 91 00:06:27,360 --> 00:06:29,710 I zrobiłem komputer zrobić. 92 00:06:29,710 --> 00:06:30,850 To było po prostu zdumiewające. 93 00:06:30,850 --> 00:06:33,224 >> Mark Zuckerberg: Nauczenie do programu nie zacząć 94 00:06:33,224 --> 00:06:35,450 jak chce się uczyć wszystkie z informatyki 95 00:06:35,450 --> 00:06:38,630 lub próbują opanować tę Dyscyplina lub coś podobnego. 96 00:06:38,630 --> 00:06:41,591 To właśnie dlatego, że rozpoczął się chciałem zrobić jedną prostą rzecz. 97 00:06:41,591 --> 00:06:44,340 Chciałem zrobić coś, co była zabawa dla mnie i moich sióstr. 98 00:06:44,340 --> 00:06:46,399 >> I napisałem ten mały program. 99 00:06:46,399 --> 00:06:48,440 A następnie w zasadzie tylko dodaje się trochę do niego. 100 00:06:48,440 --> 00:06:49,930 A potem, gdy potrzebowałem nauczyć się czegoś nowego, 101 00:06:49,930 --> 00:06:52,210 Sprawdziłem to, albo w książki lub w Internecie, 102 00:06:52,210 --> 00:06:53,240 a następnie dodaje się do niej trochę. 103 00:06:53,240 --> 00:06:56,300 >> DREW HOUSTON: To naprawdę nie jest w przeciwieństwie do gra na instrumencie, czy coś 104 00:06:56,300 --> 00:07:00,007 lub uprawianie sportu. 105 00:07:00,007 --> 00:07:01,090 David J. MALAN: Wszystko w porządku. 106 00:07:01,090 --> 00:07:04,120 Więc teraz rzeczywiście nurkować w nieco głębiej. 107 00:07:04,120 --> 00:07:07,430 Co to są te wejścia i wyjścia że mówimy tutaj? 108 00:07:07,430 --> 00:07:09,110 >> Tak jak o coś prostego? 109 00:07:09,110 --> 00:07:12,120 Zapewne wiecie, nawet jeśli masz bez znajomości informatyki 110 00:07:12,120 --> 00:07:16,570 w ogóle, że w jakiś sposób wykorzystać komputery i rozumie tylko zer i jedynek. 111 00:07:16,570 --> 00:07:20,500 Ale jak to może mieć, jak wiele dzisiejszych zarówno komputery stacjonarne i laptopy 112 00:07:20,500 --> 00:07:21,280 może zrobić? 113 00:07:21,280 --> 00:07:24,310 >> DNA dnia, tylko alfabet, że rozumieją 114 00:07:24,310 --> 00:07:26,410 jest zero lub jeden. 115 00:07:26,410 --> 00:07:27,470 Cóż, za to. 116 00:07:27,470 --> 00:07:30,840 My, ludzie, mają tendencję do używania system dziesiętny. "Grudnia", czyli 10. 117 00:07:30,840 --> 00:07:33,970 A to dlatego, że mamy 10 10 cyfr, od 0 do dziewięciu. 118 00:07:33,970 --> 00:07:36,180 >> Obecnie komputery, natomiast mają tendencję do uruchomienia program. 119 00:07:36,180 --> 00:07:37,270 "Bi", co oznacza dwa. 120 00:07:37,270 --> 00:07:39,560 Więc mają tendencję do używania tylko zero i jeden. 121 00:07:39,560 --> 00:07:42,680 Ale okazuje się, że nawet tylko z zer i jedynek, to 122 00:07:42,680 --> 00:07:45,900 Jest wystarczająco duża alfabetu z których do reprezentowania najbardziej 123 00:07:45,900 --> 00:07:48,490 każdy kawałek danych chcesz, czy jest to liczba, 124 00:07:48,490 --> 00:07:52,100 czy to list, czy to graficzne lub wideo na ekranie. 125 00:07:52,100 --> 00:07:57,140 >> Rozważmy, na przykład, w jaki sposób ludzi zazwyczaj interpretują tę liczbę tutaj. 126 00:07:57,140 --> 00:08:00,010 To tylko trzy cyfry, jeden, dwa, trzy. 127 00:08:00,010 --> 00:08:04,570 Ale wiemy, ten numer wrodzony teraz jako 123. 128 00:08:04,570 --> 00:08:05,510 Ale dlaczego tak jest? 129 00:08:05,510 --> 00:08:07,570 >> Cóż, jeśli uważasz, że powrót do być może szkole, 130 00:08:07,570 --> 00:08:11,700 zapewne uczono myśleć te numery jak jest w kolumnach, 131 00:08:11,700 --> 00:08:14,700 w których jeden jest setek miejsce, dwa w miejscu dziesiątek, 132 00:08:14,700 --> 00:08:16,360 i trzy w miejscu jednostek. 133 00:08:16,360 --> 00:08:17,790 Dlatego, że jest rzeczywiście przydatna? 134 00:08:17,790 --> 00:08:19,665 Cóż, myślę o bardzo prosta arytmetyka 135 00:08:19,665 --> 00:08:22,219 że wszyscy byli robi od lat. 136 00:08:22,219 --> 00:08:24,510 Skutecznie, jeśli masz jeden w miejscu setek, 137 00:08:24,510 --> 00:08:29,610 zrobić szybki matematyki 100 razy 1 plus 10 razy 2-- 138 00:08:29,610 --> 00:08:33,059 bo dwa jest w dziesiątkach place-- plus 1 3-- 139 00:08:33,059 --> 00:08:34,830 ponieważ trzy w miejscu jednostek. 140 00:08:34,830 --> 00:08:37,039 Zatem, oczywiście, jeśli my faktycznie pomnożyć to uwagę, 141 00:08:37,039 --> 00:08:39,600 co tak naprawdę reprezentujących z tego pattern-- jednym 142 00:08:39,600 --> 00:08:46,150 dwa three-- jest 100 plus 20 Plus 3, co, oczywiście, jest 123. 143 00:08:46,150 --> 00:08:51,130 >> Teraz binarny i komputery naprawdę, zasadniczo mówią tym samym językiem 144 00:08:51,130 --> 00:08:51,680 , co robimy. 145 00:08:51,680 --> 00:08:53,400 Oni po prostu mają mniejszą alfabetu. 146 00:08:53,400 --> 00:08:57,100 Tak komputery mają tylko zera oraz te, w ich dyspozycji. 147 00:08:57,100 --> 00:09:02,500 Tak więc, podczas gdy my, ludzie mają w zasadzie Uprawnienia z 10 w każdym z tych places-- 148 00:09:02,500 --> 00:09:06,810 10 do zera, 10 do jednego, dziesięciu do dwóch, co daje 110 i 100 149 00:09:06,810 --> 00:09:07,700 odpowiednio. 150 00:09:07,700 --> 00:09:12,140 >> Ponieważ komputery mają tylko dwie wartości mogą zrozumieć, zero i jeden, 151 00:09:12,140 --> 00:09:16,600 muszą używać różnych wartości W tych kolumnach, jeden, dwa, cztery. 152 00:09:16,600 --> 00:09:20,480 A jeśli mieliśmy zamiar, osiem, 16, 32, 64, i tak dalej. 153 00:09:20,480 --> 00:09:24,220 Jednak wzoru i Mentalność jest dokładnie taka sama. 154 00:09:24,220 --> 00:09:27,340 >> Więc przez tę logikę, nikogo, jak by Idę o reprezentująca liczbę 155 00:09:27,340 --> 00:09:28,530 jeden w formacie binarnym? 156 00:09:28,530 --> 00:09:33,080 Jeśli nigdy wcześniej nawet nie pomyślał o to przed, jak masz gut powiedzieć? 157 00:09:33,080 --> 00:09:33,777 >> PUBLICZNOŚCI: Jeden. 158 00:09:33,777 --> 00:09:34,610 David J. MALAN: Jeden. 159 00:09:34,610 --> 00:09:35,660 Dokładnie. 160 00:09:35,660 --> 00:09:38,100 Potrzebujemy tylko jeden w Ones miejsce bo zer 161 00:09:38,100 --> 00:09:40,610 wystarczy dać nam ani cztery, ani dwa. 162 00:09:40,610 --> 00:09:42,440 Więc jeden razy jeden równa się jeden. 163 00:09:42,440 --> 00:09:43,940 Teraz robi się trochę interesujące. 164 00:09:43,940 --> 00:09:46,830 Jeśli chcę do reprezentowania w binarny numer two-- ale, 165 00:09:46,830 --> 00:09:49,790 ponownie, nawet jeśli nigdy nie przed mówił tym językiem, 166 00:09:49,790 --> 00:09:54,680 jak możemy reprezentować binarnie wartości, jaką ludzie wiedzą, jak dwóch? 167 00:09:54,680 --> 00:09:55,570 Zero jeden zero. 168 00:09:55,570 --> 00:09:57,620 Wystarczy umieścić jeden w kolumny, które chcesz. 169 00:09:57,620 --> 00:09:59,560 >> Teraz robi się dość łatwo pewnie teraz. 170 00:09:59,560 --> 00:10:02,950 Więc jeśli chcę reprezentować three-- jest kolumna żadne trzy nie za. 171 00:10:02,950 --> 00:10:06,770 Tak więc, ponownie, nie mogę teraz dodać te wartości razem umieszczając je tutaj. 172 00:10:06,770 --> 00:10:10,320 Tak 2 razy 1 plus 1 Czasy 1 jest oczywiście 3. 173 00:10:10,320 --> 00:10:13,480 >> Teraz robi się trochę zabawy w że ci się teraz zera. 174 00:10:13,480 --> 00:10:15,480 I reprezentują cztery, mam to. 175 00:10:15,480 --> 00:10:19,310 A jeśli zwiększamy powoli tutaj-- że będzie pięć. 176 00:10:19,310 --> 00:10:20,700 Byłoby sześć. 177 00:10:20,700 --> 00:10:22,100 Byłoby siedem. 178 00:10:22,100 --> 00:10:25,310 >> Ale teraz wydaje się, że napotkasz problem. 179 00:10:25,310 --> 00:10:30,520 Jak mógłbym go o reprezentowanie eight-- będzie następna wartość. 180 00:10:30,520 --> 00:10:31,900 Tak, więc potrzebujemy nowych bitów. 181 00:10:31,900 --> 00:10:33,899 I rzeczywiście, jeśli masz słyszałem to zdanie, 182 00:10:33,899 --> 00:10:37,380 Bity, które znajduje się tuż za binarny cyfra zero lub jeden. 183 00:10:37,380 --> 00:10:41,520 >> I tak stało się reprezentujący tylko trzy takie bity tutaj. 184 00:10:41,520 --> 00:10:44,900 Ale gdybym miał sposób nie przechowywania trzy różne bity, ale cztery, 185 00:10:44,900 --> 00:10:47,250 pewnością mogę reprezentować osiem i dziewięć, a następnie 186 00:10:47,250 --> 00:10:49,400 10, a nawet wyższe. 187 00:10:49,400 --> 00:10:52,140 >> Ale to wywołuje na pytanie, jak to możliwe 188 00:10:52,140 --> 00:10:54,540 go o reprezentowanie ich rzeczy w pierwszej kolejności. 189 00:10:54,540 --> 00:10:56,950 Jest jedna rzecz, aby wyciągnąć je się tutaj na slajdzie, 190 00:10:56,950 --> 00:11:00,660 ale jak je reprezentować jeśli urządzenie mechaniczne? 191 00:11:00,660 --> 00:11:04,390 Co się robi, aby komputer stanowią, że wejścia i wyjścia 192 00:11:04,390 --> 00:11:09,020 zasadniczo zdefiniować obliczeń Na koniec dnia? 193 00:11:09,020 --> 00:11:12,090 >> Cóż, to, co o czymś super proste jak to? 194 00:11:12,090 --> 00:11:13,200 To tylko żarówka. 195 00:11:13,200 --> 00:11:15,460 I mogę wywołać ten żarówka, aby przejść na 196 00:11:15,460 --> 00:11:17,920 obracając trochę energii elektrycznej Elektrony i pozwalające na 197 00:11:17,920 --> 00:11:22,585 przepływać przez, które zmieniają państwo lub jego wartość, że tak powiem. 198 00:11:22,585 --> 00:11:24,460 Na przykład, jest old school desk lamp 199 00:11:24,460 --> 00:11:27,250 Obok jednego takiego żarówka wewnątrz niego. 200 00:11:27,250 --> 00:11:29,940 A teraz to nie jest naprawdę robi nic pożytecznego. 201 00:11:29,940 --> 00:11:32,680 Ale jak tylko podłączyć do gniazdka elektrycznego 202 00:11:32,680 --> 00:11:36,390 a następnie użyć tego switch-- lub możemy nawet nazwać to tranzystor 203 00:11:36,390 --> 00:11:39,970 i myśleć o tym, jak such-- Teraz mogę reprezentować albo 204 00:11:39,970 --> 00:11:44,120 Wartość ta, w której jest żarówka oczywiście wyłączyć, lub ta wartość. 205 00:11:44,120 --> 00:11:46,060 Ta wartość lub wartość. 206 00:11:46,060 --> 00:11:47,520 Ta wartość i tak dalej. 207 00:11:47,520 --> 00:11:51,220 >> Tak więc wewnątrz komputera przypuszczalnie są znacznie mniejsze kawałki sprzętu, 208 00:11:51,220 --> 00:11:52,970 jednak, że pod koniec na dzień po prostu 209 00:11:52,970 --> 00:11:55,360 używać electricity-- może uchwycić to-- 210 00:11:55,360 --> 00:11:59,730 i następnie albo zachować co lub zachować coś off. 211 00:11:59,730 --> 00:12:02,021 Oczywiście, nie jest to szczególnie interesujące zrobić 212 00:12:02,021 --> 00:12:03,270 z tylko jednym żarówki. 213 00:12:03,270 --> 00:12:06,726 >> W rzeczywistości, jak wysoko mogę liczyć w binarny z tej lampy biurko tutaj? 214 00:12:06,726 --> 00:12:07,420 >> PUBLICZNOŚCI: Jeden. 215 00:12:07,420 --> 00:12:08,545 >> David J. MALAN: Jeden, prawda? 216 00:12:08,545 --> 00:12:11,020 Potrzebuję więcej lampy biurkowe, jeśli faktycznie chcą liczyć wyższa. 217 00:12:11,020 --> 00:12:12,210 Ale co możemy zrobić lepiej. 218 00:12:12,210 --> 00:12:14,460 Ponieważ żarówek, które umieściliśmy w tych sprawach 219 00:12:14,460 --> 00:12:17,730 są rzeczywiście hodowcy żarówki niż yesteryear pozwoli. 220 00:12:17,730 --> 00:12:20,310 I są one rzeczywiście sieciowych żarówek. 221 00:12:20,310 --> 00:12:23,160 Firm i wiązanki zrobić te rzeczy w tych dniach. 222 00:12:23,160 --> 00:12:25,190 >> Ale okazuje się, że W szczególności ten 223 00:12:25,190 --> 00:12:27,680 pochodzi z funkcji, zgodnie z którą można zmienić jego kolory. 224 00:12:27,680 --> 00:12:30,810 Tak na przykład, jeśli zdobi pokój w akademiku 225 00:12:30,810 --> 00:12:33,200 z kilkoma z nich światła żarówki, w zależności od nastroju, 226 00:12:33,200 --> 00:12:35,366 w zależności od tego, kto przychodzi, w zależności od warunków pogodowych, 227 00:12:35,366 --> 00:12:37,360 w zależności od czasu z dnia na dzień, można rzeczywiście 228 00:12:37,360 --> 00:12:40,300 zmienić kolory żarówki w pokoju. 229 00:12:40,300 --> 00:12:43,740 A to dlatego, że te światła żarówki i inne, jak to mają co 230 00:12:43,740 --> 00:12:48,010 zwany API, aplikacja interfejs programowania, który 231 00:12:48,010 --> 00:12:50,920 Jest to temat, z którym będziesz dobrze zna do końca semestru. 232 00:12:50,920 --> 00:12:53,710 >> I to jest tylko wyobraźnia, tajemniczy sposób mówienia, 233 00:12:53,710 --> 00:12:57,570 można zaprogramować te światła żarówki zrobić licytację. 234 00:12:57,570 --> 00:13:00,360 Możesz wysłać do nich wiadomości tak jak ty, człowiek, 235 00:13:00,360 --> 00:13:03,640 Możesz wysłać wiadomość do serwera WWW mówiąc mi dzisiejsze wiadomości 236 00:13:03,640 --> 00:13:05,110 lub dać mi mój adres e-mail. 237 00:13:05,110 --> 00:13:08,010 >> Możesz wysłać więcej Arcane wiadomości do tych żarówek 238 00:13:08,010 --> 00:13:09,700 powiedzieć, włączyć i wyłączyć. 239 00:13:09,700 --> 00:13:11,370 Ale to nie wszystko, co ciekawe. 240 00:13:11,370 --> 00:13:14,280 Można powiedzieć, włączyć czerwony, włączyć zielony, włącz niebieski, 241 00:13:14,280 --> 00:13:15,990 wszystkie z tej samej żarówki. 242 00:13:15,990 --> 00:13:20,990 I można nawet z nieco bardziej bystry, powiedzieć, włączyć się do niebieskiego 243 00:13:20,990 --> 00:13:24,710 kiedy to ponury dzień na zewnątrz, na przykład. 244 00:13:24,710 --> 00:13:27,910 Może rzeczywiście do poprawki API pogoda i dowiedzieć się, 245 00:13:27,910 --> 00:13:32,260 jaka jest pogoda, czy czas doby, lub innych podobnych czynników wyzwalających. 246 00:13:32,260 --> 00:13:35,550 >> Tak więc, w rzeczywistości, dwa Własnych pracowników CS50 jest, 247 00:13:35,550 --> 00:13:38,827 Dan Bradley i Ansel Duff tutaj, uprzejmie zamówione 248 00:13:38,827 --> 00:13:40,410 nam cała masa tych żarówek. 249 00:13:40,410 --> 00:13:42,910 I zbudowali CS50-tych Pierwsze żarówki kiedykolwiek binarne, 250 00:13:42,910 --> 00:13:46,850 gdzie mamy reprezentowane tutaj-- z tymi zabawy małym magnets-- 251 00:13:46,850 --> 00:13:49,780 my różne zastępcze wspomniał tylko trochę temu. 252 00:13:49,780 --> 00:13:52,572 >> Więc sposób jest tutaj Ones miejsce, dwa, cztery. 253 00:13:52,572 --> 00:13:54,030 I nie widzimy wyższe niż. 254 00:13:54,030 --> 00:13:55,613 Ale, oczywiście, są potęgami dwójki. 255 00:13:55,613 --> 00:13:59,490 Osiem, 16, 32, 64 i 128. 256 00:13:59,490 --> 00:14:03,320 Więc jeśli teraz chcę być trochę bardziej wyszukane niż przy użyciu ten stary przełącznik szkolnej, 257 00:14:03,320 --> 00:14:07,310 Mam tutaj na tym iPadzie bardzo prosty interfejs 258 00:14:07,310 --> 00:14:10,440 że Dan Bradley, były studentów i kolegów teraz nauczania, 259 00:14:10,440 --> 00:14:13,510 zaprogramować przy użyciu niektóre HTML i JavaScript, które 260 00:14:13,510 --> 00:14:15,685 są i programowania znaczników Języki odpowiednio. 261 00:14:15,685 --> 00:14:17,560 I prawdopodobnie można see-- nawet w back-- 262 00:14:17,560 --> 00:14:21,670 jest duży plus i duży minus, plus jeden przycisk dla każdego z tych żarówek. 263 00:14:21,670 --> 00:14:25,740 A co to będzie pozwalają mi nie jest, na przykład, kliknij znak plus 264 00:14:25,740 --> 00:14:28,250 a teraz reprezentują, z Oczywiście, co liczba? 265 00:14:28,250 --> 00:14:28,750 Jeden. 266 00:14:28,750 --> 00:14:30,220 I mogę uderzyć go ponownie. 267 00:14:30,220 --> 00:14:31,480 Dwa. 268 00:14:31,480 --> 00:14:32,800 Trzy. 269 00:14:32,800 --> 00:14:33,950 Cztery. 270 00:14:33,950 --> 00:14:35,200 Pięć. 271 00:14:35,200 --> 00:14:36,360 Sześć. 272 00:14:36,360 --> 00:14:36,880 Siedem. 273 00:14:36,880 --> 00:14:40,740 >> A tu teraz mamy tego najazdu, ale mamy ten czwarty trochę czasu, 274 00:14:40,740 --> 00:14:42,180 tak teraz mamy osiem. 275 00:14:42,180 --> 00:14:44,000 , Więc możemy to zrobić już od jakiegoś czasu. 276 00:14:44,000 --> 00:14:46,530 W rzeczywistości, jak bok jak wysoko możemy liczyć? 277 00:14:46,530 --> 00:14:48,318 Każdy, kto? 278 00:14:48,318 --> 00:14:49,270 >> PUBLICZNOŚCI: 255. 279 00:14:49,270 --> 00:14:51,420 >> David J. MALAN: 255, prawda? 280 00:14:51,420 --> 00:14:54,900 Nie martw się zbytnio o matematyce dla teraz, ale to całkiem przyzwoity numer. 281 00:14:54,900 --> 00:14:59,140 Ale faktycznie jest związany tylko ile części informacji, 282 00:14:59,140 --> 00:15:01,760 jak list, lub graficznej że mogliśmy reprezentować. 283 00:15:01,760 --> 00:15:02,697 >> Ale bez względu na to, do teraz. 284 00:15:02,697 --> 00:15:04,530 Mam zamiar iść do przodu i włączyć je wszystkie. 285 00:15:04,530 --> 00:15:09,670 I gdybym mógł, chciałbym prosić o Wolontariat, nasz pierwszy volunteer-- 286 00:15:09,670 --> 00:15:11,342 och, hello-- na scenie. 287 00:15:11,342 --> 00:15:14,050 Połów jest, trzeba być wygodne pojawiać, jak wyraźnie 288 00:15:14,050 --> 00:15:17,421 są przed wszystkimi kolegami, , jak również w Internecie. 289 00:15:17,421 --> 00:15:20,420 I pozwól mi spojrzeć trochę poza do-- jak o tutaj, w białej koszuli? 290 00:15:20,420 --> 00:15:20,920 I oddać się. 291 00:15:20,920 --> 00:15:22,071 Chodź na górę. 292 00:15:22,071 --> 00:15:22,820 Jak masz na imię? 293 00:15:22,820 --> 00:15:23,760 >> PUBLICZNOŚCI: Jackie. 294 00:15:23,760 --> 00:15:24,718 >> David J. MALAN: Jackie. 295 00:15:24,718 --> 00:15:25,820 Jackie, dalej w górę. 296 00:15:25,820 --> 00:15:29,820 Tak więc to, co jest też na to iPad jest przycisk o nazwie Game Mode. 297 00:15:29,820 --> 00:15:32,570 I jest to tryb gry zamierza dopuścić mnie do wejścia 298 00:15:32,570 --> 00:15:35,780 z góry szczególności dziesiętnych Numer, że my, ludzie są numery 299 00:15:35,780 --> 00:15:36,760 znać. 300 00:15:36,760 --> 00:15:39,820 A następnie zostanie zakwestionowane tutaj, aby korzystać z przycisków 301 00:15:39,820 --> 00:15:42,140 na top-- jednym dla każda z tych bulbs-- 302 00:15:42,140 --> 00:15:45,050 rzeczywiście dowiedzieć się, wzór żarówek 303 00:15:45,050 --> 00:15:46,970 która reprezentuje liczbę w pytaniu. 304 00:15:46,970 --> 00:15:47,790 >> I przykro mi, co jeszcze masz na imię? 305 00:15:47,790 --> 00:15:48,250 >> PUBLICZNOŚCI: Jackie. 306 00:15:48,250 --> 00:15:48,620 >> David J. MALAN: Jackie. 307 00:15:48,620 --> 00:15:48,920 Wszystko w porządku. 308 00:15:48,920 --> 00:15:49,740 Miło cię poznać. 309 00:15:49,740 --> 00:15:54,580 >> Więc pozwól mi iść dalej i program na dla świata, aby zobaczyć numer 15. 310 00:15:54,580 --> 00:15:56,360 Będziemy go najpierw tutaj mała. 311 00:15:56,360 --> 00:15:58,240 I mam zamiar przejść do trybu gry. 312 00:15:58,240 --> 00:16:01,160 I mam zamiar określić, daje nam liczbę 15. 313 00:16:01,160 --> 00:16:01,900 >> OK. 314 00:16:01,900 --> 00:16:05,510 A teraz, jeśli się wszyscy watching-- chcesz może stać w ten sposób, 315 00:16:05,510 --> 00:16:09,970 ponieważ będzie to linia up-- śmiało przełączać osiem przycisków u góry 316 00:16:09,970 --> 00:16:12,530 włączyć żarówek na lub wyłączyć jak uważasz. 317 00:16:12,530 --> 00:16:13,530 >> PUBLICZNOŚCI: OK. 318 00:16:13,530 --> 00:16:17,720 >> David J. MALAN: I nie oszukuje uderzając Plus 15 razy. 319 00:16:17,720 --> 00:16:19,275 Och, mamy zamiar zrobić. 320 00:16:19,275 --> 00:16:20,069 >> PUBLICZNOŚCI: Och, czekaj. 321 00:16:20,069 --> 00:16:20,610 Tak mi przykro. 322 00:16:20,610 --> 00:16:22,660 >> David J. MALAN: Można również wyłączyć żarówek na indywidualnie 323 00:16:22,660 --> 00:16:24,076 przy czym każdy z tych przycisków na górze. 324 00:16:24,076 --> 00:16:24,844 PUBLICZNOŚCI: Och, OK. 325 00:16:24,844 --> 00:16:27,429 Więc byłoby jak-- 326 00:16:27,429 --> 00:16:28,220 David J. MALAN: OK. 327 00:16:28,220 --> 00:16:29,100 Więc teraz mamy osiem. 328 00:16:29,100 --> 00:16:31,280 Warto więc zatrzymać się na Publiczność zaangażować tutaj. 329 00:16:31,280 --> 00:16:34,300 Jaki numer jest Jackie aktualnie reprezentujący? 330 00:16:34,300 --> 00:16:34,800 11. 331 00:16:34,800 --> 00:16:35,730 Więc jesteśmy prawie na miejscu. 332 00:16:35,730 --> 00:16:38,360 333 00:16:38,360 --> 00:16:39,630 I doskonałe. 334 00:16:39,630 --> 00:16:41,487 Więc mamy nasz pierwszy zwycięzca. 335 00:16:41,487 --> 00:16:42,445 Gratulacje. 336 00:16:42,445 --> 00:16:48,200 >> I myśleliśmy, że mamy niektóre wspaniałe prezenty. 337 00:16:48,200 --> 00:16:50,860 Jeśli chcesz być jednym z takich dorm pokój tutaj w kampusie, 338 00:16:50,860 --> 00:16:56,126 można sobie mieć ostateczny projekt Teraz za pomocą tego interfejsu API, dzięki Jackie. 339 00:16:56,126 --> 00:16:57,050 Więc teraz-- 340 00:16:57,050 --> 00:16:58,902 >> [Aplauz] 341 00:16:58,902 --> 00:17:01,690 342 00:17:01,690 --> 00:17:04,839 >> --Jeśli mogliśmy, jeden takich wokół tego. 343 00:17:04,839 --> 00:17:07,690 Och, teraz każdy chce kilka żarówek. 344 00:17:07,690 --> 00:17:11,790 W przypadku tak zwanej wersji hakera, idziemy do ziemi go a-- oh, 345 00:17:11,790 --> 00:17:12,770 tak, niezobowiązujące. 346 00:17:12,770 --> 00:17:16,010 Myślę, że idziesz się Jeśli twoja ręka idzie w dół. 347 00:17:16,010 --> 00:17:16,800 Jak masz na imię? 348 00:17:16,800 --> 00:17:17,424 >> PUBLICZNOŚCI: Alex. 349 00:17:17,424 --> 00:17:19,440 David J. MALAN: Alex, chodź tutaj. 350 00:17:19,440 --> 00:17:26,190 Więc dla Alex, będziemy Program w nieco większej ilości. 351 00:17:26,190 --> 00:17:27,790 Być może tak. 352 00:17:27,790 --> 00:17:29,110 Numer 50. 353 00:17:29,110 --> 00:17:29,744 >> PUBLICZNOŚCI: OK. 354 00:17:29,744 --> 00:17:31,660 David J. MALAN: Ale, jak I said-- a może 355 00:17:31,660 --> 00:17:33,580 chce tu stać tak że przyciski kolejce 356 00:17:33,580 --> 00:17:37,115 jak można expect-- ale zrobiłem Nazywamy to wydanie hakerów. 357 00:17:37,115 --> 00:17:47,125 Więc-- powodzenia! 358 00:17:47,125 --> 00:17:48,416 >> [Śmiech] 359 00:17:48,416 --> 00:17:58,570 360 00:17:58,570 --> 00:18:02,050 >> Będzie można włączyć je, jeśli ty-- OK. 361 00:18:02,050 --> 00:18:02,880 Doskonałe. 362 00:18:02,880 --> 00:18:03,675 Wspaniałe. 363 00:18:03,675 --> 00:18:04,341 Gratulacje. 364 00:18:04,341 --> 00:18:08,730 >> [Aplauz] 365 00:18:08,730 --> 00:18:10,355 Przypuszczam, że powinienem zapłacić. 366 00:18:10,355 --> 00:18:11,830 Gratulacje dla Alex, jak również. 367 00:18:11,830 --> 00:18:12,330 OK. 368 00:18:12,330 --> 00:18:15,550 >> Więc ostateczny wynos o to mam nadzieję, że, szczerze mówiąc, 369 00:18:15,550 --> 00:18:18,109 simplicity-- Prostota, z jaką 370 00:18:18,109 --> 00:18:20,650 można dostać jakieś fajne światło żarówki, najwyraźniej w [niesłyszalne]. 371 00:18:20,650 --> 00:18:23,000 Ale oni reprezentują, ostatecznie, same pomysły 372 00:18:23,000 --> 00:18:26,310 , z którym my, ludzie są już zbyt dobrze. 373 00:18:26,310 --> 00:18:28,660 Więc co może następna Etap być progresji 374 00:18:28,660 --> 00:18:30,920 próbuje coś zrobić ciekawe z danych 375 00:18:30,920 --> 00:18:34,950 i reprezentujący wejść, które nie są po prostu Może jednak są numery listów lub więcej? 376 00:18:34,950 --> 00:18:37,820 >> Cóż, okazuje się, że Komputer Świat, przez wiele lat, 377 00:18:37,820 --> 00:18:43,300 po prostu przyjęte arbitralnie, ale spójny standard, który odwzorowuje numery 378 00:18:43,300 --> 00:18:44,610 do liter alfabetu. 379 00:18:44,610 --> 00:18:47,120 Na przykład, tutaj jest Wyciąg z tego mapowania. 380 00:18:47,120 --> 00:18:48,350 To się nazywa ASCII. 381 00:18:48,350 --> 00:18:53,220 -S-C-i-I. I że jest to po prostu Stół, który odwzorowuje wielką letters-- 382 00:18:53,220 --> 00:18:56,600 w tym case-- na dziesiętne liczb. 383 00:18:56,600 --> 00:18:57,890 >> Ale co to implikacja? 384 00:18:57,890 --> 00:19:01,090 Cóż, jeśli rzeczywiście chcą reprezentować coś jak wiadomości e-mail lub tekst 385 00:19:01,090 --> 00:19:03,310 na stronie internetowej, oczywiście chcemy pokazać 386 00:19:03,310 --> 00:19:06,100 ludzkie litery alfabet, a nie numery. 387 00:19:06,100 --> 00:19:09,140 Tak więc w zależności od ramach programu 388 00:19:09,140 --> 00:19:12,600 że użytkownik korzysta, jeśli jest to przeglądarka i klient poczty elektronicznej, 389 00:19:12,600 --> 00:19:16,090 Numery z pewnością może być interpretowane jako litery. 390 00:19:16,090 --> 00:19:20,290 To znaczy, możliwe wzory bitów łatwo być interpretowane jako litery. 391 00:19:20,290 --> 00:19:24,700 >> A więc to, co możemy mieć List jest istotą 392 00:19:24,700 --> 00:19:28,410 reprezentowane 65, B reprezentowane jako 66. 393 00:19:28,410 --> 00:19:30,900 Więc jeśli mamy super krótkie słowo, jak cześć, 394 00:19:30,900 --> 00:19:35,740 co komputer stałoby Przechowywać w przecinku, ale naprawdę w binarny, 395 00:19:35,740 --> 00:19:40,070 stosując jakąś sekwencję bitów, wykorzystując nieco energii elektrycznej w jakiś sposób, 396 00:19:40,070 --> 00:19:44,010 byłyby dwa numery 72 i 73. 397 00:19:44,010 --> 00:19:46,780 >> Jednakże wzór bitów reprezentuje te wartości. 398 00:19:46,780 --> 00:19:49,820 Następnie są one tak, jak możemy Reprezentujemy naszych wejść i wyjść. 399 00:19:49,820 --> 00:19:52,630 I wystarczy powiedzieć, możemy do bardziej złożonych oświadczeń 400 00:19:52,630 --> 00:19:56,450 ostatecznie z rzeczy, jak grafiki, filmy, muzyka i wiele więcej 401 00:19:56,450 --> 00:19:58,190 jak zobaczymy później ten termin. 402 00:19:58,190 --> 00:20:00,630 >> Tak, że po prostu pozostawia następnie Zestawy te algorytmy, 403 00:20:00,630 --> 00:20:03,490 instrukcji, z którymi my rozwiązywania rzeczywistych problemów. 404 00:20:03,490 --> 00:20:05,820 Mijamy się wejść do algorytmów. 405 00:20:05,820 --> 00:20:09,630 I te algorytmy są produkcji wyjścia, mam nadzieję, że poprawne wyjścia 406 00:20:09,630 --> 00:20:14,160 i mam nadzieję, że również skutecznie zebrane wyjścia. 407 00:20:14,160 --> 00:20:16,890 Innymi słowy, jest to jedna rzecz, do prawidłowego wykonania czegoś. 408 00:20:16,890 --> 00:20:20,790 To kolejna rzecz, do realizacji coś dobrze i wydajnie. 409 00:20:20,790 --> 00:20:23,690 >> Na przykład, jedna wykazanie że jesteśmy lubiący w trakcie 410 00:20:23,690 --> 00:20:24,460 jest to jeden. 411 00:20:24,460 --> 00:20:26,345 Ale te rzeczy są coraz coraz trudniej znaleźć. 412 00:20:26,345 --> 00:20:28,930 Ale to jest rzeczywiście stara szkoła książka telefoniczna, wewnątrz 413 00:20:28,930 --> 00:20:32,580 to 1000 stron plus nazwy i numery telefonów. 414 00:20:32,580 --> 00:20:34,830 A gdybym chciał patrzeć ktoś w książce telefonicznej, 415 00:20:34,830 --> 00:20:38,640 Może po prostu zrobić bardzo naiwny algorytm. 416 00:20:38,640 --> 00:20:42,150 Mógłbym otworzyć się na pierwszej stronie, a Mógłbym zacząć szukać, powiedzmy, kogoś 417 00:20:42,150 --> 00:20:43,130 o nazwie Mike Smith. 418 00:20:43,130 --> 00:20:46,160 A jeśli on nie jest na pierwszym strona, I przejść do drugiego, 419 00:20:46,160 --> 00:20:49,120 , a następnie do trzeciego, a następnie do czwartego, i tak dalej, 420 00:20:49,120 --> 00:20:51,430 aż w końcu znaleźliśmy Mike Smith. 421 00:20:51,430 --> 00:20:53,010 >> Teraz jest to, że algorytm jest prawidłowy? 422 00:20:53,010 --> 00:20:53,896 >> PUBLICZNOŚCI: Tak. 423 00:20:53,896 --> 00:20:54,248 >> David J. MALAN: Tak. 424 00:20:54,248 --> 00:20:56,039 Jeśli on tam jest, ja w końcu go znaleźć. 425 00:20:56,039 --> 00:20:58,820 Ale to nie jest prawdopodobnie bardzo skuteczne, na pewno nie szybko, 426 00:20:58,820 --> 00:21:01,200 bo, mój Boże, dlaczego ja marnować mój czas odbijania 427 00:21:01,200 --> 00:21:04,500 przez te wszystkie strony, kiedy tylko mogłem na pewno to zrobić fizycznie szybciej? 428 00:21:04,500 --> 00:21:08,210 >> Cóż, niewielkie optymalizacji, tak aby mówić, nie może być jedną stronę na raz, 429 00:21:08,210 --> 00:21:11,610 ale dwa, cztery, sześć, osiem, 10. 430 00:21:11,610 --> 00:21:12,725 Nadal poprawne? 431 00:21:12,725 --> 00:21:14,030 >> PUBLICZNOŚCI: Nie 432 00:21:14,030 --> 00:21:17,040 >> David J. MALAN: Więc jeśli ja na nie Instancja pominąć Mike Smith. 433 00:21:17,040 --> 00:21:20,530 Ale tak długo, jak będę z powrotem pedał jedną stronę, jeśli przekroczenia go, 434 00:21:20,530 --> 00:21:25,240 może moglibyśmy poprawić to, co mogłyby być pułapką. 435 00:21:25,240 --> 00:21:26,020 >> Ale to jest lepsze? 436 00:21:26,020 --> 00:21:27,469 Czy jest szybszy? 437 00:21:27,469 --> 00:21:28,010 To znaczy, tak. 438 00:21:28,010 --> 00:21:30,950 Jest to dosłownie dwa razy szybciej jeśli mam dwie strony na raz. 439 00:21:30,950 --> 00:21:35,720 Więc jeśli pierwotnie miał 1000 stron, teraz mam tylko przerzucić 500 razy, 440 00:21:35,720 --> 00:21:39,429 nie do końca 1000 stron, aby potencjalnie w najgorszym przypadku 441 00:21:39,429 --> 00:21:41,220 na końcu linii Książka, w której ktoś 442 00:21:41,220 --> 00:21:44,380 jak Mike Smith lub kogoś z później nazwa może być w rzeczywistości. 443 00:21:44,380 --> 00:21:46,540 >> Ale, oczywiście, ludzie na pewno nie są 444 00:21:46,540 --> 00:21:49,250 będzie to robić, z pewnością nie w tym momencie w naszym życiu. 445 00:21:49,250 --> 00:21:51,454 Co to jest rozsądne ludzka może zrobić? 446 00:21:51,454 --> 00:21:52,870 PUBLICZNOŚCI: Idź prosto do The9 S-tych. 447 00:21:52,870 --> 00:21:53,860 David J. MALAN: Idź prosto do S-tych? 448 00:21:53,860 --> 00:21:55,563 Jak mogę iść prosto do S-tych? 449 00:21:55,563 --> 00:21:57,342 >> PUBLICZNOŚCI: zgrać go na pół. 450 00:21:57,342 --> 00:21:59,050 David J. MALAN: No, nie ma oznakowania. 451 00:21:59,050 --> 00:22:02,116 Tak, tak, gdyby było rzeczywiście etykietę lub kartę dla S lepki, 452 00:22:02,116 --> 00:22:03,240 powinniśmy skakać tam. 453 00:22:03,240 --> 00:22:05,420 Ale to całkiem nieszkodliwe. 454 00:22:05,420 --> 00:22:08,480 Więc najlepsze, co mogę zrobić, to z grubsza do sekcji S, a może z grubsza 455 00:22:08,480 --> 00:22:09,650 w środku. 456 00:22:09,650 --> 00:22:12,110 Ale kluczem wynos teraz-- i intuicja 457 00:22:12,110 --> 00:22:14,430 które zostały podjęte na przyznane na lata probably-- 458 00:22:14,430 --> 00:22:17,103 jest to, że co prawda teraz wie o tym problemie? 459 00:22:17,103 --> 00:22:19,320 >> PUBLICZNOŚCI: [niesłyszalne] 460 00:22:19,320 --> 00:22:22,290 >> David J. MALAN: Mike Smith z pewnością nie jest to pół problemu 461 00:22:22,290 --> 00:22:25,600 bo Smith jest po środku która jest w przybliżeniu punkt M, 462 00:22:25,600 --> 00:22:26,510 wydaje się być. 463 00:22:26,510 --> 00:22:30,340 Tak, może widzieliście w Visitas, możemy teraz dosłownie 464 00:22:30,340 --> 00:22:31,737 rozerwać ten problem w połowie. 465 00:22:31,737 --> 00:22:32,320 PUBLICZNOŚCI: Woo! 466 00:22:32,320 --> 00:22:33,690 David J. MALAN: To prostsze i łatwiejsze. 467 00:22:33,690 --> 00:22:34,666 [Aplauz] 468 00:22:34,666 --> 00:22:36,618 Proszę bardzo. 469 00:22:36,618 --> 00:22:39,060 [Śmiech] 470 00:22:39,060 --> 00:22:41,870 I teraz zasadniczo mają te same problemy 471 00:22:41,870 --> 00:22:43,866 ale to jest dosłownie pół tak duży. 472 00:22:43,866 --> 00:22:45,240 Ja wciąż szukam Mike Smith. 473 00:22:45,240 --> 00:22:47,950 I śmiem twierdzić, że może jeszcze spojrzeć na niego w taki sam sposób, 474 00:22:47,950 --> 00:22:51,200 dzielenie problemu w połowie znowu, znowu problem rozrywanie 475 00:22:51,200 --> 00:22:54,140 w połowie, która teraz pozostawia mnie Problem kwartał wielkości, 476 00:22:54,140 --> 00:22:58,710 dramatycznie rzucać, że połowa z dala, i powtórzyć ten proces w kółko 477 00:22:58,710 --> 00:23:01,150 i znowu, patrząc w dół W każdym punkcie zobaczyć 478 00:23:01,150 --> 00:23:03,400 jeśli jest Mike Smith strona w pytaniu. 479 00:23:03,400 --> 00:23:06,190 >> Teraz, jeśli zrobić to prawo, ostatecznie będę się znaleźć 480 00:23:06,190 --> 00:23:11,085 z tylko jedną stronę, na której Mike Smith to czy on rzeczywiście w książce telefonicznej. 481 00:23:11,085 --> 00:23:13,510 Oczywiście, mogłem Mike nigdy nie zadzwonić ponownie. 482 00:23:13,510 --> 00:23:18,800 Ale chodzi o to, że gdybyśmy zaczęli z 1000 stron, mój pierwszy algorytm, 483 00:23:18,800 --> 00:23:21,620 przerzucać strony, być może 1000 times-- zdecydowanie mniej, ponieważ jest to 484 00:23:21,620 --> 00:23:26,430 Nazwa S i Z nie nazwa, ale jak aż 1000 stron potencjalnie. 485 00:23:26,430 --> 00:23:27,590 >> Drugi algorytm, lepiej. 486 00:23:27,590 --> 00:23:28,480 500 stron. 487 00:23:28,480 --> 00:23:31,230 Trzeci algorytm, chociaż ile kroków byłoby 488 00:23:31,230 --> 00:23:35,520 podjąć, aby podzielić 1000 strony książka telefoniczna w połowie takim? 489 00:23:35,520 --> 00:23:37,000 10, lub dać. 490 00:23:37,000 --> 00:23:40,770 Tak, tylko że przez skakaniu książka telefoniczna, nurkowanie i podboju, 491 00:23:40,770 --> 00:23:46,130 że tak powiem, 10 razy, zrobię moja droga w dół do tylko jednej stronie. 492 00:23:46,130 --> 00:23:48,880 >> I tak możemy uchwycić tę intuicję teraz trochę graficznie 493 00:23:48,880 --> 00:23:51,320 jeśli tylko uznają to bardzo prosty wykres. 494 00:23:51,320 --> 00:23:55,470 Jesteśmy na osi x lub poziomej oś, jest rozmiar mojego problemu, 495 00:23:55,470 --> 00:23:57,100 liczba stron w książce telefonicznej. 496 00:23:57,100 --> 00:23:59,040 I informatycy ogólnie jak zadzwonić 497 00:23:59,040 --> 00:24:02,180 wielkość problemu n, gdzie n jest tylko niektóre zmienne, które 498 00:24:02,180 --> 00:24:04,310 represents-- w tym case-- liczba stron. 499 00:24:04,310 --> 00:24:07,412 >> Pionowej lub osi Y, tutaj będzie czas rozwiązania, 500 00:24:07,412 --> 00:24:09,870 może liczba stron tur, Może liczba sekund 501 00:24:09,870 --> 00:24:11,960 lub minut, co Twoja jednostka miary jest. 502 00:24:11,960 --> 00:24:14,337 I tak ta czerwona linia oznacza pierwszy algorytmu 503 00:24:14,337 --> 00:24:16,670 bo jest 12:59 Zależność pomiędzy liczbą 504 00:24:16,670 --> 00:24:18,880 stron i ilości czasu to zajmuje. 505 00:24:18,880 --> 00:24:22,240 >> Jeśli Verizon podwaja liczbę strony w książce telefonicznej w przyszłym roku, 506 00:24:22,240 --> 00:24:24,590 mój bieg time-- czas wymagany do wykonania 507 00:24:24,590 --> 00:24:27,610 że pierwszy algorithm-- podwaja się w najgorszym przypadku. 508 00:24:27,610 --> 00:24:30,690 Ale drugi algorytm, gdzie jestem przerzucanie przez dwa, 509 00:24:30,690 --> 00:24:33,650 wymaga mniej czasu dany problem rozmiar. 510 00:24:33,650 --> 00:24:36,090 Więc jeśli mam to wiele Ogłoszenie pages tutaj-- 511 00:24:36,090 --> 00:24:38,870 że żółtej linii sugeruje mniej czasu na rozwiązanie. 512 00:24:38,870 --> 00:24:42,490 I rzeczywiście, to oznacza, powiemy, n na dwa. 513 00:24:42,490 --> 00:24:47,717 >> Ale co trzeci kształt i ostatnia krzywa będzie wyglądać? 514 00:24:47,717 --> 00:24:50,800 Tak, to rzeczywiście będzie look-- I Nie wiem, co masz zamiar powiedzieć. 515 00:24:50,800 --> 00:24:52,300 Ale zobaczmy, co masz zamiar powiedzieć. 516 00:24:52,300 --> 00:24:53,280 >> PUBLICZNOŚCI: Właśnie tak. 517 00:24:53,280 --> 00:24:57,060 >> David J. MALAN: To będzie wyglądać tego, logarytmiczna slope-- exactly-- 518 00:24:57,060 --> 00:24:59,770 w której masz ten dziwny stoku. 519 00:24:59,770 --> 00:25:01,235 To już nie jest prosta. 520 00:25:01,235 --> 00:25:05,000 A co przekonujące o tym, że mimo że wykres jest teraz odcięty 521 00:25:05,000 --> 00:25:07,790 można ekstrapolować w swoim myśl, że zielona linia nie jest 522 00:25:07,790 --> 00:25:10,060 wzrośnie w Wysokość wszystkich, że dużo 523 00:25:10,060 --> 00:25:13,500 jak przejść dalej dół tej osi poziomej. 524 00:25:13,500 --> 00:25:15,890 >> Rzeczywiście, Verizon, na instancji, może się podwoić 525 00:25:15,890 --> 00:25:19,100 liczba stron w telefonie książka między tym roku i następnym roku 526 00:25:19,100 --> 00:25:22,140 od 1000 do 2000 stron, ale nic wielkiego. 527 00:25:22,140 --> 00:25:24,960 Mając to trzeci i ostatni, jest intuicyjny algorytm 528 00:25:24,960 --> 00:25:26,209 podziału i podboju. 529 00:25:26,209 --> 00:25:29,000 To zajmie mi, jak wiele innych kroki w przyszłym roku, aby znaleźć kogoś, 530 00:25:29,000 --> 00:25:29,700 Like Mike Smith? 531 00:25:29,700 --> 00:25:30,560 >> PUBLICZNOŚCI: Jeden. 532 00:25:30,560 --> 00:25:31,230 >> David J. MALAN: Jest tylko jedna. 533 00:25:31,230 --> 00:25:34,430 I może go czterokrotnie, to zajmie mi zaledwie dwa kroki 534 00:25:34,430 --> 00:25:35,210 i tak dalej. 535 00:25:35,210 --> 00:25:38,730 I tak to jest świadectwem tak jak niektórzy uważać projekt 536 00:25:38,730 --> 00:25:42,437 i uznanie za to, co niektórzy Twoje wejścia są może jeszcze lepiej. 537 00:25:42,437 --> 00:25:44,270 Teraz jesteśmy oszustwo nieco w sensie 538 00:25:44,270 --> 00:25:46,350 że jesteśmy wykorzystując założenie. 539 00:25:46,350 --> 00:25:48,500 Jakie jest moje założenie o naszej książce telefonicznej 540 00:25:48,500 --> 00:25:52,720 że pozwolił mi podzielić i podbić w tym intuicyjny i nadal prawidłowy sposób? 541 00:25:52,720 --> 00:25:53,705 >> PUBLICZNOŚCI: [niesłyszalne] 542 00:25:53,705 --> 00:25:54,580 David J. MALAN: Tak. 543 00:25:54,580 --> 00:25:55,440 Więc kazano. 544 00:25:55,440 --> 00:25:57,392 Został alfabetycznie według Firma książka telefoniczna. 545 00:25:57,392 --> 00:26:00,100 Gdyby to było w kolejności losowej, że byłoby piekło książce telefonicznej, 546 00:26:00,100 --> 00:26:02,850 ale to na pewno nie nadaje się do algorytmu 547 00:26:02,850 --> 00:26:05,950 Kiedyś, bo nigdy by akurat po drugiej Mike Smith 548 00:26:05,950 --> 00:26:09,210 jeśli utrzymuje podział na W ten sposób w połowie przez przypadek. 549 00:26:09,210 --> 00:26:12,060 >> Więc teraz sformalizować co wyraźnie intuicyjna. 550 00:26:12,060 --> 00:26:13,950 Więc coś, co nazywa pseudokod jest gdzie będziemy 551 00:26:13,950 --> 00:26:15,780 rozpocząć niektórych początkowych problemów. 552 00:26:15,780 --> 00:26:20,410 I jest ogólnego sposobu opisania algorytm lub program komputerowy 553 00:26:20,410 --> 00:26:24,150 nie za pomocą C lub C ++ lub Java, lub wszelkie szczególne język, 554 00:26:24,150 --> 00:26:27,430 , ale tylko za pomocą języka angielskiego, z która może znać każdy człowiek. 555 00:26:27,430 --> 00:26:31,220 >> I możemy napisać Pseudokod ten problem w następujący sposób. 556 00:26:31,220 --> 00:26:33,520 Kroku, podnieś książkę telefoniczną. 557 00:26:33,520 --> 00:26:35,840 Kroku drugiego, otwartego na środku książki telefonicznej. 558 00:26:35,840 --> 00:26:37,730 Krok trzy, spojrzeć na nazwy. 559 00:26:37,730 --> 00:26:40,630 Etap czwarty, jeśli Smith jest jednym names-- 560 00:26:40,630 --> 00:26:42,960 >> A teraz to jest ciekawa konstrukcja. 561 00:26:42,960 --> 00:26:44,290 To punkt decyzji. 562 00:26:44,290 --> 00:26:47,920 To widelec w drodze, jeśli Ciebie będzie, oddział, że tak powiem. 563 00:26:47,920 --> 00:26:50,810 Więc mam zamiar wciąć tylko umownie step-- 564 00:26:50,810 --> 00:26:53,950 Nie five-- którym jest powiedzmy, zadzwonię Mike. 565 00:26:53,950 --> 00:26:57,290 Więc to wcięcie, całkowicie arbitralna konwencja człowieka, ale 566 00:26:57,290 --> 00:27:01,160 po prostu za zadanie przekazać semantycznie że jeśli Smith jest wśród nazw, 567 00:27:01,160 --> 00:27:03,310 Następnie należy zadzwonić do Mike'a. 568 00:27:03,310 --> 00:27:06,630 >> Tymczasem w etapie sześć, ogloszenia że wcięcie ma. 569 00:27:06,630 --> 00:27:10,980 Tak też jest w innych widelec drogi, innej drogi może podróżować. 570 00:27:10,980 --> 00:27:14,130 Tak też jest w przypadku Smith wcześniej w książce, co jest 571 00:27:14,130 --> 00:27:16,964 mój następny krok prawdopodobnie będzie tutaj? 572 00:27:16,964 --> 00:27:18,380 PUBLICZNOŚCI: Idziesz do lewej strony. 573 00:27:18,380 --> 00:27:21,004 David J. MALAN: Tak, tak, przejdź do Lewa połowa z książki telefonicznej. 574 00:27:21,004 --> 00:27:24,140 Wyrzuć prawą połowę jeśli Smith jest wcześniej w książce. 575 00:27:24,140 --> 00:27:27,140 Tak otwarty na środku Lewa połowa książki. 576 00:27:27,140 --> 00:27:30,240 >> A następnie Krok ósmy, przejdź do wiersza trzy. 577 00:27:30,240 --> 00:27:34,520 I to jest ciekawy jestem pętli wywoływania, rekurencja że tak powiem. 578 00:27:34,520 --> 00:27:35,990 Ale o tym w przyszłości. 579 00:27:35,990 --> 00:27:39,590 >> Używam tego samego algorytmu, moja sama pseudokod, 580 00:27:39,590 --> 00:27:43,020 ponownie rozwiązania tego samego problemu bo jedyne co się zmieniło 581 00:27:43,020 --> 00:27:46,550 jest rozmiar problemu nie moim celem, a nie człowiek 582 00:27:46,550 --> 00:27:47,340 Szukam. 583 00:27:47,340 --> 00:27:51,610 Więc mogę ponownie użyć algorytmu że już zdefiniowany. 584 00:27:51,610 --> 00:27:53,580 >> Else if Smith jest później w book-- to polubisz 585 00:27:53,580 --> 00:27:56,200 zgadnę otwarty na środku Prawa połowa książki. 586 00:27:56,200 --> 00:27:58,350 I ponownie, przejdź do wiersza trzy. 587 00:27:58,350 --> 00:28:01,480 Else-- co końcowy linii w tym programie będzie? 588 00:28:01,480 --> 00:28:03,580 Jeśli go nie ma wśród nazwiska na stronie jestem 589 00:28:03,580 --> 00:28:06,870 na, jeśli nie wcześniej książek, a później go nie ma 590 00:28:06,870 --> 00:28:09,899 w książce, co ja wiem jest prawda o Mike'a Smitha? 591 00:28:09,899 --> 00:28:11,190 PUBLICZNOŚCI: On nie jest w książce. 592 00:28:11,190 --> 00:28:12,731 David J. MALAN: On nie jest w książce. 593 00:28:12,731 --> 00:28:16,040 Więc najlepsze, co mogę zrobić, to po prostu zrezygnować i zatrzymać program. 594 00:28:16,040 --> 00:28:16,540 Wszystko w porządku. 595 00:28:16,540 --> 00:28:20,350 Więc w tym momencie, weźmy szybkie zwiedzanie niektórych, co czeka. 596 00:28:20,350 --> 00:28:23,620 A w rzeczywistości, mam dołączył tutaj przez liczbę pracowników CS50. 597 00:28:23,620 --> 00:28:26,940 Jeśli ci ludzie mogli wszystko Dołącz do mnie tu na scenie. 598 00:28:26,940 --> 00:28:28,900 >> [Aplauz] 599 00:28:28,900 --> 00:28:35,280 600 00:28:35,280 --> 00:28:38,170 >> Pamiętaj, to jest tylko podzbiór pracowników CS50, 601 00:28:38,170 --> 00:28:42,380 od każdego roku mamy prawie 100 pracowników członków w roli asystentów oczywiście, 602 00:28:42,380 --> 00:28:44,410 nauczając bliźnich, i więcej. 603 00:28:44,410 --> 00:28:45,700 Chodź na górę. 604 00:28:45,700 --> 00:28:48,820 Tak będą nas dołączyć tutaj niezgrabnie na chwilę 605 00:28:48,820 --> 00:28:54,230 jak dać wycieczkę wicher, co należy spodziewać się tutaj w trakcie. 606 00:28:54,230 --> 00:28:59,640 >> Więc przede wszystkim, mamy SAT / UNS jako opcja w trakcie przesiewu. 607 00:28:59,640 --> 00:29:03,180 Ma to celowo za którym opcja 608 00:29:03,180 --> 00:29:05,570 jeśli jesteś trochę nieswojo przy czym w trakcie, 609 00:29:05,570 --> 00:29:09,390 i boją failure-- nawet jeśli szczerze brak oznacza ból GPA, 610 00:29:09,390 --> 00:29:13,180 coraz B i nie jest A-- który jest dokładnie to, co z pewnością za bramą 611 00:29:13,180 --> 00:29:15,750 Oczywiście jak CS50 i inne kursy wprowadzające, 612 00:29:15,750 --> 00:29:17,540 Opcja ta klasyfikacja ma umożliwić. 613 00:29:17,540 --> 00:29:19,930 >> Z całego serca zachęcić students-- szczególnie 614 00:29:19,930 --> 00:29:23,090 jeśli na fence-- zacząć Oczywiście SAT / UNS, nawet pozostać SAT / UNS. 615 00:29:23,090 --> 00:29:27,310 Ale z pewnością można przełączyć się na piśmie klasy przez piąty poniedziałek w perspektywie. 616 00:29:27,310 --> 00:29:31,560 >> Szczerze mówiąc, z powrotem, kiedy był studentem pierwszego roku w roku 1995, 617 00:29:31,560 --> 00:29:34,630 Ja nawet nie podejmują CS50 bo nie dostał się na odwagę 618 00:29:34,630 --> 00:29:36,540 faktycznie krok stóp w klasie. 619 00:29:36,540 --> 00:29:40,020 Wydawało się zbyt domenę znają mnie i tak naprawdę tylko 620 00:29:40,020 --> 00:29:43,080 dla tych moich przyjaciół, szczerze, kto był programowania 621 00:29:43,080 --> 00:29:45,570 ponieważ były sześcio a może 10-letni. 622 00:29:45,570 --> 00:29:48,640 I to tylko dlatego, że był w stanie podjąć CS50 w mój dzień 623 00:29:48,640 --> 00:29:52,720 w odniesieniu do wersji z SAT / UNS-- Pass / Fail z powrotem w dzień-- 624 00:29:52,720 --> 00:29:53,850 że nawet ja wziąłem 50. 625 00:29:53,850 --> 00:29:57,440 I tak czy inaczej, jestem tu znowu z wami dzisiaj. 626 00:29:57,440 --> 00:30:00,690 >> Teraz zaś, co jeszcze Należy pamiętać o 50 627 00:30:00,690 --> 00:30:01,910 jest jednoczesne rejestrowanie. 628 00:30:01,910 --> 00:30:03,785 W przeciwieństwie do plotek, że może słyszeliście, 629 00:30:03,785 --> 00:30:07,650 można, w rzeczywistości, jednocześnie zapisać się CS50 i innej klasy, które 630 00:30:07,650 --> 00:30:12,150 zbiera się lub zachodzą na siebie samą Czas wykłady CS50 jest tutaj. 631 00:30:12,150 --> 00:30:16,420 Zobacz program nauczania dla danych szczegółowych z jego realizacji. 632 00:30:16,420 --> 00:30:19,540 >> Wykłady, w międzyczasie, w przeciwieństwie do co jest oficjalnie w katalogu, 633 00:30:19,540 --> 00:30:22,060 będzie zwykle jedynym spotykają się w zaledwie godzinę. 634 00:30:22,060 --> 00:30:24,240 Przy okazji możemy uruchomić trochę długo. 635 00:30:24,240 --> 00:30:26,800 Ale należy pamiętać, że Celem jest w wykładach CS50 636 00:30:26,800 --> 00:30:28,980 jest zapewnienie Państwu koncepcyjne przegląd, 637 00:30:28,980 --> 00:30:31,830 mam nadzieję, że niektóre pokazy, może nawet niektóre prezenty, 638 00:30:31,830 --> 00:30:34,390 tego, co czeka na Tydzień, który następuje. 639 00:30:34,390 --> 00:30:37,730 >> I tak w wykładach, będziemy badać te tematy i przykłady razem, 640 00:30:37,730 --> 00:30:41,420 doprowadzenie uczniów na scenie, i pracowników na scenie tak często, jak to możliwe, 641 00:30:41,420 --> 00:30:43,740 tylko na kilka godzin w każdym tygodniu. 642 00:30:43,740 --> 00:30:47,435 Działy, w międzyczasie, będzie oferowane przez tych ludzi tutaj-- wielu 643 00:30:47,435 --> 00:30:50,060 z nich uczy facetów, niektóre z nich woli oczywiście assistants-- 644 00:30:50,060 --> 00:30:51,160 się dzieje w tygodniu. 645 00:30:51,160 --> 00:30:52,940 >> A co to klucz do utrzymania pamiętać, jest to, że 646 00:30:52,940 --> 00:30:55,920 nie have-- przeciwieństwie Pierwszy Nocy, muzyka class-- 647 00:30:55,920 --> 00:30:59,220 różnych utworów z sekcji dla studentów mniej wygodne, więcej 648 00:30:59,220 --> 00:31:01,150 wygodne, i gdzieś pomiędzy. 649 00:31:01,150 --> 00:31:03,559 I szczerze mówiąc, wiesz, jeśli jesteś mniej wygodne. 650 00:31:03,559 --> 00:31:05,600 I zapewne wiesz, jeśli jesteś bardziej komfortowe. 651 00:31:05,600 --> 00:31:09,920 A jeśli nie jesteś pewien, jesteś z definicji gdzieś pomiędzy. 652 00:31:09,920 --> 00:31:12,850 Więc kiedy przychodzi czas do sekcji w tygodniu lub tak, na programie nauczania, 653 00:31:12,850 --> 00:31:14,070 my zadać to pytanie. 654 00:31:14,070 --> 00:31:16,890 I można samodzielnie wybrać Based na swoim poziomie komfortu 655 00:31:16,890 --> 00:31:22,220 i być z students-- być z zielonym dots-- podobna poziom komfortu dla użytkownika. 656 00:31:22,220 --> 00:31:25,710 >> Tymczasem mamy problemu Zestawy, które ostatecznie 657 00:31:25,710 --> 00:31:28,310 zdefiniować swoje doświadczenie w tym kursie. 658 00:31:28,310 --> 00:31:30,370 Oferowane są one zazwyczaj w wielu wydaniach. 659 00:31:30,370 --> 00:31:34,150 Standard Edition, że spodziewamy się najbardziej każdy student w trakcie zwalczania 660 00:31:34,150 --> 00:31:37,900 a także tzw wydanie haker że nie oferuje formę dodatkowego kredytu 661 00:31:37,900 --> 00:31:41,980 wprost, ale tak naprawdę bicie rekordów powiedzieć, że próbowałem i zająć 662 00:31:41,980 --> 00:31:45,250 edycje kursu na hakerów, że zbliżyć się do podobnego materiału 663 00:31:45,250 --> 00:31:47,370 ale z bardziej wyrafinowanym kątem. 664 00:31:47,370 --> 00:31:49,480 >> Co oferujemy dla Standard Edition, dla, 665 00:31:49,480 --> 00:31:51,420 ponownie, super większość studentów, nie są 666 00:31:51,420 --> 00:31:54,060 tylko walk-through, które są wideo prowadzone przez pracowników w trakcie 667 00:31:54,060 --> 00:31:57,840 , które naprawdę Cię przez Problemy tego szkolenia i możliwość projektowania 668 00:31:57,840 --> 00:31:58,910 implementacje. 669 00:31:58,910 --> 00:32:01,434 I my także, po Fakt, oferują postmortems, 670 00:32:01,434 --> 00:32:03,350 przy czym jeśli zastanawiasz jak można mieć 671 00:32:03,350 --> 00:32:05,930 lub powinien rozwiązać niektóre Problem, kadra nauczycielska 672 00:32:05,930 --> 00:32:08,640 przeprowadzi Cię przez tych, na wideo, jak również. 673 00:32:08,640 --> 00:32:14,350 >> Tymczasem, co też to czeka pięć dni i późne Fakt 674 00:32:14,350 --> 00:32:16,680 że będziemy upuszczać Problem ustawić najniższy wynik. 675 00:32:16,680 --> 00:32:20,370 Z pewnością docenią, że w zamian na obciążenie pracą, że 50 oczekuje 676 00:32:20,370 --> 00:32:24,020 z was, życie staje na drodze czasami, jeśli nie pięć razy. 677 00:32:24,020 --> 00:32:26,150 I tak będzie to oferta Ci nieco elastyczności, 678 00:32:26,150 --> 00:32:29,400 przedłużenia terminu, od, powiedzmy, Czwartek w południe na piątek w południe. 679 00:32:29,400 --> 00:32:33,150 Zobacz program nauczania dla jego szczegóły realizacji. 680 00:32:33,150 --> 00:32:34,702 >> Teraz to, co teraz czeka? 681 00:32:34,702 --> 00:32:36,660 I to występujące tylko do mnie teraz, jak długo 682 00:32:36,660 --> 00:32:38,333 Mam wam tu stać na scenie. 683 00:32:38,333 --> 00:32:39,060 >> [Śmiech] 684 00:32:39,060 --> 00:32:41,867 >> David J. MALAN: Ale my się do szczytowy wykończenie niedługo. 685 00:32:41,867 --> 00:32:43,700 Więc to, co czeka w kategoriach zestawów problem? 686 00:32:43,700 --> 00:32:47,099 Cóż, być może zapowiedź tego, co wszyscy w zeszłym roku ze swoimi poprzednikami. 687 00:32:47,099 --> 00:32:49,140 W pierwszym zestawie problemów w zeszłym roku wprowadziliśmy 688 00:32:49,140 --> 00:32:51,630 Scratch, graficzny język programowania, który 689 00:32:51,630 --> 00:32:54,570 pozwala zaprogramować dosłownie przez przeciągając i upuszczając elementy układanki, 690 00:32:54,570 --> 00:32:57,220 jak te, które są przypomina konstruktów 691 00:32:57,220 --> 00:32:59,260 będzie widać tylko jeden tydzień Dlatego też, gdy przełączanie 692 00:32:59,260 --> 00:33:01,870 do bardziej tradycyjnych języka, znany jako C. 693 00:33:01,870 --> 00:33:03,930 >> W ubiegłym roku przystąpiliśmy do tego zestawu problemów, 694 00:33:03,930 --> 00:33:06,720 udziałem w kryptografii, kodowania informacji 695 00:33:06,720 --> 00:33:10,410 aby zapobiec jego rządowa lub przyjaciele " oczy, że nie chcesz, żeby go zobaczyć. 696 00:33:10,410 --> 00:33:12,540 Kodowany jest w tutaj wiadomość, że wkrótce można 697 00:33:12,540 --> 00:33:15,740 będzie w stanie odszyfrować lub de-wyścig. 698 00:33:15,740 --> 00:33:17,960 >> Breakout był problem ustawić w zeszłym roku, w którym 699 00:33:17,960 --> 00:33:21,530 Możesz ich używać nowego znaleźć programowania umiejętności, aby właściwie wdrożyć 700 00:33:21,530 --> 00:33:24,840 Gra wherein-- jak ty może odwołać z childhood-- 701 00:33:24,840 --> 00:33:28,040 Celem było bash cegły, które są na szczycie ekranu 702 00:33:28,040 --> 00:33:30,190 tutaj, gromadząc zdobyć po drodze, 703 00:33:30,190 --> 00:33:35,460 i realizacji własnych algorytmów w którym roztwór ten ostatecznie 704 00:33:35,460 --> 00:33:37,357 pozwala grać w grę. 705 00:33:37,357 --> 00:33:39,440 Tymczasem, później w Semestr, otrzymasz 706 00:33:39,440 --> 00:33:43,470 Słownik z 143.091 słów angielskich. 707 00:33:43,470 --> 00:33:46,300 I będzie zakwestionowane napisać program, który 708 00:33:46,300 --> 00:33:50,260 zaklęcie kontrole dokumentów, o loading, że wiele słów w pamięci 709 00:33:50,260 --> 00:33:52,300 tak skutecznie, jak to możliwe. 710 00:33:52,300 --> 00:33:54,240 Generalnie pit Cię przed swoimi kolegami 711 00:33:54,240 --> 00:33:56,610 jeśli zdecydują się trochę wyzwaniem w liderów 712 00:33:56,610 --> 00:34:00,090 aby zobaczyć, kto może korzystać z najmniejsza sekund czasu pracy, 713 00:34:00,090 --> 00:34:03,550 i najmniejsza liczba megabajtów pamięci, 714 00:34:03,550 --> 00:34:08,659 i faktycznie dostrajasz programy być niezwykle efektywne zasobów nie 715 00:34:08,659 --> 00:34:09,820 tylko czas. 716 00:34:09,820 --> 00:34:13,239 >> W zeszłym roku, też, w jaki patrzył na koniec semestru w programowaniu stron internetowych. 717 00:34:13,239 --> 00:34:16,230 I rzeczywiście, że zrobimy to jeszcze raz rok z wielu zestawów problemowych, 718 00:34:16,230 --> 00:34:20,290 wprowadzenie do technik i sposób myślenia, z którymi można stosować 719 00:34:20,290 --> 00:34:23,489 te umiejętności programowania do strony internetowe, strony internetowe, dynamiczne 720 00:34:23,489 --> 00:34:26,639 strony internetowe, które faktycznie rozwiązać problemy i zachowują się inaczej 721 00:34:26,639 --> 00:34:30,620 i po prostu nie są statyczne Strony z informacji statycznych. 722 00:34:30,620 --> 00:34:32,854 >> Ostateczny projekt ostatecznie określi, chociaż 723 00:34:32,854 --> 00:34:34,770 kulminacyjnym kursu dla studentów, w którym 724 00:34:34,770 --> 00:34:37,228 będziesz za zadanie wdrożyć Najbardziej interesujące coś 725 00:34:37,228 --> 00:34:40,590 do ciebie, tak długo, jak to w jakiś sposób czerpie z lekcji kursu jest. 726 00:34:40,590 --> 00:34:42,930 >> I jak widzieliśmy w film na początku, 727 00:34:42,930 --> 00:34:47,340 my stwierdzić semestru z CS50 Hackathon, które, jeśli nie znają, 728 00:34:47,340 --> 00:34:51,420 rozpocznie się o godzinie 19:00 i jednej nocy końca godzinie 7:00 rano. 729 00:34:51,420 --> 00:34:53,614 Około 21:00, my będziemy Kolejność w pierwszej kolacji. 730 00:34:53,614 --> 00:34:55,489 Około 01:00, my będziemy Kolejność, w drugiej kolacji. 731 00:34:55,489 --> 00:34:57,490 I jeśli nadal stoi na 05:00, mamy 732 00:34:57,490 --> 00:35:00,320 ci autobus będzie do IHOP na śniadanie. 733 00:35:00,320 --> 00:35:04,980 >> CS50 Targi, w międzyczasie, jest impreza do których 2000 Plus wydziału, studentów, 734 00:35:04,980 --> 00:35:07,850 i pracowników z całego kampusu przyjść, aby zobaczyć swoje osiągnięcia 735 00:35:07,850 --> 00:35:10,150 w trakcie i końcowe projekty i kreacje 736 00:35:10,150 --> 00:35:14,960 się utworzenie na swoich laptopach, komputery stacjonarne, a może nawet żarówki. 737 00:35:14,960 --> 00:35:17,340 >> Tymczasem godziny pracy oraz strukturę wsparcia. 738 00:35:17,340 --> 00:35:20,480 A teraz to byli lepszego czasu, aby przynieść wam się. 739 00:35:20,480 --> 00:35:24,310 >> Godziny otwarcia odbędzie się cztery dni Tydzień dla wielu godzin każdej nocy 740 00:35:24,310 --> 00:35:27,710 z reguły 20 do 30 Pracownicy Kursu jednocześnie na służbie 741 00:35:27,710 --> 00:35:31,240 aby zapewnić Państwu kameralny jeden-na-jeden możliwości wsparcia 742 00:35:31,240 --> 00:35:33,790 ze zbiorów problemowych kursu jest. 743 00:35:33,790 --> 00:35:36,120 Korepetycje też będzie dostępne, zwłaszcza 744 00:35:36,120 --> 00:35:39,630 dla studentów lub mniej comfortable-- Ośmielam się twierdzić, dla których przynajmniej comfortable-- 745 00:35:39,630 --> 00:35:41,869 godziny pracy nie są Najbardziej pielęgnowanie środowiska 746 00:35:41,869 --> 00:35:43,660 i nie jest z pewnością najbardziej bezstresowe. 747 00:35:43,660 --> 00:35:47,430 Zwłaszcza gdy terminy są naciśnięcie, będziemy proaktywnie ci się powiązać 748 00:35:47,430 --> 00:35:51,440 z członka personelu do pracy z na jakimś zwykłym harmonogramem w miarę potrzeb 749 00:35:51,440 --> 00:35:53,850 i ich harmonogram pozwala. 750 00:35:53,850 --> 00:35:55,260 >> I personel. 751 00:35:55,260 --> 00:36:01,020 Pozwolić mi przedstawić Davon, Rob, i Gabriel, tegoroczne głowy. 752 00:36:01,020 --> 00:36:02,370 Jeśli chcesz każdy lubi say-- 753 00:36:02,370 --> 00:36:03,349 >> [Aplauz] 754 00:36:03,349 --> 00:36:03,849 --a słowo. 755 00:36:03,849 --> 00:36:05,328 [Aplauz] 756 00:36:05,328 --> 00:36:10,270 757 00:36:10,270 --> 00:36:13,220 Davon tu jest kierownik Kursu, który 758 00:36:13,220 --> 00:36:15,730 oznacza w jego roli w pełnym wymiarze czasu pomaga w realizacji 759 00:36:15,730 --> 00:36:18,424 i logistyka CS50. 760 00:36:18,424 --> 00:36:19,340 Davon: Tak, cześć, chłopaki. 761 00:36:19,340 --> 00:36:20,965 Zobaczysz wiele dla mnie w godzinach pracy biura. 762 00:36:20,965 --> 00:36:22,110 Będę uczyć sekcje. 763 00:36:22,110 --> 00:36:25,150 A jeśli strzelać maile do przodu, Będę prawdopodobnie odpowiadać. 764 00:36:25,150 --> 00:36:27,670 Więc widzę dużo was wszystkich semestr. 765 00:36:27,670 --> 00:36:29,890 I zapraszamy do CS50. 766 00:36:29,890 --> 00:36:38,330 >> David J. MALAN: A teraz Gabriel, który Sam był tylko studentem pierwszego roku w zeszłym roku, 767 00:36:38,330 --> 00:36:41,820 , ale w ciągu ostatnich kilku lat ma Działamy własną wersję CS50 768 00:36:41,820 --> 00:36:44,660 w Brazylii, przy czym on pobrany wszystkie content-- kursu w 769 00:36:44,660 --> 00:36:46,890 które jest ewidentnie sfilmowane i umieszczone online-- 770 00:36:46,890 --> 00:36:51,480 tak aby mógł przełożyć go do Portugalski, a następnie nauczyć się więcej niż 100 771 00:36:51,480 --> 00:36:54,610 z kolegami ponad Oczywiście od kilku lat, 772 00:36:54,610 --> 00:36:57,650 nauczania w swoim języku ojczystym Program kursu jest. 773 00:36:57,650 --> 00:36:58,964 >> GABRIEL: Witam. 774 00:36:58,964 --> 00:37:00,912 >> [Aplauz] 775 00:37:00,912 --> 00:37:06,669 776 00:37:06,669 --> 00:37:07,710 GABRIEL: Cześć, jestem Gabriel. 777 00:37:07,710 --> 00:37:09,340 Jestem TF kierownik kursu. 778 00:37:09,340 --> 00:37:10,780 I mam nadzieję, że spodoba ci się CS50. 779 00:37:10,780 --> 00:37:12,830 To CS50. 780 00:37:12,830 --> 00:37:14,697 >> David J. MALAN: Teraz Rob. 781 00:37:14,697 --> 00:37:15,780 Och, chcesz wprowadzenia? 782 00:37:15,780 --> 00:37:16,696 >> ROB: Nie, nie wiem. 783 00:37:16,696 --> 00:37:18,225 [Śmiech] 784 00:37:18,225 --> 00:37:19,475 David J. MALAN: A Rob Boden. 785 00:37:19,475 --> 00:37:22,300 [Śmiech] 786 00:37:22,300 --> 00:37:23,800 ROB: Cześć, jestem Rob. 787 00:37:23,800 --> 00:37:27,220 To jest mój piąty rok udział w kursie. 788 00:37:27,220 --> 00:37:29,220 Każdego roku, to jest po prostu lepiej klasy, 789 00:37:29,220 --> 00:37:31,550 więc chłopaki są wyraźnie będzie super. 790 00:37:31,550 --> 00:37:33,181 Mam nadzieję, że wszystkie zabawy z nim. 791 00:37:33,181 --> 00:37:34,430 Mam zamiar bawić się z nim. 792 00:37:34,430 --> 00:37:36,670 Więc do zobaczenia. 793 00:37:36,670 --> 00:37:38,445 >> David J. MALAN: A czas nie pozwoli us-- 794 00:37:38,445 --> 00:37:39,670 >> [Aplauz] 795 00:37:39,670 --> 00:37:41,661 >> Czas nie pozwoli nam wprowadzenie wszystkich 796 00:37:41,661 --> 00:37:44,660 w etapie a wszystkie ich współpracowników którzy są zakupy zajęcia już dziś. 797 00:37:44,660 --> 00:37:47,390 Ale pozwolić mi przedstawić Belinda i CS50 Puzzle 798 00:37:47,390 --> 00:37:49,550 Dzień, który czeka na to nadchodzi sobota, które 799 00:37:49,550 --> 00:37:51,800 jest przede dużych imprez tego szkolenia. 800 00:37:51,800 --> 00:37:54,300 >> Ten szczególnie przeznaczona wbijać domu punkt 801 00:37:54,300 --> 00:37:57,580 że informatyka jest ostatecznie nie na temat programowania, ale raczej 802 00:37:57,580 --> 00:37:59,280 na temat rozwiązywania problemów, bardziej ogólnie. 803 00:37:59,280 --> 00:38:01,450 I puzzle dnia, jak będziesz zobacz, spowoduje 804 00:38:01,450 --> 00:38:04,207 i twoi koledzy together-- mamy nadzieję, że w sobotę. 805 00:38:04,207 --> 00:38:04,961 >> BELINDA: OK. 806 00:38:04,961 --> 00:38:05,750 Cześć, chłopaki. 807 00:38:05,750 --> 00:38:06,740 Tak dzięki. 808 00:38:06,740 --> 00:38:10,120 Tak jak nasz znakomitego kapitana powiedział, nazywam się Belinda. 809 00:38:10,120 --> 00:38:12,100 Jestem studentem drugiego roku w Quincy House. 810 00:38:12,100 --> 00:38:15,730 >> I, tak jak was, wziął CS50 w zeszłym roku, bardzo nam się podobało. 811 00:38:15,730 --> 00:38:17,960 Mam słabość do wy w trzecim rzędzie. 812 00:38:17,960 --> 00:38:21,384 I jestem dumny mogąc powiedzieć, że jestem teraz popełnione w związku 813 00:38:21,384 --> 00:38:22,300 z CS50 [niesłyszalne]. 814 00:38:22,300 --> 00:38:22,799 OK. 815 00:38:22,799 --> 00:38:26,140 To była moja kiepska wersja żartu. 816 00:38:26,140 --> 00:38:28,320 >> W każdym razie, tak przejściem, po prostu chciałem zaprosić 817 00:38:28,320 --> 00:38:31,439 wy wszyscy do i-laboratorium, pokrzywka HBS. 818 00:38:31,439 --> 00:38:33,730 Mamy zamiar być o Puzzle dzień od 12:00 do 03:00. 819 00:38:33,730 --> 00:38:37,680 I to jest wielka szansa dla Ciebie Chłopaki do swoich kolegów CS przyjaciół, 820 00:38:37,680 --> 00:38:42,780 rozwiązać kilka zagadek nie-CS, jak kapitan wymienione, a także zjeść darmowe jedzenie, 821 00:38:42,780 --> 00:38:46,910 zdobyć niesamowite nagrody, jak karty upominkowe, 75 dolarów za osobę, 822 00:38:46,910 --> 00:38:48,400 i also-- co to było? 823 00:38:48,400 --> 00:38:49,540 Wii U, czy co? 824 00:38:49,540 --> 00:38:50,333 Wii U? 825 00:38:50,333 --> 00:38:51,040 Tak. 826 00:38:51,040 --> 00:38:52,330 Na naszej loterii. 827 00:38:52,330 --> 00:38:52,830 Niesamowite. 828 00:38:52,830 --> 00:38:54,310 Więc będę trzymać się po klasie. 829 00:38:54,310 --> 00:38:56,770 A jeśli macie jakiekolwiek pytania, daj mi znać. 830 00:38:56,770 --> 00:38:59,980 >> David J. MALAN: A zobaczysz, poza to nie ma nic do zrobienia dzisiaj. 831 00:38:59,980 --> 00:39:01,920 Pierwszy problem, ustaw zgaśnie piątek. 832 00:39:01,920 --> 00:39:05,420 Ale aby doprowadzić nas do domu dzisiaj, chciałbym wprowadzenie do specjalnie jeden 833 00:39:05,420 --> 00:39:09,080 członek personelu, Colton Ogden tutaj, których ręce są teraz 834 00:39:09,080 --> 00:39:12,250 chronione nad tobą z kontroler MIDI 835 00:39:12,250 --> 00:39:15,170 wbijać domu punkt dalej że informatyka też 836 00:39:15,170 --> 00:39:19,130 ma zastosowanie daleko poza inżynierii i łodygi i informatyka sama, 837 00:39:19,130 --> 00:39:22,890 rozszerzenia nawet do takich dziedzin jak muzyka. 838 00:39:22,890 --> 00:39:30,590 >> Colton ma proszeni offered-- myślałem jeden z nich się dzieje, aby ustawić ostrość. 839 00:39:30,590 --> 00:39:34,400 Andrew, czy możemy wezwać ostrości tutaj na chwilę. 840 00:39:34,400 --> 00:39:36,780 >> Co zrobił Colton Program jest w góry 841 00:39:36,780 --> 00:39:40,345 Urządzenie to podkładka przycisków które można zobaczyć na zdjęciu tutaj, 842 00:39:40,345 --> 00:39:42,470 jako kontroler MIDI, przy czym każdy z tych przycisków 843 00:39:42,470 --> 00:39:47,080 jest podłączony do konkretnego nuta lub dźwięk, bardziej ogólnie, do nagrywania, 844 00:39:47,080 --> 00:39:50,445 takie, że grając z tych wzorów przyciski, podobnie jak wzorce bitów, 845 00:39:50,445 --> 00:39:52,620 może reprezentować inne wyższego szczebla. koncepcje 846 00:39:52,620 --> 00:39:56,750 Będzie mógł ostatecznie zabrać nas do domu tu dzisiaj? 847 00:39:56,750 --> 00:39:59,540 Bez zbędnych ceregieli, jeśli możemy przyciemnić światła, 848 00:39:59,540 --> 00:40:03,145 i włączyć ekran za Colton. 849 00:40:03,145 --> 00:40:03,865 >> PUBLICZNOŚCI: Woo! 850 00:40:03,865 --> 00:40:06,090 >> David J. MALAN: To CS50. 851 00:40:06,090 --> 00:40:10,518 >> [MUZYKA GRA] 852 00:40:10,518 --> 00:42:46,018 853 00:42:46,018 --> 00:42:49,420 >> [Aplauz] 854 00:42:49,420 --> 00:42:54,766 855 00:42:54,766 --> 00:42:56,450 >> To jest to dla CS50. 856 00:42:56,450 --> 00:42:57,950 Będziemy Cię zobaczyć w piątek. 857 00:42:57,950 --> 00:42:59,890 Niektóre ciasta czeka w transepcie. 858 00:42:59,890 --> 00:43:04,046 859 00:43:04,046 --> 00:43:08,850 >> [MUZYKA GRA] 860 00:43:08,850 --> 00:45:49,227