DAVID MALAN: Hola, mundo, esta se CS50Live, y chico, nosotros también tener un episodio increíble para usted hoy. En primer lugar, una mirada al interior de cómo Dropbox funciona, entonces una estrecha ver diminutos hámsters comer pequeñas burritos, y, por último, una mirada detrás de las escenas de ver en la nueva película de CS50, Persistencia. Pero primero, Dropbox.com, donde recientemente viajó en San Francisco, California, para reunirse con el ex jefe de CS50 compañero de enseñanza, Thomas Carriero que nos dio un tour de Dropbox y es exactamente lo que se siente al trabajar y, atrevo a decir que vivir allí. Ahora nos sentamos no sólo con Thomas mientras que allí, sino también con el ex de CS50 compañero de enseñanza cabeza Alex Allain para hablar sobre el subyacente funcionamiento de Dropbox.com y se distribuye la arquitectura. Vamos a echar un vistazo. THOMAS Carriero: Soy Thomas Carreiro Soy un ingeniero de software de Dropbox. ALEX ALLAIN: Soy Alex Allain. Soy ingeniero aquí en Dropbox. THOMAS Carriero: Sí, así que estaba en realidad el primer CF cabeza para CS50 cuando David Malan se hizo cargo de la clase. Yo ya había estado enseñando CS50 durante dos semestres con Mike Smith, que estaba allí el profesor antes de allí. ALEX ALLAIN: Así que en realidad no tomó CS50, pero lo hice TF dos veces, una vez como TF regular y luego en mi último año, Yo estaba en realidad Jefe del TF CS50, que era un montón de diversión. THOMAS Carriero: Así que cuando David se acercó a mí sobre la configuración de Dropbox en el aparato CS50, Yo estaba muy emocionado, porque de hecho tenemos un cliente Linux. La mayoría de nuestros usuarios utilizan ya sea De Windows o los clientes de Macintosh, pero el Linux, Macintosh y Los clientes de Windows son, en realidad, muy similar. Así que lo que hicimos es que pre-instalado el cliente de Dropbox Linux en el CS50 aparato, y funciona como todos nuestros otros usuarios de Linux. ALEX ALLAIN: Así que el manera Dropbox funciona es que funciona como el cliente en muchos diversos sistemas operativos y dispositivos. El cliente de escritorio Drobox es uno de los más conocidos, uno de los más interesantes. THOMAS Carriero: Así Dropbox básicamente toma todos los archivos que se pone en el trozos de carpetas, y esos archivos en cuatro trozos megabyte. Así que vamos a echar un 100 archivo PDF megabyte, y vamos a trozo en 25 trozos de cuatro megabytes. Estos trozos son entonces encriptados, y luego les enviamos nuestros servidores de bloque. ALEX ALLAIN: Los servidores de bloque son el almacenamiento de los propios bloques, y por lo que cada bloque se almacena en el servidor de bloque con los datos y un hash SHA-256 de que bloquea. Esa es una encriptación muy básico primitivo que resume, en cierto sentido, los datos en un muy un único manera que es única para esos datos. Usted podría subir el conjunto de archivos de una sola vez, pero resulta que si lo hace que con archivos muy grandes, se toman un tiempo muy largo para cargar, y si se produce un fallo, usted está fuera de suerte y tienes que reiniciarlo. Lo que a continuación hacemos es que decimos otro servidor en nuestro sistema, lo que que llamamos el servidor meta, el servidor de metadatos, hey, este es un archivo y está compuesto por el siguiente lista de bloques. Y pasamos los hashes para identificar esos bloques en lugar de volver a subir todo el bloque. El servidor de meta luego cheques con los servidores de bloque, hace que los bloques están ahí - si el son, perfecto, todo es bueno. THOMAS Carriero: Cuando queremos que, básicamente, descargue el archivo desde Internet, digamos, le pediremos primer servidor del meta, Hey, ¿me puede decir acerca de donde se encuentra este archivo, y el servidor de metadatos va a decir, oh, bueno, este archivo es en realidad 25 de cuatro megabytes trozos, y aquí están. Y luego nos vamos al bloque servidor y nos pondremos en realidad descargar cada uno de los trozos, y luego vamos a reconstruir el archivo desde allí, y luego vamos a empezar la descarga. Sí, ¿y ofertas de Dropbox con la escala, básicamente, por muy, sharding muy agresivo. ALEX ALLAIN: Así sharding es cuando se toma todos los usuarios en su inicio o su empresa, y tal vez se utilizan estar en una base de datos, y que funciona muy bien hasta que golpear un cierto número de usuarios, y realmente lo que quieres que hacer es encontrar alguna manera para dividir los a través de dos bases de datos o tal vez más de dos - idealmente, lo suficiente para que puedas tener todos los usuarios en el mundo. Así que cuando usted fragmento, lo que haces es que encuentre alguna manera de decidir que la base de datos para ir a que no requiere golpear a un directorio central, o tal vez es un muy rápido, barato Buscar en Agenda en ese directorio central. THOMAS Carriero: Nosotros nunca tenemos todo lo almacenado en una base de datos, porque eso es casi nunca va a escalar. Así que en vez, lo que hacemos es que nos tomaremos todo de que la información, todos los archivos son todos los metadatos y vamos fragmento que largo de cientos o miles bases de datos de lógicas. Eso significa que cuando tenemos un solicitud de información de un usuario, vamos primero decimos, oye, qué base de datos es la información del usuario almacenada en, y luego vamos básicamente usamos esa decisión de ir a buscar a esa base de datos, y ahí es donde vamos a cargar todos los archivos o todos los metadatos acerca de los archivos. Así que usamos un montón de sharding, pero sharding no siempre es suficiente. Usted realmente necesita para almacenar en caché un Muchas de las peticiones comunes, porque a pesar de que la base de datos consultas pueden ser costosos. Así también hacemos progresiva estrategias de almacenamiento en caché para asegurarse de que la más común peticiones son bastante fáciles de calcular, y, básicamente, lo que hace que sea mucho más más rápido y hace que funcione a escala. Así que eso es, a un nivel muy alto, clase de cómo funciona Dropbox. ALEX ALLAIN: Mi nombre es Alex Allain. THOMAS Carriero: Soy Thomas Carreiro. ALEX ALLAIN: Y esto es CS50. DAVID MALAN: Ahora bien, si alguna vez se preguntó donde esta cita en la página web del CS50 viene, en realidad Alex quien es el autor original. Ahora, hablando de Dropbox, hace poco recibido este correo electrónico de ellos en mi bandeja de entrada - Hola, David, es posible que cuenta de que algunos de sus enlaces compartidos no están funcionando, y nosotros quería llegar a ti personalmente para hacerle saber por qué. Bueno, ¿qué es un enlace compartido? Bueno, si usted ha utilizado más allá de Dropbox simplemente guardar el código fuente en el interior del aparato, se podría saber que usted puede crear enlaces compartidos por clic típicamente derecho sobre un archivo y copiar la URL en el portapapeles. Ese vínculo compartida puede verse un poco algo como esto, pero en su lugar de la palabra secreta, hay en realidad algo más críptico allí, como una secuencia de letras y números aleatorios. El ser idea de que ahora puedo enviar por correo electrónico o Gchat este tipo de ruta de un amigo, y él o ella podría tener acceso CS50.txt y descargarlo en su ordenador. Y sólo por saber que url, o con súper, súper baja probabilidad, adivinando esa url, podría alguien más realmente acceder al archivo. Desafortunadamente una empresa conocido como Intralinks recientemente publicado en su CollaboristaBlog que en realidad hay un par de amenazas a este flujo de trabajo en particular. Resulta que si accidentalmente cometer un error, como yo, francamente, lo han hecho en el pasado, y pegar una URL como un enlace de Dropbox para compartir, en no la dirección de su navegador bar, pero como se muestra aquí, la barra de búsqueda, que url, por supuesto, va que se someterá a un motor de búsqueda como Google. Por supuesto, Google no va a reconocer necesariamente ese vínculo común, y por lo que vamos a obtener más búsqueda genérica resultados como un enlace Dropbox.com a sí mismo, y en este caso, un anuncio, y De hecho, anuncios, potencialmente, para los competidores de Dropbox. De hecho, así es como Intralinks dado cuenta de esto - que, también, se ejecuta una de AdSense campaña junto con las palabras clave que DropBox mismos pueden usar. Y así, si nos centramos en los resultados de fondo aquí, verás que tiene Inralinks este enlace a su propio servicio. Ahora una de las características de Google y otros motores de búsqueda ' campañas de publicidad es que cuando un usuario como yo hace clic en este enlace, ahora, Voy a ser la divulgación de la url que escribí en Google con el fin para encontrar estos resultados de búsqueda. La idea es que empresas les gustaría saber cómo las personas están encontrando su sitio web. Por supuesto, si he encontrado En esta página de resultados pegando una por lo demás url secreto en Google, He ahora, efectivamente, dicho Intralinks y de su web registros exactamente lo url secreto que se encontraba de visita, divulgar, por tanto, potencialmente, el contenido CS50.txt. Ahora, hay otra amenaza todos juntos - ustedes saben, también, de Dropbox enlaces compartidos que normalmente puede abrirlos dentro de su propio navegador y una vista previa de ellos en el interior de un marco como este. Pero si esa vista previa contiene un hipervínculo, como se muestra aquí para Example.com, y usted o un clic del usuario que hipervínculo, abriendo de este modo un nueva pestaña o ventana con la página de url, lo que ha también acaba de decir a la web servidor, por la naturaleza de cómo funciona HTTP, es el HTTP refieren dirección de donde vinieron. En otras palabras, le informaremos el sitio web de destino que usted era antes en esta url supuestamente secreto. Ahora, ¿qué Intralinks descubierto mirando a través de sus propios registros es que se encuentran un poco de información que fue sin duda destinado a ser secreto - para ejemplo, la hipoteca de alguien solicitud, la declaración de impuestos de otra persona, y racimos de más documentos, así. Ahora, si desea obtener más acerca de esta amenaza en particular, dirigirse a cuadro de sigue en la siguiente dirección aquí, y la realidad es que usted no puede realmente defenderse de una amenaza en la que las personas como yo pego accidentalmente lo que debe ser urls secretas en los motores de búsqueda. Tú y yo simplemente va a tiene que ser un poco más cuidadoso. Pero ellos han estado trabajando en reparar el otro problema por el cual vínculos que se incrustan en un Dropbox vista previa fueron revelando la url referirse. Pero ir a la url para más detalles. Pero ahora, como había prometido, una mirada más cercana en pequeños hámsters comen pequeños burritos. [REPRODUCCIÓN DE MÚSICA] DAVID MALAN: el equipo de ahora CS50 recientemente tuvo la oportunidad para participar en un Proyecto de la película de 48 horas, una organización internacional la competencia durante el cual equipos tenía, de hecho, 48 horas a solas para hacer una película. El problema es que sólo averiguar lo que la película que tenga que hacer en el mismo comenzar de esas 48 horas. En particular, en un reciente Viernes por la noche a las 7:00 pm, nos enteramos de que en CS50 estaríamos hacer uno, una película muda, dos, que la película necesitaba cuentan con un personaje llamado Jeremías Jones, un profesor, tres, que la película necesaria que cuentan con un diario, este de aquí, y cuatro, que teníamos que incluir de alguna manera la línea es lo que es aún aunque, por supuesto, estaban haciendo una película muda. Ahora, 26 miembros del equipo de CS50 participado en esta película de 48 horas proyecto, entre ellos Colton, Dan, Padraig y Shelley Westover, a quien se recordará desde películas como esta de aquí. Ahora, también implicado, por supuesto, fue el propio Ramón Galván del CS50. Ramón, bienvenido al show. RAMON GALVAN: Gracias por invitarme. DAVID MALAN: Y de CS50 poseer Daven Farnham. Ahora, Ramón, lo que fue su papel en la película? [? RAMON GALVAN: código de vuelo] director con Dan, en realidad. DAVID MALAN: Y Daven, usted mismo? Daven FARNHAM: yo era la estrella, así que básicamente hizo el proyecto. Me salvó la película. DAVID MALAN: Usted salvó la película. Daven FARNHAM: yo lo hice. DAVID MALAN: Ahora, decir esto, pero creo tenemos la prueba de pantalla para esta película. Si pudiéramos rodar este clip aquí. Daven FARNHAM: Mi nombre es Daven Farnham, y esto es CS50. Quería decir CSS. Este es CSS. DAVID MALAN: Ahora esta era su primera película? Daven FARNHAM: Uh, no, tal vez. DAVID MALAN: No, bueno, al menos esta vez se trataba de una película muda. Daven FARNHAM: Si. DAVID MALAN: Así que a las 7:00 de la tarde, nos encontramos esos ingredientes requeridos, y luego inmediatamente buceado en como un grupo averiguar qué película estamos eran en realidad va a hacer. ¿Quieres caminar con nosotros a través de cuál era esa noche como? Daven FARNHAM: Así que, básicamente, nos dieron la idea a las 7:00, que básicamente empezamos a una lluvia de ideas, por lo que hacemos todo tipo de reunido en torno a una pizarra y comenzó una lluvia de ideas, y luego a las 9:00, lo intentamos para tirarlo fuera a los escritores, y los escritores lo llevaron de allí. DAVID MALAN: Y mientras tanto, Dan y Shelley y yo en realidad dirigido a Target, por supuesto, nuestra tienda cerca favorito, recoger todos los accesorios para la película habíamos decidido, que en ese momento era - Daven FARNHAM: Habíamos decidido en una película de aventuras de paridad. DAVID MALAN: whic iba a ser muy al estilo Indiana Jones. Daven FARNHAM: Sí, así que necesitábamos un toro látigos y necesitábamos un sombrero de fieltro y esas cosas. DAVID MALAN: Y una muy pieza adornada de joyas que luego sería encontrar en el final del episodio. Por supuesto, volvamos a medianoche o así de Target y se dan cuenta, pues no, eso no es la película que estamos haciendo - psych. Daven FARNHAM: Completamente diferente de la película. RAMON GALVAN: Teníamos una película noir durante un par de horas, luego tuvimos una romántica comedia al final. DAVID MALAN: Así que antes de las 4:00 am, tuvimos una la comedia romántica, y alrededor de las 5:00 am, tú y Dan, el otro director, apareció. RAMON GALVAN: Sí, así que nos dieron juntos y que tipo de planeado donde Wold rodaje, lo que es escenas que dispararían primero, y luego alrededor de las 7:00 o 08 a.m., se en realidad salió y empezó a disparar. DAVID MALAN: Bueno, si usted puede quedarse, nos gustaría hacer algunos detrás de las escenas analiza cómo se hizo la película, pero creo que en primer lugar, ¿de acuerdo darle a la gente el estreno mundial de la película de CS50, Persistencia. [REPRODUCCIÓN DE MÚSICA] DAVID MALAN: Chicos, quiero decir - así que vamos a empezar desde el principio. Así que la primera escena todos rodamos en grupo esa mañana tuvo lugar alrededor de las 8:00 a.m, y en realidad estábamos aquí, Jefferson Hall, que es en realidad una de las salas de lectura de la física en el campus. ¿Y cuál fue el objetivo con esta escena? RAMON GALVAN: Así que nos quedamos aquí para iniciar la película, Daven como un maestro, un compañero de la enseñanza, o un ayudante de enseñanza, algo de esa manera, y él estaba muy molesto que ve a esta pareja saliendo y él quiere eso. Él quiere estar en una relación, él simplemente no lo tiene. DAVID MALAN: Y luego la siguiente escena, hacemos la transición a la realidad no se rodó en orden. De hecho, aquí, usted es - Daven FARNHAM: Así aquí, en realidad, que rodamos este esta - esta fue una de las últimas escenas que rodamos, pero esto en realidad muestra arriba en el principio de la película. Y así, en esta escena, es una montaje, y por lo tanto lo que estoy haciendo es que me estoy poniendo en la colonia, Estoy peinarme. DAVID MALAN: ¿Utiliza colonia? Daven FARNHAM: Uh, Ramón colonia, un montón de colonia. DAVID MALAN: ¿Y de quién camisa? Daven FARNHAM: Eh, camisa de Ramón. DAVID MALAN: Así que eso era más que una sola toma, y ​​la camisa para el final era bastante - Daven FARNHAM: Sí, creo que tuvimos que tomar tres o cuatro toma, por lo que cada toma era tres chorros, por lo que eran cerca de 12 chorros de colonia. Así que olía a esa colonia para el resto del día. DAVID MALAN: Bueno, al menos, muy rápidamente. Nos transitioned exterior, y, de hecho, si te fijas bien, esto es en realidad CS50 de propia Caraballo Lauren. Pero lo que eras pensando con esta escena? Daven FARNHAM: Derecho, por lo que en esta escena, que estamos tratando de llamar su atención. Así que estoy caminando por ella, Estoy peacocking, por supuesto. DAVID MALAN: Peacocking? Daven FARNHAM: Oh, ¿no lo sabes? RAMON GALVAN: Uh, tendría que hacerlo? Daven FARNHAM: Sí, Por supuesto, por supuesto. Así caminar normal, por supuesto, es simplemente caminar normal. DAVID MALAN: Así que esta es la marcha normal? Daven FARNHAM: Eso es caminar normal. Peacocking, lanzar una pequeñas caderas allí. RAMON GALVAN: Es realmente bien aquí. Daven FARNHAM: Todo está bien aquí. Es a partir de esta condición - Todo está en las caderas. Y luego, al final, usted tiene que estallar y bloqueo. Es clave para la maniobra - es clave. DAVID MALAN: Pop y cerradura. Está bien, bueno, en realidad se hizo un mucha comedia física en la película. De hecho, una de las siguientes escenas estuvo aquí en Lamont Library, fuera de la puerta. Daven FARNHAM: Sí, son aquí, así que estoy realmente tratando de - Creo que es un tire de la puerta y estoy empujando, y como esa escena progresa, Estoy empujando y empujando cada vez más agresiva. Y creo que al final, alguien en realidad me golpea fuera del camino. DAVID MALAN: Sí, y en De hecho, no nos dimos cuenta del - hasta la fase de edición. RAMON GALVAN: Sí, así que, si nos zoom en este tiro, y Dan, podemos mejorar un poco? Bien, perfecto. Así que tienes que verme agaché sobre a aparecer y golpear Daven en la cara con la puerta. DAVID MALAN: Que bien que nos encontró imágenes apenas unas horas antes de que tuvo que enviar las películas para la fecha límite. De acuerdo, bien, gracias tanto a los dos para la unión y por protagonizar tales - Daven FARNHAM: Oh, no, gracias. RAMON GALVAN: Gracias. DAVID MALAN: - una película en movimiento. Bueno eso es todo por CS50Live. Muchas gracias a nuestros amigos de Dropbox, muchas gracias a todo el mundo detrás de la cámara, CS50 propio Ramón Galván y Daven Farnham. Este fue CS50 y este era nuestra escena favorita eso no lo hacen en la película. DIRECTOR 1: ¿Vamos a tener el coche en la carretera? DIRECTOR 2: ¡Ya viene, eso está bien. [TOCAR LA BOCINA BOCINA] ACTRIZ: Whoa. Oh, dios.