Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Curso Informatico de Harvard
Curso Informatico de Harvard
As que este binario. Realmente es tan simple como eso. Y yo dira que esto es en re
alidad muy familiar para la mayora todos en esta sala. Djenme seguir adelante y ab
rir un pequeo editor de texto aqu.
Y se puede recordar de la escuela primaria que tenamos cosas como los cientos lug
ar, el lugar de las decenas, y los colocan. Y recordar que si usted tena alguna d
ecimal nmero, como algo al azar como 123, lo hara esencialmente escribir que en fo
rma de estos tres columnas. Y por qu es 1, 2, 3 lo que conocemos como 123? Pues bi
en, en la columna de la izquierda, tenemos uno 100 ms dos 10, por lo que es 120,
ms tres 1s, as que eso es 123.
Ahora
stado
ncias
esta
.
bien, este mundo que nos iluminamos es exactamente el mismo que usted ha e
familiarizado con los aos, excepto que ahora, nuestras columnas no son pote
de 10. Slo son potencias de 2. As, mientras que es el lugar de las unidades,
va a ser el lugar de dos en dos, esto es va a ser el lugar de cuatro patas
Y porque yo slo estoy usando el ms simple de mecanismos para cambiar las cosas den
tro y fuera - la electricidad fluye o la electricidad no fluye - No acabo de ten
er la misma expresin oscilar como 0 al nueve. Vamos a mantenerlo simple estupendo
en este mundo de las computadoras. Slo tengo 0 o 1 - apagado o encendido, falso
o verdadero.
Y por eso lo que estoy representando en este momento es 1, 1, 1, porque cada uno
de estos las luces se iluminan. Bueno, eso me da una 4 ms uno 2, por lo que eso
es 6, ms un 1, y eso es 7. Y ergo hace esta secuencia de tres bits representan el
nmero 7.
As que todo este tiempo, en el interior de su ordenador, haber sido cualquier nmer
o de transistores, cualquier nmero de bits. Pero al final del da, nos puede repres
entar la informacin tan simple como eso. Ahora, por desgracia, slo hemos contado h
asta 7 en CS50 hasta ahora, pero espero que podamos hacer un poco mejor que eso.
Y de hecho lo que podamos.
Supongamos que tenemos como seres humanos slo arbitrariamente decidimos que vamos
para asociar nmeros 1 y 2, 3, 4, 5, 6, 7, con letras especficas de el alfabeto. Y
por razones histricas, que voy a empiezo algo arbitraria, pero estoy va a decir,
los seres humanos, vamos a decidir como una norma, a nivel mundial, que 65 repre
senta el nmero de la letra A. 66 representarn B. Punto, punto, punto. 90 represent
ar la letra Z.
Y supongamos que, si realmente nos ponemos un poco de pensamiento en l, podramos l
legar con los nmeros de los signos de exclamacin y minsculas, y de hecho, otras per
sonas han hecho por nosotros. As que ahora tenamos los bits con los que podemos re
presentar los nmeros, los nmeros con los que podemos representar las letras, y con
letras pueden ahora empezar a componer correos electrnicos y caracteres de impre
nta en la pantalla.
As que permtanme invito, si pudiera, ocho valientes voluntarios - que no les impor
ta que aparece no slo en cmara, pero en el Internet - venir aqu y representan ocho
tales bits, en lugar de estos tres. As que qu hay de una, dos? Qu tal tres? Qu hay de
as cuatro de la luz azul, cinco a la final? Acerca alguien por aqu? Seis delante,
siete en el frente, y ocho en el frente, tambin.
As que slo por lo que pas a venir preparados con un montn de trozos de papel. Y en e
stos pedazos de papel son nmeros que representan lo que las columnas ustedes van
a representar. As que usted ser - cmo te llamas?
ESTUDIANTE: Anna Leah.
DAVID MALAN: Anna Leah, que ser la columna de la 128s. Usted es?
ESTUDIANTE: Chris.
DAVID MALAN: Chris har ser la columna de la 64s. Usted es?
ESTUDIANTE: Dan.
DAVID MALAN: Dan se ser la columna de la 32s.
ESTUDIANTE: Pramit.
DAVID MALAN: Pramit se ser la columna de la 16S.
ESTUDIANTE: Lillian.
DAVID MALAN: Lillian sern los 8s.
ESTUDIANTE: Jill.
DAVID MALAN: Jill se ser la columna 4s.
ESTUDIANTE: Mara.
DAVID MALAN: Mara ser el 2s, y?
ESTUDIANTE: David.
DAVID MALAN: David ser la columna 1s. As que si ustedes pudieran pisar un poco ha
cia adelante para que todos puedan verlo. Lo que ustedes no ven es que en el par
te de atrs de estas hojas de papel es un pequea hoja de trucos que est a punto de i
nstruir a estos ocho bits a cualquiera levantar la mano o no levanten la mano. S
i su mano sube, son que representa un 1. Si la mano se queda abajo, son que repr
esenta un 0.
Mientras tanto, el pblico debe ser capaz de averiguar, a partir de este cartografa
, qu palabra de tres letras stos la gente est a punto de explicar. As que en un momen
to, vas a leer la primera lnea de la parte posterior de su hoja de trucos, y ya e
st bien va a subir o no levantar la mano. Si usted es un 1, se eleva, si eres un
0, te quedas ah torpemente, como si nada. Vaya. Qu nmero, en primer lugar, represent
an a estos tipos?
66. 66, verdad? Contamos con un 1 en la columna de la 64s, un 1 en la columna de
2s. Eso me da 66, por lo que parece que se representa B. As que ustedes han escri
to - OK, eso es suficiente. B.
As que ahora vamos a pasar a nuestra segunda carta. Vaya. Quin es ms rpido para las m
atemticas aqu? As 79. Una vez ms, si sumamos todas las columnas en el que hay un 1,
en la actualidad, slo como lo hicimos antes con el ms simple de ejemplos de 7, que
ahora obtener el nmero 79. Que de acuerdo a nuestra cartografa es el letra O. As q
ue ya casi llegamos. B, O. Y, por ltimo, se van.
Qu estn representando ahora? Menos consenso. Eso es slo un soplo absoluta. S, es de h
echo 87. Bueno.
As que si ahora mapa que volver a - vamos a empezar a llamar a nuestra tabla ASCI
I, Cdigo Estndar Americano para El intercambio de informacin. Eso nos da la carta no "bo", pero "el arco." Y eso es una perfecta cue para ustedes para hacer una
reverencia y la cabeza en la parte posterior. Muchas gracias.
[Aplausos]
DAVID MALAN: Usted puede mantenerlos. Aunque en realidad, lo hara cualquier perso
na gustara una lmpara de escritorio, tambin?
[PITIDO DE AUDIENCIA]
DAVID MALAN: Lmpara de escritorio?
[Risas]
DAVID MALAN: En serio? Lmparas de escritorio para todos? Est bien. As a partir de la
muy simple de principios, hemos ahora no slo cuentan desde 0 hasta el final hast
a a 7, hemos asumido que simplemente lanzando ms bits o ms luces o ms transistores
a este problema, se puede representar los nmeros cada vez ms grandes, y ergo, rang
os cada vez ms grandes de alfabetos, como el Ingls. Y as vamos a echar en la fe par
a hoy que de igual forma podramos empezar a representar grficos y de vdeo y cualqui
er nmero de otros medios de comunicacin con la que nos estamos familiar hoy en da.
As que esto es CS50, y en esta clase junto de ustedes son, de nuevo, muy muchos c
ompaeros de clase que tienen tan poco experiencia que t. Y menciono esto slo porque
bastante a menudo, incluyendo tan recientemente como uno de los eventos de prim
er ao y asesoramiento en estudiante de segundo ao de la primavera pasada asesorami
ento caso, a menudo omos estudiantes renuncian cuando sube a la mesa de CS, bueno
, He estado pensando en tomar este clase de introduccin, pero no soy realmente un
persona ordenador. O bien, pero todo el mundo sin duda sabe ms que yo. Y puse es
to en el tipo de letra ms grande posible, para transmitir este mensaje que eso no
es de hecho el caso.
Y si usted se pregunta, en caso de Yo, de hecho, estar aqu? Darse cuenta de que n
o slo es de este curso ttulo Introduccin a la Informtica Ciencia, es Introduccin a la
Informtica Ciencia I. As que hay de hecho un segundo dicha introduccin. As que uste
d no es, de hecho, en el lugar equivocado. Y entre los objetivos que tengo para
hoy son para disipar cualquier tipo de duda que podra tener, sino tambin para pint
ar un imagen de lo que est reservado para estudiantes menos y ms cmodas por igual e
n este curso.
Pero primero, una palabra en uno de los folletos que tiene hoy en da, entre los q
ue hay una serie de preguntas frecuentes. Ha sido una visin de la nuestra desde h
ace algn tiempo ahora introducir una nueva clasificacin opcin en este curso - a sab
er, SAT / UNSAT. Filosficamente para m, es mucho, mucho, mucho ms importante que el
estudiantes en esta clase se comprometen con la materiales, ser impugnada por e
l materiales, y se preocupan mucho, mucho menos sobre la mecnica de las puntuacio
nes reales y las calificaciones con letras en el semestre de terminar, pero real
mente abrazar la curso y su material. Y en realidad esto se siente, ms en general
, por lo que es interesante para ellos, para sentirse desafiado y recompensado,
pero sin miedo al fracaso.
Y, de hecho, esto tambin es un recurrente tema en este y otros introductoria curs
os en otros campos, que tiene este trepidacin cuando se trata de frotando los ded
os de los pies en aguas desconocidas. Yo mismo, en el ao 1995, era un estudiante
de primer ao. Yo estaba muy concentrado en ser un concentrador Gov aqu. Y sin emba
rgo, yo siempre haba crecido con un poco de un inters en la informtica. Siempre tuv
e curiosidad.
Pero en aquel entonces, incluso, tuve miedo de incluso de poner un pie en el CS5
0, tanto de manera que ni siquiera Shop es estudiante de primer ao ao. Y la nica ra
zn por la que puse un pie en la ao sophomore puerta era porque se le permiti tomarl
a pasa / falla. Pero incluso pasa / no pasa requera que tengo el valor suficiente
para hacer una cita con el profesor Kernehan en el momento, traer esta gran hoj
a de papel, y pedir l por su firma y su permiso para explorar estas aguas descono
cidas.
Y no ha ayudado en los ltimos aos que al hacer esto en CS50, cuando antes se pasa
/ falla, de manera similar lo hara decenas o cientos de sus compaeros de clase ten
er que llegar, Dios no lo permita, en el frente a Sanders con este formulario, q
ue en algunas mentes representa una incapacidad, Me atrevo a decir, para llevar
a cabo son nivel de sus compaeros. Lo cual es ridculo, pero creo hay esa mentalida
d. Y nunca ha habido en esta cultura de SAT / UNSAT o pasa / falla ms Generalment
e, en este curso, o en realidad en este campus.
As que este ao hemos cambiado eso. Me gustara ser la mitad de xtasis de esta clase o
ms terminado ocupando CS50 SAT / UNSAT. En el plazo de un ao, que sera maravilloso
si casi todo el mundo es. A partir de entonces tal vez vamos a trabajar en las
calificaciones con letras en Harvard Colegio en general. Pero por ahora, vamos a
hacer esto dentro de nuestra propia esfera, y lo hara de buena gana Le recomenda
mos que revise esas preguntas frecuentes y hacer preguntas como mejor le parezca
, por lo que esperamos que, a diferencia de m, no es bastante tener ese mismo fact
or de miedo cuando explorar lo que probablemente un lugar desconocido.
Entonces, qu es CS50? Es una introduccin a la empresas intelectuales de equipo la c
iencia y el arte de la programacin. Pero, qu significa esto realmente?
Bueno, hasta ahora, hemos hablado muy brevemente sobre representacin de la inform
acin. Pero supongamos que en realidad queremos hacer algo con l. Tenemos que intro
ducir la nocin de lo que vamos a llamar a un algoritmo. Un algoritmo es un proced
imiento, un proceso, un conjunto de instrucciones para hacer algo.
Y un algoritmo puede ser algo super simple. Por ejemplo, un ejemplo con la que a
lgunos de que podra estar familiarizado es este cosa aqu. As que este libro aqu es c
ada vez ms anticuado, pero una vez en un tiempo, contiene todo un montn de nombres
y nmeros de telfono. Y de hecho, si quera encontrar alguien en este libro de telfon
o - por ejemplo, alguien llamado Mike Smith - Que pude encontrar Mike Smith en c
ualquier nmero maneras de bastante sencillo. Podra empezar por el principio y pasa
r a la pgina 1, no existe. Pgina 2, no existe. Page 3. Es ese algoritmo, es que pro
ceso, correcto?
Por lo que es correcto, verdad? Soy una especie de idiota por haberlo hecho en de
esa manera, pero con el tiempo lo har encontrar el apellido S, y espero que Mike
es en esa seccin, y me convertir hecho con mi algoritmo. Pero seguro que no es in
tuitiva. La mayora de cada ser humano razonable en esta habitacin no habra hecho es
o. Qu habra hecho usted?
Hubieras ido directamente a la mitad, no? Aproximadamente a la mitad. Y te das cu
enta, oh, se trata de la Sra. As que Mike Smith, el apellido es Smith, no es, cla
ramente, a continuacin, en el dejado a la mitad del libro. l debe ser hacia el S d
e la razn. Y en este punto, aunque la mayora de nosotros no haga esto en la realid
ad, podemos literalmente, romper este problema a la mitad.
[Vtores y aplausos]
DAVID MALAN: Gracias.
[Vtores y aplausos]
DAVID MALAN: Usted puede, literalmente, romper este problema a la mitad, y me de
j con, literalmente, una media de un problema tan grande. As que si este libro de
telfono era - y es Probablemente era - unas 1.000 pginas, ahora es slo 500. Si hago
esto otra vez y me doy cuenta, oh, maldita sea, fui demasiado lejos, yo estoy e
un mira este video de cinco minutos producido por nuestros amigos de TED que def
ine lo pseudocdigo es decir, define lo pensamiento algortmico es, e incluso aunque
el ejemplo que estamos a punto de ver es, de por s, muy simple, es va a empezar
a darnos lo mental modelo, el vocabulario, con el cual hacer mucho, mucho ms comp
lejo algoritmos con bastante rapidez.
[INICIAR REPRODUCCIN DE VDEO]
[REPRODUCCIN DE MSICA]
NARRADOR: Qu es un algoritmo? En ciencias de la computacin, un algoritmo es un conj
unto de instrucciones para la solucin de algunos problema paso a paso. Tpicamente,
se ejecutan los algoritmos por equipos, pero nosotros los humanos tenemos algor
itmos, as. Por ejemplo, cmo usted va trata de contar el nmero de las personas en una
habitacin? Bueno, si eres como yo, lo que probablemente punto en el que cada per
sona, de uno en uno la vez, y contar a partir de 0. 1, 2, 3, 4, y as sucesivament
e.
Bueno, eso es un algoritmo. De hecho, vamos a tratar de expresar una poco ms form
almente en pseudocdigo - Sintaxis Ingls-like que se asemeja un lenguaje de program
acin. Sea N igual a 0. Por cada persona en la habitacin, ajuste N igual a N ms 1.
Cmo interpretar este pseudocdigo? Bueno, la lnea uno declara, por as decirlo, una var
iable llamada N y se inicializa su valor a 0. Esto slo significa que al principio
de nuestro algoritmo, la cosa con la que estamos contando tiene un valor de 0.
Despus de todo, antes de empezar a contar, no hemos contado nada. Llamar a esta v
ariable N es slo una convencin. Podra haber llamado a que casi cualquier cosa.
Ahora la lnea dos demarca el inicio de una lazo, una secuencia de pasos que se re
petir un nmero de veces. As, en nuestro ejemplo, el paso que estamos tomando est co
ntando la gente en la sala. Debajo de la lnea dos es la lnea de tres, que describe
exactamente cmo vamos a ir sobre el conteo. La indentacin implica que es lnea de t
res que se repetir.
Entonces, qu est diciendo es pseudocdigo que despus de comenzar a 0, para cada uno pe
rsona en la habitacin, vamos a aumentar N en 1. Ahora es correcta este algoritmo?
Bueno, vamos a golpear en un poco. Funciona si hay dos personas en la habitacin?
Vamos a ver.
En la lnea uno, inicializamos N a 0. Para cada una de estas dos personas, entonce
s incrementamos N en 1. As que en el primer viaje a travs de la bucle, actualizamo
s N de 0 a 1. En el segundo viaje a travs de esa misma bucle, actualizamos N desd
e 1 a 2. Y as, a finales de este algoritmo, n es 2, que de hecho coincide con el
nmero de personas en la habitacin.
Hasta ahora, todo bien. Qu tal un caso lmite, sin embargo? Supongamos que hay 0 per
sonas en la sala -, aparte de m, que est haciendo el conteo. En la lnea uno, inicia
lizamos N a 0. Esta vez, sin embargo, la lnea de tres no ejecutar en absoluto, ya
que no hay un persona en la habitacin. Y as sigue siendo N 0, lo que coincide con
el nmero de personas en la habitacin. Bastante simple, verdad?
Pero contar personas en
uro que podemos hacerlo
r de contar 1, 2, 3, 4,
8, y as sucesivamente?
Vamos a expresar esta optimizacin en pseudocdigo. Sea N igual a 0. Para cada par d
e personas en la sala, establecer N igual a N ms 2. Cambio Bastante simple, verdad
? En lugar de contar a las personas una a la vez, en vez de eso contamos ellos d
e dos en dos. Por lo tanto dos veces de este algoritmo tan rpido como la ltima.
[Murmurando MULTITUD]
DAVID MALAN: Sabe usted donde Lauren es? 729?
[Murmurando MULTITUD]
DAVID MALAN: Est bien?
[Murmurando MULTITUD]
DAVID MALAN: Muy bien, debemos estar llegando al final. Vemos un compaero de los
que estn aqu todava. Quin ms necesita para ser emparejado? Si ustedes quieren empareja
rse. Alguien arriba. Por qu no echar una mano aqu. Para las pocas personas que toda
va estn de pie, Qu nmeros tener en su mente?
ESTUDIANTE: 78.
DAVID MALAN: 78 plus - quien est de pie aqu abajo?
ESTUDIANTE: 39.
DAVID MALAN: Plus 39. Adems quin ms sigue en pie? 81? Bueno, quin ms? Otro 81? Wow. Y
ntonces lo que es en la parte trasera?
ESTUDIANTE: 49.
DAVID MALAN: 49, plus?
ESTUDIANTE: 98.
DAVID MALAN: 98 plus? Es que alguien ms? 12? Buen trabajo.
[Risas]
DAVID MALAN: Oh, 112 - oh. Buen trabajo!
[Risas]
[Aplausos]
DAVID MALAN: Alguien ms sigue en pie? Lo sientes?
ESTUDIANTE: 99.
DAVID MALAN: 99. Alguien ms an en pie? Y el nmero total de estudiantes aqu es en real
idad, de acuerdo con - tiene usted un nmero? Oh, el nmero real de personas en el am
biente, de acuerdo con la cuenta que los becarios de enseanza estaban haciendo en
el camino de todos en, era 729. As que de una sala llena de estudiantes de Harva
rd que contaba a s mismos, la respuesta es 637.
[Risas]
DAVID MALAN: Tan cerca. Pero an as. OK, as que eso es una enseanza momento, verdad? E
sto ahora es lo que describimos como un bicho. En algn lugar en el camino, hicimo
s un poco de mal aritmtica, o alguien se sentaron, o hacia la izquierda, o algo s
ali mal. Pero eso est bien. Porque an as, nos tengo muy cerca. Y yo dira que llegamos
al mal responder mucho ms rpido de lo que hubiera usando mi enfoque ms lineal.
As que supongamos que, en efecto, obtenemos que correcto, pero pensar ahora en lo
que que estaba ocurriendo en cada ocasin, frente a mi propio algoritmo apuntando
ingenuo. Uno, dos, tres. Si de hecho hay 729 o 637 personas aqu, que me habra lle
vado literalmente, 637 o 729 pointings del dedo y incrementando mi cuenta total.
Y yo podra hacer un poco mejor por va dos, cuatro, seis, ocho, y doble de esa ve
locidad, incluso triple o cudruple, dependiendo de lo bien que puedo hacer que el
conteo en mi cabeza.
Pero este enfoque que ustedes tomaron era fundamentalmente diferente. Debido al
principio, todos ustedes se pusieron de pie. As que todo 729. Y entonces literalm
ente medio de que se sent. Y despus de eso, otro la mitad de ustedes se sent. Y des
pus de eso, otro la mitad de ustedes se sent.
Y el nmero total de veces que chicos podran haber sentado es aproximadamente ocho
o nueve o diez veces en total, dependiendo de lo que nuestro recuento total es.
Y podemos hacer una especie de esta a la inversa. Si tuviramos 1.024 personas en
la sala, la nmero total de veces que se poda reducir a la mitad 1.024 personas es
10.
Ahora piensa en ello en la otra direccin. Supongamos, ridculamente, que tenamos, po
r ejemplo cuatro mil millones de personas en esta sala, o una habitacin un poco ms
grande. Cuntas veces hemos ido a travs de este algoritmo, de tal manera que la mit
ad de esa clase se sienta? Slo va a tomar 32 como las operaciones, incluso en una
clase de tamao cuatro mil millones. Por qu? Debido a cuatro mil millones va a dos
millones de dlares, se destina a un milln, va a 500 millones, va a 250 millones, p
unto, punto, punto. Yo slo puedo hacer esa divisin el 32 veces, y en ese momento,
todo el mundo menos una persona se quede en pie.
Y eso, tambin, es una especie de gran alcance idea de que cada vez vamos a tratar
de apalancamiento en este curso, y en la programacin y la informtica ms En general
, estos grmenes de una idea con que podremos resolver problemas mucho, mucho ms po
derosa. As que empezamos muy simple con la pseudocdigo y un chico en una habitacin,
pero ahora con toda una sala llena de gente hemos hecho fundamentalmente mejor.
Bueno, ahora vamos a transicin de pseudocdigo a algn cdigo real. Este lenguaje est a
punto de ver que suceda que se llamar JavaScript y volveremos a este hacia final
del semestre. Es un lenguaje de programacin que utilizar para hacer sitios web y
otros tales software en estos das. Y lo hemos utilizado, gracias a un amigo de lo
s nuestros en Stanford, para codificar alguna informacin oculta aqu. Este es el ar
te de la esteganografa, por as decirlo, donde se puede ocultar informacin en lo que
de otro modo parece ser un ruido o completamente diferente imagen por completo.
Pero incrustado en esta imagen particular es de hecho un mensaje secreto de la
clase.
As que djame ir adelante y tire hacia arriba la misma imagen aqu, esta tiempo en un
navegador web. Y yo voy a agitar la mano a algunos de los detalles de hoy, sobr
e todo para aquellos de ustedes que esto se parece a no slo JavaScript sino en gr
iego, como lenguaje completamente desconocido. Pero este es un ejemplo de un len
guaje de programacin.
Y por ahora, tener fe en que esta primera lnea de cdigo - y por el cdigo, me refier
o slo texto. El texto que podra haber escrito literalmente en Microsoft Word, si t
uviera la software adecuado a continuacin, hacer algo con l. Cdigo fuente de progra
macin, la programacin cdigo, en realidad es slo el texto, y se ve diferente, basado
en el idioma que est usando, no a diferencia de Ingls y Espaol y ruso toda la mirad
a diferente cuando los escribe en su teclado.
As que esta primera lnea, por ahora asumir fe, simplemente abre un grfico de la Int
ernet, ese grfico ruidoso que acabamos de ver. Esta prxima lnea aqu es un ejemplo de
un lazo, y que de hecho vimos esa misma jerga en el video de TED. Un bucle es a
lgo que sucede de nuevo y otra vez, ya pesar de que esta parece absolutamente crp
tica, con el palabra clave, y algunos parntesis y algunos puntos y coma. Volverem
os a que en poco tiempo, pero que bucle no es esencialmente dicindole al programa
, iterar sobre todos de esos puntos ruidosos, de izquierda a derecha, de arriba
a abajo.
Debido a que al final del da, una imagen como esto - y en realidad se puede tipo
de verlo en este proyector - es en realidad una malla de puntos. As que podemos i
dentificar cada uno de esos puntos por una coordenada, x, y, y con este programa
, ahora podemos empezar a hacer algo para esos puntos.
As que lo que voy a seguir adelante aqu y hacer es que voy a hacer algunos cambios
. En primer lugar voy a seguir adelante y deshacerse de todo eso verdoso y azula
do ruido, y yo voy a seguir adelante y escriba lo siguiente sintaxis ciertamente
crptico. im para una imagen. set azul en la ubicacin x, coma, ubicacin y, a 0. En
otras palabras, quiero simplemente desactivar todas las de la nada puntos en esa
foto.
Voy a seguir adelante ahora y haga clic en este botn Run / Save, y usted notar en
el lado derecho, Aparece la imagen resultante. Ahora es muy verde, pero eso no
es sorprendente, ya que, literalmente, la vuelta fuera, haciendo una 1 un 0, tod
os el azul en esa foto.
Bueno, ahora vamos a hacerlo un poco ms. im para una imagen, punto setGreen, x, y
. Y eso slo significa reiterar desde la izquierda a derecha y luego de arriba a a
bajo. Apaga eso con un valor de 0, tambin. Guardar. Y en el proyector, no se pued
e en realidad ver nada en absoluto.
En la pantalla de mi ordenador porttil, si me asomo en tan slo de la manera correc
ta, puedo ver un poco de una imagen, porque son todava algo de rojo en ese pas. Si
alguna vez has escuchado la sigla RGB - rojo, verde, azul - se est refiriendo a
esta composicin de una imagen con slo los tres colores. Y en este momento, hemos t
irado todo verde, todo azul, pero no hay mucho rojo.
As que permtanme poner encima de la roja. Cmo puedo hacer eso? Bueno, en primer luga
r, voy a pedir este programa una pregunta. Voy a seguir adelante y vamos a llama
rlo una variable, al igual que en el lgebra. Usted puede tener x o y o z. Voy a d
eclarar una variable y decir, poner en esta variable, temporalmente, el valor de
la imgenes getRed valor en x, y.
Y de nuevo, vamos a volver a todos de este detalle en el futuro. Pero, por ahora
, slo toma en la fe que esta lnea est pidiendo el programa, lo que es el valor de r
ojo en x, y? En ese punto en particular?
Entonces yo voy a hacer algo. Entonces me voy a hacer punto de imagen ajustado r
ojo en x, y, y, pero esta vez me voy a potenciarlo haciendo veces en rojo, digam
os, 10. Por lo tanto aumentar por un factor de 10. Permtanme Alejar ahora y click
poda correr / Guardar. Y voila, que estaba all todo el tiempo, a pesar de que nue
stros ojos humanos no poda verlo del todo.
As que de nuevo, esto ahora es de cdigo real, una ejemplo de un lenguaje que vamos
a venir volver al poco tiempo. Pero darse cuenta, sobre todo aquellos de ustede
s sin esa experiencia, es bastante antes que nosotros mismos seremos escribir cdi
go como el que existe. De hecho, una herramienta con la que ya est todo algo fami
liar, tal vez, es CS50 de propia herramienta de compras por supuesto-, que era r
ealmente reiniciado este verano por algunos de los propios antiguos alumnos del
CS50, Ahora gire TFS.
As que esto pasa a ser un sitio web construido en un lenguaje llamado PHP. Utiliz
a una base de datos llamada MySQL, las cosas con el que nos pondremos nuestras m
anos despus sucia en el semestre. Pero lo creas o no, incluso algo como esto redu
ce en ltima instancia a la ms simple de los bucles y las condiciones y ramas, como
las que vimos slo un Hace momento en el video de TED.
Lo que pens que me gustara hacer ahora es no comparte slo algo que el personal ha h
echo para el campus, sino ms bien algo ex alumnos - estudiantes, de hecho - hecho
este ltimo ao, Sierra, Daniel, y Sam, el ltimo de los cuales no tena antes experien
cia de programacin cuando asumi el CS50. Y para su proyecto final, exhibido, en la
Feria del CS50, un aplicacin llamada wrdly, que es un programa basado en la web
para los que hicieron este video que pens que me gustara compartir con le dar un se
ntido de lo que es justo posible para el final del plazo.
[REPRODUCCIN DE MSICA]
DAVID MALAN: Eso es de la Semana Cero hasta la semana 12 de este ao pasado.
[Aplausos]
DAVID MALAN: Como un teaser, tambin, realmente para abrir el apetito es a lo que
es posible, es posible que haya visto ya, o poco, vean, market.cs50.net, un nuev
a herramienta que el equipo del curso tiene estado trabajando en, esta vez en co
laboracin con el estudiante de Harvard Agencias, de manera que a partir de este ao
y continuando con suerte en este prximo verano tendr un estndar oportunidad en el
campus de comprar y vender cosas de inters para usted. Y con la asociacin a travs d
e la HSA, usted Tambin ser capaz de colocar elementos de en una de las tiendas fsic
as de la HSA en algn momento en el futuro, a fin de cosas proxy, especialmente co
mo usted graduado y no necesariamente quiere descartar las cosas, pero en realid
ad pagar remitir a la gente que podra seguir usted aqu en el campus. As que ms en el
venidero.
Pero un poco ms concretamente, una herramienta que ha salido de CS50 en los ltimos
aos aos, con la que algunos de ustedes podran estar familiar y otros de ustedes po
dran estar google ahora, en CS50.net/2x, usted encontrar un enlace a una extensin
de Chrome lo cual es demostrativo de cmo puede el uso de JavaScript, el mismo que
el idioma se utiliza con la torre Eiffel hace un momento, para poner en prctica
la velocidad de reproduccin 2x para todos los vdeos de Harvard iSites. Esto es alg
o que se construye en el propio reproductor de vdeo del CS50. Pero esto, tambin, s
i usted comienza a cavar en el cdigo fuente, que vamos a felizmente a disposicin,
usted ver cmo incluso se puede solucionar problemas como que, acelerando los widge
ts en sitios web con que ya est bien familiarizado.
As que una palabra ahora en el curso y expectativas y lo que est por venir. En gen
eral, nos reunimos aqu en verdad los lunes y mircoles - aunque este viernes, nos r
euniremos porque del Shopping Week - 1:00-14:00, aunque a veces hasta las 02:30.
Teniendo en cuenta que es posible que, por tanto, querer o tener que tomar algu
nas clases a las 2:00 pm adelante, o incluso antes, no darse cuenta de la Por su
puesto es de apoyo de lo que se llama inscripcin simultnea, por lo que vamos a apo
yar una peticin a la Junta de anuncios y el residente de los decanos en su nombre
si usted tiene un conflicto en algn lugar en este 1:00-2:30 rango. Dirjase a la U
RL en lnea para detalles adicionales.
Pero en trminos de la estructura de soporte que caracteriza CS50, para los estudi
antes ms y menos cmodo por igual, nos ofrecer pistas distintas de secciones. Y est
e es un par de semanas de descanso, pero en poco tiempo, se le pedir que su nivel
de comodidad. Est usted entre los que menos cmodo, ms cmodo, o en algn punto intermed
io?
Y tendremos tres canales distintos pistas que se adaptan a precisamente esas aud
iencias. As que en ningn momento el trmino debe usted incluso sentir como si estuvi
eras en competencia en contra de cualquier estudiante con ms o menos de fondo que
usted. De hecho, el curso est destinado a ser mucho ms colaborativa y mucho ms abi
erto que eso.
Y, de hecho, con ese fin, tenemos un evento de inicio de curso, tambin. Si este t
ipo de cosas de inters para usted, o usted es por lo menos curioso en cuanto a lo
que esto, saber que una nueva tradicin de la curso se llama CS50 Puzzle Day. Y e
sto fue instituido un par de aos atrs para sealar realmente a la escuela que la inf
ormtica no se trata de programacin, y ciertamente no es trata de abrazar slo aquell
os estudiantes que tienen experiencia previa. En realidad se trata de resolucin d
e problemas ms en general.
Y as Puzzle Da, en los ltimos desde hace aos, ha evolucionado hasta convertirse en u
n buen asociacin con nuestros amigos de Facebook, por lo que habr fabulosa premios
y pizza al otro lado del ro en el i-lab este prximo sbado. Dirjase a la direccin URL
con dos o tres amigos si usted desea participar en esta nueva tradicin.
As que me gustara pedirle que mantenga una cosa en mente, y tenemos slo un clip de
dos minutos sobre el cual para cerrar hoy. 73% es el nmero de recordar. Cake tamb
in le esperan fuera de esta crucero como de levantar la sesin en cuestin de par de
momentos, que es una tradicin del curso, tambin. Pero esta es la cita clave de la
plan de estudios de curso para tener en cuenta. Lo que en definitiva importa en
este curso no es tanto dnde terminan en relacin con sus compaeros de clase, pero do
nde que, en la Semana 12, termina con relacin al a ti mismo en la Semana 0.
Pero la visin de que vamos a dejarte con aqu hoy es este ltimo aqu por nuestro mismo
Daniel, que hizo la vdeo wrdly hace un momento. Os dejo con esta visin de lo que
se avecina. Y como hacemos esto, si pudiramos tener CS50 El personal de la parte
delantera de la habitacin que vamos hasta la etapa de pintar todo la ms de una ima
gen visual como a lo que le espera este ao - conseguir incmodo. Vamos a concluir c
on esta aqu en la pantalla.
[REPRODUCCIN DE MSICA]
DAVID MALAN: Este es CS50.
[MSICA - Matt & Kim, "Est bien"]
ALTAVOZ 1: Me encanta CS50 ms de gatos.
ALTAVOZ 2: Whoaaaa!
[Risas]
DAVID MALAN: Este es, entonces, CS50. Nos vemos el viernes.
[Aplausos y ovaciones]
NARRADOR: En la prxima CS50, un escenario demo no salen segn lo planeado.
DAVID MALAN: Queremos encontrar Mike Smith en este directorio. Bueno, cules son su
s instintos? Yo podra ir ms o menos a la mitad de la gua telefnica, mirar hacia abaj
o, vemos que Estoy en M, y ahora s que Mike Smith no est a la izquierda. l debe ser
el de la derecha. Y lo que en este punto, literalmente puede romper - en este p
unto, podemos literalmente a la rotura - en este punto, podemos figurativamente
romper la gua telefnica por la mitad.
[Rasgueo UKELELE]