1 00:00:00,000 --> 00:00:02,952 >> [RIPRODUZIONE DI BRANI MUSICALI] 2 00:00:02,952 --> 00:00:11,316 3 00:00:11,316 --> 00:00:13,284 >> [RIPRODUZIONE DI BRANI MUSICALI] 4 00:00:13,284 --> 00:00:18,722 5 00:00:18,722 --> 00:00:19,680 DAVID MALAN: Va bene. 6 00:00:19,680 --> 00:00:21,983 Questo è CS50. 7 00:00:21,983 --> 00:00:24,108 [Riproduzione di musica Tritonal, Cash,  "Intoccabile"] 8 00:00:24,108 --> 00:01:40,846 9 00:01:40,846 --> 00:01:41,844 [RIPRODUZIONE DI BRANI MUSICALI] 10 00:01:41,844 --> 00:01:45,337 SPEAKER 1: ho intenzione di Francia, e si sta andando, anche. 11 00:01:45,337 --> 00:01:48,331 [RIPRODUZIONE DI BRANI MUSICALI] 12 00:01:48,331 --> 00:02:38,100 13 00:02:38,100 --> 00:02:41,930 DAVID MALAN: Questo è CS50, introduzione di Harvard University 14 00:02:41,930 --> 00:02:44,520 per l'intellettuale aziende di informatica 15 00:02:44,520 --> 00:02:47,940 e le arti della program-- e per la prima volta nella storia, 16 00:02:47,940 --> 00:02:49,800 di Yale University pure. 17 00:02:49,800 --> 00:02:53,830 In effetti, sia che siate qui a Cambridge o in New Haven o Miami o St. Louis 18 00:02:53,830 --> 00:02:55,550 o Amsterdam o dovunque attorno al mondo 19 00:02:55,550 --> 00:03:00,080 prendendo CS50, informatica scienza E50, CS50X, CS50 AP, 20 00:03:00,080 --> 00:03:02,090 siamo tutti uno e lo stesso. 21 00:03:02,090 --> 00:03:04,490 Benvenuti a CS50. 22 00:03:04,490 --> 00:03:05,380 >> Quello che have-- 23 00:03:05,380 --> 00:03:06,348 >> [APPLAUSI] 24 00:03:06,348 --> 00:03:07,800 >> [RIDE] 25 00:03:07,800 --> 00:03:10,220 >> [APPLAUSI] 26 00:03:10,220 --> 00:03:13,610 27 00:03:13,610 --> 00:03:16,920 >> Così ho fatto un errore io stesso qualche tempo fa, quando ho iniziato il college. 28 00:03:16,920 --> 00:03:21,580 E ho avuto modo di college, e ho deciso di francamente, il bastone all'interno della mia zona di comfort. 29 00:03:21,580 --> 00:03:24,475 Ho finito dichiara una concentrazione, o un maggiore, di governo. 30 00:03:24,475 --> 00:03:27,880 Formica che era principalmente una funzione di me essere abbastanza familiare con il governo 31 00:03:27,880 --> 00:03:31,270 o almeno la storia o mi è piaciuto diritto costituzionale al liceo. 32 00:03:31,270 --> 00:03:34,150 E così quando sono arrivato qui, mi tipo di gravitato verso le cose 33 00:03:34,150 --> 00:03:35,800 con la quale mi era già familiare. 34 00:03:35,800 --> 00:03:36,300 Destra? 35 00:03:36,300 --> 00:03:38,167 Dio non voglia che faccio male in classe. 36 00:03:38,167 --> 00:03:40,250 Io certamente voluto rimanere all'interno della mia zona di comfort, 37 00:03:40,250 --> 00:03:43,010 e non è stato fino secondo anno che ho finalmente 38 00:03:43,010 --> 00:03:46,820 ha ottenuto il coraggio di mettere piede in una classe denominata CS50. 39 00:03:46,820 --> 00:03:51,150 E a quel punto, ha fatto finalmente ho capito che, mio ​​Dio, compiti a casa potrebbe effettivamente 40 00:03:51,150 --> 00:03:51,910 Sii divertente. 41 00:03:51,910 --> 00:03:54,410 >> Anzi, io ero uno di quei ragazzi che il venerdì sera quando 42 00:03:54,410 --> 00:03:57,640 il P-SET sarebbero stati rilasciati, io sarebbe tornato nella mia stanza e immersioni 43 00:03:57,640 --> 00:03:58,790 nella notte del P-SET. 44 00:03:58,790 --> 00:04:01,606 E per me, che era un segno che questo era un campo per me. 45 00:04:01,606 --> 00:04:04,480 Ma la cosa più importante è stata la fatto che ho fatto alzare questo nervo 46 00:04:04,480 --> 00:04:08,000 per esplorare acque sconosciute per me e andare oltre la mia zona di comfort 47 00:04:08,000 --> 00:04:12,320 e francamente, ho solo stato in grado di farlo secondo anno prendendo questa classe 48 00:04:12,320 --> 00:04:13,050 pass / fail. 49 00:04:13,050 --> 00:04:16,470 >> Infatti, è stato l'ultimo giorno in cui Alla fine ho passato più e, infine, 50 00:04:16,470 --> 00:04:19,707 dichiarato CS come la mia concentrazione, mettendo gov a quel punto alle mie spalle. 51 00:04:19,707 --> 00:04:22,290 E così noi non stiamo indicando in questo corso per trasformare tutti voi 52 00:04:22,290 --> 00:04:25,780 in major CS o concentratori, ma piuttosto per dare l'opportunità 53 00:04:25,780 --> 00:04:29,780 di andare al di là del mondo si spera con il quale sei attualmente familiare 54 00:04:29,780 --> 00:04:33,660 e riportare da questo mondo competenze e conoscenze e buon senso 55 00:04:33,660 --> 00:04:36,220 che è possibile applicare al vostro proprio mondo, sia che si tratti 56 00:04:36,220 --> 00:04:39,080 nelle discipline umanistiche, scienze sociali, scienze naturali, o oltre. 57 00:04:39,080 --> 00:04:40,871 >> In effetti, se sei senti un po 'intrepido 58 00:04:40,871 --> 00:04:43,250 di essere in questa stanza tanto meno in questa classe, 59 00:04:43,250 --> 00:04:47,560 rendersi conto che se la storia è alcuna indicazione, il 72% di voi 60 00:04:47,560 --> 00:04:49,802 non hanno mai seguito un corso CS prima. 61 00:04:49,802 --> 00:04:52,760 Così è per tutti e non i mezzi del caso che lo studente seduto alla sinistra 62 00:04:52,760 --> 00:04:56,850 oppure a destra o davanti o dietro di voi sa molto di più su CS 63 00:04:56,850 --> 00:04:58,820 o di programmazione, in particolare, di te. 64 00:04:58,820 --> 00:05:00,432 Questo non è effettivamente il caso. 65 00:05:00,432 --> 00:05:02,140 E in effetti, la maggior parte la struttura di supporto 66 00:05:02,140 --> 00:05:04,600 che abbiamo creato a questo Naturalmente nel corso degli ultimi anni 67 00:05:04,600 --> 00:05:08,840 è stato proprio per questo reason-- a fornire una rampa che esce ancora 68 00:05:08,840 --> 00:05:11,640 altrettanto rigore e appena più in alto ever-- 69 00:05:11,640 --> 00:05:14,860 ma la pendenza che permettono studenti meno comodo e più confortevole 70 00:05:14,860 --> 00:05:18,420 allo stesso modo per avere successo indipendentemente della sua prima sfondo. 71 00:05:18,420 --> 00:05:20,610 >> Infatti, ciò che in definitiva le questioni in questa classe non è 72 00:05:20,610 --> 00:05:22,830 tanto dove si finisce rispetto ai tuoi compagni di classe 73 00:05:22,830 --> 00:05:26,000 ma dove nella settimana 12 finire relativa a se stessi 74 00:05:26,000 --> 00:05:28,720 in settimana zero, che è dove siamo qui oggi. 75 00:05:28,720 --> 00:05:32,315 >> In effetti e questo può benissimo e probabilmente non guardare come il greco 76 00:05:32,315 --> 00:05:32,940 a molti di voi. 77 00:05:32,940 --> 00:05:35,200 Ma state tranquilli, che questo e molto altro ancora 78 00:05:35,200 --> 00:05:38,990 sta per essere completamente all'interno della vostra cogliere in appena un po 'di tempo. 79 00:05:38,990 --> 00:05:41,410 >> Ma oggi, ci concentriamo su alcuni delle idee di livello superiore 80 00:05:41,410 --> 00:05:43,822 per darvi un assaggio di CS50 e informatica 81 00:05:43,822 --> 00:05:45,530 in un senso di ciò stai firma per. 82 00:05:45,530 --> 00:05:48,000 E in effetti, informatica potrebbe essere distillato più 83 00:05:48,000 --> 00:05:51,209 semplicemente come thinking-- computazionale pensare come un computer, se si vuole. 84 00:05:51,209 --> 00:05:54,000 E ci sono tante cose diverse ingredienti che vanno in quella, 85 00:05:54,000 --> 00:05:56,240 ma cerchiamo di proporre solo tre per oggi. 86 00:05:56,240 --> 00:05:59,420 Se l'obiettivo della classe in ultima analisi, non è quello di insegnare la programmazione, 87 00:05:59,420 --> 00:06:03,022 Non è quello di insegnare C o PHP o SQL o qualsiasi numero di parole 88 00:06:03,022 --> 00:06:04,730 e acronimi in descrizione del corso, 89 00:06:04,730 --> 00:06:07,850 ma piuttosto di insegnare a risolvere i problemi più efficacemente 90 00:06:07,850 --> 00:06:11,670 e pensare di più con metodo e più algoritmicamente, per così dire. 91 00:06:11,670 --> 00:06:13,610 Vediamo cosa esattamente questo significa. 92 00:06:13,610 --> 00:06:17,000 >> Quindi mi sento di proporre che il pensiero computazionalmente si riduce 93 00:06:17,000 --> 00:06:17,834 per risolvere i problemi. 94 00:06:17,834 --> 00:06:19,333 Di cosa hai bisogno per risolvere un problema? 95 00:06:19,333 --> 00:06:21,470 È necessario input-- come l'ingresso al problem-- 96 00:06:21,470 --> 00:06:23,636 avete bisogno di un output, che è la soluzione si spera, 97 00:06:23,636 --> 00:06:26,720 e quindi è necessario un processo che per risolvere il problema, che 98 00:06:26,720 --> 00:06:30,030 chiameremo un algorithm-- una serie di le istruzioni per la risoluzione dei problemi. 99 00:06:30,030 --> 00:06:33,340 >> Ma prima, concentriamoci sulla prima e l'ultimo di questi ingressi e uscite. 100 00:06:33,340 --> 00:06:38,070 Computer, dopo tutto, a quanto pare capisce solo zero e uno. 101 00:06:38,070 --> 00:06:39,299 Ma come può essere? 102 00:06:39,299 --> 00:06:42,090 nemmeno se si ha familiarità a tutti con quello che c'è sotto il cofano, 103 00:06:42,090 --> 00:06:44,980 probabilmente almeno sentito che i computer capiscono binary-- 104 00:06:44,980 --> 00:06:48,050 solo zeri e ones-- Ma come si può eventualmente fare qualcosa di interessante? 105 00:06:48,050 --> 00:06:49,960 >> Beh, uno dei temi della classe sta andando 106 00:06:49,960 --> 00:06:53,293 essere questo layering-- dove oggi, faremo prendere una rapida occhiata al livello più basso 107 00:06:53,293 --> 00:06:55,620 dettagli, ma con ogni giorno che passa, dove abbiamo strato 108 00:06:55,620 --> 00:06:59,420 o astratta in cima quei dettagli per risolvere realmente livello superiore 109 00:06:59,420 --> 00:07:01,080 problemi di interesse per noi. 110 00:07:01,080 --> 00:07:04,730 >> Così qui è quello che potremmo definire binary-- con solo un alfabeto di 0 e 1. 111 00:07:04,730 --> 00:07:06,960 Ma noi esseri umani sono per lo più familiarità con decimali. 112 00:07:06,960 --> 00:07:08,130 significato 10 dicembre. 113 00:07:08,130 --> 00:07:09,070 Bi significa due. 114 00:07:09,070 --> 00:07:12,100 E così nel decimale sistema, abbiamo 10 cifre 115 00:07:12,100 --> 00:07:14,099 presso la nostra disposal-- di Naturalmente, da zero a nove. 116 00:07:14,099 --> 00:07:16,140 Quindi, se si guarda a un numero in questo modo, la maggior parte di voi 117 00:07:16,140 --> 00:07:19,016 intuitivamente solo cogliere cioè 123. 118 00:07:19,016 --> 00:07:20,640 Non c'è niente di davvero difficile di questo. 119 00:07:20,640 --> 00:07:22,452 Ma perché è 123? 120 00:07:22,452 --> 00:07:24,660 Beh, se si pensa di nuovo a grade school-- o almeno 121 00:07:24,660 --> 00:07:26,410 il modo in cui ho imparato questo gentile world-- 122 00:07:26,410 --> 00:07:29,640 potrebbe ricordare che abbiamo trattato questi le cose in colonne, o luoghi. 123 00:07:29,640 --> 00:07:31,412 >> Così abbiamo il posto quelli a destra. 124 00:07:31,412 --> 00:07:32,620 Le decine collocano nel mezzo. 125 00:07:32,620 --> 00:07:34,240 Le centinaia posto a sinistra. 126 00:07:34,240 --> 00:07:36,980 E allora come facciamo a ottenere da questo schema symbols-- 127 00:07:36,980 --> 00:07:41,771 1 2 3-- a questo livello superiore idea che noi conosciamo come 123? 128 00:07:41,771 --> 00:07:43,461 Beh, è ​​solo un po 'di semplice aritmetica. 129 00:07:43,461 --> 00:07:43,960 Destra? 130 00:07:43,960 --> 00:07:48,960 >> Quello non c'è significa essenzialmente darci 100 volte 1 più 10 volte 131 00:07:48,960 --> 00:07:50,410 2 più 1 volte 3. 132 00:07:50,410 --> 00:07:53,430 E, naturalmente, se lo facciamo fuori il matematica lì, è 100 più 20 133 00:07:53,430 --> 00:07:56,480 più 3-- altrimenti noto come 123. 134 00:07:56,480 --> 00:07:58,820 >> Quindi, se siete sul stessa pagina come tale diritto 135 00:07:58,820 --> 00:08:02,320 ora e dimestichezza con il cosiddetto sistema decimale come un essere umano, 136 00:08:02,320 --> 00:08:05,750 in realtà è ben all'interno l'ambito di comfort 137 00:08:05,750 --> 00:08:07,220 ora esaminare il sistema binario. 138 00:08:07,220 --> 00:08:10,110 Prendere un selvaggio guess-- questo rappresenta, nel mondo dei computer 139 00:08:10,110 --> 00:08:12,001 in binary-- quale numero? 140 00:08:12,001 --> 00:08:12,500 Zero. 141 00:08:12,500 --> 00:08:13,580 >> Ma perché? 142 00:08:13,580 --> 00:08:17,460 Beh, si scopre che le colonne o luoghi qui-- non sono potenze di 10. 143 00:08:17,460 --> 00:08:19,670 1, 10, 100, 1000, e così via. 144 00:08:19,670 --> 00:08:21,890 Sono invece, abbastanza semplicemente, potenze di 2. 145 00:08:21,890 --> 00:08:25,400 Quindi, 1, 2, 4, 8, 16, 32, e così via. 146 00:08:25,400 --> 00:08:29,630 E così ora abbiamo naturalmente arriva a 0 qui semplicemente perché abbiamo 4 volte 147 00:08:29,630 --> 00:08:34,510 0 più 2 volte 0 più 1 volte 0, che ovviamente ci dà 0. 148 00:08:34,510 --> 00:08:37,399 >> Ma come posso fare per rappresenta il numero 1? 149 00:08:37,399 --> 00:08:39,440 Qual è il modello di zero e uno per rappresentare 150 00:08:39,440 --> 00:08:42,720 il numero che gli esseri umani sanno come 1? 151 00:08:42,720 --> 00:08:44,280 001. 152 00:08:44,280 --> 00:08:46,370 E 2? 153 00:08:46,370 --> 00:08:47,480 010. 154 00:08:47,480 --> 00:08:49,760 >> E ora il modello inizia a ripetizioni. 155 00:08:49,760 --> 00:08:50,890 Ora è il 011. 156 00:08:50,890 --> 00:08:54,310 E ancora, 0 a quattro zampe, un 2, un 1. 157 00:08:54,310 --> 00:08:55,180 Quindi 2 più 1. 158 00:08:55,180 --> 00:08:56,140 Ecco 3. 159 00:08:56,140 --> 00:08:59,069 >> E ora a rappresentare 4, abbiamo non solo cambiare la situazione 0 a 1. 160 00:08:59,069 --> 00:09:01,360 È una sorta di bisogno di trasportare, per così dire, ei numeri 161 00:09:01,360 --> 00:09:03,700 iniziare lanciando intorno solo come nel mondo decimale. 162 00:09:03,700 --> 00:09:04,670 >> Quindi questo è 4. 163 00:09:04,670 --> 00:09:05,410 Si tratta di 5. 164 00:09:05,410 --> 00:09:06,330 Si tratta di 6. 165 00:09:06,330 --> 00:09:07,580 Si tratta di 7. 166 00:09:07,580 --> 00:09:09,720 E così abbiamo contato alto come 7. 167 00:09:09,720 --> 00:09:12,400 >> Ora tutto abbiamo solo bisogno è più un bits-- più di zero e uno di. 168 00:09:12,400 --> 00:09:15,700 E infatti "bit", se hai sentito questa cifra binaria term--. 169 00:09:15,700 --> 00:09:17,470 Bit è dove che viene da. 170 00:09:17,470 --> 00:09:20,190 E così, se vogliamo rappresentare numeri più grandi, abbiamo bisogno di più bit. 171 00:09:20,190 --> 00:09:24,360 Ma passiamo da diapositive ora a qualcosa di un po 'più reale. 172 00:09:24,360 --> 00:09:27,540 Supponiamo che vogliamo in realtà rappresentare questa cosa. 173 00:09:27,540 --> 00:09:31,790 >> Bene diamo un'occhiata ora in una piccola dimostrazione. 174 00:09:31,790 --> 00:09:35,270 Quindi questa è una applicazione web based che uno dei CS50 del proprio, Michael G, 175 00:09:35,270 --> 00:09:38,160 mettere insieme questa estate per aiutare noi chiarire esattamente questa idea. 176 00:09:38,160 --> 00:09:40,420 E sarebbe uno come avventurarsi sul palco 177 00:09:40,420 --> 00:09:42,915 di fronte a tutti i suoi o suoi compagni di classe? 178 00:09:42,915 --> 00:09:43,790 Proprio lì davanti. 179 00:09:43,790 --> 00:09:45,660 Vieni su. 180 00:09:45,660 --> 00:09:48,350 >> Devi essere confortevole sulla macchina fotografica e internet. 181 00:09:48,350 --> 00:09:50,930 182 00:09:50,930 --> 00:09:52,450 Oh, proprio qui. 183 00:09:52,450 --> 00:09:52,950 OK. 184 00:09:52,950 --> 00:09:53,740 Siamo OK. 185 00:09:53,740 --> 00:09:54,240 Tutto ok. 186 00:09:54,240 --> 00:09:54,740 Vieni su. 187 00:09:54,740 --> 00:09:56,150 Come ti chiami? 188 00:09:56,150 --> 00:09:58,550 Emily si accende su. 189 00:09:58,550 --> 00:09:59,410 Quindi questo è Emily. 190 00:09:59,410 --> 00:10:00,840 In che anno sei? 191 00:10:00,840 --> 00:10:01,660 >> Matricola. 192 00:10:01,660 --> 00:10:02,810 >> Emily, piacere di conoscerti. 193 00:10:02,810 --> 00:10:03,310 David. 194 00:10:03,310 --> 00:10:03,810 >> Tutto ok. 195 00:10:03,810 --> 00:10:06,120 Così sullo schermo qui, abbiamo questo touch screen 196 00:10:06,120 --> 00:10:08,425 che sta per consentire a noi in realtà interagire con questo programma, 197 00:10:08,425 --> 00:10:09,265 ed è solo un browser. 198 00:10:09,265 --> 00:10:11,390 E 'Chrome proiettato pieno al momento, ma è 199 00:10:11,390 --> 00:10:14,030 stato programmato da Michael a rispondere in un modo che permette 200 00:10:14,030 --> 00:10:15,970 noi a giocare con cifre binarie. 201 00:10:15,970 --> 00:10:20,220 >> Così, per esempio, qui non abbiamo tre ma otto zeri bits-- e uno. 202 00:10:20,220 --> 00:10:22,000 In questo momento, siamo guardando il numero 0. 203 00:10:22,000 --> 00:10:25,150 E in effetti, tutti gli otto zeri in decimale significa zero. 204 00:10:25,150 --> 00:10:26,900 Ecco, questo è tutto ciò che è essere accennato qui. 205 00:10:26,900 --> 00:10:29,395 >> Quindi, se si voleva rappresentare il numero 8, 206 00:10:29,395 --> 00:10:31,520 qual è il modello di zeri e quelli che si desidera? 207 00:10:31,520 --> 00:10:35,160 Si può semplicemente toccare alto o in basso oppure i numeri stessi. 208 00:10:35,160 --> 00:10:35,660 Tutto ok. 209 00:10:35,660 --> 00:10:37,659 Così che, naturalmente, è 8, come si può vedere lì. 210 00:10:37,659 --> 00:10:41,260 E se volessimo Non 16, che cosa facciamo? 211 00:10:41,260 --> 00:10:42,701 >> Sì, basta toccarlo di nuovo. 212 00:10:42,701 --> 00:10:43,200 16. 213 00:10:43,200 --> 00:10:43,870 Tutto ok. 214 00:10:43,870 --> 00:10:46,522 Quindi questo è tutto bello e buono, è ancora molto basso livello. 215 00:10:46,522 --> 00:10:48,230 Abbiamo bisogno di un modo in mondo reale per Emily 216 00:10:48,230 --> 00:10:50,550 di realtà che rappresentano queste cose. 217 00:10:50,550 --> 00:10:54,230 E così supponiamo di trasformare queste zeri e quelli, che è molto 218 00:10:54,230 --> 00:10:55,980 concettuale, in lampadine attuali. 219 00:10:55,980 --> 00:10:56,480 Destra? 220 00:10:56,480 --> 00:10:59,540 >> Un computer è un fisico, , Dispositivo elettrico meccanico. 221 00:10:59,540 --> 00:11:02,220 E la sua input-- almeno se si collega o carica it-- 222 00:11:02,220 --> 00:11:05,090 è di avere batteria e elettroni che scorre dentro e fuori. 223 00:11:05,090 --> 00:11:08,150 >> Così ora, perché non smettiamo di pensare A proposito di bit come zero e uno, 224 00:11:08,150 --> 00:11:10,470 ma qualcosa di più fisico come le lampadine qui. 225 00:11:10,470 --> 00:11:13,815 E se Dan Armendariz potrebbe unirsi me solo per un moment-- come on up-- 226 00:11:13,815 --> 00:11:15,440 stiamo andando a coda di un'applicazione. 227 00:11:15,440 --> 00:11:15,940 >> Vieni su, Emily. 228 00:11:15,940 --> 00:11:18,270 Purtroppo questo è il più demo imbarazzante per voi mai. 229 00:11:18,270 --> 00:11:20,330 Vieni qui. 230 00:11:20,330 --> 00:11:22,080 Stiamo andando a fare la fila con grazie a Dan 231 00:11:22,080 --> 00:11:25,300 Armendariz, un altro membro del nostro staff, un'applicazione noto come lampadina binario. 232 00:11:25,300 --> 00:11:28,070 >> Quindi, quello che abbiamo qui è un'applicazione per iPad 233 00:11:28,070 --> 00:11:31,970 che ha il seguente utente l'interfaccia sullo schermo per Emily. 234 00:11:31,970 --> 00:11:35,400 E 'appena ricevuto la stessa identica interfaccia utente in sostanza, che è finita lì. 235 00:11:35,400 --> 00:11:39,220 E se ora si desidera rappresentare il numero, dire 8, 236 00:11:39,220 --> 00:11:42,094 come è possibile andare a fare questo se ne accorga in alto a destra, 237 00:11:42,094 --> 00:11:43,510 le lampadine che abbiamo qui? 238 00:11:43,510 --> 00:11:46,576 239 00:11:46,576 --> 00:11:47,620 Ah-ha. 240 00:11:47,620 --> 00:11:48,290 Magico. 241 00:11:48,290 --> 00:11:51,830 Quindi, se vogliamo trasformare ora questo in qualcosa di un po 'più impegnativo, 242 00:11:51,830 --> 00:11:58,100 e andiamo avanti e scegliere un caso numero come il numero 50 qui. 243 00:11:58,100 --> 00:11:59,015 Input questo. 244 00:11:59,015 --> 00:12:01,640 E se si può ora essere messo in discussione a venire con il numero 50, 245 00:12:01,640 --> 00:12:04,268 avremo un premio favoloso per voi. 246 00:12:04,268 --> 00:12:06,144 >> EMILY: OK. 247 00:12:06,144 --> 00:12:08,692 Dio mio. 248 00:12:08,692 --> 00:12:10,650 DAVID MALAN: Aritmetica è davvero duro di fronte 249 00:12:10,650 --> 00:12:12,860 di centinaia di tuoi compagni di classe. 250 00:12:12,860 --> 00:12:16,260 Ma 50 è stata la risposta qui. 251 00:12:16,260 --> 00:12:18,132 >> [APPLAUSI] 252 00:12:18,132 --> 00:12:21,875 >> E così ora, questo è destinato a essere dimostrativo per Emily. 253 00:12:21,875 --> 00:12:24,315 Così, qui, è un po 'di luce lampadine piuttosto come questi, 254 00:12:24,315 --> 00:12:26,190 ma in realtà è il piccole strisce magnetiche. 255 00:12:26,190 --> 00:12:28,570 E ciò che è freddo su queste e La ragione per cui li usiamo in CS50 256 00:12:28,570 --> 00:12:31,640 è che essi supportano qualcosa chiamato un API-- di programmazione delle applicazioni 257 00:12:31,640 --> 00:12:34,681 interfaccia, che è solo un modo di fantasia di dire che ciò che uno dei nostri collaboratori 258 00:12:34,681 --> 00:12:37,284 ha durante l'estate è stato creare un'applicazione iPad qui 259 00:12:37,284 --> 00:12:39,700 che parla su internet alle lampadine più di qui, 260 00:12:39,700 --> 00:12:41,810 che sono in modalità wireless collegato ad un altro dispositivo. 261 00:12:41,810 --> 00:12:43,912 Ma questo è ora un'opzione per i progetti finali. 262 00:12:43,912 --> 00:12:46,370 E così Emily, se si farebbe così come, alla fine del termine, 263 00:12:46,370 --> 00:12:48,703 è possibile decorare il vostro dormitorio nel frattempo con quelli. 264 00:12:48,703 --> 00:12:50,376 Grazie a Emily pure. 265 00:12:50,376 --> 00:12:53,244 >> [APPLAUSI] 266 00:12:53,244 --> 00:12:56,590 267 00:12:56,590 --> 00:13:00,055 >> Ma ora, passiamo la nostra attenzione a ciò 268 00:13:00,055 --> 00:13:03,180 che il messaggio potrebbe essere guardato come, ed è un po 'qualcosa di simile. 269 00:13:03,180 --> 00:13:05,320 In realtà, questo è un ad esempio come un teaser 270 00:13:05,320 --> 00:13:08,400 di quello che verrà di ciò che è chiamato una richiesta API. 271 00:13:08,400 --> 00:13:11,409 E così quello che abbiamo qui è semplicemente esattamente il tipo di messaggio 272 00:13:11,409 --> 00:13:13,200 che dopo poche settimane volta in CS50, ti 273 00:13:13,200 --> 00:13:16,590 essere in grado di inviare a qualcosa abbastanza familiare come quello di realtà 274 00:13:16,590 --> 00:13:18,100 li accendere e spegnere. 275 00:13:18,100 --> 00:13:19,350 Ma questo è tutto bello e buono. 276 00:13:19,350 --> 00:13:19,850 Destra? 277 00:13:19,850 --> 00:13:22,710 Abbiamo il modello mentale si spera per rappresentare i numeri con 278 00:13:22,710 --> 00:13:23,660 Zero e uno di. 279 00:13:23,660 --> 00:13:26,290 E da zero e uno, possiamo arrivare a numeri più alti come 50, 280 00:13:26,290 --> 00:13:29,460 come Emily appena fatto, o noi può muoversi da quel. 281 00:13:29,460 --> 00:13:32,160 E io sostengo che possiamo rappresentare cose come le lettere pure. 282 00:13:32,160 --> 00:13:32,660 Destra? 283 00:13:32,660 --> 00:13:35,360 >> I computer sono molto più interessante che semplici numeri. 284 00:13:35,360 --> 00:13:37,340 E così come si fa sulle parole che rappresentano 285 00:13:37,340 --> 00:13:39,420 sullo schermo o e-mail o saggi o simili? 286 00:13:39,420 --> 00:13:43,170 Beh, si scopre che i computer semplicemente astratto In cima a questi basso livello 287 00:13:43,170 --> 00:13:47,380 dettagli, e gli esseri umani qualche tempo fa, è venuto con un arbitrario, ma coerente, 288 00:13:47,380 --> 00:13:51,710 mappatura dei numeri per letters-- così che ogni volta che vedete una lettera maiuscola 289 00:13:51,710 --> 00:13:54,170 Un computer schermo, le probabilità sono che cosa è 290 00:13:54,170 --> 00:13:57,370 sotto il cofano è un Reticolo di zero e uno 291 00:13:57,370 --> 00:14:00,650 che rappresentano il numero, per questo grafico, 65. 292 00:14:00,650 --> 00:14:02,830 >> E fisicamente più all'interno del computer, 293 00:14:02,830 --> 00:14:06,450 sono milioni di cose chiamate transistors-- questi days-- che 294 00:14:06,450 --> 00:14:10,190 sono solo interruttori se si vuole, le cose che può andare on e off e così immaginare. 295 00:14:10,190 --> 00:14:14,130 Non otto di questi grandi lampadine ma milioni di questi piccoli po 'di luce 296 00:14:14,130 --> 00:14:17,490 bulbi, o interruttori o transistor, che può accendere e spegnere 297 00:14:17,490 --> 00:14:19,170 in base a come si programma li. 298 00:14:19,170 --> 00:14:22,120 E così ora abbiamo un modo di rappresentando lettere pure. 299 00:14:22,120 --> 00:14:25,300 >> In effetti, se dovessi usare questo mappatura qui e cercare di realtà 300 00:14:25,300 --> 00:14:28,731 precisare qualcosa, potremmo guardare in questo modello di cifre decimali 301 00:14:28,731 --> 00:14:29,230 proprio adesso. 302 00:14:29,230 --> 00:14:31,354 Quindi non stiamo andando a anche concentrarsi sul binario più. 303 00:14:31,354 --> 00:14:35,910 Diciamo solo considerare questi come numero decimale 72, 73, 33. 304 00:14:35,910 --> 00:14:38,044 Ma ciò che potrebbe rappresentare questo? 305 00:14:38,044 --> 00:14:39,960 Qualcuno ha sufficientemente memoria fotografica 306 00:14:39,960 --> 00:14:43,060 sapere cosa sta scritto sullo schermo qui? 307 00:14:43,060 --> 00:14:43,560 Già alcuni. 308 00:14:43,560 --> 00:14:44,190 Così Ciao. 309 00:14:44,190 --> 00:14:48,330 H-I e poi un punto esclamativo, che non era in realtà sullo schermo. 310 00:14:48,330 --> 00:14:51,060 Ma in realtà c'è una mappatura per ogni lettera ad ogni numero 311 00:14:51,060 --> 00:14:53,340 che si potrebbe desiderare di digitare sulla tastiera. 312 00:14:53,340 --> 00:14:55,430 >> Ma i numeri non devono rappresentano solo lettere. 313 00:14:55,430 --> 00:14:55,930 Destra? 314 00:14:55,930 --> 00:14:59,570 Tutti noi sappiamo su immagini e fotografie e file audio 315 00:14:59,570 --> 00:15:00,870 e file video e simili. 316 00:15:00,870 --> 00:15:03,580 Così chiaramente possiamo rappresentare cose di livello più alto ancora. 317 00:15:03,580 --> 00:15:06,920 E così quello che un computer fa è semplicemente scegliere 318 00:15:06,920 --> 00:15:11,240 di interpretare i modelli di quelli a zero in modo diverso in base al contesto. 319 00:15:11,240 --> 00:15:13,130 >> Se si fa doppio clic su un icona di Microsoft Word, 320 00:15:13,130 --> 00:15:15,900 vedete le parole sullo schermo invece di colori e immagini 321 00:15:15,900 --> 00:15:18,850 perché la parola sa che si tratta di un saggio che hai effettivamente digitato. 322 00:15:18,850 --> 00:15:21,510 Se invece doppio click su un JPEG o GIF o PNG, 323 00:15:21,510 --> 00:15:27,070 si apre ed è un'immagine perché la .PNG O .docx o qualsiasi altra cosa il file 324 00:15:27,070 --> 00:15:30,450 estensione è e qualunque software si sta utilizzando sa interpretare 325 00:15:30,450 --> 00:15:34,420 un modello di zero e uno diverso sulla base di quanto il suo scopo nella vita è. 326 00:15:34,420 --> 00:15:37,330 >> Così, per esempio, questo stessa sequenza di numeri 327 00:15:37,330 --> 00:15:41,250 potrebbe rappresentare la quantità di rosso ti desidera, quanto verde vuoi, 328 00:15:41,250 --> 00:15:42,810 e quanto blu vuoi. 329 00:15:42,810 --> 00:15:47,490 E in effetti, se hai mai sentito parlare RGB-- blu verde quindi basta rosso. 330 00:15:47,490 --> 00:15:51,380 E così se vedo numeri come, questo dammi 72 rosso, dammi 73 verde, 331 00:15:51,380 --> 00:15:56,910 e 33 blu, questo è come un computer utilizzando tre bytes-- dove 332 00:15:56,910 --> 00:16:01,470 un byte è di otto bit o 24 bits-- rappresenterebbe una tonalità piuttosto brutta 333 00:16:01,470 --> 00:16:03,660 di marrone o giallo qui. 334 00:16:03,660 --> 00:16:07,500 E in diversi contesti, potrebbe quelli esattamente lo stesso pattern di zero e uno 335 00:16:07,500 --> 00:16:10,780 significare qualcosa completamente differente. 336 00:16:10,780 --> 00:16:13,899 >> Così ora abbiamo un modo di rappresentare zeri informazioni inclusi e quelli. 337 00:16:13,899 --> 00:16:15,190 In cima a quello, otteniamo le lettere. 338 00:16:15,190 --> 00:16:16,860 Oltre a questo, potremmo ottenere colori. 339 00:16:16,860 --> 00:16:19,730 E supponiamo per oggi che possiamo ottenere audio e video 340 00:16:19,730 --> 00:16:22,590 e le cose molto di più sofisticato di quello. 341 00:16:22,590 --> 00:16:25,370 >> Ma ora prendiamo in considerazione come usiamo questi ingressi 342 00:16:25,370 --> 00:16:27,390 e produrre quelle Uscite ora che abbiamo 343 00:16:27,390 --> 00:16:29,830 un modo di rappresentare queste informazioni. 344 00:16:29,830 --> 00:16:31,820 Bene, abbiamo bisogno di qualcosa chiamato un algoritmo. 345 00:16:31,820 --> 00:16:34,320 Ancora una volta, una serie di istruzioni per risolvere qualche problema 346 00:16:34,320 --> 00:16:37,580 passo dopo step-- e la più preciso, meglio è. 347 00:16:37,580 --> 00:16:42,090 >> E così un esempio con cui gli esseri umani sono certamente meno familiari in questi giorni, 348 00:16:42,090 --> 00:16:44,300 ma comunque è ancora con noi nel software, 349 00:16:44,300 --> 00:16:47,490 è il processo di ricerca fino qualcuno in una rubrica telefonica. 350 00:16:47,490 --> 00:16:51,690 >> Ora, sempre meno persone si conoscono anno che cosa questa reliquia è in realtà qui. 351 00:16:51,690 --> 00:16:53,470 Ma ai miei tempi, questa è stata una rubrica telefonica 352 00:16:53,470 --> 00:16:57,266 con migliaia di pagine e numeri e i nomi delle persone da A a Z 353 00:16:57,266 --> 00:17:00,390 E anche se stiamo tipo di truffa un bit-- questo è per lo più pagine gialle. 354 00:17:00,390 --> 00:17:01,920 C'erano anche bianco pagine, al momento, che 355 00:17:01,920 --> 00:17:04,720 aveva tutti quei nomi e numero di esseri umani reali. 356 00:17:04,720 --> 00:17:07,970 >> E se volessi cercare qualcuno in un rubrica come quella di oggi, naturalmente, 357 00:17:07,970 --> 00:17:11,010 Ho Basta digitare le prime caratteri del suo nome, 358 00:17:11,010 --> 00:17:13,480 e il mio telefono rileva che le informazioni. 359 00:17:13,480 --> 00:17:15,970 Ma il processo mediante il quale il vostro iPhone o Android 360 00:17:15,970 --> 00:17:18,730 o tutto ciò che è in realtà la ricerca qualcuno nella tua lista dei contatti 361 00:17:18,730 --> 00:17:22,099 è identico a quello che noi esseri umani Probabilmente hanno fatto per qualche tempo. 362 00:17:22,099 --> 00:17:24,260 >> Ora ho potuto prendere questo problema, se si vuole, 363 00:17:24,260 --> 00:17:26,220 e gli ingressi qui Non sono zero e uno. 364 00:17:26,220 --> 00:17:28,730 Sono pages-- come, diciamo 1.000 pagine. 365 00:17:28,730 --> 00:17:32,650 E se volessi cercare qualcuno come Mike Smith in questa rubrica, 366 00:17:32,650 --> 00:17:35,570 Potrei cominciare dall'inizio e vedere che io sono nella sezione A 367 00:17:35,570 --> 00:17:38,300 e poi girare una pagina un tempo, alla ricerca e alla ricerca 368 00:17:38,300 --> 00:17:42,820 come faccio per il B e il C e di D's e così via per Mike Smith. 369 00:17:42,820 --> 00:17:46,000 Smith inizia con una S, io si spera alla fine lo trova. 370 00:17:46,000 --> 00:17:50,090 >> È questo algorithm-- che process-- corretta? 371 00:17:50,090 --> 00:17:50,590 Sì. 372 00:17:50,590 --> 00:17:51,610 È corretto. 373 00:17:51,610 --> 00:17:57,040 Troverò Mike se lui è qui, ma qual è l'avvertenza che si potrebbe offrire. 374 00:17:57,040 --> 00:17:57,541 E 'lento. 375 00:17:57,541 --> 00:17:58,040 Destra? 376 00:17:58,040 --> 00:18:00,975 Lo so Mike S è una sorta di verso la seconda metà della rubrica. 377 00:18:00,975 --> 00:18:02,766 Perché diavolo sono io partire dall'inizio 378 00:18:02,766 --> 00:18:04,349 e andando pagina per pagina per pagina. 379 00:18:04,349 --> 00:18:06,890 Così, naturalmente, ho potuto capovolgere intorno e partire dal fondo, 380 00:18:06,890 --> 00:18:08,973 ma che sta per ottenere me non alla stessa velocità, 381 00:18:08,973 --> 00:18:10,930 se willl-- pagina dopo pagina dopo pagina. 382 00:18:10,930 --> 00:18:14,190 E non sta andando a lavorare se voglio per la ricerca di qualcun altro la cui 383 00:18:14,190 --> 00:18:15,880 nome deriva in precedenza in alfabeto. 384 00:18:15,880 --> 00:18:17,240 >> Che importa se faccio quello che imparato a scuola elementare, 385 00:18:17,240 --> 00:18:19,205 ancora una volta, fare le cose non da quelli ma a due a due. 386 00:18:19,205 --> 00:18:23,060 Quindi 2, 4, 6, 8, 10, 12, e così via. 387 00:18:23,060 --> 00:18:23,740 È corretto? 388 00:18:23,740 --> 00:18:27,030 389 00:18:27,030 --> 00:18:27,560 No. 390 00:18:27,560 --> 00:18:28,830 È una specie di corretta. 391 00:18:28,830 --> 00:18:33,210 Ma alcuni di voi che non mormorò, dove è il problema, o il bug, 392 00:18:33,210 --> 00:18:34,240 l'errore per così dire. 393 00:18:34,240 --> 00:18:34,580 Sì. 394 00:18:34,580 --> 00:18:36,570 >> STUDENTE: Si potrebbe saltare sopra la voce giusta. 395 00:18:36,570 --> 00:18:37,320 >> DAVID MALAN: Sì. 396 00:18:37,320 --> 00:18:40,340 Potrei saltare su Mike Smith è perché ho preso due pagine contemporaneamente 397 00:18:40,340 --> 00:18:43,190 e lui sembra appena essere inserita tra queste due pagine. 398 00:18:43,190 --> 00:18:46,500 Potrei capire che Sono alla sezione T 399 00:18:46,500 --> 00:18:48,690 Non avendo ancora trovato Mike Smith. 400 00:18:48,690 --> 00:18:50,820 >> E così quello che potrebbe il là fisso essere? 401 00:18:50,820 --> 00:18:52,709 Beh, se faccio colpire il Ts nella rubrica, 402 00:18:52,709 --> 00:18:54,500 Potrei aver bisogno di raddoppiare indietro di una o giù di lì pagina. 403 00:18:54,500 --> 00:18:56,830 Quindi è risolvibile, ma non è così semplice 404 00:18:56,830 --> 00:18:59,170 come solo andando per due per accelerare la mia prestazione. 405 00:18:59,170 --> 00:18:59,680 Ma cosa? 406 00:18:59,680 --> 00:19:00,180 Dai. 407 00:19:00,180 --> 00:19:03,530 Che è ciò che la maggior parte degli esseri umani sono in corso a che fare con questo tipo di rubrica telefonica? 408 00:19:03,530 --> 00:19:04,696 Si è dato l'elenco telefonico. 409 00:19:04,696 --> 00:19:06,280 cosa fai? 410 00:19:06,280 --> 00:19:06,922 >> Cos'è quello? 411 00:19:06,922 --> 00:19:07,630 Vai mezzo. 412 00:19:07,630 --> 00:19:10,620 Così ho sentito vado al centro, e io mi trovo più o meno nella sezione M, 413 00:19:10,620 --> 00:19:11,120 per così dire. 414 00:19:11,120 --> 00:19:12,670 E ora che cosa voglio fare? 415 00:19:12,670 --> 00:19:14,077 Buon lavoro. 416 00:19:14,077 --> 00:19:14,785 Come ti chiami? 417 00:19:14,785 --> 00:19:15,350 >> JAMES: James. 418 00:19:15,350 --> 00:19:15,890 >> DAVID MALAN: James, va bene. 419 00:19:15,890 --> 00:19:16,829 Cosa faccio adesso? 420 00:19:16,829 --> 00:19:18,620 JAMES: Si va in la metà che ha le S di. 421 00:19:18,620 --> 00:19:18,740 DAVID MALAN: Va bene. 422 00:19:18,740 --> 00:19:20,910 Ho intenzione di andare in metà ha la S di in essa, perché, ancora una volta, 423 00:19:20,910 --> 00:19:22,920 una clausola qui era che questa cosa è ordinato. 424 00:19:22,920 --> 00:19:25,461 Si tratta di una abbastanza inutile 1000 pagine se Verizon in realtà non 425 00:19:25,461 --> 00:19:27,339 ordinare queste cose per noi da A a Z. 426 00:19:27,339 --> 00:19:30,130 Quindi, se io so Mike è probabilmente in la seconda metà del libro di telefono, 427 00:19:30,130 --> 00:19:31,536 Ora posso. 428 00:19:31,536 --> 00:19:33,388 >> [RIDE] 429 00:19:33,388 --> 00:19:35,240 430 00:19:35,240 --> 00:19:37,391 >> Strappare il problema a metà. 431 00:19:37,391 --> 00:19:38,615 >> [APPLAUSI] 432 00:19:38,615 --> 00:19:39,115 433 00:19:39,115 --> 00:19:40,300 Grazie. 434 00:19:40,300 --> 00:19:42,510 Strappare il problema a metà. 435 00:19:42,510 --> 00:19:44,440 Che era in realtà real-- quella lotta. 436 00:19:44,440 --> 00:19:47,050 Così strappare la rubrica telefonica a metà, lasciando me stesso 437 00:19:47,050 --> 00:19:48,580 con fondamentalmente lo stesso problema. 438 00:19:48,580 --> 00:19:50,060 Ma naturalmente, grande la metà. 439 00:19:50,060 --> 00:19:52,550 E se seguo James nuovo consiglio, e vado qui. 440 00:19:52,550 --> 00:19:54,400 Io dico, oh ora sono nella sezione T. 441 00:19:54,400 --> 00:19:56,460 >> E così, naturalmente, ho può strappare la rubrica telefonica 442 00:19:56,460 --> 00:19:59,660 nella metà ancora una volta, lasciando me con un problema che è 443 00:19:59,660 --> 00:20:00,810 ora un quarto della dimensione. 444 00:20:00,810 --> 00:20:05,335 Così sono passato da 1.000 a 500 250 a 125 e così via. 445 00:20:05,335 --> 00:20:07,350 Ci si sente come se fossi prendere morsi più grandi fuori 446 00:20:07,350 --> 00:20:10,615 di questo problema con ogni iterazione, o ciascun passo in esso. 447 00:20:10,615 --> 00:20:15,580 >> E infatti, il tempo ho intenzione di spendere trovando Mike Smith in questo esempio 448 00:20:15,580 --> 00:20:18,970 è molto meno perché alla fine io sono andando a Whittle questo pone libro giù 449 00:20:18,970 --> 00:20:20,192 ad una sola pagina solitario. 450 00:20:20,192 --> 00:20:23,010 E se Mike è su quella pagina, io sono intenzione di andare avanti e dargli 451 00:20:23,010 --> 00:20:24,670 una chiamata averlo trovato. 452 00:20:24,670 --> 00:20:27,030 >> Ma quanto meglio è che algorithm-- 453 00:20:27,030 --> 00:20:29,690 che oserei dire intuitiva algorithm-- di quelle che abbiamo 454 00:20:29,690 --> 00:20:34,920 iniziato con la quale siamo molto linear-- sinistra a destra- sopra ad un ritmo di 1 o 2x? 455 00:20:34,920 --> 00:20:36,100 >> Bene, localizziamo questo. 456 00:20:36,100 --> 00:20:39,380 Noi non dobbiamo preoccuparci troppo di matematica o numeri in questo caso qui. 457 00:20:39,380 --> 00:20:40,550 Ci limitiamo a guardare un complotto. 458 00:20:40,550 --> 00:20:43,600 Così sulle x, o asse orizzontale, è la dimensione della problem-- 459 00:20:43,600 --> 00:20:44,700 Quante pagine ci sono. 460 00:20:44,700 --> 00:20:46,760 Sul y, o verticale asse, è la quantità di tempo 461 00:20:46,760 --> 00:20:48,218 sta andando a prendere me per risolverlo. 462 00:20:48,218 --> 00:20:50,760 E forse questo è il numero di pagina giri, quanti secondi, 463 00:20:50,760 --> 00:20:52,370 come many-- alcune unità di misure. 464 00:20:52,370 --> 00:20:57,810 >> E ho disegnato un rosso rette qui perché se ogni pagina aggiuntiva 465 00:20:57,810 --> 00:21:01,740 della rubrica, ho bisogno per fare un passo ulteriore. 466 00:21:01,740 --> 00:21:03,680 Quindi, se Verizon aggiunge un più Pagina prossimo anno, 467 00:21:03,680 --> 00:21:06,970 Avrei potuto capovolgere una pagina più di trovare qualcuno come Mike Smith. 468 00:21:06,970 --> 00:21:11,340 >> Nel frattempo, il secondo algoritmo, che Sono andato a due a due, è la stessa forma. 469 00:21:11,340 --> 00:21:15,220 E 'ancora molto lineare, molto a sinistra per a destra, prendendo pari byte ogni volta, 470 00:21:15,220 --> 00:21:16,900 ma la pendenza è un poco inferiore. 471 00:21:16,900 --> 00:21:23,590 >> Per esempio, se la dimensione il problema fosse più o meno qui 472 00:21:23,590 --> 00:21:25,990 e ho usato il mio primo algoritmo, Potrei finire per tutta la strada 473 00:21:25,990 --> 00:21:27,480 nella parte superiore di quella linea rossa. 474 00:21:27,480 --> 00:21:29,390 Ma se io invece uso a twosies approccio, 475 00:21:29,390 --> 00:21:31,480 la linea gialla suggerisce perché è più bassa, 476 00:21:31,480 --> 00:21:33,790 che sta andando a prendere me meno tempo la risoluzione. 477 00:21:33,790 --> 00:21:37,400 >> Ma qual è la forma del terzo algorithm-- di nuovo, probabilmente 478 00:21:37,400 --> 00:21:38,707 l'algoritmo più intuitivo? 479 00:21:38,707 --> 00:21:40,540 Beh, sembra un po ' qualcosa come questo. 480 00:21:40,540 --> 00:21:43,480 È curvo, o logaritmica, in forma. 481 00:21:43,480 --> 00:21:46,510 E anche se non è mai tipo di appiattisce, 482 00:21:46,510 --> 00:21:50,770 essa asintoticamente pollici e sempre più in alto, ma terribilmente lento 483 00:21:50,770 --> 00:21:52,129 rispetto a tutto il resto. 484 00:21:52,129 --> 00:21:53,170 E qual è il take away? 485 00:21:53,170 --> 00:21:54,215 Beh, noi la chiamiamo log n. 486 00:21:54,215 --> 00:21:55,820 Ma che cosa realmente significa? 487 00:21:55,820 --> 00:21:58,580 Beh, se Verizon ha raddoppiato il numero di pagine nella rubrica 488 00:21:58,580 --> 00:22:00,810 il prossimo anno da 1.000 a 2.000. 489 00:22:00,810 --> 00:22:04,600 Quanti più passi è la mia primo algoritmo andando a prendere? 490 00:22:04,600 --> 00:22:05,440 >> Il mio primo algoritmo. 491 00:22:05,440 --> 00:22:06,399 Forse 1.000 più passi. 492 00:22:06,399 --> 00:22:08,106 Se hanno raddoppiato il rubrica telefonica, sto andando 493 00:22:08,106 --> 00:22:10,590 di dover sfogliare un'altra 1.000 pagine per trovare Mike. 494 00:22:10,590 --> 00:22:13,240 Naturalmente, se il secondo algoritmo, forse perché sono 500 495 00:22:13,240 --> 00:22:14,610 andare due volte più veloce. 496 00:22:14,610 --> 00:22:18,380 >> Ma se Verizon raddoppia il numero di pagine tra quest'anno e il prossimo, 497 00:22:18,380 --> 00:22:21,650 con il mio terzo algorithm-- il divario e conquista che James ha proposto, 498 00:22:21,650 --> 00:22:24,450 andare a metà e metà e half-- quanti più passaggi saranno 499 00:22:24,450 --> 00:22:29,030 mi prendere l'anno prossimo di avere una rubrica di dimensioni 2.000? 500 00:22:29,030 --> 00:22:29,670 Solo uno. 501 00:22:29,670 --> 00:22:34,110 Perché con un morso, posso prendere, su tale problema, la metà delle pagine 502 00:22:34,110 --> 00:22:34,694 lontano. 503 00:22:34,694 --> 00:22:37,860 E se si pensa a questo un po ' follemente now-- Se la rubrica non lo fa 504 00:22:37,860 --> 00:22:41,810 avere 1.000 o 2000 pagina, ma diciamo 4 miliardi pages-- 505 00:22:41,810 --> 00:22:45,282 è un grande telefono book-- come molte volte o quanti passi 506 00:22:45,282 --> 00:22:47,740 sta andando a prendere me per trovare Mike Smith nella rubrica 507 00:22:47,740 --> 00:22:50,489 con 4 miliardi di pagine. 508 00:22:50,489 --> 00:22:52,030 È possibile sorta di iniziare a fare i conti. 509 00:22:52,030 --> 00:22:52,200 Tutto ok. 510 00:22:52,200 --> 00:22:53,175 4 miliardi diviso 2. 511 00:22:53,175 --> 00:22:54,550 Ecco, questo è 2 miliardi diviso per 1. 512 00:22:54,550 --> 00:22:55,510 Questo è 1 miliardo. 513 00:22:55,510 --> 00:22:56,410 Poi mezzo miliardo. 514 00:22:56,410 --> 00:22:59,940 Poi 250-- modo da poter fare di nuovo e nuovo ma non che molte volte prima 515 00:22:59,940 --> 00:23:01,020 si arriva a una pagina. 516 00:23:01,020 --> 00:23:04,360 >> E in effetti, anche se il telefono libro è lungo 4 miliardi di pagine 517 00:23:04,360 --> 00:23:08,340 o il database che si sta cercando è lunga 4 miliardi di record, 518 00:23:08,340 --> 00:23:12,720 sta andando a prendere più o meno 32 passaggi solo per trovare Mike Smith. 519 00:23:12,720 --> 00:23:15,990 E se si raddoppia la rubrica successiva anno 4000 a 8000 milioni, 520 00:23:15,990 --> 00:23:19,010 33 punti invece di appena 32. 521 00:23:19,010 --> 00:23:21,100 >> E questa è la prova ad una delle idee 522 00:23:21,100 --> 00:23:24,100 che potremmo abbracciare in informatica scienza più in generale, che 523 00:23:24,100 --> 00:23:26,760 È questo il pensiero computazionale e si avvicina un problema 524 00:23:26,760 --> 00:23:29,479 francamente utilizzando strumenti da lo strumento ha già familiarità 525 00:23:29,479 --> 00:23:31,520 kit-- tuo mondo reale con che si ha familiarità, 526 00:23:31,520 --> 00:23:34,730 ma sfruttando quelle idee risolvere effettivamente problemi. 527 00:23:34,730 --> 00:23:37,200 >> Ma abbiamo bisogno di formalizzare la nostra soluzioni a questi problemi. 528 00:23:37,200 --> 00:23:40,200 E così mi permetta di introdurre per un attimo qualcosa che potremmo chiamare pseudocodice. 529 00:23:40,200 --> 00:23:44,260 Gran parte del semestre, passeremo utilizzando codice vero e proprio in linguaggi come C e PHP 530 00:23:44,260 --> 00:23:46,570 e JavaScript e SQL e simili. 531 00:23:46,570 --> 00:23:49,000 >> Ma per ora, diamo basta guardare a qualcosa abbastanza intuitivo 532 00:23:49,000 --> 00:23:49,930 come l'inglese. 533 00:23:49,930 --> 00:23:52,490 Potrei distillare che algoritmo con cui 534 00:23:52,490 --> 00:23:54,650 Ho trovato Mike in passaggi come questo. 535 00:23:54,650 --> 00:23:55,760 >> Sollevare la rubrica telefonica 536 00:23:55,760 --> 00:23:57,121 >> Aperto al centro della rubrica 537 00:23:57,121 --> 00:23:57,870 Guardare il nome del 538 00:23:57,870 --> 00:23:59,290 Se Mike è tra il nome del 539 00:23:59,290 --> 00:24:00,450 Chiama Mike 540 00:24:00,450 --> 00:24:02,290 Altrimenti se Smith è in precedenza nel libro 541 00:24:02,290 --> 00:24:04,540 Aperto al centro della la metà sinistra del libro 542 00:24:04,540 --> 00:24:06,244 Altrimenti andare alla linea 3 543 00:24:06,244 --> 00:24:07,660 Altrimenti se Smith è più avanti nel libro 544 00:24:07,660 --> 00:24:09,330 Aperto al centro del metà destra del libro 545 00:24:09,330 --> 00:24:09,996 Vai alla linea tre 546 00:24:09,996 --> 00:24:10,720 Altro 547 00:24:10,720 --> 00:24:11,500 Mollare 548 00:24:11,500 --> 00:24:15,360 E ci sono alcune caratteristiche ora di questo che vale la pena sottolineare. 549 00:24:15,360 --> 00:24:18,370 Così uno, tutte le linee Ho evidenziato in giallo 550 00:24:18,370 --> 00:24:21,430 stiamo per iniziare a chiamare privacy o funzioni o delle procedure. 551 00:24:21,430 --> 00:24:24,160 Sono solo le azioni fanno questo, e non c'è 552 00:24:24,160 --> 00:24:26,400 tutto che molto variabilità ad esso. 553 00:24:26,400 --> 00:24:30,850 >> Il passo successivo qui, però, sono questi conditions-- se, altrimenti, se il resto, il resto. 554 00:24:30,850 --> 00:24:34,020 E questi sono chiamati condizioni, o rami, e sono punti di decisione. 555 00:24:34,020 --> 00:24:36,780 E loro ci permettono di fare qualcosa condizionale. 556 00:24:36,780 --> 00:24:39,650 >> E infatti, diamo un rapido guarda forse un face-- familiare 557 00:24:39,650 --> 00:24:43,380 chiameremo lui Bill-- e esattamente ciò che queste condizioni, 558 00:24:43,380 --> 00:24:45,670 come queste possano essere utilizzate. 559 00:24:45,670 --> 00:24:48,230 >> BILL GATES: Le persone fanno decisioni ogni giorno. 560 00:24:48,230 --> 00:24:51,800 Ad esempio, prima di andare fuori di te tipo di avere un'istruzione if che dice, 561 00:24:51,800 --> 00:24:55,650 se piove, poi ho bisogno di ottenere la mia giacca. 562 00:24:55,650 --> 00:25:00,990 >> E i computer sono sorprendenti, una volta decidere questo tipo di dichiarazioni 563 00:25:00,990 --> 00:25:06,450 che possano in modo affidabile l'esecuzione quelle cose a velocità incredibili. 564 00:25:06,450 --> 00:25:12,470 E così un programma di computer veramente è un po 'di matematica e un po' 565 00:25:12,470 --> 00:25:16,890 se le dichiarazioni in cui la decisione viene fatto. 566 00:25:16,890 --> 00:25:19,432 >> DAVID MALAN: Così ora concentriamoci su alcuni lines-- diverso 567 00:25:19,432 --> 00:25:21,140 quelli che ho messo in evidenza in giallo qui. 568 00:25:21,140 --> 00:25:23,890 E si scopre c'è diverso modi di esprimere questa idea. 569 00:25:23,890 --> 00:25:28,550 Ma intuitivamente ciò che i nostri linee 8 e 11 che ho evidenziato qui che ti dice 570 00:25:28,550 --> 00:25:29,100 fare? 571 00:25:29,100 --> 00:25:33,081 Sì, andare alla linea 3, ma che cosa comportamento è che davvero indurre? 572 00:25:33,081 --> 00:25:35,580 E 'una sorta di loop o ciclo, e si può tipo di vederlo. 573 00:25:35,580 --> 00:25:36,079 Destra? 574 00:25:36,079 --> 00:25:39,710 Se sulla linea 8, si torna alla linea 3, e poi ti ha colpito di nuovo la linea 8, 575 00:25:39,710 --> 00:25:42,700 si potrebbe tornare alla linea 3, torna alla linea 3, di nuovo alla linea 3. 576 00:25:42,700 --> 00:25:44,530 C'è questa sorta di ciclo o loop. 577 00:25:44,530 --> 00:25:47,177 E in effetti, che è indotto a linea 11 potenzialmente pure. 578 00:25:47,177 --> 00:25:49,260 E questo è un semplice la programmazione costruire pure. 579 00:25:49,260 --> 00:25:51,593 >> Si potrebbe non voler solo fare qualcosa con una dichiarazione 580 00:25:51,593 --> 00:25:54,280 o fare qualcosa in modo condizionale con una condizione o ramo. 581 00:25:54,280 --> 00:25:56,644 Si potrebbe desiderare di fare qualcosa ciclicamente con un ciclo. 582 00:25:56,644 --> 00:25:59,810 E avremo un altro con il quale si potrebbe essere familiar-- lo chiameremo 583 00:25:59,810 --> 00:26:02,996 Mark-- spiegare questo concetto qui. 584 00:26:02,996 --> 00:26:04,870 Mark Zuckerberg: One cosa che i computer sono 585 00:26:04,870 --> 00:26:07,460 veramente bravo a sta ripetendo comandi. 586 00:26:07,460 --> 00:26:09,510 Come persona, si otterrebbe veramente annoiato se 587 00:26:09,510 --> 00:26:12,310 ha dovuto fare la stessa cosa un sacco di volte di fila, 588 00:26:12,310 --> 00:26:16,230 ma un computer può fare la stessa cosa milioni o addirittura miliardi di volte 589 00:26:16,230 --> 00:26:18,930 e non annoiarsi ed essere in grado di eseguirla davvero bene. 590 00:26:18,930 --> 00:26:21,240 >> Così, per esempio, se voglio augurare a tutti 591 00:26:21,240 --> 00:26:24,450 su Facebook un buon compleanno inviando loro una e-mail, 592 00:26:24,450 --> 00:26:27,037 mi potrebbe richiedere più di un secolo effettivamente scrivere 593 00:26:27,037 --> 00:26:28,370 tutte quelle e-mail a tutti. 594 00:26:28,370 --> 00:26:33,500 Ma con poche righe di codice, non posso hanno un sistema di inviare una e-mail a tutti 595 00:26:33,500 --> 00:26:35,460 su Facebook che desiderano loro un felice compleanno. 596 00:26:35,460 --> 00:26:38,330 >> Ecco, questo è ciò che i cicli sono e perché sono di valore e qualcosa 597 00:26:38,330 --> 00:26:40,076 che i computer possono fare molto bene. 598 00:26:40,076 --> 00:26:43,109 >> DAVID MALAN: Molte grazie ai nostri amici a code.org per questi due film. 599 00:26:43,109 --> 00:26:46,150 E proprio la settimana scorsa, si potrebbe avere visto che Mark Zuckerberg e Facebook 600 00:26:46,150 --> 00:26:47,940 postato questo annuncio, che è che hanno appena 601 00:26:47,940 --> 00:26:50,398 hanno superato un importante pietra miliare per la prima volta in assoluto. 602 00:26:50,398 --> 00:26:54,320 1 miliardo di persone usato Facebook in un solo giorno, in particolare lo scorso Lunedi. 603 00:26:54,320 --> 00:26:58,650 Uno su sette umani sulla Terra apparentemente effettuato l'accesso a Facebook. 604 00:26:58,650 --> 00:27:03,310 >> Bene, questo sembra una buona occasione a guardare indietro su dove Facebook è iniziata, 605 00:27:03,310 --> 00:27:06,840 e siamo passati attraverso la propria CS50 archivi perché si scopre nel 2005, 606 00:27:06,840 --> 00:27:10,020 Mark ha tenuto una conferenza per gli ospiti in CS50. 607 00:27:10,020 --> 00:27:13,870 Vedrete che i valori di produzione non erano proprio la stessa di allora 608 00:27:13,870 --> 00:27:16,110 in termini di tecnologia disponibile, e avrete anche 609 00:27:16,110 --> 00:27:18,310 vedere che la presenza di questa guest lecture 610 00:27:18,310 --> 00:27:22,470 non necessariamente stimolare l'interesse del corpo studentesco, i vostri predecessori, 611 00:27:22,470 --> 00:27:24,910 quanto potrebbe avere pochi anni più tardi. 612 00:27:24,910 --> 00:27:27,902 >> Quindi, diamo uno sguardo a Science Center C. 613 00:27:27,902 --> 00:27:29,389 614 00:27:29,389 --> 00:27:31,014 SPEAKER 2: Si prega di unirsi a me, e il benvenuto. 615 00:27:31,014 --> 00:27:33,374 616 00:27:33,374 --> 00:27:36,577 [APPLAUSI] 617 00:27:36,577 --> 00:27:37,410 Mark Zuckerberg: Yo. 618 00:27:37,410 --> 00:27:37,900 Tutto ok. 619 00:27:37,900 --> 00:27:40,420 Raffreddare questa è la prima volta che ho mai hanno dovuto tenere una di queste cose. 620 00:27:40,420 --> 00:27:42,336 Così sto solo andando a collegarlo molto velocemente. 621 00:27:42,336 --> 00:27:54,354 622 00:27:54,354 --> 00:27:54,854 Tutto ok. 623 00:27:54,854 --> 00:27:57,314 Puoi sentirlo? 624 00:27:57,314 --> 00:27:58,298 È buono questo? 625 00:27:58,298 --> 00:28:00,684 E 'questo amplificato a tutti? 626 00:28:00,684 --> 00:28:01,184 Tutto ok. 627 00:28:01,184 --> 00:28:02,040 Dolce. 628 00:28:02,040 --> 00:28:06,860 Così, questo è come una delle prime volte Sono stato a una conferenza ad Harvard, 629 00:28:06,860 --> 00:28:08,660 ma-- 630 00:28:08,660 --> 00:28:12,510 >> DAVID MALAN: Così alla fine la scienza Centro fatto ingrandire il video, 631 00:28:12,510 --> 00:28:15,110 ma non prima di catturare questo estratto in cui parlare di Marco, 632 00:28:15,110 --> 00:28:18,230 che ha discusso la sua compagno di stanza, Dustin, che 633 00:28:18,230 --> 00:28:20,885 ha voluto dare una mano con questo sito chiamato il Facebook.com 634 00:28:20,885 --> 00:28:24,540 e si rese conto che Marco sta per parlare di programmazione languages-- 635 00:28:24,540 --> 00:28:27,290 uno chiamato Perl, uno chiamato PHP-- mentre discute 636 00:28:27,290 --> 00:28:28,840 le origini del contributo di Dustin. 637 00:28:28,840 --> 00:28:31,499 638 00:28:31,499 --> 00:28:33,290 Mark Zuckerberg: I cominciato a correre il sito 639 00:28:33,290 --> 00:28:37,770 e lanciato è a Harvard nel febbraio 2004. 640 00:28:37,770 --> 00:28:39,540 Quindi credo che quasi due anni fa. 641 00:28:39,540 --> 00:28:42,322 E nel giro di un paio di settimane, un alcune migliaia di persone avevano firmato, 642 00:28:42,322 --> 00:28:45,280 e abbiamo iniziato a ricevere alcune email da persone in altri collegi chiedere 643 00:28:45,280 --> 00:28:47,520 per noi di lanciarlo a loro scuole. 644 00:28:47,520 --> 00:28:49,455 >> E stavo prendendo 161 al momento. 645 00:28:49,455 --> 00:28:52,080 Quindi non so se voi ragazzi sapete la reputazione di quel corso, 646 00:28:52,080 --> 00:28:54,402 ma era un po 'pesante. 647 00:28:54,402 --> 00:28:57,110 E 'stato un corso molto divertente, ma non mi ha lasciato con molto tempo 648 00:28:57,110 --> 00:28:59,260 di fare qualsiasi altra cosa con Facebook. 649 00:28:59,260 --> 00:29:04,309 Quindi il mio compagno di stanza Dustin, che immagino aveva appena finito CS50, era come, hey. 650 00:29:04,309 --> 00:29:05,100 Voglio dare una mano. 651 00:29:05,100 --> 00:29:08,760 Io voglio fare l'espansione e aiutare a capire come fare le cose. 652 00:29:08,760 --> 00:29:10,780 >> Così mi sono detto, che è piuttosto fresco, amico. 653 00:29:10,780 --> 00:29:13,130 Ma non so davvero qualsiasi PHP o qualcosa di simile. 654 00:29:13,130 --> 00:29:16,444 Così quel fine settimana è andato a casa, comprato il libro Perl for Dummies, 655 00:29:16,444 --> 00:29:17,860 è tornato ed era come, va bene. 656 00:29:17,860 --> 00:29:18,940 Sono pronto per andare. 657 00:29:18,940 --> 00:29:23,010 >> Ero come, amico, il sito è scritto in PHP non Perl, ma che figata. 658 00:29:23,010 --> 00:29:28,530 >> Così ha raccolto oltre PHP come un paio di giorni perché ho 659 00:29:28,530 --> 00:29:30,790 promettere che se si dispone di un buon background in C, 660 00:29:30,790 --> 00:29:32,970 PHP è una cosa molto semplice da raccogliere. 661 00:29:32,970 --> 00:29:37,480 E ha solo tipo di mise al lavoro. 662 00:29:37,480 --> 00:29:40,500 >> Prima diamo uno sguardo ora al dove il corso sta andando, 663 00:29:40,500 --> 00:29:43,047 mi permetta di invitare solo alcuni di di SC50 personale fino al palco. 664 00:29:43,047 --> 00:29:44,880 Alcuni di loro sono negozi propri corsi. 665 00:29:44,880 --> 00:29:48,390 Ma se quei TF e CA e naturalmente teste che sono qui potrebbe venire su un massimo 666 00:29:48,390 --> 00:29:50,230 e unirsi a me per un rapido ciao. 667 00:29:50,230 --> 00:29:54,670 >> Mi permetta di introdurre, in particolare, Hanna, Maria, Daven, e Rob, 668 00:29:54,670 --> 00:29:59,666 Naturalmente di CS50 dirige qui a Cambridge. 669 00:29:59,666 --> 00:30:02,106 >> [APPLAUSI] 670 00:30:02,106 --> 00:30:07,490 671 00:30:07,490 --> 00:30:11,060 >> DAVID MALAN: infatti, testimonia la struttura di supporto che il corso ha 672 00:30:11,060 --> 00:30:15,660 costruita nel corso degli ultimi anni, personale CS50 numeri di quest'anno quasi 100, 673 00:30:15,660 --> 00:30:17,170 e che è qui a Cambridge da sola. 674 00:30:17,170 --> 00:30:21,240 Nel frattempo, a New Haven, ci sono un po ' 40 TF e CA e membri del personale là 675 00:30:21,240 --> 00:30:22,800 per eseguire il corso così. 676 00:30:22,800 --> 00:30:26,125 >> Ci permettono di introdurre prima, Rob Bowden. 677 00:30:26,125 --> 00:30:26,750 ROB BOWDEN: Hi. 678 00:30:26,750 --> 00:30:27,620 Sono Rob. 679 00:30:27,620 --> 00:30:32,750 Questo è il mio sesto anno TFing in corso. 680 00:30:32,750 --> 00:30:37,970 Così, tutta la strada nella mia primo anno, non ho preso CS50. 681 00:30:37,970 --> 00:30:40,270 Il tuo matricola fall-- si potrebbe avere familiarità 682 00:30:40,270 --> 00:30:43,270 che si può prendere solo quattro corsi e ci sono tanti corsi di oggi. 683 00:30:43,270 --> 00:30:44,450 Quindi io sono come, eh. 684 00:30:44,450 --> 00:30:48,050 Ho preso AP CS mio ultimo anno di liceo è stato orribile. 685 00:30:48,050 --> 00:30:48,900 Quindi, io sono come, eh. 686 00:30:48,900 --> 00:30:50,380 L'informatica non è per me. 687 00:30:50,380 --> 00:30:53,000 >> Allora era finita la corso della mia matricola 688 00:30:53,000 --> 00:30:58,960 cadere, che avevo un amico in CS50, e Credo di aver partecipato ad una lezione con lei. 689 00:30:58,960 --> 00:31:03,760 E 'come, oh, questo è una specie di meglio di quello che avevo al liceo. 690 00:31:03,760 --> 00:31:06,990 >> E nel corso del anno, ho avuto il mio set di problemi 691 00:31:06,990 --> 00:31:08,750 nei corsi mi è stato effettivamente prendendo. 692 00:31:08,750 --> 00:31:11,870 Ma ho scoperto che ogni volta che voleva procrastinare su quelli, 693 00:31:11,870 --> 00:31:15,111 Vorrei tornare a CS50 e guardare alcuni di quella roba. 694 00:31:15,111 --> 00:31:15,610 Quindi, sì. 695 00:31:15,610 --> 00:31:16,140 Sono fico. 696 00:31:16,140 --> 00:31:19,350 I procrastinazione con codifica. 697 00:31:19,350 --> 00:31:22,910 Allora è a fine la caduta che mi rendo conto, hey, 698 00:31:22,910 --> 00:31:24,410 informatica è piuttosto fresco. 699 00:31:24,410 --> 00:31:27,730 Finisco per prendere CS51. 700 00:31:27,730 --> 00:31:30,430 Nel prossimo semestre, Finisco per prendere CS61. 701 00:31:30,430 --> 00:31:32,727 Ed è tutto da lì, poi finisco per dichiarare 702 00:31:32,727 --> 00:31:35,310 informatica, che ho avuto assolutamente alcuna intenzione di fare 703 00:31:35,310 --> 00:31:36,740 quando sono arrivato al college. 704 00:31:36,740 --> 00:31:39,330 E ora sono qui. 705 00:31:39,330 --> 00:31:42,230 Così il corso è ciò che facciamo di essa. 706 00:31:42,230 --> 00:31:43,463 Spero che vi piaccia. 707 00:31:43,463 --> 00:31:44,066 >> [APPLAUSI] 708 00:31:44,066 --> 00:31:45,315 DAVID MALAN: Grazie a Rob. 709 00:31:45,315 --> 00:31:49,020 710 00:31:49,020 --> 00:31:52,180 >> E ora Maria, la nostra capo assistente al corso. 711 00:31:52,180 --> 00:31:53,140 >> MARIA: Hey ragazzi. 712 00:31:53,140 --> 00:31:53,880 Il mio nome è Maria. 713 00:31:53,880 --> 00:31:56,930 Sono al secondo anno a Cabot Casa, provenienti da Bulgaria, 714 00:31:56,930 --> 00:31:59,880 e io sono super felice di essere parte dello staff di quest'anno. 715 00:31:59,880 --> 00:32:03,380 Ho preso CS50 come matricola l'anno scorso, e non ho mai nemmeno 716 00:32:03,380 --> 00:32:04,750 pensato di CS in anticipo. 717 00:32:04,750 --> 00:32:08,380 Così ho assolutamente d'amore il corso, ed io spero che tutti amano tanto quanto ho fatto. 718 00:32:08,380 --> 00:32:09,250 E, sì. 719 00:32:09,250 --> 00:32:10,868 Benvenuti a CS50. 720 00:32:10,868 --> 00:32:12,201 DAVID MALAN: Grazie a Maria. 721 00:32:12,201 --> 00:32:13,674 [APPLAUSI] 722 00:32:13,674 --> 00:32:16,129 723 00:32:16,129 --> 00:32:19,580 Ora Hanna, i nostri compagni di insegnamento testa. 724 00:32:19,580 --> 00:32:20,480 HANNA: Ciao, io sono Hanna. 725 00:32:20,480 --> 00:32:22,990 Sono un anziano in Cabot studiare informatica. 726 00:32:22,990 --> 00:32:28,120 Ho preso CS50 come una matricola e aveva stato TFing-- questo sarà il mio terzo anno. 727 00:32:28,120 --> 00:32:31,000 Così sarò felicemente coinvolto in CS50 per tutti i quattro anni, 728 00:32:31,000 --> 00:32:33,569 e non vedo l'ora a lavorare con tutti voi. 729 00:32:33,569 --> 00:32:34,902 DAVID MALAN: Grazie a Hanna. 730 00:32:34,902 --> 00:32:36,870 [APPLAUSI] 731 00:32:36,870 --> 00:32:37,854 732 00:32:37,854 --> 00:32:40,274 E, infine, Daven, il nostro precepter. 733 00:32:40,274 --> 00:32:40,940 Daven: Hey ragazzi. 734 00:32:40,940 --> 00:32:42,390 Sono un precetto sopra in informatica qui. 735 00:32:42,390 --> 00:32:44,010 Questo sarà il mio quarto anno di insegnamento. 736 00:32:44,010 --> 00:32:45,261 Ho anche aiutare a gestire il corso. 737 00:32:45,261 --> 00:32:47,801 Quindi sono sicuro che vedrete intorno a me, soprattutto in orario d'ufficio. 738 00:32:47,801 --> 00:32:48,970 Sono sempre in orario d'ufficio. 739 00:32:48,970 --> 00:32:51,640 Quindi, se mi vedi camminare in giro, sicuramente salutare. 740 00:32:51,640 --> 00:32:52,681 Mi piace incontrare tutti. 741 00:32:52,681 --> 00:32:55,830 In caso contrario, divertirsi, e ci vediamo in giro. 742 00:32:55,830 --> 00:32:58,210 >> DAVID MALAN: Grazie a Daven pure. 743 00:32:58,210 --> 00:33:01,290 Quindi si incontra tutti queste persone non molto. 744 00:33:01,290 --> 00:33:03,040 Ma senza ulteriori indugi, se voi ragazzi sarebbe 745 00:33:03,040 --> 00:33:05,840 come per riprendere i posti di prima. 746 00:33:05,840 --> 00:33:10,940 Mi permetta di introdurre da lontano ora alcuni dei nostri amici da New Haven, 747 00:33:10,940 --> 00:33:14,690 in particolare le teste del corso che sarò essere supervisione CS50 there-- Professor 748 00:33:14,690 --> 00:33:19,550 Brian Scassellati, Jason, e Andi, che solo-- in modo che noi non sfidare il destino 749 00:33:19,550 --> 00:33:22,610 con qualsiasi FaceTime o like-- hanno appena ci ha inviato minuti 750 00:33:22,610 --> 00:33:27,380 fa il seguente video in cui dicono ciao da aula 751 00:33:27,380 --> 00:33:31,480 a Yale, in cui lezione viene trasmesso al momento. 752 00:33:31,480 --> 00:33:34,052 >> Così i nostri amici di Yale. 753 00:33:34,052 --> 00:33:35,260 BRIAN Scassellati: Ciao, David. 754 00:33:35,260 --> 00:33:36,480 Ciao a tutti ad Harvard. 755 00:33:36,480 --> 00:33:41,400 Siamo così eccitati di essere portare CS50 a Yale questo semestre. 756 00:33:41,400 --> 00:33:45,250 Il mio nome è Brian Scassellati, ma tutti mi chiamano SCA. 757 00:33:45,250 --> 00:33:50,402 E io sono qui oggi per introdurre a voi il personale CS50. 758 00:33:50,402 --> 00:33:52,346 >> [INCORAGGIA] 759 00:33:52,346 --> 00:33:55,760 760 00:33:55,760 --> 00:33:59,780 >> E ancora più importante, io sono qui di introdurre pure 761 00:33:59,780 --> 00:34:03,690 tutti gli studenti Yale che a partire da questa mattina 762 00:34:03,690 --> 00:34:09,289 hanno fatto di questo il più popolare Naturalmente a Yale studenti CS50. 763 00:34:09,289 --> 00:34:12,090 >> [INCORAGGIA] 764 00:34:12,090 --> 00:34:25,850 765 00:34:25,850 --> 00:34:28,310 >> Quindi siamo molto eccitati essere vedervi qui 766 00:34:28,310 --> 00:34:34,239 il Venerdì e il Sabato per Puzzle giorno e hanno una grande lezione. 767 00:34:34,239 --> 00:34:35,440 Ciao. 768 00:34:35,440 --> 00:34:37,360 >> [APPLAUSI] 769 00:34:37,360 --> 00:34:42,170 770 00:34:42,170 --> 00:34:45,497 >> DAVID MALAN: Nella schermata qui è i nomi di alcuni dei 140 dipendenti 771 00:34:45,497 --> 00:34:48,330 I membri che si attendono il corso della semester-- alcuni di essi 772 00:34:48,330 --> 00:34:50,540 qui a Cambridge, un po ' di loro qui a New Haven. 773 00:34:50,540 --> 00:34:52,706 E infatti avrete un opportunità questo Sabato, 774 00:34:52,706 --> 00:34:54,530 come note SCAS, a partecipare CS50 Puzzle giorno. 775 00:34:54,530 --> 00:34:57,780 Potreste aver visto piccoli pezzi del puzzle scivolato sotto le porte di recente. 776 00:34:57,780 --> 00:35:00,420 Abbiamo qualche extra qui più tardi, quando tu esisti. 777 00:35:00,420 --> 00:35:04,030 Se si assemblano tutti e quattro di puzzle pezzi e unire le forze con camere 778 00:35:04,030 --> 00:35:06,450 vostro vicine a vostra casa o dormitorio, faranno 779 00:35:06,450 --> 00:35:09,690 assemblare in un code-- QR o di un due codice a barre bidimensionale, che 780 00:35:09,690 --> 00:35:12,970 Una volta assemblato e sottoposto a scansione con il telefono vi condurrà 781 00:35:12,970 --> 00:35:17,060 a qualche favoloso premio or-- suppongo si può solo fotografare questo momento 782 00:35:17,060 --> 00:35:17,560 anche. 783 00:35:17,560 --> 00:35:22,560 >> Ma trovare quei pezzi del puzzle comunque al fine di vincere il favoloso premio. 784 00:35:22,560 --> 00:35:25,900 E infatti una delle tradizioni in SC50-- ah, troppo lento. 785 00:35:25,900 --> 00:35:29,790 Una delle tradizioni in CS50 è quello di servire torta dopo la prima lezione. 786 00:35:29,790 --> 00:35:31,620 >> E così effettivamente, in un pochi minuti da ora, 787 00:35:31,620 --> 00:35:36,040 ci saranno torta servita all'aperto sia qui e New Haven pure. 788 00:35:36,040 --> 00:35:39,530 >> Ma first-- abbiamo decorato noi stessi. 789 00:35:39,530 --> 00:35:43,360 Ma first-- e si spera ci sarà abbastanza. 790 00:35:43,360 --> 00:35:44,830 >> Ma in primo luogo, un rapido sguardo. 791 00:35:44,830 --> 00:35:47,880 Così le lezioni è infatti saranno prodotta in gran parte qui a Cambridge. 792 00:35:47,880 --> 00:35:51,580 Ma ogni mese, saremo hop fino a Yale con il team di produzione di CS50 e flusso 793 00:35:51,580 --> 00:35:53,730 il corso della retromarcia direzione e in modo 794 00:35:53,730 --> 00:35:56,840 da portare queste due sedi veramente per la prima volta nella storia 795 00:35:56,840 --> 00:36:00,450 il più vicino possibile come uno nello stesso corso. 796 00:36:00,450 --> 00:36:04,050 >> In termini di struttura di supporto che è stato alzato in piedi qui a Cambridge e 797 00:36:04,050 --> 00:36:05,646 come a New Haven, sono sezioni. 798 00:36:05,646 --> 00:36:08,020 Infatti, come alcuni di voi può sapere, abbiamo diverse tracce 799 00:36:08,020 --> 00:36:10,850 nell'ambito del corso per quelli meno comodo, più confortevole, 800 00:36:10,850 --> 00:36:14,610 e da qualche parte nel mezzo in modo che a prescindere dal tuo background prima, 801 00:36:14,610 --> 00:36:17,670 si può in ultima analisi, avere successo nella classe. 802 00:36:17,670 --> 00:36:21,320 >> Orario di ricevimento Nel frattempo, sono un opportunità lunedì e martedì 803 00:36:21,320 --> 00:36:26,570 e giovedì sera per lavorare sia qui e in New Haven sul nostro corso di 804 00:36:26,570 --> 00:36:30,370 problema imposta con decine di il personale del golf vicino a voi. 805 00:36:30,370 --> 00:36:35,380 >> Problema imposta nel frattempo, sono supportata da cose che chiamiamo 806 00:36:35,380 --> 00:36:39,140 procedure dettagliate, che sono basati il ​​video tutorial che veramente rispondere alle FAQ 807 00:36:39,140 --> 00:36:41,670 di dove cominciare la sfida di una settimana. 808 00:36:41,670 --> 00:36:44,290 E postmortems si cammina attraverso possibili soluzioni 809 00:36:44,290 --> 00:36:46,490 in modo che l'estremità del problema troppo, è 810 00:36:46,490 --> 00:36:50,820 sa esattamente quello che avrebbe potuto fare in modo diverso o del tutto contrario. 811 00:36:50,820 --> 00:36:53,895 >> Il problema imposta stessi a in due edizioni, una edizione standard 812 00:36:53,895 --> 00:36:57,510 che ci aspettiamo e invitiamo la maggior parte di il class-- circa il 90% più a fare-- 813 00:36:57,510 --> 00:37:00,520 e un cosiddetto edizione pirata sul quale ogni pagina è blasonate 814 00:37:00,520 --> 00:37:02,790 edizione hacker, hacker, edizione, edizione hacker, 815 00:37:02,790 --> 00:37:07,550 in modo da avere quel karma se si vuole, per le immersioni 816 00:37:07,550 --> 00:37:10,230 in versioni più avanzate di set il problema del corso 817 00:37:10,230 --> 00:37:14,970 che copertura apparentemente lo stesso materiale ma con un approccio più sofisticato 818 00:37:14,970 --> 00:37:19,020 e con sfondo aggiuntivo a volte introdotto. 819 00:37:19,020 --> 00:37:22,350 >> Nel frattempo, ci sono nove giorni di ritardo che è possibile applicare al problema del corso 820 00:37:22,350 --> 00:37:26,160 imposta così come il punteggio più basso, che lasciamo cadere alla fine i termini. 821 00:37:26,160 --> 00:37:26,900 >> Ma che cosa aspetta? 822 00:37:26,900 --> 00:37:29,300 Ebbene, un assaggio del problema imposta a portata di mano il Venerdì 823 00:37:29,300 --> 00:37:31,959 e la prossima settimana dove abbiamo dilettarsi per pochi giorni in qualcosa 824 00:37:31,959 --> 00:37:35,000 chiamato Scratch, una programmazione grafica linguaggio sviluppato dai nostri amici 825 00:37:35,000 --> 00:37:39,290 al Media Lab del MIT che permette programmare sia per la prima volta 826 00:37:39,290 --> 00:37:43,510 o in un nuovo ambiente complessivamente utilizzando un ambiente di tipo drag and drop. 827 00:37:43,510 --> 00:37:45,595 Per cui i pezzi del puzzle solo interblocco insieme 828 00:37:45,595 --> 00:37:48,080 se ha senso logico per farlo. 829 00:37:48,080 --> 00:37:50,440 >> Nel frattempo a problema set due l'anno scorso, per esempio, 830 00:37:50,440 --> 00:37:53,010 abbiamo presentiamo la classe al mondo della crittografia, 831 00:37:53,010 --> 00:37:55,370 l'arte di crittografia o rimescolando informazioni. 832 00:37:55,370 --> 00:37:58,940 In effetti, questo testo qui se decifrato, sarà effettivamente 833 00:37:58,940 --> 00:38:01,277 si portare a qualche meta divertente. 834 00:38:01,277 --> 00:38:03,110 E nel problema set, quello che abbiamo avuto studenti 835 00:38:03,110 --> 00:38:06,280 fare è implementare esattamente quelli tipi di things-- un algoritmo, 836 00:38:06,280 --> 00:38:09,530 o una serie di istruzioni per scrambling e rimescolando informazioni. 837 00:38:09,530 --> 00:38:11,850 >> E nell'edizione di hacker dello stesso problema proposto 838 00:38:11,850 --> 00:38:15,800 abbiamo sfidare gli studenti di prendere una file crittografato da un computer tipico 839 00:38:15,800 --> 00:38:18,840 Sistema con un sacco di nomi utente e password criptate 840 00:38:18,840 --> 00:38:21,400 e per rompere quei passwords-- in realtà capire 841 00:38:21,400 --> 00:38:25,870 quello che erano senza sapere nulla A priori circa le password attuali. 842 00:38:25,870 --> 00:38:27,620 Nel frattempo, dobbiamo transizione nel problema 843 00:38:27,620 --> 00:38:29,536 imposta per poi guardando il mondo della grafica. 844 00:38:29,536 --> 00:38:32,240 E infatti, si potrebbe immaginare Ora che questo potrebbe forse 845 00:38:32,240 --> 00:38:35,200 il modo più semplice per rappresentare un'immagine in bianco e nero. 846 00:38:35,200 --> 00:38:39,570 >> Un pixel bianco, o quadrato, come in alto a destra lì, 847 00:38:39,570 --> 00:38:41,620 potrebbe essere rappresentato con un 1 e un quadrato nero 848 00:38:41,620 --> 00:38:43,490 potrebbe essere rappresentato con uno 0. 849 00:38:43,490 --> 00:38:47,670 E proprio utilizzando più bit come noi proposto in precedenza con 72 e 73 e 33, 850 00:38:47,670 --> 00:38:49,882 potremmo rappresentare pixel colorati pure. 851 00:38:49,882 --> 00:38:51,590 E quello che facciamo durante questo problema insieme è 852 00:38:51,590 --> 00:38:54,660 generalmente fare una passeggiata intorno campus con una macchina fotografica digitale, 853 00:38:54,660 --> 00:38:56,730 scattare fotografie di persone, luoghi e cose. 854 00:38:56,730 --> 00:38:59,270 Poi in qualche modo ogni semestre, ci sembra di accidentalmente 855 00:38:59,270 --> 00:39:02,600 cancellati o danneggiare la memory card in cui tutte quelle foto sono, 856 00:39:02,600 --> 00:39:04,610 e così si sono sfidati per poi scrivere software 857 00:39:04,610 --> 00:39:09,650 con cui recuperare i file JPEG da una copia della carta di nostra macchina fotografica. 858 00:39:09,650 --> 00:39:13,550 >> Nel frattempo, possiamo voi mano più avanti in il termine di un dizionario di parole inglesi 859 00:39:13,550 --> 00:39:16,680 che sono 143.000 parole, e avete bisogno di venire 860 00:39:16,680 --> 00:39:19,240 con un modo intelligente di loro caricamento in memoria, 861 00:39:19,240 --> 00:39:22,850 o RAM per così dire, di rispondere query della forma: è questa una parola, 862 00:39:22,850 --> 00:39:25,910 È questa una parola, che attua il più veloce correttore ortografico che è possibile, 863 00:39:25,910 --> 00:39:28,180 anche pinning te potenzialmente contro i compagni di classe 864 00:39:28,180 --> 00:39:30,460 per vedere chi di voi usa la minor quantità di tempo 865 00:39:30,460 --> 00:39:33,440 quando si esegue il codice e anche la quantità minima di memoria. 866 00:39:33,440 --> 00:39:36,060 >> Più tardi, nel termine si fa realtà implementare il proprio server web. 867 00:39:36,060 --> 00:39:39,470 Quindi non solo un sito web in un linguaggio chiamato HTML e altro ancora, 868 00:39:39,470 --> 00:39:43,300 ma un server web che in realtà ascolta le richieste su internet 869 00:39:43,300 --> 00:39:44,460 e vi risponde. 870 00:39:44,460 --> 00:39:47,210 E in effetti, questo è il modo in cui colmare il nostro mondo di C con il quale sarete 871 00:39:47,210 --> 00:39:50,550 acquisire familiarità prossima settimana e PHP e HTML e JavaScript 872 00:39:50,550 --> 00:39:51,820 e CSS e simili. 873 00:39:51,820 --> 00:39:54,820 >> Perché una delle prime web based progetto che facciamo tardi nel termine 874 00:39:54,820 --> 00:39:57,516 è storicamente CS50 Finanza. 875 00:39:57,516 --> 00:40:02,580 stile Etrade.com un sito web che permette di acquistare e vendere azioni virtualmente 876 00:40:02,580 --> 00:40:08,240 mentre anche la scrittura di codice per parlare con Yahoo Finanza ottenere semi tempo reale magazzino 877 00:40:08,240 --> 00:40:11,490 cita al fine di aggiornare il vostro portafoglio. 878 00:40:11,490 --> 00:40:13,370 >> Ma, infine, naturalmente, è il project-- finale 879 00:40:13,370 --> 00:40:16,960 la possibilità di fare qualsiasi cosa di interessare per risolvere un problema qui 880 00:40:16,960 --> 00:40:20,970 o oltre interessare che in qualche modo ispirato 881 00:40:20,970 --> 00:40:22,670 dalle lezioni apprese in classe. 882 00:40:22,670 --> 00:40:26,140 >> E la classe, come forse sapete, culmina nella cosiddetta CS50 hackathon 883 00:40:26,140 --> 00:40:29,330 e CS50 Fiera e qualsiasi numero di altri eventi culturali 884 00:40:29,330 --> 00:40:31,770 per tutto il semestre che consentono di coinvolgere 885 00:40:31,770 --> 00:40:33,460 con l'altro e il personale del corso. 886 00:40:33,460 --> 00:40:37,170 >> Per esempio, a Fire and Ice a Sitar quest'anno, bene, il venerdì pomeriggio, 887 00:40:37,170 --> 00:40:39,220 vi invitiamo a circa 50 studenti a pranzo, chi 888 00:40:39,220 --> 00:40:41,190 vorrebbe unirsi a noi, me stesso, e il personale, 889 00:40:41,190 --> 00:40:44,840 ed i nostri amici dell'industria e allumi per parlare di vita nel mondo reale 890 00:40:44,840 --> 00:40:46,670 e al di là gustando un buon pranzo. 891 00:40:46,670 --> 00:40:49,050 Alla hackathon sarà si vede tali immagini 892 00:40:49,050 --> 00:40:53,740 in quanto questi, tra cui un sacco di candy-- e a partire dal 2014, per la prima tempo-- 893 00:40:53,740 --> 00:40:55,096 le verdure. 894 00:40:55,096 --> 00:40:56,960 >> [APPLAUSI] 895 00:40:56,960 --> 00:40:58,358 896 00:40:58,358 --> 00:41:02,710 >> Ma da 05:00, fa la scena di solito guardare un po 'qualcosa di simile. 897 00:41:02,710 --> 00:41:05,330 E poi basta una settimana o più tardi, è la Fiera CS50 898 00:41:05,330 --> 00:41:08,270 alla quale alcuni 2000 plus studenti e del personale e docenti 899 00:41:08,270 --> 00:41:11,910 membri provenienti da tutta campus e attraverso campus di quest'anno 900 00:41:11,910 --> 00:41:15,620 venire a vedere e la gioia nel realizzazioni degli studenti CS50, che 901 00:41:15,620 --> 00:41:16,140 è ora. 902 00:41:16,140 --> 00:41:19,000 >> E in effetti, mentre quest'anno faremo essere invitante e busing chiunque 903 00:41:19,000 --> 00:41:22,460 a a Yale che vorrebbe venire a Cambridge questo Sabato per CS50 Puzzle 904 00:41:22,460 --> 00:41:26,410 Giorno, e faremo la stessa cosa nel mese di dicembre per il CS50 hackathon 905 00:41:26,410 --> 00:41:30,080 in modo che gli studenti di Harvard e Yale partecipiamo simili in entrambi gli eventi. 906 00:41:30,080 --> 00:41:33,630 >> Ci sarà anche tenere fiere CS50 in Cambridge e di New Haven quest'anno 907 00:41:33,630 --> 00:41:36,480 in modo che gli studenti sia su campus e il personale e docenti 908 00:41:36,480 --> 00:41:39,260 può vedere ogni rispettivo realizzazione di campus. 909 00:41:39,260 --> 00:41:41,540 E quelle realizzazioni indurrà tale memoria 910 00:41:41,540 --> 00:41:45,440 come questo e questo e infine questo, in cui tutti voi 911 00:41:45,440 --> 00:41:48,460 uscire dalla classe di indossare un po ' qualcosa in cui si dovesse spera 912 00:41:48,460 --> 00:41:52,680 felice o orgoglioso di dire che ho preso CS50. 913 00:41:52,680 --> 00:41:55,220 >> Ma prima di questo e prima di servire la torta, 914 00:41:55,220 --> 00:41:58,980 abbiamo messo together-- grazie al CS50 di team di produzione e una certa auto 915 00:41:58,980 --> 00:42:03,120 bastone, la sola occasione che usiamo tali cose for-- quando abbiamo mandato 916 00:42:03,120 --> 00:42:05,380 non solo qui a Cambridge ma anche a New Haven 917 00:42:05,380 --> 00:42:08,760 di raccogliere un paio di saluti dalla Il personale del corso e tutte le persone 918 00:42:08,760 --> 00:42:12,640 si possono incontrare sia qui che a New Haven nel corso dei mesi successivi. 919 00:42:12,640 --> 00:42:15,449 >> Mi permetta di introdurre un poco più del personale di CS50. 920 00:42:15,449 --> 00:42:16,990 Mark Zuckerberg: Ha fatto che farlo andare? 921 00:42:16,990 --> 00:42:18,266 Oh, sta andando. 922 00:42:18,266 --> 00:42:20,910 Sta andando. 923 00:42:20,910 --> 00:42:21,570 Ooh. 924 00:42:21,570 --> 00:42:23,170 Yarr! 925 00:42:23,170 --> 00:42:25,350 >> [Riproduzione di musica ANDY Grammer, "Tesoro, sono  BENE"] 926 00:42:25,350 --> 00:42:29,672 927 00:42:29,672 --> 00:42:32,152 >> MARY: Questo è Caitlin. 928 00:42:32,152 --> 00:42:34,515 Questo è Jay, e io sono Maria. 929 00:42:34,515 --> 00:42:35,140 SATO: Ciao, ragazzi. 930 00:42:35,140 --> 00:42:35,640 Sono Sato. 931 00:42:35,640 --> 00:42:36,264 Michael G .: Ciao. 932 00:42:36,264 --> 00:42:37,181 Il mio nome è Michael, G. 933 00:42:37,181 --> 00:42:38,014 DOUG LLOYD: io non sono. 934 00:42:38,014 --> 00:42:38,540 No. 935 00:42:38,540 --> 00:42:39,310 Sono Doug Lloyd. 936 00:42:39,310 --> 00:42:41,757 Non posso credere che ho in mano un selfie bastone al momento. 937 00:42:41,757 --> 00:42:42,340 SPEAKER 4: Hi. 938 00:42:42,340 --> 00:42:42,560 SPEAKER 5: Hi. 939 00:42:42,560 --> 00:42:43,307 SPEAKER 6: Ciao. 940 00:42:43,307 --> 00:42:44,023 SPEAKER 7: Hi. 941 00:42:44,023 --> 00:42:44,648 SPEAKER 8: Hey. 942 00:42:44,648 --> 00:42:46,436 Stiamo appendere fuori a Yale. 943 00:42:46,436 --> 00:42:48,910 Siamo davvero eccitati per questo semestre perché è 944 00:42:48,910 --> 00:42:50,840 la prima volta che viene a Yale. 945 00:42:50,840 --> 00:42:53,012 Sta andando essere impressionante! 946 00:42:53,012 --> 00:42:55,928 >> [RIPRODUZIONE DI BRANI MUSICALI] 947 00:42:55,928 --> 00:43:02,190 948 00:43:02,190 --> 00:43:04,664 >> JACOB SCHERBA: Il mio nome è Jacob Scherba. 949 00:43:04,664 --> 00:43:08,310 Sono entusiasta di insegnare CS50 perché penso 950 00:43:08,310 --> 00:43:11,429 è portare l'informatica a persone e modo accessibile. 951 00:43:11,429 --> 00:43:13,220 SPEAKER 9: Sono davvero eccitato per insegnare CS50 952 00:43:13,220 --> 00:43:17,717 perché ho preso la classe dello scorso anno, ed è uno dei migliori classi. 953 00:43:17,717 --> 00:43:18,425 SPEAKER 10: Sì. 954 00:43:18,425 --> 00:43:20,476 Il mio consiglio è che si dovrebbe prendere CS50. 955 00:43:20,476 --> 00:43:23,350 JACOB SCHERBA: ho scelto perché CS Penso che sia un modo divertente e creativo 956 00:43:23,350 --> 00:43:25,314 per risolvere i problemi in modo analitico. 957 00:43:25,314 --> 00:43:28,480 SPEAKER 11: Ai tempi in cui ero un po ' matricola e ha paura di informatica 958 00:43:28,480 --> 00:43:30,229 e paura di fare ingegneria e roba, 959 00:43:30,229 --> 00:43:34,091 è stato il primo della classe dura ho preso, ed era anche la mia classe preferita mai. 960 00:43:34,091 --> 00:43:36,090 DOUG LLOYD: Questo è il mio nono anno CS50 insegnamento. 961 00:43:36,090 --> 00:43:37,482 Questo mi fa sembrare così vecchio! 962 00:43:37,482 --> 00:43:38,690 C'è sempre qualcosa di nuovo. 963 00:43:38,690 --> 00:43:39,550 C'è sempre qualcosa di eccitante. 964 00:43:39,550 --> 00:43:43,077 C'è sempre nuove sfide che si presentano nuovi studenti, ed è divertente per aiutarli 965 00:43:43,077 --> 00:43:44,910 e di sperimentare quelle sfide con loro 966 00:43:44,910 --> 00:43:45,925 e aiutarli a risolvere i loro problemi. 967 00:43:45,925 --> 00:43:47,955 >> SPEAKER 12: Quando ho imparato a fare CS, 968 00:43:47,955 --> 00:43:49,413 è stato come imparare una super potenza. 969 00:43:49,413 --> 00:43:53,749 E vedere che in altri studenti e per aiutarli attraverso quel processo 970 00:43:53,749 --> 00:43:55,665 è uno dei più Le cose gratificanti che abbia mai. 971 00:43:55,665 --> 00:43:58,706 >> SPEAKER 7: Ho scelto CS perché nel All'inizio ero un concentratore di matematica 972 00:43:58,706 --> 00:44:00,497 e ho preso CS50 e si innamorò di esso. 973 00:44:00,497 --> 00:44:02,455 Ho anche sentito che con CS, ho potuto costruire le cose. 974 00:44:02,455 --> 00:44:04,410 E questo, ho pensato, ero un aspetto davvero cool. 975 00:44:04,410 --> 00:44:08,156 >> SPEAKER 13: Qualche consiglio per la nuova studenti è andare in orario d'ufficio 976 00:44:08,156 --> 00:44:09,573 e uscire con l'impressionante TF. 977 00:44:09,573 --> 00:44:11,906 SPEAKER 14: Avviare il P-set presto, andare in orario d'ufficio, 978 00:44:11,906 --> 00:44:13,457 diventare frends con la TF. 979 00:44:13,457 --> 00:44:14,165 SPEAKER 15: Sì. 980 00:44:14,165 --> 00:44:16,164 Tutto quello che ha detto. 981 00:44:16,164 --> 00:44:17,997 SPEAKER 16: Non essere paura di chiedere aiuto. 982 00:44:17,997 --> 00:44:18,980 SPEAKER 17: Sì. 983 00:44:18,980 --> 00:44:22,052 SPEAKER 18: Avviare il P-tramonta presto. 984 00:44:22,052 --> 00:44:23,760 SPEAKER 19: E 'un grande esperienza sociale. 985 00:44:23,760 --> 00:44:25,112 Fare un sacco di amici in questo modo. 986 00:44:25,112 --> 00:44:26,570 SPEAKER 14: Vai alla sezione E 'divertente. 987 00:44:26,570 --> 00:44:28,050 SPEAKER 11: Voglio dire, andare per esso. 988 00:44:28,050 --> 00:44:28,770 È molto difficile. 989 00:44:28,770 --> 00:44:30,581 Otterrete fuori di esso ciò che si mette in esso, 990 00:44:30,581 --> 00:44:32,580 ma è un davvero divertente classe soprattutto se sei 991 00:44:32,580 --> 00:44:35,496 disposti a mettere il tempo in esso, ma aiuta se si mette il tempo in esso. 992 00:44:35,496 --> 00:44:38,336 Otterrete molto di più fuori di esso seguito. 993 00:44:38,336 --> 00:44:38,960 MIKE: Sono Mike. 994 00:44:38,960 --> 00:44:39,882 CAMILLE: Sono Camille. 995 00:44:39,882 --> 00:44:40,590 Hanya: Sono Hanya. 996 00:44:40,590 --> 00:44:41,310 MATT: Sono Matt. 997 00:44:41,310 --> 00:44:42,140 PETER: Sono Peter. 998 00:44:42,140 --> 00:44:42,620 PHILLIP: Sono Phillip. 999 00:44:42,620 --> 00:44:43,495 Patrick: Sono Patrick. 1000 00:44:43,495 --> 00:44:45,234 ROB BOWDEN: Sono Rob Bowden. 1001 00:44:45,234 --> 00:44:47,150 BRIAN Scassellati: My nome è SCAS, e questo-- 1002 00:44:47,150 --> 00:44:49,958 ALL: --is CS50. 1003 00:44:49,958 --> 00:44:50,806 SPEAKER 20: a Yale. 1004 00:44:50,806 --> 00:44:51,639 SPEAKER 21: a Yale. 1005 00:44:51,639 --> 00:44:52,840 [Ride] 1006 00:44:52,840 --> 00:44:54,270 DAVID MALAN: Questo è tutto per CS50. 1007 00:44:54,270 --> 00:44:59,000 Ci vediamo da Yale su Venerdì, Puzzle Giorno Sabato. 1008 00:44:59,000 --> 00:45:00,475 La torta è ora servito. 1009 00:45:00,475 --> 00:45:01,640 Questo è CS50. 1010 00:45:01,640 --> 00:45:05,314 1011 00:45:05,314 --> 00:45:10,992 >> [RIPRODUZIONE DI BRANI MUSICALI] 1012 00:45:10,992 --> 00:47:00,434