1 00:00:00,000 --> 00:00:00,479 2 00:00:00,479 --> 00:00:10,830 >> [REPRODUCCIÓN DE MÚSICA] 3 00:00:10,830 --> 00:00:12,080 [MÚSICA - ROSSINI, "RANZ DES VACHES "de Guillermo Tell] 4 00:00:12,080 --> 00:00:24,222 5 00:00:24,222 --> 00:00:25,472 >> [MÚSICA - EL GOLPE EN INGLÉS ", MARZO DE LOS JEFES GIRATORIOS "] 6 00:00:25,472 --> 00:02:24,538 7 00:02:24,538 --> 00:02:31,510 >> [Aplausos y ovaciones] 8 00:02:31,510 --> 00:02:33,520 >> DAVID MALAN: Así que esto es CS50. 9 00:02:33,520 --> 00:02:34,730 Mi nombre es David Malan. 10 00:02:34,730 --> 00:02:39,250 Y el 73% de los que no tienen experiencia previa con la informática, 11 00:02:39,250 --> 00:02:41,300 al contrario de lo que se podría pensar. 12 00:02:41,300 --> 00:02:45,290 Así que hoy, pensamos en hacer mella por lo que la falta de familiaridad, sino también 13 00:02:45,290 --> 00:02:48,970 le dará un sentido de, para aquellos de ustedes con más comodidad, que las direcciones 14 00:02:48,970 --> 00:02:50,550 se puede ir en este semestre. 15 00:02:50,550 --> 00:02:51,890 >> Así que vamos a empezar con esto. 16 00:02:51,890 --> 00:02:55,490 Realmente no tengo ni idea de lo que hay dentro de una computadora, a pesar de que, como tú, 17 00:02:55,490 --> 00:02:56,780 utilizar todos los días. 18 00:02:56,780 --> 00:03:00,000 Pero es una especie de caja, y no hay no muchas entradas en él. 19 00:03:00,000 --> 00:03:01,350 Mínimamente, hay, ¿qué? 20 00:03:01,350 --> 00:03:03,120 Probablemente un cable de alimentación. 21 00:03:03,120 --> 00:03:06,640 >> Y, de hecho con este ingrediente, electricidad, parece que somos capaces de 22 00:03:06,640 --> 00:03:09,490 haciendo un poco en estos días. 23 00:03:09,490 --> 00:03:12,130 Pero al final del día, nos tienen que representar las cosas 24 00:03:12,130 --> 00:03:12,860 que nos preocupamos. 25 00:03:12,860 --> 00:03:15,240 Tenemos que representar la información en alguna forma. 26 00:03:15,240 --> 00:03:18,365 Y usted es probablemente por lo menos vagamente familiarizados con la idea de binario o 27 00:03:18,365 --> 00:03:21,370 bits de un modo u otro, los ordenadores reducido a ceros y unos. 28 00:03:21,370 --> 00:03:26,320 Pero, ¿podemos aceptar eso y, al menos, poner un poco de luz a eso? 29 00:03:26,320 --> 00:03:28,880 >> Así que tengo estos pequeños lámparas de escritorio aquí. 30 00:03:28,880 --> 00:03:30,450 Tengo una toma de corriente aquí. 31 00:03:30,450 --> 00:03:33,930 Y voy a proponer que en el interior de mi equipo es de al menos uno de 32 00:03:33,930 --> 00:03:37,300 estas cosas, algo capaz de ser encendido o apagado. 33 00:03:37,300 --> 00:03:40,200 En este caso, es de hecho una lámpara de escritorio, pero en el nivel más bajo, que es algo 34 00:03:40,200 --> 00:03:41,500 llamado un transistor. 35 00:03:41,500 --> 00:03:44,730 >> Pero en nuestro mundo, es una lámpara de escritorio, por lo que Voy a seguir adelante y conectar este 36 00:03:44,730 --> 00:03:47,990 en mi electricidad aquí. 37 00:03:47,990 --> 00:03:52,970 Y afirmo que el uso de este sencillo, dispositivo simple, este interruptor simple, 38 00:03:52,970 --> 00:03:54,850 puede representar la información. 39 00:03:54,850 --> 00:03:58,090 Por ejemplo, ahora mismo, estoy que representa nada, ¿verdad? 40 00:03:58,090 --> 00:04:01,820 Estoy representando lo que yo llamo 0 o falso, lo contrario de algo 41 00:04:01,820 --> 00:04:03,130 estar realmente presente. 42 00:04:03,130 --> 00:04:07,050 Pero si simplemente enciendo el interruptor, ahora me he representado un 1. 43 00:04:07,050 --> 00:04:10,720 Así que con este simple pedazo de memoria, si se quiere, que puede representar 44 00:04:10,720 --> 00:04:11,450 información. 45 00:04:11,450 --> 00:04:14,350 >> Ahora, por desgracia, mi equipo no se puede hacer todo lo que mucho. 46 00:04:14,350 --> 00:04:17,430 Sólo puede representar dos valores en todo el mundo - 47 00:04:17,430 --> 00:04:18,620 0 o 1. 48 00:04:18,620 --> 00:04:21,839 Pero lo que es una solución obvia, ahora, si queremos ampliar nuestro equipo de 49 00:04:21,839 --> 00:04:25,120 memoria y representan más que sólo 0 y 1? 50 00:04:25,120 --> 00:04:27,060 >> Bueno, tomemos otro ejemplo de bits. 51 00:04:27,060 --> 00:04:30,260 Vamos a tomar otro interruptor, otro transistor, sin embargo que le gustaría 52 00:04:30,260 --> 00:04:31,130 pensar en ello. 53 00:04:31,130 --> 00:04:34,170 Permítanme Vaya y conecte este en mi equipo también. 54 00:04:34,170 --> 00:04:38,270 Y voy a reclamar, ahora, que por usando un poco más de electricidad y 55 00:04:38,270 --> 00:04:42,290 volviéndose más de estos interruptores y fuera, puedo representar a más tales 56 00:04:42,290 --> 00:04:43,020 información. 57 00:04:43,020 --> 00:04:44,660 >> Así que ahora mismo, esto es 1. 58 00:04:44,660 --> 00:04:48,120 Si quiero representar ahora 2, lo que podía hacer esto. 59 00:04:48,120 --> 00:04:51,510 Pero por lo general, de convenciones, como veremos finalmente ver, se que yo haga esto. 60 00:04:51,510 --> 00:04:55,260 Así que esto es 0, esto es 1. 61 00:04:55,260 --> 00:04:56,720 Esto sería 2. 62 00:04:56,720 --> 00:04:59,920 Y como es lógico, esto sería 3. 63 00:04:59,920 --> 00:05:02,610 >> Así de esta manera, todavía, puede contamos hasta aún más? 64 00:05:02,610 --> 00:05:06,500 Si consigo un tercer bit, un tercer interruptor, ¿cuál es el número más alto que puedo ahora 65 00:05:06,500 --> 00:05:09,720 contar hasta desde 0? 66 00:05:09,720 --> 00:05:12,020 Así que 7 si estoy empezando en 0, ¿no? 67 00:05:12,020 --> 00:05:15,980 Porque si enciendo esta luz encendida y realmente conecte esta tercera y última 68 00:05:15,980 --> 00:05:20,090 luz en mi toma de corriente aquí, entonces no tengo la capacidad de representar 69 00:05:20,090 --> 00:05:24,930 cualquiera de dos valores aquí, dos valores aquí, dos valores aquí - 70 00:05:24,930 --> 00:05:32,610 y por lo que puedo representar a 2 veces 2 veces 2, u ocho valores posibles. 71 00:05:32,610 --> 00:05:36,340 Y si me pongo a la contabilidad a 0, por lo que que es 0, 1, 2, 3, 4, 5, 6, 7. 72 00:05:36,340 --> 00:05:37,480 >> Así que este binario. 73 00:05:37,480 --> 00:05:39,420 Realmente es tan simple como eso. 74 00:05:39,420 --> 00:05:41,930 Y yo diría que esto es en realidad muy familiar para la mayoría 75 00:05:41,930 --> 00:05:43,180 todos en esta sala. 76 00:05:43,180 --> 00:05:45,710 Déjenme seguir adelante y abrir un pequeño editor de texto aquí. 77 00:05:45,710 --> 00:05:49,040 >> Y se puede recordar de la escuela primaria que teníamos cosas como los cientos 78 00:05:49,040 --> 00:05:51,970 lugar, el lugar de las decenas, y los colocan. 79 00:05:51,970 --> 00:05:55,040 Y recordar que si usted tenía alguna decimal número, como algo al azar 80 00:05:55,040 --> 00:05:59,470 como 123, lo haría esencialmente escribir que en forma 81 00:05:59,470 --> 00:06:00,450 de estos tres columnas. 82 00:06:00,450 --> 00:06:04,070 ¿Y por qué es 1, 2, 3 lo que conocemos como 123? 83 00:06:04,070 --> 00:06:11,220 Pues bien, en la columna de la izquierda, tenemos uno 100 más dos 10, por lo que es 120, 84 00:06:11,220 --> 00:06:14,250 más tres 1s, así que eso es 123. 85 00:06:14,250 --> 00:06:17,990 >> Ahora bien, este mundo que nos iluminamos es exactamente el mismo que 86 00:06:17,990 --> 00:06:21,150 usted ha estado familiarizado con los años, excepto que ahora, nuestras columnas 87 00:06:21,150 --> 00:06:22,060 no son potencias de 10. 88 00:06:22,060 --> 00:06:23,780 Sólo son potencias de 2. 89 00:06:23,780 --> 00:06:27,830 Así, mientras que es el lugar de las unidades, esta va a ser el lugar de dos en dos, esto es 90 00:06:27,830 --> 00:06:29,540 va a ser el lugar de cuatro patas. 91 00:06:29,540 --> 00:06:33,260 >> Y porque yo sólo estoy usando el más simple de mecanismos para cambiar las cosas 92 00:06:33,260 --> 00:06:37,100 dentro y fuera - la electricidad fluye o la electricidad no fluye - 93 00:06:37,100 --> 00:06:40,880 No acabo de tener la misma expresión oscilar como 0 al nueve. 94 00:06:40,880 --> 00:06:43,270 Vamos a mantenerlo simple estupendo en este mundo de las computadoras. 95 00:06:43,270 --> 00:06:45,060 Sólo tengo 0 o 1 - 96 00:06:45,060 --> 00:06:47,890 apagado o encendido, falso o verdadero. 97 00:06:47,890 --> 00:06:52,610 >> Y por eso lo que estoy representando en este momento es 1, 1, 1, porque cada uno de estos 98 00:06:52,610 --> 00:06:54,000 las luces se iluminan. 99 00:06:54,000 --> 00:06:59,600 Bueno, eso me da una 4 más uno 2, por lo que eso es 6, más un 1, y eso es 7. 100 00:06:59,600 --> 00:07:03,450 Y ergo hace esta secuencia de tres bits representan el número 7. 101 00:07:03,450 --> 00:07:06,330 >> Así que todo este tiempo, en el interior de su ordenador, haber sido cualquier número de 102 00:07:06,330 --> 00:07:08,090 transistores, cualquier número de bits. 103 00:07:08,090 --> 00:07:10,380 Pero al final del día, nos puede representar la información 104 00:07:10,380 --> 00:07:12,560 tan simple como eso. 105 00:07:12,560 --> 00:07:16,770 Ahora, por desgracia, sólo hemos contado hasta 7 en CS50 hasta ahora, pero 106 00:07:16,770 --> 00:07:18,550 espero que podamos hacer un poco mejor que eso. 107 00:07:18,550 --> 00:07:19,550 Y de hecho lo que podamos. 108 00:07:19,550 --> 00:07:23,570 >> Supongamos que tenemos como seres humanos sólo arbitrariamente decidimos que vamos 109 00:07:23,570 --> 00:07:28,750 para asociar números 1 y 2, 3, 4, 5, 6, 7, con letras específicas de 110 00:07:28,750 --> 00:07:29,410 el alfabeto. 111 00:07:29,410 --> 00:07:32,350 Y por razones históricas, que voy a empiezo algo arbitraria, pero estoy 112 00:07:32,350 --> 00:07:36,880 va a decir, los seres humanos, vamos a decidirá como una norma, a nivel mundial, que 113 00:07:36,880 --> 00:07:43,200 65 representa el número de la letra A. 66 representarán B. Punto, punto, punto. 114 00:07:43,200 --> 00:07:45,140 90 representará la letra Z. 115 00:07:45,140 --> 00:07:48,000 >> Y supongamos que, si realmente nos ponemos un poco de pensamiento en él, podríamos llegar 116 00:07:48,000 --> 00:07:50,860 con los números de los signos de exclamación y minúsculas, y de hecho, 117 00:07:50,860 --> 00:07:52,710 otras personas han hecho por nosotros. 118 00:07:52,710 --> 00:07:56,410 Así que ahora teníamos los bits con los que podemos representar los números, los números con los que 119 00:07:56,410 --> 00:08:00,130 podemos representar las letras, y con letras pueden ahora empezar a componer 120 00:08:00,130 --> 00:08:02,650 correos electrónicos y caracteres de imprenta en la pantalla. 121 00:08:02,650 --> 00:08:05,850 >> Así que permítanme invito, si pudiera, ocho valientes voluntarios - 122 00:08:05,850 --> 00:08:09,200 que no les importa que aparece no sólo en cámara, pero en el Internet - 123 00:08:09,200 --> 00:08:13,130 venir aquí y representan ocho tales bits, en lugar de estos tres. 124 00:08:13,130 --> 00:08:14,380 Así que ¿qué hay de una, dos? 125 00:08:14,380 --> 00:08:16,290 ¿Qué tal tres? 126 00:08:16,290 --> 00:08:20,230 ¿Qué hay de las cuatro de la luz azul, cinco a la final? 127 00:08:20,230 --> 00:08:21,250 Acerca alguien por aquí? 128 00:08:21,250 --> 00:08:25,320 Seis delante, siete en el frente, y ocho en el frente, también. 129 00:08:25,320 --> 00:08:29,050 >> Así que sólo por lo que pasó a venir preparados con un montón de trozos de papel. 130 00:08:29,050 --> 00:08:34,150 Y en estos pedazos de papel son números que representan lo que las columnas 131 00:08:34,150 --> 00:08:35,809 ustedes van a representar. 132 00:08:35,809 --> 00:08:36,740 Así que usted será - ¿cómo te llamas? 133 00:08:36,740 --> 00:08:37,570 >> ESTUDIANTE: Anna Leah. 134 00:08:37,570 --> 00:08:40,370 >> DAVID MALAN: Anna Leah, que será la columna de la 128s. 135 00:08:40,370 --> 00:08:41,059 Usted es? 136 00:08:41,059 --> 00:08:41,510 >> ESTUDIANTE: Chris. 137 00:08:41,510 --> 00:08:43,620 >> DAVID MALAN: Chris hará ser la columna de la 64s. 138 00:08:43,620 --> 00:08:44,070 Usted es? 139 00:08:44,070 --> 00:08:44,540 >> ESTUDIANTE: Dan. 140 00:08:44,540 --> 00:08:46,970 >> DAVID MALAN: Dan se ser la columna de la 32s. 141 00:08:46,970 --> 00:08:47,470 >> ESTUDIANTE: Pramit. 142 00:08:47,470 --> 00:08:49,430 >> DAVID MALAN: Pramit se ser la columna de la 16S. 143 00:08:49,430 --> 00:08:50,290 >> ESTUDIANTE: Lillian. 144 00:08:50,290 --> 00:08:51,904 >> DAVID MALAN: Lillian serán los 8s. 145 00:08:51,904 --> 00:08:52,768 >> ESTUDIANTE: Jill. 146 00:08:52,768 --> 00:08:55,025 >> DAVID MALAN: Jill se ser la columna 4s. 147 00:08:55,025 --> 00:08:55,400 >> ESTUDIANTE: María. 148 00:08:55,400 --> 00:08:57,000 >> DAVID MALAN: María será el 2s, y? 149 00:08:57,000 --> 00:08:57,470 >> ESTUDIANTE: David. 150 00:08:57,470 --> 00:08:59,220 >> DAVID MALAN: David ser la columna 1s. 151 00:08:59,220 --> 00:09:02,030 Así que si ustedes pudieran pisar un poco hacia adelante para que todos puedan verlo. 152 00:09:02,030 --> 00:09:05,370 Lo que ustedes no ven es que en el parte de atrás de estas hojas de papel es un 153 00:09:05,370 --> 00:09:09,760 pequeña hoja de trucos que está a punto de instruir a estos ocho bits a cualquiera 154 00:09:09,760 --> 00:09:12,380 levantar la mano o no levanten la mano. 155 00:09:12,380 --> 00:09:14,100 Si su mano sube, son que representa un 1. 156 00:09:14,100 --> 00:09:17,120 Si la mano se queda abajo, son que representa un 0. 157 00:09:17,120 --> 00:09:21,410 >> Mientras tanto, el público debe ser capaz de averiguar, a partir de este 158 00:09:21,410 --> 00:09:26,490 cartografía, ¿qué palabra de tres letras éstos la gente está a punto de explicar. 159 00:09:26,490 --> 00:09:29,700 Así que en un momento, vas a leer la primera línea de la parte posterior de 160 00:09:29,700 --> 00:09:32,880 su hoja de trucos, y ya está bien va a subir o no levantar la mano. 161 00:09:32,880 --> 00:09:35,710 Si usted es un 1, se eleva, si eres un 0, te quedas ahí 162 00:09:35,710 --> 00:09:38,594 torpemente, como si nada. 163 00:09:38,594 --> 00:09:40,386 Vaya. 164 00:09:40,386 --> 00:09:43,945 ¿Qué número, en primer lugar, representan a estos tipos? 165 00:09:43,945 --> 00:09:47,140 166 00:09:47,140 --> 00:09:48,860 >> 66. 167 00:09:48,860 --> 00:09:49,560 66, ¿verdad? 168 00:09:49,560 --> 00:09:52,400 Contamos con un 1 en la columna de la 64s, un 1 en la columna de 2s. 169 00:09:52,400 --> 00:09:56,340 Eso me da 66, por lo que parece que se representa B. Así 170 00:09:56,340 --> 00:09:57,075 que ustedes han escrito - 171 00:09:57,075 --> 00:09:58,300 OK, eso es suficiente. 172 00:09:58,300 --> 00:09:59,430 B. 173 00:09:59,430 --> 00:10:01,610 >> Así que ahora vamos a pasar a nuestra segunda carta. 174 00:10:01,610 --> 00:10:03,530 Vaya. 175 00:10:03,530 --> 00:10:06,860 ¿Quién es más rápido para las matemáticas aquí? 176 00:10:06,860 --> 00:10:07,750 Así 79. 177 00:10:07,750 --> 00:10:11,840 Una vez más, si sumamos todas las columnas en el que hay un 1, en la actualidad, sólo 178 00:10:11,840 --> 00:10:14,840 como lo hicimos antes con el más simple de ejemplos de 7, que ahora 179 00:10:14,840 --> 00:10:16,140 obtener el número 79. 180 00:10:16,140 --> 00:10:19,910 Que de acuerdo a nuestra cartografía es el letra O. Así que ya casi llegamos. 181 00:10:19,910 --> 00:10:22,590 B, O. Y, por último, se van. 182 00:10:22,590 --> 00:10:26,420 183 00:10:26,420 --> 00:10:30,120 >> ¿Qué están representando ahora? 184 00:10:30,120 --> 00:10:31,370 Menos consenso. 185 00:10:31,370 --> 00:10:34,660 186 00:10:34,660 --> 00:10:36,460 Eso es sólo un soplo absoluta. 187 00:10:36,460 --> 00:10:40,090 Sí, es de hecho 87. 188 00:10:40,090 --> 00:10:40,490 Bueno. 189 00:10:40,490 --> 00:10:44,480 >> Así que si ahora mapa que volver a - vamos a empezar a llamar a nuestra tabla ASCII, 190 00:10:44,480 --> 00:10:46,450 Código Estándar Americano para El intercambio de información. 191 00:10:46,450 --> 00:10:47,700 Eso nos da la carta - 192 00:10:47,700 --> 00:10:51,260 193 00:10:51,260 --> 00:10:54,810 no "bo", pero "el arco." Y eso es una perfecta cue para ustedes para hacer una reverencia 194 00:10:54,810 --> 00:10:56,100 y la cabeza en la parte posterior. 195 00:10:56,100 --> 00:10:56,980 Muchas gracias. 196 00:10:56,980 --> 00:10:57,886 >> [Aplausos] 197 00:10:57,886 --> 00:10:59,136 >> DAVID MALAN: Usted puede mantenerlos. 198 00:10:59,136 --> 00:11:01,850 199 00:11:01,850 --> 00:11:05,942 Aunque en realidad, lo haría cualquier persona gustaría una lámpara de escritorio, también? 200 00:11:05,942 --> 00:11:07,300 >> [PITIDO DE AUDIENCIA] 201 00:11:07,300 --> 00:11:08,390 >> DAVID MALAN: Lámpara de escritorio? 202 00:11:08,390 --> 00:11:10,850 >> [Risas] 203 00:11:10,850 --> 00:11:11,860 >> DAVID MALAN: ¿En serio? 204 00:11:11,860 --> 00:11:13,230 Lámparas de escritorio para todos? 205 00:11:13,230 --> 00:11:14,310 Está bien. 206 00:11:14,310 --> 00:11:20,990 Así a partir de la muy simple de principios, hemos ahora no sólo cuentan 207 00:11:20,990 --> 00:11:24,750 desde 0 hasta el final hasta a 7, hemos asumido que simplemente lanzando más 208 00:11:24,750 --> 00:11:28,080 bits o más luces o más transistores a este problema, se puede 209 00:11:28,080 --> 00:11:32,680 representar los números cada vez más grandes, y ergo, rangos cada vez más grandes de 210 00:11:32,680 --> 00:11:33,780 alfabetos, como el Inglés. 211 00:11:33,780 --> 00:11:37,770 Y así vamos a echar en la fe para hoy que de igual forma podríamos empezar a 212 00:11:37,770 --> 00:11:42,220 representar gráficos y de vídeo y cualquier número de otros medios de comunicación con la que nos estamos 213 00:11:42,220 --> 00:11:43,610 familiar hoy en día. 214 00:11:43,610 --> 00:11:49,240 >> Así que esto es CS50, y en esta clase junto de ustedes son, de nuevo, muy muchos 215 00:11:49,240 --> 00:11:53,050 compañeros de clase que tienen tan poco experiencia que tú. 216 00:11:53,050 --> 00:11:57,730 Y menciono esto sólo porque bastante a menudo, incluyendo tan recientemente como uno de 217 00:11:57,730 --> 00:12:01,860 los eventos de primer año y asesoramiento en estudiante de segundo año de la primavera pasada asesoramiento 218 00:12:01,860 --> 00:12:06,420 caso, a menudo oímos estudiantes renuncian cuando sube a la mesa de CS, bueno, 219 00:12:06,420 --> 00:12:10,070 He estado pensando en tomar este clase de introducción, pero no soy realmente un 220 00:12:10,070 --> 00:12:11,120 persona ordenador. 221 00:12:11,120 --> 00:12:13,220 O bien, pero todo el mundo sin duda sabe más que yo. 222 00:12:13,220 --> 00:12:17,340 Y puse esto en el tipo de letra más grande posible, para transmitir este mensaje que 223 00:12:17,340 --> 00:12:18,730 eso no es de hecho el caso. 224 00:12:18,730 --> 00:12:21,100 >> Y si usted se pregunta, en caso de Yo, de hecho, estar aquí? 225 00:12:21,100 --> 00:12:25,950 Darse cuenta de que no sólo es de este curso título Introducción a la Informática 226 00:12:25,950 --> 00:12:31,740 Ciencia, es Introducción a la Informática Ciencia I. Así que hay de hecho 227 00:12:31,740 --> 00:12:33,170 un segundo dicha introducción. 228 00:12:33,170 --> 00:12:35,390 Así que usted no es, de hecho, en el lugar equivocado. 229 00:12:35,390 --> 00:12:39,000 Y entre los objetivos que tengo para hoy son para disipar cualquier tipo de duda que 230 00:12:39,000 --> 00:12:42,430 podría tener, sino también para pintar un imagen de lo que está reservado para 231 00:12:42,430 --> 00:12:45,720 estudiantes menos y más cómodas por igual en este curso. 232 00:12:45,720 --> 00:12:49,320 >> Pero primero, una palabra en uno de los folletos que tiene hoy en día, entre los que 233 00:12:49,320 --> 00:12:50,780 hay una serie de preguntas frecuentes. 234 00:12:50,780 --> 00:12:54,290 Ha sido una visión de la nuestra desde hace algún tiempo ahora introducir una nueva clasificación 235 00:12:54,290 --> 00:12:57,010 opción en este curso - a saber, SAT / UNSAT. 236 00:12:57,010 --> 00:13:01,930 Filosóficamente para mí, es mucho, mucho, mucho más importante que el 237 00:13:01,930 --> 00:13:05,050 estudiantes en esta clase se comprometen con la materiales, ser impugnada por el 238 00:13:05,050 --> 00:13:09,800 materiales, y se preocupan mucho, mucho menos sobre la mecánica de las puntuaciones reales 239 00:13:09,800 --> 00:13:12,590 y las calificaciones con letras en el semestre de terminar, pero realmente abrazar la 240 00:13:12,590 --> 00:13:13,970 curso y su material. 241 00:13:13,970 --> 00:13:18,140 Y en realidad esto se siente, más en general, por lo que es interesante para ellos, para 242 00:13:18,140 --> 00:13:21,390 sentirse desafiado y recompensado, pero sin miedo al fracaso. 243 00:13:21,390 --> 00:13:25,030 >> Y, de hecho, esto también es un recurrente tema en este y otros introductoria 244 00:13:25,030 --> 00:13:28,680 cursos en otros campos, que tiene este trepidación cuando se trata de 245 00:13:28,680 --> 00:13:31,040 frotando los dedos de los pies en aguas desconocidas. 246 00:13:31,040 --> 00:13:34,880 Yo mismo, en el año 1995, era un estudiante de primer año. 247 00:13:34,880 --> 00:13:37,990 Yo estaba muy concentrado en ser un concentrador Gov aquí. 248 00:13:37,990 --> 00:13:41,060 Y sin embargo, yo siempre había crecido con un poco de un interés en la informática. 249 00:13:41,060 --> 00:13:42,180 Siempre tuve curiosidad. 250 00:13:42,180 --> 00:13:47,610 >> Pero en aquel entonces, incluso, tuve miedo de incluso de poner un pie en el CS50, tanto 251 00:13:47,610 --> 00:13:49,420 de manera que ni siquiera Shop es estudiante de primer año año. 252 00:13:49,420 --> 00:13:53,460 Y la única razón por la que puse un pie en la año sophomore puerta era porque 253 00:13:53,460 --> 00:13:55,340 se le permitió tomarla pasa / falla. 254 00:13:55,340 --> 00:13:58,920 Pero incluso pasa / no pasa requería que tengo el valor suficiente para hacer una cita 255 00:13:58,920 --> 00:14:01,970 con el profesor Kernehan en el momento, traer esta gran hoja de papel, y pedir 256 00:14:01,970 --> 00:14:04,470 él por su firma y su permiso para explorar 257 00:14:04,470 --> 00:14:05,700 estas aguas desconocidas. 258 00:14:05,700 --> 00:14:09,030 >> Y no ha ayudado en los últimos años que al hacer esto en CS50, cuando 259 00:14:09,030 --> 00:14:12,500 antes se pasa / falla, de manera similar lo haría decenas o cientos de sus compañeros de clase 260 00:14:12,500 --> 00:14:15,970 tener que llegar, Dios no lo permita, en el frente a Sanders con este formulario, que 261 00:14:15,970 --> 00:14:19,520 en algunas mentes representa una incapacidad, Me atrevo a decir, para llevar a cabo 262 00:14:19,520 --> 00:14:20,800 son nivel de sus compañeros. 263 00:14:20,800 --> 00:14:23,410 Lo cual es ridículo, pero creo hay esa mentalidad. 264 00:14:23,410 --> 00:14:27,210 Y nunca ha habido en esta cultura de SAT / UNSAT o pasa / falla más 265 00:14:27,210 --> 00:14:30,610 Generalmente, en este curso, o en realidad en este campus. 266 00:14:30,610 --> 00:14:32,310 >> Así que este año hemos cambiado eso. 267 00:14:32,310 --> 00:14:35,630 Me gustaría ser la mitad de éxtasis de esta clase o más terminado 268 00:14:35,630 --> 00:14:38,700 ocupando CS50 SAT / UNSAT. 269 00:14:38,700 --> 00:14:42,130 En el plazo de un año, que sería maravilloso si casi todo el mundo es. 270 00:14:42,130 --> 00:14:44,410 A partir de entonces tal vez vamos a trabajar en las calificaciones con letras en Harvard 271 00:14:44,410 --> 00:14:45,480 Colegio en general. 272 00:14:45,480 --> 00:14:48,900 Pero por ahora, vamos a hacer esto dentro de nuestra propia esfera, y lo haría de buena gana 273 00:14:48,900 --> 00:14:53,400 Le recomendamos que revise esas preguntas frecuentes y hacer preguntas como mejor le parezca, por lo que 274 00:14:53,400 --> 00:14:58,000 esperamos que, a diferencia de mí, ¿no es bastante tener ese mismo factor de miedo cuando 275 00:14:58,000 --> 00:15:01,040 explorar lo que probablemente un lugar desconocido. 276 00:15:01,040 --> 00:15:02,786 >> Entonces, ¿qué es CS50? 277 00:15:02,786 --> 00:15:06,150 Es una introducción a la empresas intelectuales de equipo 278 00:15:06,150 --> 00:15:07,700 la ciencia y el arte de la programación. 279 00:15:07,700 --> 00:15:08,770 Pero, ¿qué significa esto realmente? 280 00:15:08,770 --> 00:15:12,510 >> Bueno, hasta ahora, hemos hablado muy brevemente sobre representación de la información. 281 00:15:12,510 --> 00:15:15,070 Pero supongamos que en realidad queremos hacer algo con él. 282 00:15:15,070 --> 00:15:17,890 Tenemos que introducir la noción de lo que vamos a llamar a un algoritmo. 283 00:15:17,890 --> 00:15:21,540 Un algoritmo es un procedimiento, un proceso, un conjunto de instrucciones para 284 00:15:21,540 --> 00:15:22,780 hacer algo. 285 00:15:22,780 --> 00:15:25,620 >> Y un algoritmo puede ser algo super simple. 286 00:15:25,620 --> 00:15:28,660 Por ejemplo, un ejemplo con la que algunos de que podría estar familiarizado es este 287 00:15:28,660 --> 00:15:29,350 cosa aquí. 288 00:15:29,350 --> 00:15:32,510 Así que este libro aquí es cada vez más anticuado, pero una vez en un tiempo, 289 00:15:32,510 --> 00:15:34,720 contiene todo un montón de nombres y números de teléfono. 290 00:15:34,720 --> 00:15:37,710 Y de hecho, si quería encontrar alguien en este libro de teléfono - 291 00:15:37,710 --> 00:15:39,800 por ejemplo, alguien llamado Mike Smith - 292 00:15:39,800 --> 00:15:43,810 Que pude encontrar Mike Smith en cualquier número maneras de bastante sencillo. 293 00:15:43,810 --> 00:15:47,700 Podría empezar por el principio y pasar a la página 1, no existe. 294 00:15:47,700 --> 00:15:49,240 Página 2, no existe. 295 00:15:49,240 --> 00:15:49,960 Page 3. 296 00:15:49,960 --> 00:15:53,430 ¿Es ese algoritmo, es que proceso, ¿correcto? 297 00:15:53,430 --> 00:15:54,620 >> Por lo que es correcto, ¿verdad? 298 00:15:54,620 --> 00:15:58,070 Soy una especie de idiota por haberlo hecho en de esa manera, pero con el tiempo lo haré 299 00:15:58,070 --> 00:16:02,670 encontrar el apellido S, y espero que Mike es en esa sección, y me convertiré 300 00:16:02,670 --> 00:16:04,100 hecho con mi algoritmo. 301 00:16:04,100 --> 00:16:05,440 Pero seguro que no es intuitiva. 302 00:16:05,440 --> 00:16:08,020 La mayoría de cada ser humano razonable en esta habitación no habría hecho eso. 303 00:16:08,020 --> 00:16:10,180 ¿Qué habría hecho usted? 304 00:16:10,180 --> 00:16:11,480 >> Hubieras ido directamente a la mitad, ¿no? 305 00:16:11,480 --> 00:16:12,000 Aproximadamente a la mitad. 306 00:16:12,000 --> 00:16:16,310 Y te das cuenta, oh, se trata de la Sra. Así que Mike Smith, el apellido es Smith, 307 00:16:16,310 --> 00:16:19,050 no es, claramente, a continuación, en el dejado a la mitad del libro. 308 00:16:19,050 --> 00:16:21,040 Él debe ser hacia el S de la razón. 309 00:16:21,040 --> 00:16:24,090 Y en este punto, aunque la mayoría de nosotros no haga esto en la realidad, podemos 310 00:16:24,090 --> 00:16:27,125 literalmente, romper este problema a la mitad. 311 00:16:27,125 --> 00:16:27,640 >> [Vítores y aplausos] 312 00:16:27,640 --> 00:16:28,950 >> DAVID MALAN: Gracias. 313 00:16:28,950 --> 00:16:30,150 >> [Vítores y aplausos] 314 00:16:30,150 --> 00:16:34,660 >> DAVID MALAN: Usted puede, literalmente, romper este problema a la mitad, y me dejó con, 315 00:16:34,660 --> 00:16:36,120 literalmente, una media de un problema tan grande. 316 00:16:36,120 --> 00:16:39,750 Así que si este libro de teléfono era - y es Probablemente era - unas 1.000 páginas, ahora 317 00:16:39,750 --> 00:16:40,840 es sólo 500. 318 00:16:40,840 --> 00:16:44,710 Si hago esto otra vez y me doy cuenta, oh, maldita sea, fui demasiado lejos, yo estoy en el Ts 319 00:16:44,710 --> 00:16:46,480 sección, puede de manera similar - 320 00:16:46,480 --> 00:16:48,030 en sentido figurado o literalmente - 321 00:16:48,030 --> 00:16:50,260 copiar la guía telefónica - en realidad era mucho más fácil que el tiempo. 322 00:16:50,260 --> 00:16:53,610 Puedo copiar literalmente la guía telefónica en medio, y me dejó ahora con 323 00:16:53,610 --> 00:16:55,186 no 1000, no 500 - 324 00:16:55,186 --> 00:16:56,680 250 páginas. 325 00:16:56,680 --> 00:17:00,210 Y puedo ir a 125, y la mitad de eso, y la mitad de eso, y la mitad de eso, 326 00:17:00,210 --> 00:17:04,760 hasta que finalmente me quedaré con sólo una sola página. 327 00:17:04,760 --> 00:17:06,430 >> [Risas] 328 00:17:06,430 --> 00:17:07,589 >> DAVID MALAN: Ese es el parte yo fallo en. 329 00:17:07,589 --> 00:17:10,400 Una sola página en la que Mike es de esperar. 330 00:17:10,400 --> 00:17:14,630 Ahora los diferentes algoritmos pueden ser especie de o evaluadas en 331 00:17:14,630 --> 00:17:15,270 diferentes maneras. 332 00:17:15,270 --> 00:17:17,300 La primera fue muy lineal, ¿no? 333 00:17:17,300 --> 00:17:18,500 Gire la página, busque Mike. 334 00:17:18,500 --> 00:17:19,630 Gire la página, busque Mike. 335 00:17:19,630 --> 00:17:20,560 Es muy lineal. 336 00:17:20,560 --> 00:17:23,339 Si hay una página más en el teléfono libro, que probablemente va a llevarme 337 00:17:23,339 --> 00:17:27,380 un segundo más, una unidad más de tiempo, sin embargo estamos tiempo de cálculo. 338 00:17:27,380 --> 00:17:32,470 >> Así que podría dibujar como esta esta línea aquí, mediante el cual como el tamaño de la 339 00:17:32,470 --> 00:17:34,700 problema aumenta de izquierda a derecha - 340 00:17:34,700 --> 00:17:37,480 agenda telefónica se hace más pequeño al más grande - 341 00:17:37,480 --> 00:17:41,080 y el tiempo se va a aumentar en el eje vertical, la más grande 342 00:17:41,080 --> 00:17:42,030 la guía telefónica es. 343 00:17:42,030 --> 00:17:46,180 Así que n es una variable general de que los informáticos utilizan para representar 344 00:17:46,180 --> 00:17:48,210 algún valor, algún número. 345 00:17:48,210 --> 00:17:50,740 Así que n va a aumentar de forma lineal. 346 00:17:50,740 --> 00:17:53,040 Doble del tamaño de la guía telefónica, es me va a llevar el doble de 347 00:17:53,040 --> 00:17:54,780 tiempo, lo más probable, para encontrar a Mike. 348 00:17:54,780 --> 00:17:56,390 >> Ahora yo podría haber sido inteligente acerca de esto, ¿verdad? 349 00:17:56,390 --> 00:17:57,800 Me estaba aburriendo rápidamente. 350 00:17:57,800 --> 00:17:58,910 Podría haber hecho esto de dos en dos. 351 00:17:58,910 --> 00:18:01,870 Así que en dos páginas, luego cuatro, luego seis, luego ocho. 352 00:18:01,870 --> 00:18:05,220 Y podría empezar a volar a través de él una poco más rápido, aunque a menor riesgo de 353 00:18:05,220 --> 00:18:09,210 rebasamiento Mike, pero que la curva no es va a ser muy diferente. 354 00:18:09,210 --> 00:18:12,550 Todavía va a ser una recta línea, pero un poco más rápido. 355 00:18:12,550 --> 00:18:13,710 >> Pero, ¿qué hice? 356 00:18:13,710 --> 00:18:15,845 De hecho, me hice algo fundamentalmente mejor. 357 00:18:15,845 --> 00:18:21,990 Logré lo que llamaremos logarítmica tiempo, registro de n, por lo que este verde 358 00:18:21,990 --> 00:18:27,730 línea tiene un mucho, mucho, mucho más menos borde recto a la misma. 359 00:18:27,730 --> 00:18:33,050 Y más bien, sugiere, como una especie de tiende a infinito siempre tan gradualmente, 360 00:18:33,050 --> 00:18:36,700 que yo podía tomar una de 1.000 páginas guía telefónica, el doble de su tamaño 361 00:18:36,700 --> 00:18:39,610 el próximo año - porque suponer una gran cantidad más personas se trasladan a la ciudad. 362 00:18:39,610 --> 00:18:43,250 >> Así que ahora tengo 2.000 páginas, pero ¿cómo muchos más pasos que es más inteligente 363 00:18:43,250 --> 00:18:45,200 algoritmo va a tomar? 364 00:18:45,200 --> 00:18:46,060 Sólo una. 365 00:18:46,060 --> 00:18:48,060 Quiero decir, eso es algo muy poderoso. 366 00:18:48,060 --> 00:18:51,400 Si vamos a 4,000 páginas el año que viene, eso va a llevarme 367 00:18:51,400 --> 00:18:53,020 sólo dos pasos más. 368 00:18:53,020 --> 00:18:56,500 Así que usted puede lanzar más y más grande problemas a mí, no a diferencia de la web es 369 00:18:56,500 --> 00:18:59,560 tirar los problemas cada vez más grandes todos los días a Googles y Facebooks de 370 00:18:59,560 --> 00:19:01,590 el mundo, y no es una cosa muy importante. 371 00:19:01,590 --> 00:19:05,840 Porque yo puse más atención y cuidado en mi algoritmo con el que para resolver 372 00:19:05,840 --> 00:19:07,020 problemas de manera eficiente. 373 00:19:07,020 --> 00:19:09,260 >> Y, en efecto, que será uno de los objetivos de este curso. 374 00:19:09,260 --> 00:19:11,230 Usted, en el camino, aprender a programar. 375 00:19:11,230 --> 00:19:13,360 Vas a aprender a programar en cualquier número de idiomas. 376 00:19:13,360 --> 00:19:16,670 Pero al final del día, el curso es sobre la solución de problemas y obtención de 377 00:19:16,670 --> 00:19:20,490 mejores para resolver problemas - y, como en casos como éste, la solución de problemas 378 00:19:20,490 --> 00:19:22,030 de manera más eficiente. 379 00:19:22,030 --> 00:19:23,990 >> Ahora hasta el momento, hemos hecho esto bastante intuitiva. 380 00:19:23,990 --> 00:19:27,420 Vamos a introducir algo bastante genérico llamado pseudocódigo. 381 00:19:27,420 --> 00:19:29,150 Así que vamos a llegar al final, en este supuesto, 382 00:19:29,150 --> 00:19:30,570 varios lenguajes de programación. 383 00:19:30,570 --> 00:19:34,280 Pero hoy lo haremos en Inglés-like la sintaxis, en el que sólo un poco de decir 384 00:19:34,280 --> 00:19:37,330 lo que quiere decir, pero tú eres siempre tan sucinta y usted no se preocupe por 385 00:19:37,330 --> 00:19:38,960 gramática y oraciones completas. 386 00:19:38,960 --> 00:19:41,600 Usted acaba de expresarse como concisa posible. 387 00:19:41,600 --> 00:19:45,400 >> Así pseudocódigo es similar al Inglés sintaxis que representa 388 00:19:45,400 --> 00:19:46,750 un lenguaje de programación. 389 00:19:46,750 --> 00:19:51,170 Y hacia ese fin, permítanme proponer que ahora nos modelamos el proceso que acabamos de 390 00:19:51,170 --> 00:19:54,990 descrito de contar algo un poco de manera diferente, esta vez teniendo un 391 00:19:54,990 --> 00:19:59,040 mira este video de cinco minutos producido por nuestros amigos de TED que 392 00:19:59,040 --> 00:20:03,170 define lo pseudocódigo es decir, define lo pensamiento algorítmico es, e incluso 393 00:20:03,170 --> 00:20:07,030 aunque el ejemplo que estamos a punto de ver es, de por sí, muy simple, es 394 00:20:07,030 --> 00:20:09,820 va a empezar a darnos lo mental modelo, el vocabulario, con el cual 395 00:20:09,820 --> 00:20:14,588 hacer mucho, mucho más complejo algoritmos con bastante rapidez. 396 00:20:14,588 --> 00:20:15,576 >> [INICIAR REPRODUCCIÓN DE VÍDEO] 397 00:20:15,576 --> 00:20:29,920 >> [REPRODUCCIÓN DE MÚSICA] 398 00:20:29,920 --> 00:20:31,100 >> NARRADOR: ¿Qué es un algoritmo? 399 00:20:31,100 --> 00:20:34,730 En ciencias de la computación, un algoritmo es un conjunto de instrucciones para la solución de algunos 400 00:20:34,730 --> 00:20:36,620 problema paso a paso. 401 00:20:36,620 --> 00:20:39,650 Típicamente, se ejecutan los algoritmos por equipos, pero nosotros los humanos tenemos 402 00:20:39,650 --> 00:20:41,230 algoritmos, así. 403 00:20:41,230 --> 00:20:43,290 Por ejemplo, ¿cómo usted va trata de contar el número 404 00:20:43,290 --> 00:20:44,750 de las personas en una habitación? 405 00:20:44,750 --> 00:20:47,980 Bueno, si eres como yo, lo que probablemente punto en el que cada persona, de uno en uno 406 00:20:47,980 --> 00:20:50,120 la vez, y contar a partir de 0. 407 00:20:50,120 --> 00:20:52,970 1, 2, 3, 4, y así sucesivamente. 408 00:20:52,970 --> 00:20:54,140 >> Bueno, eso es un algoritmo. 409 00:20:54,140 --> 00:20:57,600 De hecho, vamos a tratar de expresar una poco más formalmente en pseudocódigo - 410 00:20:57,600 --> 00:21:00,700 Sintaxis Inglés-like que se asemeja un lenguaje de programación. 411 00:21:00,700 --> 00:21:02,580 Sea N igual a 0. 412 00:21:02,580 --> 00:21:06,970 Por cada persona en la habitación, ajuste N igual a N más 1. 413 00:21:06,970 --> 00:21:08,400 >> ¿Cómo interpretar este pseudocódigo? 414 00:21:08,400 --> 00:21:12,840 Bueno, la línea uno declara, por así decirlo, una variable llamada N y se inicializa 415 00:21:12,840 --> 00:21:14,250 su valor a 0. 416 00:21:14,250 --> 00:21:17,550 Esto sólo significa que al principio de nuestro algoritmo, la cosa con la que 417 00:21:17,550 --> 00:21:19,650 estamos contando tiene un valor de 0. 418 00:21:19,650 --> 00:21:22,620 Después de todo, antes de empezar a contar, no hemos contado nada. 419 00:21:22,620 --> 00:21:25,340 Llamar a esta variable N es sólo una convención. 420 00:21:25,340 --> 00:21:26,890 Podría haber llamado a que casi cualquier cosa. 421 00:21:26,890 --> 00:21:30,560 >> Ahora la línea dos demarca el inicio de una lazo, una secuencia de pasos que se 422 00:21:30,560 --> 00:21:32,310 repetir un número de veces. 423 00:21:32,310 --> 00:21:35,910 Así, en nuestro ejemplo, el paso que estamos tomando está contando la gente en la sala. 424 00:21:35,910 --> 00:21:38,730 Debajo de la línea dos es la línea de tres, que describe exactamente cómo 425 00:21:38,730 --> 00:21:40,160 vamos a ir sobre el conteo. 426 00:21:40,160 --> 00:21:43,440 La indentación implica que es línea de tres que se repetirá. 427 00:21:43,440 --> 00:21:47,380 >> Entonces, ¿qué está diciendo es pseudocódigo que después de comenzar a 0, para cada uno 428 00:21:47,380 --> 00:21:50,690 persona en la habitación, vamos a aumentar N en 1. 429 00:21:50,690 --> 00:21:53,050 Ahora es correcta este algoritmo? 430 00:21:53,050 --> 00:21:54,580 Bueno, vamos a golpear en un poco. 431 00:21:54,580 --> 00:21:57,270 ¿Funciona si hay dos personas en la habitación? 432 00:21:57,270 --> 00:21:58,170 Vamos a ver. 433 00:21:58,170 --> 00:22:00,260 >> En la línea uno, inicializamos N a 0. 434 00:22:00,260 --> 00:22:03,660 Para cada una de estas dos personas, entonces incrementamos N en 1. 435 00:22:03,660 --> 00:22:07,310 Así que en el primer viaje a través de la bucle, actualizamos N de 0 a 1. 436 00:22:07,310 --> 00:22:11,070 En el segundo viaje a través de esa misma bucle, actualizamos N desde 1 a 2. 437 00:22:11,070 --> 00:22:15,780 Y así, a finales de este algoritmo, n es 2, que de hecho coincide con el número de 438 00:22:15,780 --> 00:22:16,700 personas en la habitación. 439 00:22:16,700 --> 00:22:17,760 >> Hasta ahora, todo bien. 440 00:22:17,760 --> 00:22:19,610 ¿Qué tal un caso límite, sin embargo? 441 00:22:19,610 --> 00:22:22,590 Supongamos que hay 0 personas en la sala -, aparte de mí, 442 00:22:22,590 --> 00:22:24,170 que está haciendo el conteo. 443 00:22:24,170 --> 00:22:27,150 En la línea uno, inicializamos N a 0. 444 00:22:27,150 --> 00:22:30,280 Esta vez, sin embargo, la línea de tres no ejecutar en absoluto, ya que no hay un 445 00:22:30,280 --> 00:22:31,370 persona en la habitación. 446 00:22:31,370 --> 00:22:35,260 Y así sigue siendo N 0, lo que coincide con el número de personas en la habitación. 447 00:22:35,260 --> 00:22:36,420 Bastante simple, ¿verdad? 448 00:22:36,420 --> 00:22:39,630 >> Pero contar personas en uno a la vez es bastante ineficiente, demasiado, no? 449 00:22:39,630 --> 00:22:40,920 Seguro que podemos hacerlo mejor. 450 00:22:40,920 --> 00:22:43,120 ¿Por qué no contar con dos personas a la vez? 451 00:22:43,120 --> 00:22:49,300 En lugar de contar 1, 2, 3, 4, 5, 6, 7, 8, y así sucesivamente, ¿por qué no contar, 2, 452 00:22:49,300 --> 00:22:51,460 4, 6, 8, y así sucesivamente? 453 00:22:51,460 --> 00:22:53,700 Incluso suena más rápido, y seguramente lo es. 454 00:22:53,700 --> 00:22:56,240 >> Vamos a expresar esta optimización en pseudocódigo. 455 00:22:56,240 --> 00:22:57,800 Sea N igual a 0. 456 00:22:57,800 --> 00:23:02,450 Para cada par de personas en la sala, establecer N igual a N más 2. 457 00:23:02,450 --> 00:23:04,120 Cambio Bastante simple, ¿verdad? 458 00:23:04,120 --> 00:23:06,750 En lugar de contar a las personas una a la vez, en vez de eso contamos 459 00:23:06,750 --> 00:23:08,300 ellos de dos en dos. 460 00:23:08,300 --> 00:23:10,980 Por lo tanto dos veces de este algoritmo tan rápido como la última. 461 00:23:10,980 --> 00:23:12,180 >> Pero, ¿es correcto? 462 00:23:12,180 --> 00:23:12,920 Vamos a ver. 463 00:23:12,920 --> 00:23:15,330 ¿Funciona si hay dos personas en la habitación? 464 00:23:15,330 --> 00:23:17,550 En la línea uno, inicializamos N a 0. 465 00:23:17,550 --> 00:23:20,920 Para que un par de personas, entonces incrementamos N por dos. 466 00:23:20,920 --> 00:23:24,860 Y así, a finales de este algoritmo, N es 2, que de hecho coincide con el número de 467 00:23:24,860 --> 00:23:25,650 personas en la habitación. 468 00:23:25,650 --> 00:23:28,250 >> Supongamos a continuación que existen 0 personas en la habitación. 469 00:23:28,250 --> 00:23:30,840 En la línea uno, inicializamos N a 0. 470 00:23:30,840 --> 00:23:34,330 Al igual que antes, la línea de tres no se ejecuta en absoluto, ya que no hay ningún par 471 00:23:34,330 --> 00:23:35,380 de personas en la habitación. 472 00:23:35,380 --> 00:23:38,350 Y así sigue siendo N 0, lo que de hecho coincida con el número de 473 00:23:38,350 --> 00:23:39,570 personas en la habitación. 474 00:23:39,570 --> 00:23:42,280 >> Pero lo que si hay tres personas en la habitación? 475 00:23:42,280 --> 00:23:44,130 ¿Cómo funciona esta tarifa algoritmo? 476 00:23:44,130 --> 00:23:44,990 Vamos a ver. 477 00:23:44,990 --> 00:23:47,460 En la línea uno, inicializamos N a 0. 478 00:23:47,460 --> 00:23:50,870 Para un par de esas personas, entonces incrementamos N por 2. 479 00:23:50,870 --> 00:23:51,800 Pero entonces, ¿qué? 480 00:23:51,800 --> 00:23:54,960 No hay otro par lleno de gente en la sala, por lo que la línea dos no 481 00:23:54,960 --> 00:23:56,180 ya se aplica. 482 00:23:56,180 --> 00:24:00,530 Y así, a finales de este algoritmo, N es todavía 2, que no es correcta. 483 00:24:00,530 --> 00:24:03,810 >> De hecho, este algoritmo dice que es con errores, ya que tiene un error. 484 00:24:03,810 --> 00:24:05,820 Permite una reparación con una nueva pseudocódigo. 485 00:24:05,820 --> 00:24:09,670 Sea n igual a 0 para cada par de las personas en la habitación. 486 00:24:09,670 --> 00:24:12,550 Ajuste N igual a N + 2. 487 00:24:12,550 --> 00:24:17,140 Si una persona se queda no apareado, establecer N igual a N más 1. 488 00:24:17,140 --> 00:24:20,140 Para resolver este problema en particular, hemos introducido, en línea de cuatro, un 489 00:24:20,140 --> 00:24:24,520 condición, conocida de otra manera como una rama que sólo se ejecuta si hay una 490 00:24:24,520 --> 00:24:26,640 persona que no podíamos emparejarse con otro. 491 00:24:26,640 --> 00:24:30,440 Y ahora, si hay uno o tres o cualquier número impar de personas en 492 00:24:30,440 --> 00:24:33,290 la habitación, este algoritmo Ahora voy a contarlas. 493 00:24:33,290 --> 00:24:34,560 >> ¿Podemos hacerlo mejor? 494 00:24:34,560 --> 00:24:38,820 Bueno, podríamos contar en 3s o 4s o incluso 5 y 10, pero más allá de eso, es 495 00:24:38,820 --> 00:24:41,360 va a conseguir un poco difícil señalar. 496 00:24:41,360 --> 00:24:44,660 Al final del día, si se ejecuta por las computadoras o los seres humanos, 497 00:24:44,660 --> 00:24:46,750 Los algoritmos son sólo un conjunto de instrucciones con 498 00:24:46,750 --> 00:24:48,290 que para resolver los problemas. 499 00:24:48,290 --> 00:24:49,792 Estas fueron sólo tres. 500 00:24:49,792 --> 00:24:52,404 ¿Qué problema resolvería usted con un algoritmo? 501 00:24:52,404 --> 00:24:52,901 >> [VIDEO PLAYBACK FIN] 502 00:24:52,901 --> 00:24:55,883 >> DAVID MALAN: Esa es la única vez Voy a aparecer en forma de dibujos animados. 503 00:24:55,883 --> 00:25:01,050 Pero cuando esa historia deja fuera, Ahora bien, ¿cómo podemos hacer mejor? 504 00:25:01,050 --> 00:25:04,680 Tres y cuatro, reclamamos, nos pueden contar gente mucho más rápido, pero puede que 505 00:25:04,680 --> 00:25:06,290 hacer fundamentalmente mejor que eso? 506 00:25:06,290 --> 00:25:07,540 Y apuesto a que podamos. 507 00:25:07,540 --> 00:25:11,980 >> Si introducimos un poco de nuestra propia pseudocódigo aquí, voy a proponer 508 00:25:11,980 --> 00:25:14,550 que podemos lograr una línea como esta. 509 00:25:14,550 --> 00:25:17,280 No vamos a contar a las personas uno, dos, tres, cuatro. 510 00:25:17,280 --> 00:25:19,470 No vamos a ir a dos, cuatro, seis, ocho. 511 00:25:19,470 --> 00:25:23,390 Vamos a hacer fundamentalmente mejor repensando el problema, y ​​en este 512 00:25:23,390 --> 00:25:27,080 caso, el aprovechamiento de una por lo demás recurso subutilizado. 513 00:25:27,080 --> 00:25:31,460 >> En un momento, espero que perdones y el humor nos poniéndose de pie en 514 00:25:31,460 --> 00:25:34,470 lugar, momento en el que vamos a pedir a cada uno a asumir en su 515 00:25:34,470 --> 00:25:36,400 mente el número 1. 516 00:25:36,400 --> 00:25:39,560 Estás pasando luego a cada vez más torpemente, a medida que pasa el tiempo, encontrar 517 00:25:39,560 --> 00:25:42,740 otra persona que está de pie, se combinan sus números juntos 518 00:25:42,740 --> 00:25:43,720 agregando para arriba. 519 00:25:43,720 --> 00:25:47,490 Uno de ustedes entonces va a correr a sentarse se sienta primero y la otra persona 520 00:25:47,490 --> 00:25:48,880 se va a repetir. 521 00:25:48,880 --> 00:25:53,090 >> Así, en otras palabras, mediante la siembra de todos que con el número 1 y, a continuación, 522 00:25:53,090 --> 00:25:57,800 la combinación de esos 1s en 2s y los 2s en 4s, con todo el mundo cada vez más 523 00:25:57,800 --> 00:26:02,740 sentarse, deberíamos, al final de este algoritmo, tiene un solo préstamo 524 00:26:02,740 --> 00:26:07,570 alma que no se sientan lo suficientemente rápido, pero que tiene contar la totalidad de las audiencias 525 00:26:07,570 --> 00:26:09,180 en su mente. 526 00:26:09,180 --> 00:26:13,730 >> Así que si usted desea, vamos a seguir adelante y - paso uno - de pie en su lugar. 527 00:26:13,730 --> 00:26:15,600 Y ejecutar. 528 00:26:15,600 --> 00:26:36,580 >> [Murmurando MULTITUD] 529 00:26:36,580 --> 00:26:38,820 >> DAVID MALAN: ¿Sabe usted donde Lauren es? 530 00:26:38,820 --> 00:26:40,179 729? 531 00:26:40,179 --> 00:27:23,350 >> [Murmurando MULTITUD] 532 00:27:23,350 --> 00:27:24,340 >> DAVID MALAN: ¿Está bien? 533 00:27:24,340 --> 00:27:39,110 >> [Murmurando MULTITUD] 534 00:27:39,110 --> 00:27:41,365 >> DAVID MALAN: Muy bien, debemos estar llegando al final. 535 00:27:41,365 --> 00:27:44,340 536 00:27:44,340 --> 00:27:47,670 Vemos un compañero de los que están aquí todavía. 537 00:27:47,670 --> 00:27:48,770 ¿Quién más necesita para ser emparejado? 538 00:27:48,770 --> 00:27:50,020 Si ustedes quieren emparejarse. 539 00:27:50,020 --> 00:27:53,260 540 00:27:53,260 --> 00:27:56,520 Alguien arriba. 541 00:27:56,520 --> 00:27:58,150 ¿Por qué no echar una mano aquí. 542 00:27:58,150 --> 00:28:01,370 Para las pocas personas que todavía están de pie, ¿Qué números 543 00:28:01,370 --> 00:28:02,790 tener en su mente? 544 00:28:02,790 --> 00:28:04,020 >> ESTUDIANTE: 78. 545 00:28:04,020 --> 00:28:06,010 >> DAVID MALAN: 78 plus - 546 00:28:06,010 --> 00:28:07,840 quien está de pie aquí abajo? 547 00:28:07,840 --> 00:28:08,370 >> ESTUDIANTE: 39. 548 00:28:08,370 --> 00:28:09,590 >> DAVID MALAN: Plus 39. 549 00:28:09,590 --> 00:28:12,310 Además ¿quién más sigue en pie? 550 00:28:12,310 --> 00:28:13,650 81? 551 00:28:13,650 --> 00:28:15,960 Bueno, ¿quién más? 552 00:28:15,960 --> 00:28:17,200 Otro 81? 553 00:28:17,200 --> 00:28:17,860 Wow. 554 00:28:17,860 --> 00:28:19,210 Y entonces lo que es en la parte trasera? 555 00:28:19,210 --> 00:28:20,360 >> ESTUDIANTE: 49. 556 00:28:20,360 --> 00:28:21,812 >> DAVID MALAN: 49, plus? 557 00:28:21,812 --> 00:28:22,950 >> ESTUDIANTE: 98. 558 00:28:22,950 --> 00:28:24,980 >> DAVID MALAN: 98 plus? 559 00:28:24,980 --> 00:28:28,190 ¿Es que alguien más? 560 00:28:28,190 --> 00:28:29,155 12? 561 00:28:29,155 --> 00:28:30,460 Buen trabajo. 562 00:28:30,460 --> 00:28:33,610 >> [Risas] 563 00:28:33,610 --> 00:28:34,690 >> DAVID MALAN: Oh, 112 - 564 00:28:34,690 --> 00:28:35,410 oh. 565 00:28:35,410 --> 00:28:36,220 ¡Buen trabajo! 566 00:28:36,220 --> 00:28:38,660 >> [Risas] 567 00:28:38,660 --> 00:28:42,570 >> [Aplausos] 568 00:28:42,570 --> 00:28:43,820 >> DAVID MALAN: ¿Alguien más sigue en pie? 569 00:28:43,820 --> 00:28:46,710 570 00:28:46,710 --> 00:28:47,260 ¿Lo sientes? 571 00:28:47,260 --> 00:28:48,110 >> ESTUDIANTE: 99. 572 00:28:48,110 --> 00:28:49,810 >> DAVID MALAN: 99. 573 00:28:49,810 --> 00:28:52,620 ¿Alguien más aún en pie? 574 00:28:52,620 --> 00:28:57,290 Y el número total de estudiantes aquí es en realidad, de acuerdo con - 575 00:28:57,290 --> 00:28:59,400 ¿tiene usted un número? 576 00:28:59,400 --> 00:29:03,170 Oh, el número real de personas en el ambiente, de acuerdo con la cuenta que 577 00:29:03,170 --> 00:29:07,660 los becarios de enseñanza estaban haciendo en el camino de todos en, era 729. 578 00:29:07,660 --> 00:29:11,070 Así que de una sala llena de estudiantes de Harvard que contaba a sí mismos, la 579 00:29:11,070 --> 00:29:14,126 respuesta es 637. 580 00:29:14,126 --> 00:29:15,480 >> [Risas] 581 00:29:15,480 --> 00:29:16,350 >> DAVID MALAN: Tan cerca. 582 00:29:16,350 --> 00:29:17,360 Pero aún así. 583 00:29:17,360 --> 00:29:22,110 OK, así que eso es una enseñanza momento, ¿verdad? 584 00:29:22,110 --> 00:29:24,120 Esto ahora es lo que describimos como un bicho. 585 00:29:24,120 --> 00:29:28,120 En algún lugar en el camino, hicimos un poco de mal aritmética, o alguien se sentaron, 586 00:29:28,120 --> 00:29:29,930 o hacia la izquierda, o algo salió mal. 587 00:29:29,930 --> 00:29:30,930 Pero eso está bien. 588 00:29:30,930 --> 00:29:33,390 Porque aún así, nos tengo muy cerca. 589 00:29:33,390 --> 00:29:37,480 Y yo diría que llegamos al mal responder mucho más rápido de lo que hubiera 590 00:29:37,480 --> 00:29:39,770 usando mi enfoque más lineal. 591 00:29:39,770 --> 00:29:42,630 >> Así que supongamos que, en efecto, obtenemos que correcto, pero pensar ahora en lo que 592 00:29:42,630 --> 00:29:46,870 que estaba ocurriendo en cada ocasión, frente a mi propio algoritmo apuntando ingenuo. 593 00:29:46,870 --> 00:29:48,420 Uno, dos, tres. 594 00:29:48,420 --> 00:29:53,010 Si de hecho hay 729 o 637 personas aquí, que me habría llevado 595 00:29:53,010 --> 00:29:57,720 literalmente, 637 o 729 pointings del dedo y 596 00:29:57,720 --> 00:29:59,490 incrementando mi cuenta total. 597 00:29:59,490 --> 00:30:01,910 Y yo podría hacer un poco mejor por va dos, cuatro, seis, ocho, y 598 00:30:01,910 --> 00:30:05,660 doble de esa velocidad, incluso triple o cuádruple, dependiendo de lo bien que puedo 599 00:30:05,660 --> 00:30:07,110 hacer que el conteo en mi cabeza. 600 00:30:07,110 --> 00:30:10,720 >> Pero este enfoque que ustedes tomaron era fundamentalmente diferente. 601 00:30:10,720 --> 00:30:12,770 Debido al principio, todos ustedes se pusieron de pie. 602 00:30:12,770 --> 00:30:14,620 Así que todo 729. 603 00:30:14,620 --> 00:30:17,370 Y entonces literalmente medio de que se sentó. 604 00:30:17,370 --> 00:30:19,720 Y después de eso, otro la mitad de ustedes se sentó. 605 00:30:19,720 --> 00:30:22,650 Y después de eso, otro la mitad de ustedes se sentó. 606 00:30:22,650 --> 00:30:27,470 >> Y el número total de veces que chicos podrían haber sentado es aproximadamente 607 00:30:27,470 --> 00:30:31,740 ocho o nueve o diez veces en total, dependiendo de lo que nuestro recuento total es. 608 00:30:31,740 --> 00:30:33,300 Y podemos hacer una especie de esta a la inversa. 609 00:30:33,300 --> 00:30:37,740 Si tuviéramos 1.024 personas en la sala, la número total de veces que se podía 610 00:30:37,740 --> 00:30:41,870 reducir a la mitad 1.024 personas es 10. 611 00:30:41,870 --> 00:30:43,370 >> Ahora piensa en ello en la otra dirección. 612 00:30:43,370 --> 00:30:49,170 Supongamos, ridículamente, que teníamos, por ejemplo cuatro mil millones de personas en esta sala, 613 00:30:49,170 --> 00:30:50,860 o una habitación un poco más grande. 614 00:30:50,860 --> 00:30:54,550 ¿Cuántas veces hemos ido a través de este algoritmo, de tal manera que la mitad 615 00:30:54,550 --> 00:30:58,110 de esa clase se sienta? 616 00:30:58,110 --> 00:31:03,050 Sólo va a tomar 32 como las operaciones, incluso en una clase de tamaño 617 00:31:03,050 --> 00:31:03,770 cuatro mil millones. 618 00:31:03,770 --> 00:31:04,055 ¿Por qué? 619 00:31:04,055 --> 00:31:06,980 Debido a cuatro mil millones va a dos millones de dólares, se destina a un millón, va a 620 00:31:06,980 --> 00:31:09,925 500 millones, va a 250 millones, punto, punto, punto. 621 00:31:09,925 --> 00:31:14,940 Yo sólo puedo hacer esa división el 32 veces, y en ese momento, todo el mundo menos 622 00:31:14,940 --> 00:31:17,820 una persona se quede en pie. 623 00:31:17,820 --> 00:31:21,590 >> Y eso, también, es una especie de gran alcance idea de que cada vez vamos a tratar de 624 00:31:21,590 --> 00:31:24,690 apalancamiento en este curso, y en la programación y la informática más 625 00:31:24,690 --> 00:31:29,400 En general, estos gérmenes de una idea con que podremos resolver problemas mucho, 626 00:31:29,400 --> 00:31:31,130 mucho más poderosa. 627 00:31:31,130 --> 00:31:34,610 Así que empezamos muy simple con la pseudocódigo y un chico en una habitación, pero 628 00:31:34,610 --> 00:31:38,205 ahora con toda una sala llena de gente hemos hecho fundamentalmente mejor. 629 00:31:38,205 --> 00:31:41,460 >> Bueno, ahora vamos a transición de pseudocódigo a algún código real. 630 00:31:41,460 --> 00:31:44,200 Este lenguaje está a punto de ver que suceda que se llamará JavaScript y 631 00:31:44,200 --> 00:31:46,190 volveremos a este hacia final del semestre. 632 00:31:46,190 --> 00:31:49,960 Es un lenguaje de programación que utilizar para hacer sitios web y otros tales 633 00:31:49,960 --> 00:31:51,360 software en estos días. 634 00:31:51,360 --> 00:31:54,890 Y lo hemos utilizado, gracias a un amigo de los nuestros en Stanford, para codificar 635 00:31:54,890 --> 00:31:56,630 alguna información oculta aquí. 636 00:31:56,630 --> 00:31:59,500 Este es el arte de la esteganografía, por así decirlo, donde se puede ocultar 637 00:31:59,500 --> 00:32:03,990 información en lo que de otro modo parece ser un ruido o completamente diferente 638 00:32:03,990 --> 00:32:05,220 imagen por completo. 639 00:32:05,220 --> 00:32:10,120 Pero incrustado en esta imagen particular es de hecho un mensaje secreto de la clase. 640 00:32:10,120 --> 00:32:12,950 >> Así que déjame ir adelante y tire hacia arriba la misma imagen aquí, esta 641 00:32:12,950 --> 00:32:14,270 tiempo en un navegador web. 642 00:32:14,270 --> 00:32:17,710 Y yo voy a agitar la mano a algunos de los detalles de hoy, sobre todo 643 00:32:17,710 --> 00:32:21,780 para aquellos de ustedes que esto se parece a no sólo JavaScript sino en griego, como 644 00:32:21,780 --> 00:32:23,930 lenguaje completamente desconocido. 645 00:32:23,930 --> 00:32:26,190 Pero este es un ejemplo de un lenguaje de programación. 646 00:32:26,190 --> 00:32:30,660 >> Y por ahora, tener fe en que esta primera línea de código - 647 00:32:30,660 --> 00:32:32,470 y por el código, me refiero sólo texto. 648 00:32:32,470 --> 00:32:35,660 El texto que podría haber escrito literalmente en Microsoft Word, si tuviera la 649 00:32:35,660 --> 00:32:37,630 software adecuado a continuación, hacer algo con él. 650 00:32:37,630 --> 00:32:42,120 Código fuente de programación, la programación código, en realidad es sólo el texto, y 651 00:32:42,120 --> 00:32:45,420 se ve diferente, basado en el idioma que está usando, no a diferencia de Inglés y 652 00:32:45,420 --> 00:32:49,200 Español y ruso toda la mirada diferente cuando los escribe en su teclado. 653 00:32:49,200 --> 00:32:53,520 >> Así que esta primera línea, por ahora asumir fe, simplemente abre un gráfico de la 654 00:32:53,520 --> 00:32:56,160 Internet, ese gráfico ruidoso que acabamos de ver. 655 00:32:56,160 --> 00:32:59,900 Esta próxima línea aquí es un ejemplo de un lazo, y que de hecho vimos esa misma 656 00:32:59,900 --> 00:33:01,130 jerga en el video de TED. 657 00:33:01,130 --> 00:33:03,750 Un bucle es algo que sucede de nuevo y otra vez, ya pesar de que esta 658 00:33:03,750 --> 00:33:08,440 parece absolutamente críptica, con el palabra clave, y algunos paréntesis y 659 00:33:08,440 --> 00:33:09,510 algunos puntos y coma. 660 00:33:09,510 --> 00:33:13,070 Volveremos a que en poco tiempo, pero que bucle no es esencialmente 661 00:33:13,070 --> 00:33:17,310 diciéndole al programa, iterar sobre todos de esos puntos ruidosos, de izquierda a 662 00:33:17,310 --> 00:33:18,980 derecha, de arriba a abajo. 663 00:33:18,980 --> 00:33:21,260 >> Debido a que al final del día, una imagen como esto - y en realidad se puede 664 00:33:21,260 --> 00:33:22,860 tipo de verlo en este proyector - 665 00:33:22,860 --> 00:33:25,280 es en realidad una malla de puntos. 666 00:33:25,280 --> 00:33:29,730 Así que podemos identificar cada uno de esos puntos por una coordenada, x, y, y con este 667 00:33:29,730 --> 00:33:33,890 programa, ahora podemos empezar a hacer algo para esos puntos. 668 00:33:33,890 --> 00:33:37,540 >> Así que lo que voy a seguir adelante aquí y hacer es que voy a hacer algunos cambios. 669 00:33:37,540 --> 00:33:41,000 En primer lugar voy a seguir adelante y deshacerse de todo eso verdoso y azulado 670 00:33:41,000 --> 00:33:43,520 ruido, y yo voy a seguir adelante y escriba lo siguiente 671 00:33:43,520 --> 00:33:45,710 sintaxis ciertamente críptico. 672 00:33:45,710 --> 00:33:48,020 im para una imagen. 673 00:33:48,020 --> 00:33:53,380 set azul en la ubicación x, coma, ubicación y, a 0. 674 00:33:53,380 --> 00:33:55,610 En otras palabras, quiero simplemente desactivar todas las de la nada 675 00:33:55,610 --> 00:33:56,920 puntos en esa foto. 676 00:33:56,920 --> 00:33:59,800 >> Voy a seguir adelante ahora y haga clic en este botón Run / Save, y usted 677 00:33:59,800 --> 00:34:02,850 notar en el lado derecho, Aparece la imagen resultante. 678 00:34:02,850 --> 00:34:06,120 Ahora es muy verde, pero eso no es sorprendente, ya que, literalmente, la vuelta 679 00:34:06,120 --> 00:34:11,070 fuera, haciendo una 1 un 0, todos el azul en esa foto. 680 00:34:11,070 --> 00:34:12,540 >> Bueno, ahora vamos a hacerlo un poco más. 681 00:34:12,540 --> 00:34:16,989 im para una imagen, punto setGreen, x, y. 682 00:34:16,989 --> 00:34:20,659 Y eso sólo significa reiterar desde la izquierda a derecha y luego de arriba a abajo. 683 00:34:20,659 --> 00:34:23,520 Apaga eso con un valor de 0, también. 684 00:34:23,520 --> 00:34:24,750 Guardar. 685 00:34:24,750 --> 00:34:28,100 Y en el proyector, no se puede en realidad ver nada en absoluto. 686 00:34:28,100 --> 00:34:31,380 >> En la pantalla de mi ordenador portátil, si me asomo en tan sólo de la manera correcta, puedo ver un poco de una 687 00:34:31,380 --> 00:34:33,300 imagen, porque son todavía algo de rojo en ese país. 688 00:34:33,300 --> 00:34:35,540 Si alguna vez has escuchado la sigla RGB - 689 00:34:35,540 --> 00:34:36,830 rojo, verde, azul - 690 00:34:36,830 --> 00:34:39,110 se está refiriendo a esta composición de una imagen con 691 00:34:39,110 --> 00:34:40,230 sólo los tres colores. 692 00:34:40,230 --> 00:34:43,159 Y en este momento, hemos tirado todo verde, todo azul, pero 693 00:34:43,159 --> 00:34:44,500 no hay mucho rojo. 694 00:34:44,500 --> 00:34:45,920 >> Así que permítanme poner encima de la roja. 695 00:34:45,920 --> 00:34:47,070 ¿Cómo puedo hacer eso? 696 00:34:47,070 --> 00:34:49,300 Bueno, en primer lugar, voy a pedir este programa una pregunta. 697 00:34:49,300 --> 00:34:52,030 Voy a seguir adelante y vamos a llamarlo una variable, al igual que en el álgebra. 698 00:34:52,030 --> 00:34:54,060 Usted puede tener x o y o z. 699 00:34:54,060 --> 00:34:57,230 Voy a declarar una variable y decir, poner en esta variable, 700 00:34:57,230 --> 00:35:02,790 temporalmente, el valor de la imágenes getRed valor en x, y. 701 00:35:02,790 --> 00:35:05,870 >> Y de nuevo, vamos a volver a todos de este detalle en el futuro. 702 00:35:05,870 --> 00:35:10,630 Pero, por ahora, sólo toma en la fe que esta línea está pidiendo el programa, lo que 703 00:35:10,630 --> 00:35:12,740 es el valor de rojo en x, y? 704 00:35:12,740 --> 00:35:14,450 En ese punto en particular? 705 00:35:14,450 --> 00:35:15,710 >> Entonces yo voy a hacer algo. 706 00:35:15,710 --> 00:35:21,100 Entonces me voy a hacer punto de imagen ajustado rojo en x, y, y, pero esta vez me voy a 707 00:35:21,100 --> 00:35:24,760 potenciarlo haciendo veces en rojo, digamos, 10. 708 00:35:24,760 --> 00:35:26,870 Por lo tanto aumentar por un factor de 10. 709 00:35:26,870 --> 00:35:29,880 Permítanme Alejar ahora y click podía correr / Guardar. 710 00:35:29,880 --> 00:35:36,430 Y voila, que estaba allí todo el tiempo, a pesar de que nuestros ojos humanos 711 00:35:36,430 --> 00:35:37,900 no podía verlo del todo. 712 00:35:37,900 --> 00:35:41,470 >> Así que de nuevo, esto ahora es de código real, una ejemplo de un lenguaje que vamos a venir 713 00:35:41,470 --> 00:35:42,770 volver al poco tiempo. 714 00:35:42,770 --> 00:35:46,670 Pero darse cuenta, sobre todo aquellos de ustedes sin esa experiencia, es bastante 715 00:35:46,670 --> 00:35:50,280 antes que nosotros mismos seremos escribir código como el que existe. 716 00:35:50,280 --> 00:35:54,520 De hecho, una herramienta con la que ya está todo algo familiar, tal vez, es CS50 de 717 00:35:54,520 --> 00:35:57,330 propia herramienta de compras por supuesto-, que era realmente reiniciado este verano por algunos 718 00:35:57,330 --> 00:36:01,070 de los propios antiguos alumnos del CS50, Ahora gire TFS. 719 00:36:01,070 --> 00:36:04,740 >> Así que esto pasa a ser un sitio web construido en un lenguaje llamado PHP. 720 00:36:04,740 --> 00:36:08,510 Utiliza una base de datos llamada MySQL, las cosas con el que nos pondremos nuestras manos 721 00:36:08,510 --> 00:36:10,190 después sucia en el semestre. 722 00:36:10,190 --> 00:36:14,140 Pero lo creas o no, incluso algo como esto reduce en última instancia a la 723 00:36:14,140 --> 00:36:19,480 más simple de los bucles y las condiciones y ramas, como las que vimos sólo un 724 00:36:19,480 --> 00:36:21,530 Hace momento en el video de TED. 725 00:36:21,530 --> 00:36:25,180 >> Lo que pensé que me gustaría hacer ahora es no comparte sólo algo que el personal ha hecho 726 00:36:25,180 --> 00:36:28,010 para el campus, sino más bien algo ex alumnos - 727 00:36:28,010 --> 00:36:29,080 estudiantes, de hecho - 728 00:36:29,080 --> 00:36:33,950 hecho este último año, Sierra, Daniel, y Sam, el último de los cuales no tenía antes 729 00:36:33,950 --> 00:36:36,370 experiencia de programación cuando asumió el CS50. 730 00:36:36,370 --> 00:36:39,950 Y para su proyecto final, exhibido, en la Feria del CS50, un 731 00:36:39,950 --> 00:36:43,720 aplicación llamada wrdly, que es un programa basado en la web para los que hicieron 732 00:36:43,720 --> 00:36:47,670 este video que pensé que me gustaría compartir con le dará un sentido de lo que es justo 733 00:36:47,670 --> 00:36:49,280 posible para el final del plazo. 734 00:36:49,280 --> 00:37:57,170 >> [REPRODUCCIÓN DE MÚSICA] 735 00:37:57,170 --> 00:38:00,570 >> DAVID MALAN: Eso es de la Semana Cero hasta la semana 12 de este año pasado. 736 00:38:00,570 --> 00:38:05,470 >> [Aplausos] 737 00:38:05,470 --> 00:38:09,520 >> DAVID MALAN: Como un teaser, también, realmente para abrir el apetito es a lo que es 738 00:38:09,520 --> 00:38:14,580 posible, es posible que haya visto ya, o poco, vean, market.cs50.net, un 739 00:38:14,580 --> 00:38:17,710 nueva herramienta que el equipo del curso tiene estado trabajando en, esta vez en 740 00:38:17,710 --> 00:38:21,530 colaboración con el estudiante de Harvard Agencias, de manera que a partir de este año 741 00:38:21,530 --> 00:38:24,980 y continuando con suerte en este próximo verano tendrá un estándar 742 00:38:24,980 --> 00:38:27,890 oportunidad en el campus de comprar y vender cosas de interés para usted. 743 00:38:27,890 --> 00:38:32,220 Y con la asociación a través de la HSA, usted También será capaz de colocar elementos de 744 00:38:32,220 --> 00:38:35,950 en una de las tiendas físicas de la HSA en algún momento en el futuro, a fin de 745 00:38:35,950 --> 00:38:39,150 cosas proxy, especialmente como usted graduado y no necesariamente quiere 746 00:38:39,150 --> 00:38:44,110 descartar las cosas, pero en realidad pagar remitir a la gente que podría seguir usted 747 00:38:44,110 --> 00:38:45,270 aquí en el campus. 748 00:38:45,270 --> 00:38:46,740 Así que más en el venidero. 749 00:38:46,740 --> 00:38:49,830 >> Pero un poco más concretamente, una herramienta que ha salido de CS50 en los últimos años 750 00:38:49,830 --> 00:38:52,760 años, con la que algunos de ustedes podrían estar familiar y otros de ustedes podrían estar 751 00:38:52,760 --> 00:38:57,940 google ahora, en CS50.net/2x, usted encontrar un enlace a una extensión de Chrome 752 00:38:57,940 --> 00:39:01,250 lo cual es demostrativo de cómo puede el uso de JavaScript, el mismo que el idioma 753 00:39:01,250 --> 00:39:06,660 se utiliza con la torre Eiffel hace un momento, para poner en práctica la velocidad de reproducción 2x 754 00:39:06,660 --> 00:39:09,000 para todos los vídeos de Harvard iSites. 755 00:39:09,000 --> 00:39:11,880 Esto es algo que se construye en el propio reproductor de vídeo del CS50. 756 00:39:11,880 --> 00:39:14,870 Pero esto, también, si usted comienza a cavar en el código fuente, que vamos a 757 00:39:14,870 --> 00:39:18,840 felizmente a disposición, usted verá cómo incluso se puede solucionar problemas como que, 758 00:39:18,840 --> 00:39:23,180 acelerando los widgets en sitios web con que ya está bien familiarizado. 759 00:39:23,180 --> 00:39:26,630 >> Así que una palabra ahora en el curso y expectativas y lo que está por venir. 760 00:39:26,630 --> 00:39:29,445 En general, nos reunimos aquí en verdad los lunes y miércoles - aunque 761 00:39:29,445 --> 00:39:31,490 este viernes, nos reuniremos porque del Shopping Week - 762 00:39:31,490 --> 00:39:34,640 1:00-14:00, aunque a veces hasta las 02:30. 763 00:39:34,640 --> 00:39:38,700 Teniendo en cuenta que es posible que, por tanto, querer o tener que tomar algunas clases a las 2:00 pm 764 00:39:38,700 --> 00:39:42,480 adelante, o incluso antes, no darse cuenta de la Por supuesto es de apoyo de lo que se llama 765 00:39:42,480 --> 00:39:45,900 inscripción simultánea, por lo que vamos a apoyar una petición a la Junta de anuncios y 766 00:39:45,900 --> 00:39:49,400 el residente de los decanos en su nombre si usted tiene un conflicto en algún lugar en este 767 00:39:49,400 --> 00:39:50,790 1:00-2:30 rango. 768 00:39:50,790 --> 00:39:54,110 Diríjase a la URL en línea para detalles adicionales. 769 00:39:54,110 --> 00:39:57,750 >> Pero en términos de la estructura de soporte que caracteriza CS50, para los estudiantes 770 00:39:57,750 --> 00:40:01,750 más y menos cómodo por igual, nos ofrecer pistas distintas de secciones. 771 00:40:01,750 --> 00:40:04,730 Y este es un par de semanas de descanso, pero en poco tiempo, se le pedirá que 772 00:40:04,730 --> 00:40:05,770 su nivel de comodidad. 773 00:40:05,770 --> 00:40:08,590 ¿Está usted entre los que menos cómodo, más cómodo, o 774 00:40:08,590 --> 00:40:10,520 en algún punto intermedio? 775 00:40:10,520 --> 00:40:13,150 >> Y tendremos tres canales distintos pistas que se adaptan a 776 00:40:13,150 --> 00:40:14,470 precisamente esas audiencias. 777 00:40:14,470 --> 00:40:17,900 Así que en ningún momento el término debe usted incluso sentir como si estuvieras en competencia 778 00:40:17,900 --> 00:40:21,390 en contra de cualquier estudiante con más o menos de fondo que usted. 779 00:40:21,390 --> 00:40:24,160 De hecho, el curso está destinado a ser mucho más colaborativa y mucho 780 00:40:24,160 --> 00:40:25,650 más abierto que eso. 781 00:40:25,650 --> 00:40:29,030 >> En cuanto a los conjuntos de problemas, se le encontrar, también, que, además de la 782 00:40:29,030 --> 00:40:32,130 edición estándar del problema de cada semana conjunto, a menudo hay una "hacker 783 00:40:32,130 --> 00:40:37,010 edición ", que está destinado a ser dirigido en el 5% a 10% o menos de la 784 00:40:37,010 --> 00:40:40,270 demográficos que está de hecho entre los más cómodo y le gustaría más 785 00:40:40,270 --> 00:40:43,960 de un desafío a la norma edición del conjunto de procesadores que espera. 786 00:40:43,960 --> 00:40:46,390 Más detalles en los que para ser que se encuentra en el plan de estudios. 787 00:40:46,390 --> 00:40:49,430 >> Pero también allí se pueden encontrar detalles en los cursos de días de retraso. 788 00:40:49,430 --> 00:40:51,570 Conjuntos Normalmente problemáticas son pagaderas el jueves. 789 00:40:51,570 --> 00:40:55,550 Sin embargo, se puede extender a muchos de su los plazos de este otoño de jueves a 790 00:40:55,550 --> 00:41:00,010 Viernes simplemente por reunirse con nosotros a mitad de camino, por así decirlo, en respuesta a algunas de calentamiento 791 00:41:00,010 --> 00:41:03,370 preguntas en algunos de problema de la semana conjuntos, que automáticamente 792 00:41:03,370 --> 00:41:05,710 luego le dan un extra de 24 horas. 793 00:41:05,710 --> 00:41:09,120 También vamos a soltar su más bajo puntuación, de acuerdo con el plan de estudios. 794 00:41:09,120 --> 00:41:12,170 >> Para que os hagáis una idea de cuál es el problema conjuntos son - porque es de hecho 795 00:41:12,170 --> 00:41:15,120 el problema del supuesto establece que en última instancia, definir casi todos los 796 00:41:15,120 --> 00:41:18,760 La experiencia de los estudiantes, más que conferencias, más que secciones, más 797 00:41:18,760 --> 00:41:21,230 por lo que la mayoría de cualquier otra aspecto del curso. 798 00:41:21,230 --> 00:41:25,140 El año pasado, por ejemplo, comenzamos, como vamos a empezar este año, con Scratch. 799 00:41:25,140 --> 00:41:29,150 Particularmente este viernes, vamos a utilizar, por justo el tiempo de un día, una gráfica 800 00:41:29,150 --> 00:41:32,260 lenguaje de programación, con la que vamos a iniciar la programación mediante arrastrar y 801 00:41:32,260 --> 00:41:37,580 dejando caer las piezas del rompecabezas que sólo montar físicamente si tiene sentido 802 00:41:37,580 --> 00:41:38,990 hacerlo lógicamente. 803 00:41:38,990 --> 00:41:43,460 >> La semana que viene, vamos a la transición rápidamente a C, bastante viejo, pero muy pequeño y 804 00:41:43,460 --> 00:41:48,510 lenguaje sencillo que nos permitirá realmente ir de 0 a 60 en el transcurso 805 00:41:48,510 --> 00:41:52,290 de tan sólo unas pocas semanas, y luego valerse de esas mismas habilidades y conocimientos de los 806 00:41:52,290 --> 00:41:56,160 programación básica construye en lenguajes de alto nivel como PHP, 807 00:41:56,160 --> 00:41:58,240 JavaScript, y sin embargo, otros todavía. 808 00:41:58,240 --> 00:42:02,560 >> El año pasado, el tercer conjunto de procesadores en el curso fue el de la criptografía, un 809 00:42:02,560 --> 00:42:06,380 aplicación específica del dominio en que podamos Los estudiantes con impedimentos para implementar cualquier 810 00:42:06,380 --> 00:42:11,140 número de cifras, los programas con los que para codificar o decodificar la información, 811 00:42:11,140 --> 00:42:11,880 para cifrarlo. 812 00:42:11,880 --> 00:42:16,300 Para la edición pirata informático, por el contrario, nos dimos a los estudiantes de hackers un archivo 813 00:42:16,300 --> 00:42:19,900 desde un ordenador Unix estándar que contiene nombres de usuario y contraseñas, 814 00:42:19,900 --> 00:42:22,740 el último de los cuales fueron cifrados, y desafiamos a los hackers 815 00:42:22,740 --> 00:42:26,850 estudiantes a descifrar, lo mejor que pudieron, esas contraseñas, todavía en esa 816 00:42:26,850 --> 00:42:27,770 mismo dominio. 817 00:42:27,770 --> 00:42:30,580 >> Scramble, un juego con el que algunos de que son tal vez familiarizado. 818 00:42:30,580 --> 00:42:34,410 Una pieza de la medicina forense, donde pedimos a los estudiantes para recuperar los datos que habían sido 819 00:42:34,410 --> 00:42:38,530 borrado lo contrario de mi propia digitales tarjeta compact flash de la cámara, por 820 00:42:38,530 --> 00:42:42,740 en realidad la escritura de software para averiguar, ¿dónde estaban los ceros y unos en 821 00:42:42,740 --> 00:42:46,850 que la cámara digital que previamente compuso un gráfico JPEG? 822 00:42:46,850 --> 00:42:49,710 >> Un reto de la clase del año pasado relacionados con la escritura el más rápido 823 00:42:49,710 --> 00:42:53,160 El corrector de ortografía posible, compitiendo contra sus amigos y compañeros de clase si 824 00:42:53,160 --> 00:42:53,860 les gustaría. 825 00:42:53,860 --> 00:42:56,330 Implementar Huff 'n Puff, un programa de compresión. 826 00:42:56,330 --> 00:43:01,930 Y después que termina el semestre con CS50 Finanzas, una aplicación basada en web con 827 00:43:01,930 --> 00:43:06,570 que se crea una página web eTrade-como para comprar y vender acciones, por lo que 828 00:43:06,570 --> 00:43:09,860 hablar, por realidad tirando casi cotizaciones en tiempo real de Yahoo! 829 00:43:09,860 --> 00:43:10,450 Finanzas. 830 00:43:10,450 --> 00:43:13,590 >> Lo que no hicimos el año pasado fue establece uno de los problemas que los restos 831 00:43:13,590 --> 00:43:14,810 no obstante, uno de los favoritos. 832 00:43:14,810 --> 00:43:18,400 Si nunca has ido a shuttle.cs50.net, verás un usuario 833 00:43:18,400 --> 00:43:19,670 interactuar un poco así. 834 00:43:19,670 --> 00:43:23,530 Pero hace dos años, la clase implementado, a través de Google Maps y la 835 00:43:23,530 --> 00:43:28,570 Google Earth plug-in y un poco de comprensión con la conducción de todo el campus, 836 00:43:28,570 --> 00:43:33,290 de modo que el objetivo de este juego era, como se puede ver algunos de los rostros, 837 00:43:33,290 --> 00:43:37,530 es conducir por el campus en busca de personal, becarios de enseñanza y entidades emisoras de certificados, y 838 00:43:37,530 --> 00:43:40,080 cuando no, poniéndolos en su autobús. 839 00:43:40,080 --> 00:43:44,035 Ninguno de ellos realmente parece estar aquí, así que vamos a entrar en un código de trucos. 840 00:43:44,035 --> 00:43:47,150 >> [Risas] 841 00:43:47,150 --> 00:43:48,430 >> DAVID MALAN: Eso es. 842 00:43:48,430 --> 00:43:49,240 Está bien. 843 00:43:49,240 --> 00:43:51,750 Y aquí es el personal atada en todo el campus. 844 00:43:51,750 --> 00:43:54,530 Y como se puede ver, en el lado derecho lado de la pantalla, el servicio de autobús 845 00:43:54,530 --> 00:43:55,510 tiene asientos vacíos. 846 00:43:55,510 --> 00:43:59,000 Y el objetivo era escribir la código con el que para simular este 847 00:43:59,000 --> 00:44:01,790 conducción y recoger y dejar fuera de los pasajeros. 848 00:44:01,790 --> 00:44:04,960 Ese, también, el uso de un lenguaje llamada de JavaScript. 849 00:44:04,960 --> 00:44:10,030 Así que darse cuenta de que los programas como esa voluntad estar en nuestra misma trayectoria de este 850 00:44:10,030 --> 00:44:10,910 años, también. 851 00:44:10,910 --> 00:44:13,640 >> En términos, ahora, de un apoyo adicional, tenemos horario de oficina. 852 00:44:13,640 --> 00:44:16,520 Como habrá visto en su propia casa comedor o en Annenberg, 853 00:44:16,520 --> 00:44:19,280 vamos a estar en el comedor casa vestíbulos cuatro noches a la semana - 854 00:44:19,280 --> 00:44:24,450 Leverett, Pfoho, Eliot y Annenberg este año, 20:00-23:00. 855 00:44:24,450 --> 00:44:26,830 Y lo que pensamos que nos gustaría hacer este año es algo un poco diferente. 856 00:44:26,830 --> 00:44:29,650 >> Si has oído rumores de que el año pasado que era un poco demasiado estresante, esto 857 00:44:29,650 --> 00:44:32,800 las horas de oficina del año, como describiremos la semana que viene, será más orgánica, 858 00:44:32,800 --> 00:44:36,900 por lo que después de la llegada, se le enviados a una tabla en particular 859 00:44:36,900 --> 00:44:39,860 donde varios miembros del personal esperan, y que vamos a hacer las cosas mucho más 860 00:44:39,860 --> 00:44:40,440 orgánicamente. 861 00:44:40,440 --> 00:44:43,740 No más colas, no más del iPad, pero Preferiría tener más íntimo 862 00:44:43,740 --> 00:44:47,300 conversaciones en torno a una mesa de poco ocho o más estudiantes, por lo que 863 00:44:47,300 --> 00:44:50,880 aproximarse a la sensación de lo que de otro modo sería una clase mucho más pequeño. 864 00:44:50,880 --> 00:44:54,120 >> Ofrecemos, además, estas cosas nos llamados tutoriales, videos filmados en 865 00:44:54,120 --> 00:44:57,330 avanzar por una de las enseñanzas del curso compañeros, Zamyla, en la que 866 00:44:57,330 --> 00:45:00,690 le guía por el problema de la semana conjuntos, que ofrecen consejos y trucos para la 867 00:45:00,690 --> 00:45:02,640 desafíos que se avecinan. 868 00:45:02,640 --> 00:45:06,230 Y por el contrario, después de los boletines de problemas son debido, este año, vamos a también liberamos 869 00:45:06,230 --> 00:45:09,100 pequeños clips llaman autopsias que en realidad le guiará a través 870 00:45:09,100 --> 00:45:13,630 soluciones representativas, tanto buenas como malo, a través del cual se puede inferir cómo 871 00:45:13,630 --> 00:45:17,550 usted podría tener o debe tener implementado su propia solución. 872 00:45:17,550 --> 00:45:20,500 >> ¿Y qué vamos a ofrecer por primera vez este año también, particularmente 873 00:45:20,500 --> 00:45:23,420 para aquellos estudiantes que se acojan a del curso de otra 874 00:45:23,420 --> 00:45:28,580 recursos, pero sin embargo están luchando todo demasiado, el curso 875 00:45:28,580 --> 00:45:33,030 sí se emparejará a los estudiantes, como los recursos lo permiten, con los tutores para que 876 00:45:33,030 --> 00:45:35,840 usted tiene una más íntima mucho oportunidad de Restaurante salas 877 00:45:35,840 --> 00:45:38,700 permitir la asistencia de uno-a-uno. 878 00:45:38,700 --> 00:45:42,780 >> Ahora, un último vistazo en algún de los juegos de final a la vista. 879 00:45:42,780 --> 00:45:44,580 Usted podría estar familiarizado con el Hackathon CS50. 880 00:45:44,580 --> 00:45:48,120 Bueno, viene este mes de diciembre, de 8:00 PM a 7:00 PM, en el comienzo de 881 00:45:48,120 --> 00:45:51,410 Período de lectura, será una oportunidad para reunirse con sus compañeros de clase - 882 00:45:51,410 --> 00:45:53,130 esto sería alrededor de las 9:00 PM - 883 00:45:53,130 --> 00:45:56,550 durante el que te sumerjas en su última implementación del proyecto junto con 884 00:45:56,550 --> 00:45:59,910 compañeros de clase, amigos, y los alimentos. 885 00:45:59,910 --> 00:46:03,680 Esto sería alrededor de las 1:00 de la mañana, cuando el primer lote de comida llegó. 886 00:46:03,680 --> 00:46:08,470 Y esto es alrededor de las 4:00 am de ese particular, año en el CS50 Hackathon. 887 00:46:08,470 --> 00:46:12,000 >> Pero el verdadero punto culminante del curso es destinado a la Feria CS50, un amplio campus- 888 00:46:12,000 --> 00:46:15,790 exposición de sus propios proyectos finales, a la que la familia y amigos son todos 889 00:46:15,790 --> 00:46:18,730 invitado, ya que nuestros reclutadores y nuestros amigos de la industria. 890 00:46:18,730 --> 00:46:22,170 Esto, por ejemplo, es una visión de la Personas más de 2.000 que han asistieron 891 00:46:22,170 --> 00:46:23,160 años pasados. 892 00:46:23,160 --> 00:46:27,180 Expresiones como esta no son infrecuentes, y del mismo modo hacer su 893 00:46:27,180 --> 00:46:29,660 compañeros de clase se deleitan en las cosas que has logrado. 894 00:46:29,660 --> 00:46:33,170 >> Y, de hecho, con ese fin, tenemos un evento de inicio de curso, también. 895 00:46:33,170 --> 00:46:37,400 Si este tipo de cosas de interés para usted, o usted es por lo menos curioso en cuanto a lo que 896 00:46:37,400 --> 00:46:41,590 esto, saber que una nueva tradición de la curso se llama CS50 Puzzle Day. 897 00:46:41,590 --> 00:46:45,710 Y esto fue instituido un par de años atrás para señalar realmente a la escuela 898 00:46:45,710 --> 00:46:48,930 que la informática no se trata de programación, y ciertamente no es 899 00:46:48,930 --> 00:46:51,960 trata de abrazar sólo aquellos estudiantes que tienen experiencia previa. 900 00:46:51,960 --> 00:46:54,200 En realidad se trata de resolución de problemas más en general. 901 00:46:54,200 --> 00:46:57,360 >> Y así Puzzle Día, en los últimos desde hace años, ha evolucionado hasta convertirse en un buen 902 00:46:57,360 --> 00:47:00,500 asociación con nuestros amigos de Facebook, por lo que habrá fabulosa 903 00:47:00,500 --> 00:47:04,830 premios y pizza al otro lado del río en el i-lab este próximo sábado. 904 00:47:04,830 --> 00:47:09,180 Diríjase a la dirección URL con dos o tres amigos si usted desea participar 905 00:47:09,180 --> 00:47:10,830 en esta nueva tradición. 906 00:47:10,830 --> 00:47:14,180 >> Así que me gustaría pedirle que mantenga una cosa en mente, y tenemos sólo un 907 00:47:14,180 --> 00:47:17,070 clip de dos minutos sobre el cual para cerrar hoy. 908 00:47:17,070 --> 00:47:19,640 73% es el número de recordar. 909 00:47:19,640 --> 00:47:23,900 Cake también le esperan fuera de esta crucero como de levantar la sesión en cuestión de 910 00:47:23,900 --> 00:47:26,710 par de momentos, que es una tradición del curso, también. 911 00:47:26,710 --> 00:47:29,860 Pero esta es la cita clave de la plan de estudios de curso para tener en cuenta. 912 00:47:29,860 --> 00:47:32,820 Lo que en definitiva importa en este curso no es tanto dónde terminan 913 00:47:32,820 --> 00:47:36,580 en relación con sus compañeros de clase, pero donde que, en la Semana 12, termina con relación al 914 00:47:36,580 --> 00:47:37,960 a ti mismo en la Semana 0. 915 00:47:37,960 --> 00:47:43,670 >> Pero la visión de que vamos a dejarte con aquí hoy es este último aquí 916 00:47:43,670 --> 00:47:47,580 por nuestro mismo Daniel, que hizo la vídeo wrdly hace un momento. 917 00:47:47,580 --> 00:47:50,000 Os dejo con esta visión de lo que se avecina. 918 00:47:50,000 --> 00:47:53,360 Y como hacemos esto, si pudiéramos tener CS50 El personal de la parte delantera de la habitación 919 00:47:53,360 --> 00:47:57,280 que vamos hasta la etapa de pintar todo la más de una imagen visual como a 920 00:47:57,280 --> 00:47:59,100 lo que le espera este año - 921 00:47:59,100 --> 00:48:00,350 conseguir incómodo. 922 00:48:00,350 --> 00:48:02,200 923 00:48:02,200 --> 00:48:05,188 Vamos a concluir con esta aquí en la pantalla. 924 00:48:05,188 --> 00:48:18,634 >> [REPRODUCCIÓN DE MÚSICA] 925 00:48:18,634 --> 00:48:21,124 >> DAVID MALAN: Este es CS50. 926 00:48:21,124 --> 00:50:00,226 >> [MÚSICA - Matt & Kim, "Está bien"] 927 00:50:00,226 --> 00:50:03,245 >> ALTAVOZ 1: Me encanta CS50 más de gatos. 928 00:50:03,245 --> 00:50:06,030 >> ALTAVOZ 2: Whoaaaa! 929 00:50:06,030 --> 00:50:06,990 >> [Risas] 930 00:50:06,990 --> 00:50:08,140 >> DAVID MALAN: Este es, entonces, CS50. 931 00:50:08,140 --> 00:50:10,050 Nos vemos el viernes. 932 00:50:10,050 --> 00:50:13,370 >> [Aplausos y ovaciones] 933 00:50:13,370 --> 00:50:17,540 >> NARRADOR: En la próxima CS50, un escenario demo no salen según lo planeado. 934 00:50:17,540 --> 00:50:19,080 >> DAVID MALAN: Queremos encontrar Mike Smith en este directorio. 935 00:50:19,080 --> 00:50:20,380 Bueno, ¿cuáles son sus instintos? 936 00:50:20,380 --> 00:50:23,750 Yo podría ir más o menos a la mitad de la guía telefónica, mirar hacia abajo, vemos que 937 00:50:23,750 --> 00:50:26,830 Estoy en M, y ahora sé que Mike Smith no está a la izquierda. 938 00:50:26,830 --> 00:50:27,840 Él debe ser el de la derecha. 939 00:50:27,840 --> 00:50:30,515 Y lo que en este punto, literalmente puede romper - 940 00:50:30,515 --> 00:50:33,300 en este punto, podemos literalmente a la rotura - 941 00:50:33,300 --> 00:50:36,490 en este punto, podemos figurativamente romper la guía telefónica por la mitad. 942 00:50:36,490 --> 00:50:38,954 >> [Rasgueo UKELELE]