>> [Speel van musiek]
David Malan: Alle reg.
Dit is CS50.
[Musiek speel Tritonal, Kontant Kontant, "Untouchable"]
[Speel van musiek]
SPREKER 1: Ek gaan Frankryk, en jy gaan ook.
[Speel van musiek]
David Malan: Dit is CS50, Harvard Universiteit se bekendstelling
om die intellektuele ondernemings van rekenaarwetenskap
en die kunste van program-- en vir die eerste keer in die geskiedenis,
Yale Universiteit se so goed.
Inderdaad, of jy nou hier in Cambridge of in New Haven of Miami of St Louis
of Amsterdam of op enige plek rondom die wêreld
neem CS50, rekenaar wetenskap E50, CS50X, CS50 AP,
Ons is almal een en dieselfde.
Welkom by CS50.
>> Wat ons have--
>> [Applous]
>> [LAG]
>> [Applous]
>> Toe het ek 'n fout gemaak het myself 'n paar tyd gelede toe ek begin kollege.
En ek het na die kollege, en ek het besluit om eerlik, hou binne my gemaksone.
Ek beland waarby 'n konsentrasie, of 'n groot, van die regering.
Ant wat meestal 'n funksie van my om mooi vertroud is met die regering
of ten minste geskiedenis of ek regtig graag grondwetlike reg in die hoërskool.
En so toe ek hier, ek soort van aangetrek het dinge
waarmee ek reeds bekend.
Reg?
Dit is ver van wat ek doen swak in die klas.
Ek beslis wou bly binne my gemaksone,
en dit was nie tot stage jaar dat ek uiteindelik
het die senuwee om te stap voet in 'n klaskamer genoem CS50.
En op daardie stadium, het ek uiteindelik besef dat my God, huiswerk kon eintlik
wees pret.
>> Inderdaad, ek was een van daardie kinders wat op Vrydag aande wanneer
die P-stelle vrygelaat sou word, het ek sou teruggaan na my kamer en duik
in die nag se P-stelle.
En vir my, sodat 'n teken hierdie dit was 'n veld vir my.
Maar wat is meer belangrik was die feit dat ek gedoen opstaan ​​hierdie senuwee
om water onbekende verken vir my en kry buite my eie gemaksone
en eerlik, ek was net in staat om dit te doen stage jaar deur die neem van hierdie klas
slaag / druip.
>> Inteendeel, dit was die heel laaste dag toe Ek het uiteindelik oorgeskakel en uiteindelik
verklaar CS soos my konsentrasie, om gov op daardie stadium agter my.
En so is ons nie uiteensit in hierdie kursus aan almal van julle te draai
in CS hoofvakke of concentrators, maar eerder om jou 'n geleentheid te gee
om hopelik verder gaan as die wêreld waarmee jy tans bekend
en terug te bring van die wêreld vaardighede en kennis en vaardig
wat jy kan toepas om jou eie wêreld, of dit
in die geesteswetenskappe, sosiale wetenskappe, natuurwetenskap, of buite.
>> Inderdaad, as jy voel 'n bietjie onverskrokke
oor die feit dat in hierdie kamer laat staan ​​in hierdie klas,
besef dat as die geskiedenis is enige aanduiding is, 72% van jou
het 'n CS natuurlik nog nooit tevore geneem.
So is dit met alle middele nie die geval dat die student sit aan die linkerkant
of na regs of voor of agter jou weet veel meer oor CS
of ontwikkeling in die besonder as jy.
Dit is nie in werklikheid die geval.
En inderdaad, die grootste deel van die ondersteuning struktuur
dat ons gevaar het wat in hierdie Natuurlik het die afgelope jare
is presies wat reason-- om bied 'n op oprit wat nog uitgange
net so streng en net so hoog as ever--
maar die helling van wat studente in staat stel minder gemaklik en meer gemaklik
gelyk aan ongeag slaag van sy of haar vorige agtergrond.
>> Inderdaad, wat uiteindelik aangeleenthede in hierdie klas is nie
soveel waar jy beland relatief tot jou klasmaats
maar waar jy in week 12 uiteindelik relatief tot jouself
in week nul, wat waar ons is vandag hier.
>> Inderdaad en dit kan baie goed en waarskynlik lyk soos Griekse
om baie van julle.
Maar wees verseker, dat hierdie en soveel meer
gaan heeltemal binne jou gryp in net 'n bietjie van die tyd.
>> Maar vandag, ons fokus op 'n paar van die hoër idees vlak
aan u 'n voorsmakie te gee van CS50 en rekenaarwetenskap
in 'n sekere sin van wat jy aan te meld vir.
En inderdaad, rekenaarwetenskap dalk meer word gedistilleer
eenvoudig as computational thinking-- dink soos 'n rekenaar, as jy wil.
En daar is so baie verskillende dinge bestanddele wat daarop ingaan nie,
maar laat ons stel net drie vir vandag.
As die doel van die klas uiteindelik is nie om jou te leer programmeer,
is nie om jou te leer C of PHP of SQL of enige aantal van die woorde
en akronieme in die Natuurlik se beskrywing,
maar eerder om jou te leer om probleme op te los meer effektief
en om meer metodies dink en meer algoritmies, om so te praat.
Kom ons kyk wat presies dit beteken.
>> So sou ek dat denke stel bestryk daarop neer
om probleme op te los.
Wat het jy nodig om 'n probleem op te los?
Jy moet input-- soos die insette tot die problem--
jy 'n uitset, moet wat is hopelik die oplossing,
en dan kan jy 'n proses nodig wat tot die probleem, op te los wat
ons sal noem 'n algorithm-- 'n stel instruksies vir die oplos van 'n probleem.
>> Maar eers, laat ons fokus op die eerste en die laaste van hierdie insette en uitsette.
Rekenaars immers blykbaar net verstaan ​​nulle en ene.
Maar hoe kan dit moontlik wees?
Selfs as jy nie vertroud is glad met wat onder die enjinkap,
jy waarskynlik ten minste gehoor het dat rekenaars te verstaan ​​binary--
net nulle en ones-- maar hoe kan jy dalk iets interessant doen?
>> Wel, een van die temas van die klas gaan
wees hierdie layering-- waar vandag, sal ons neem 'n vinnige blik op die laagste vlak
besonderhede, maar met elke dag wat verbygaan, waar ons laag
of abstrakte op die top van die besonderhede om werklik op te los 'n hoër vlak
probleme van belang is vir ons.
>> So hier is wat ons kan noem binary-- met net 'n alfabet van 0 en 1.
Maar ons mense is meestal vertroud is met desimale.
Desember betekenis 10.
Bi beteken twee.
En so in die desimale stelsel, ons het 10 syfers
by ons disposal-- van Natuurlik nul deur nege.
So as jy kyk na 'n aantal soos hierdie, die meeste van julle
intuïtief net verstaan ​​wat 123.
Daar is niks regtig hard daaroor.
Maar hoekom is dit 123?
Wel, as jy dink terug na graad school-- of ten minste
die manier wat ek dit geleer soort world-- jy
sal onthou dat ons behandel hierdie dinge in kolomme, of plekke.
>> Dus het ons die kinders plaas op die regte.
Die tien plaas in die middel.
Die honderde plaas aan die linkerkant.
En dan hoe kry ons Van hierdie patroon symbols--
1 2 3-- om hierdie hoër vlak idee dat ons weet as 123?
Wel, dit is net 'n paar eenvoudige rekenkundige.
Reg?
>> Die een is daar in wese beteken gee ons 100 keer 1 plus 10 keer
2 plus 1 keer 3.
En natuurlik as ons dit doen uit die Daar wiskunde, dis 100 plus 20
plus 3-- andersins bekend as 123.
>> So as jy op die dieselfde bladsy as dit reg
nou en is gemaklik met die sogenaamde desimale stelsel as 'n mens,
dit is eintlik goed binne jou omvang van troos
om nou kyk hoe die binêre stelsel.
Neem 'n wilde guess-- dit verteenwoordig, in die wêreld van rekenaars
in binary-- hoeveel?
Zero.
>> Maar hoekom is dit?
Wel, dit blyk dat die kolomme of plekke here-- hulle is nie magte van 10.
1, 10, 100, 1000, en dies meer.
Hulle is in plaas daarvan, heel eenvoudig, magte van 2.
So, 1, 2, 4, 8, 16, 32, en so aan.
En so nou is ons natuurlik kry om 0 hier bloot omdat ons het 4 keer
0 plus 2 keer 0 plus 1 keer 0, wat natuurlik gee ons 0.
>> Maar hoe gaan ek te werk wat die nommer 1?
Wat is die patroon van nulle en ene te verteenwoordig
die getal wat ons mense ken as 1?
001.
En 2?
010.
>> En nou het die patroon begin herhaal.
Nou is dit 011.
En weer, 0 viere, een 2, een 1.
So 2 plus 1.
Dit is 3.
>> En nou verteenwoordig 4 Ons nie net verander wat 0 tot 'n 1.
Jy het soort te voer, om so te praat, en die getalle
begin daarby om net soos in die desimale wêreld.
>> Dit is dus 4.
Dit is 5.
Dit is 6.
Dit is 7.
En so het ons getel so hoog as 7.
>> Nou moet ons net nodig het, is meer 'n bits-- meer nul en 'n mens se.
En inderdaad "stukkies", as jy het ' hoor term-- binêre syfer.
Bietjie is waar dat vandaan kom.
En so as ons wil verteenwoordig groter getalle, moet ons meer stukkies.
Maar laat ons nou beweeg weg van skyfies om iets 'n bietjie meer real.
Veronderstel dat ons wil eintlik verteenwoordig hierdie ding.
>> Wel, laat ons nou 'n blik 'n bietjie demonstrasie.
So dit is 'n web-gebaseerde program dat een van CS50 se eie, Michael G,
sit in die somer saam om te help ons verklaar presies hierdie idee.
En sou iemand soos om te waag op die verhoog
in die voorkant van al sy of haar klasmaats?
Net daar voor.
Kom op.
>> Jy moet gemaklik wees Op kamera en die internet.
Ag, net hier.
OK.
Ons is OK.
Alles reg.
Kom op.
Wat is jou naam?
Emily kom tot.
So, dit is Emily.
Wat jaar is jy?
>> Eerstejaars.
>> Emily, lekker om jou te ontmoet.
David.
>> Alles reg.
So op die skerm hier, Ons het hierdie touch screen
wat gaan ons toelaat om eintlik interaksie met hierdie program,
en dit is net 'n leser.
Dit is Chrome volle gekeur op die oomblik, maar dit is
geprogrammeer deur Michael om reageer op 'n manier wat dit moontlik maak
ons om te speel met binêre syfers.
>> So byvoorbeeld, hier het ons nie drie, maar agt bits-- nulle en ene.
Op die oomblik is, ons is kyk na die aantal 0.
En inderdaad, al agt nulle in desimale beteken nul.
So dit is al wat dit is word te kenne gegee hier.
>> So as jy wil verteenwoordig die aantal 8,
Wat is die patroon van nulle en dié wat jy wil?
Jy kan eenvoudig tik op of af of die getalle hulself.
Alles reg.
So dit is natuurlik 8, as jy daar bo kan sien.
En as ons wou doen 16, wat doen ons?
>> Yep, net weer te raak nie.
16.
Alles reg.
So dit is alles goed en wel, dit is nog steeds 'n baie lae vlak.
Ons moet 'n manier in die werklike wêreld vir Emily
om werklik verteenwoordig hierdie dinge.
En so dink dat ons draai hierdie nulle en ene, wat baie
konseptuele, in werklike gloeilampe.
Reg?
>> 'N Rekenaar is 'n fisiese, meganiese, elektriese toestel.
En sy input-- ten minste as jy prop dit in of beheer it--
is om die battery krag het en elektrone vloei in en uit.
>> So nou, waarom nie ons stop denke oor stukkies as nulle en ene,
maar iets meer fisiese soos gloeilampe hier.
En as Dan Armendariz kan aansluit my vir net 'n moment-- kom op up--
ons gaan ry staan ​​'n aansoek.
>> Kom oor, Emily.
Jammer dit is die mees ongemaklike demo vir jou ooit.
Kom hier.
Ons gaan ry met dank aan Dan
Armendariz, 'n ander lid van ons personeel, 'n aansoek bekend as binêre gloeilamp.
>> So, wat het ons hier is 'n iPad aansoek
wat die volgende gebruiker koppelvlak op die skerm vir Emily.
Dit is net 'presies dieselfde UI in wese is dit daar.
En as jy nou wil verteenwoordig die aantal, sê 8,
hoe sou jy te werk gaan doen hierdie merk op die regte,
die gloeilampe wat ons hier?
Ag-ha.
Magical.
So as ons wil dit nou verander in ' iets wat 'n bietjie meer uitdagend,
en laat ons gaan voort en haal 'n ewekansige getal soos die nommer 50 hier.
Insette hierdie.
En as jy nou uitgedaag word om vorendag te kom met die getal 50,
Ons sal 'n fantastiese prys vir wat jy het.
>> EMILY: OK.
O my God.
David Malan: Rekenkundige is inderdaad moeilik om in die voorkant
van honderde van jou klasmaats.
Maar 50 het die antwoord hier.
>> [Applous]
>> En so nou, dit is bedoel om wees demonstratiewe vir Emily.
So, hier is 'n bietjie lig gloeilampe hou hierdie,
maar dit is eintlik die bietjie magnetiese stroke.
En wat is koel oor hierdie en Die rede waarom ons dit gebruik in CS50
is dat hulle iets genoem ondersteun 'n API-- 'n aansoek program
koppelvlak, wat net 'n fancy manier om te sê dat dit wat een van ons personeel
het oor die somer is te skep 'n iPad aansoek hier
wat praat oor die internet om die gloeilampe hier,
wat draadloos is gekoppel aan 'n ander toestel.
Maar dit is nou 'n opsie vir finale projekte.
En so Emily, as jy wil, sodat soos aan die einde van die termyn,
jy kan jou koshuiskamer versier in die tussentyd met dié.
Baie dankie aan Emily sowel.
>> [Applous]
>> Maar nou, laat ons draai ons aandag aan wat
dat die boodskap dalk gelyk het, en dit is 'n bietjie iets.
Trouens, dit is 'n Byvoorbeeld, net soos 'n teaser
van wat om te kom van wat genoem 'n API versoek.
En so wat ons hier het is eenvoudig presies die soort boodskap
wat na 'n paar weke tyd in CS50, sal jy
in staat wees om redelik te stuur om iets vertroud so om werklik
draai hulle op en af.
Maar dit is alles goed en wel.
Reg?
Ons het die geestelike model hopelik vir die voorstelling van getalle met
nul en 'n mens se.
En uit nulle en ene, kan ons kry om hoër getalle soos 50,
soos Emily nou net gedoen het, of ons kan beweeg van daardie.
En ek sê dat ons kan verteenwoordig dinge soos briewe sowel.
Reg?
>> Rekenaars is baie meer interessant as net getalle.
En so hoe gaan jy te werk oor wat woorde
op die skerm of e-pos of essays en dies meer?
Wel, dit blyk dat rekenaars eenvoudig abstrakte op die top van hierdie lae vlak
besonderhede en die mens 'n geruime tyd gelede, het met 'n arbitrêre, maar 'n konsekwente,
kartering van getalle tot so letters-- dat enige tyd sien jy 'n hoofletter
A op jou rekenaar skerm, die kans is wat
onder die enjinkap is 'n patroon van nulle en ene
dat die getal verteenwoordig, per hierdie grafiek, 65.
>> En meer fisies binnekant van jou rekenaar,
miljoene dinge genoem transistors-- hierdie days-- wat
is net skakel as jy wil, dinge wat kan gaan op en af ​​en so dink.
Nie agt van hierdie groot gloeilampe maar miljoene van hierdie klein liggie
bolle, of skakel of transistors, wat kan draai op en af
op grond van hoe jy dit programmeer.
En so nou het ons 'n manier om verteenwoordig briewe sowel.
>> Trouens, as ek dit gebruik kartering hier en probeer om werklik
spel iets uit, kan ons kyk by hierdie patroon desimale syfers
nou dadelik.
So ons gaan nie eens fokus op binêre meer.
Kom ons kyk na hierdie as desimale getal 72, 73, 33.
Maar wat sou dit verteenwoordig?
Enigiemand het 'n voldoende fotografiese geheue
om te weet wat uitgespel op die skerm hier?
Ja 'n paar.
So hi.
H-I en dan 'n uitroepteken, wat nie eintlik op die skerm.
Maar wel daar is 'n kartering vir elke brief aan elke getal
wat jy dalk wil tik op u sleutelbord.
>> Maar getalle nie hoef te verteenwoordig net letters.
Reg?
Almal van ons weet van beelde en foto's en klank lêers
en video-lêers en dies meer.
So duidelik kan ons verteenwoordig hoër vlak dinge nog.
En so what 'n rekenaar doen is eenvoudig te kies
om patrone van nul kinders interpreteer anders wat gebaseer is op die konteks.
>> As jy dubbel klik op 'n Microsoft Word-ikoon,
sien jy woorde op die skerm in plaas van kleure en beelde
want woord weet dat dit 'n opstel wat jy eintlik het getik.
As jy in plaas dubbel kliek op 'n JPEG of 'n GIF of PNG,
dit maak en is 'n beeld, omdat die PNG of die Docx of wat ook al die lêer
uitbreiding is en watter sagteware jy gebruik weet te interpreteer
'n patroon van nulle en ene anders gebaseer op wat sy doel in die lewe is.
>> So byvoorbeeld, hierdie dieselfde volgorde van getalle
kan verteenwoordig hoeveel rooi doen jy wil, hoeveel groen wil jy,
en hoeveel blou doen wat jy wil.
En inderdaad, as jy al ooit gehoor RGB-- so net rooi groen blou.
En so as ek sien nommers soos hierdie gee my 72 rooi, gee my 73 groen,
en 33 blou, dit is hoe 'n rekenaar met behulp van drie bytes-- waar
'n byte is agt stukkies of 24 bits-- sou 'n mooi nare skaduwee verteenwoordig
bruin of hier geel.
En in verskillende kontekste, kan diegene presies dieselfde patrone in nulle en ene
beteken iets heeltemal verskillende sowel.
>> Dus het ons nou 'n manier te verteenwoordig information-- nulle en ene.
Op die top van dat, kry ons briewe.
Op die top van daardie, kan ons kleure te kry.
En laat ons veronderstel vir vandag dat ons klank en video kan kry
en dinge soveel meer gesofistikeerd as dit.
>> Maar nou laat ons kyk na hoe ons dit gebruik die insette
en produseer diegene uitsette nou dat ons
'n manier om verteenwoordig daardie inligting.
Wel, iets moet ons genoem 'n algoritme.
Weereens, 'n stel instruksies vir die oplossing van 'n probleem
stap vir step-- en die meer akkurate, hoe beter.
>> En so 'n voorbeeld waarmee mense weliswaar minder bekende deesdae,
maar tog is nog steeds saam met ons in sagteware,
is die proses van soek up iemand in 'n telefoon boek.
>> Nou, al hoe minder mense ken mekaar jaar wat hierdie oorblyfsel eintlik is hier.
Maar terug in my dag, dit was 'n telefoon boek
met duisende bladsye en getalle en mense se name uit 'n deur Z.
En selfs al is ons soort bedrog 'n bit-- dit is meestal geel bladsye.
Daar was ook wit bladsye op die oomblik, wat
moes al daardie name en getalle van die werklike mense.
>> En as ek wou om iemand op te kyk in 'n telefoon boek soos dit vandag, natuurlik,
Ek tik net in die eerste paar karakters van sy of haar naam,
en my selfoon bevind dat inligting.
Maar die proses waardeur jou iPhone of Android-selfoon
of wat ook al is eintlik vind iemand in jou kontak lys
is identies aan wat ons mense waarskynlik gedoen het vir 'n geruime tyd.
>> Nou kan ek dit neem probleem, as jy wil,
en die insette hier is nie nulle en ene.
Hulle is pages-- soos, kom ons sê 1000 bladsye.
En as ek wou opkyk iemand wil Mike Smith in hierdie telefoon boek,
Ek kon begin by die begin en sien dat ek in die A afdeling
en dan draai een bladsy op 'n tyd, op soek en soek
soos ek maak om die B en die C en die D's en dies meer vir Mike Smith.
Smith begin met 'n S, ek sal hopelik hom uiteindelik vind.
>> Is dit algorithm-- dat process-- korrek?
Ja.
Dit is korrek.
Ek sal Mike vind as hy hier, maar Wat is die nadeel dat jy dalk te bied.
Dit is stadig.
Reg?
Ek weet Mike S is 'n soort van die rigting die tweede helfte van die telefoon boek.
Hoekom die hel is ek begin by die begin
en gaan bladsy deur per bladsy.
So natuurlik, kon ek dit flip rond en begin van die rug,
maar dit gaan kry my daar teen dieselfde tempo,
As jy willl-- bladsy na bladsy na bladsy.
En dit gaan nie werk as ek wil om te soek na iemand anders wie se
naam kom vroeër in die alfabet.
>> So, wat as ek doen wat ek geleer het in graad skool,
weer, doen dinge nie deur mense nie, maar deur twees.
So 2, 4, 6, 8, 10, 12, en so meer.
Is dit korrek?
Geen.
Dit is soort van reg.
Maar sommige van julle wat nie baie gemurmureer en waar is die probleem, of die fout,
die fout om so te praat.
Ja.
>> STUDENT: Jy kan slaan oor die reg inskrywing.
>> David Malan: Ja.
Ek kan slaan oor Mike Smith is omdat ek twee bladsye op 'n keer het geneem
en hy gebeur net te wees landgebonde tussen die twee bladsye.
Ek kan besef dat Ek is op die T artikel
nie gevind het nog Mike Smith.
>> En so wat kan die vaste daar wees?
Wel, as ek dit doen getref die Ts in die telefoon boek,
Ek mag nodig wees om te verdubbel terug een of so bladsy.
Dit is dus fixable, maar dit is nie heeltemal so eenvoudig
as net gaan deur twee tot bespoedig my prestasie.
Maar wat?
Kom.
Wat is dit wat die meeste mense gaan te doen het met hierdie soort van telefoon boek?
Jy kry die telefoon boek.
Wat doen jy?
>> Wat is dit?
Gaan na die middel.
So hoor ek gaan na die middel, en ek vind myself min of meer in die M artikel,
om so te praat.
En nou wat doen wat ek wil doen?
Goeie werk.
Wat is jou naam?
>> JAMES: James.
>> David Malan: James, alles reg.
Wat doen ek nou?
JAMES: Jy gaan in die helfte dat die S se het.
David Malan: Alle reg.
Ek gaan in die helfte te gaan wat het die S se dit omdat, weer,
'n bepaling hier was dat hierdie ding is gesorteer.
Dit is 'n redelik nutteloos 1000 bladsye as Verizon nie eintlik
sorteer hierdie dinge vir ons 'n deur Z.
So as ek weet Mike is waarskynlik in die tweede helfte van die telefoon boek,
Ek kan nou.
>> [LAG]
>> Skeur die probleem in die helfte.
>> [Applous]
Dankie.
Skeur die probleem in die helfte.
Dit is eintlik real-- daardie stryd.
So skeur die telefoon boek in die helfte, die verlaat van myself
met fundamenteel dieselfde probleem.
Maar natuurlik, die helfte so groot.
En as ek volg James se weer raad, en ek gaan hier.
Ek sê: Ag, nou is ek in die T-afdeling.
>> En so natuurlik ek kan die telefoon boek skeur
in die helfte van nog een keer, verlaat my met 'n probleem wat
nou 'n kwart van die grootte.
So ek het gegaan van 1000 tot 500 om 250-125 en dies meer.
Dit voel asof ek neem groter byt uit
van hierdie probleem met elke iterasie, of elke stap daarin.
>> En inderdaad, die tyd ek gaan om te bestee vind Mike Smith in hierdie voorbeeld
is soveel minder omdat uiteindelik Ek is gaan Whittle hierdie pone boek af
om net 'n eensame bladsy.
En as Mike is op die blad, ek is gaan om voort te gaan en hom gee
'n oproep het hom gevind.
>> Maar net hoeveel beter is dat algorithm--
wat waag om te sê intuïtief algorithm-- as die wat ons
begin met wat ons is baie linear-- links na right-- teen 'n tempo van 1 of 2x?
>> Wel, laat ons plot hierdie.
Ons hoef nie te veel bekommer oor wiskunde of getalle in hierdie geval hier.
Ons sien net op 'n plot.
So op die x, of horisontale as, is die grootte van die problem--
hoeveel bladsye is daar.
Op die y, of die vertikale as, is hoeveel tyd
gaan dit my neem om dit op te los.
En miskien is dit hoeveel bladsy draaie, hoeveel sekondes,
hoe many-- sommige eenheid van maatreëls.
>> En ek het 'n rooi reguit lyne getrek hier, want as elke bykomende bladsy
van die telefoon boek, ek nodig het om een ​​addisionele stap te maak.
So as Verizon voeg een meer Volgende jaar,
Ek kan hê om nog 'n bladsy flip om iemand soos Mike Smith vind.
>> Intussen het die tweede algoritme, wat Ek het by twee-twee, is dieselfde vorm.
Dit is nog steeds baie lineêre, baie links na reg, neem gelyk grepe elke keer,
maar die helling is 'n bietjie laer.
>> Byvoorbeeld, as die grootte van die probleem was min of meer hier
en ek gebruik my eerste algoritme, Ek kan uiteindelik al die pad
aan die bokant van die rooi lyn.
Maar as ek in plaas gebruik om twosies benader,
die geel lyn dui want dit is laer,
dat dit gaan oor te neem my minder tyd die los.
>> Maar wat is die vorm van die derde algorithm-- weer, waarskynlik
die mees intuïtief algoritme?
Wel, dit lyk 'n bietjie iets soos hierdie.
Dit is geboë, of logaritmiese, in die vorm.
En selfs al is dit nooit soort plat uit,
dit asimptoties duim en en op, maar verskriklik stadig
teenoor alles.
En wat is die wegneem?
Wel, noem ons dit teken N.
Maar wat beteken dat eintlik beteken?
Wel, as Verizon verdubbel die aantal bladsye in die telefoon boek
volgende jaar van 1000 tot 2000.
Hoeveel meer stappe is my eerste algoritme gaan neem?
>> My eerste algoritme.
Miskien 1000 meer stappe.
As hulle verdubbel die telefoon boek, ek gaan
om om te draai deur 'n ander 1000 bladsye aan Mike vind.
Natuurlik, as die tweede algoritme, miskien 500 omdat ek
gaan twee keer so vinnig.
>> Maar as Verizon verdubbel die aantal bladsye tussen vanjaar en volgende jaar,
met my derde algorithm-- die kloof en oorwin dat James voorgestel,
gaan in die helfte en die helfte en half-- hoeveel meer stappe sal
Dit neem my volgende jaar te hê 'n telefoon boek van 'n grootte 2000?
Slegs een.
Want met een hap, kan ek, uit daardie probleem, die helfte van die bladsye
weg.
En as jy dink oor hierdie 'n bietjie crazily now-- as die telefoon boek nie doen
het 1000 of 2000 bladsy, maar kom ons sê 4000000000 pages--
dit is 'n groot telefoon book-- hoe baie keer of hoeveel stappe
gaan dit my neem om uit te vind Mike Smith in die telefoon boek
met 4 miljard bladsye.
Jy kan soort van begin om die wiskunde te doen.
Alles reg.
4 miljard gedeel deur 2.
So dit is 2000000000 gedeel deur 1.
Dis 1000000000.
Toe 'n half miljard.
Dan 250-- sodat jy dit weer kan doen en weer, maar nie so baie keer voor
jy een bladsy.
>> En inderdaad, selfs al is die telefoon boek is 4 miljard bladsye lank
of die databasis wat jy soek is 4000000000 rekords lank,
dit gaan neem jy gee of neem 32 stappe net Mike Smith vind.
En as jy dubbel die telefoon boek volgende jaar 4000000000-8000000000,
33 stappe in plaas van net 32.
>> En dit is Testament om een ​​van die idees
dat ons kan omhels in die rekenaar wetenskap meer algemeen, wat
is hierdie Rekenaardenke en nader 'n probleem
eerlik met behulp van gereedskap uit jou reeds vertroud instrument
kit-- jou werklike wêreld met wat aan u bekend is,
maar die benutting van dié idees om werklik op te los.
>> Maar ons moet formaliseer ons oplossings vir hierdie probleme.
En so laat ek vir 'n oomblik iets wat ons kan pseudokode noem.
Baie van die semester, sal ons spandeer die gebruik van werklike kode in tale soos C en PHP
en JavaScript en SQL en dies meer.
>> Maar vir nou, laat ons net kyk iets redelik intuïtief
soos Engels.
Ek kan distilleer wat algoritme waarmee
Ek het gevind dat Mike in stappe soos hierdie.
>> Pick up die telefoon boek
>> Oop vir middel van telefoon boek
Kyk na die naam van
As Mike is onder die naam van
bel Mike
Anders as Smith is vroeër in die boek
Oop vir die middel van die linkerhelfte van die boek
Anders gaan te reël 3
Anders as Smith is later in die boek
Oop vir die middel van die regter helfte van die boek
Gaan na lyn drie
anders
Gee op
En daar is 'n paar eienskappe nou van dit wat die moeite werd is daarop te wys.
So een, al die lyne Ek het geel gemerk
ons gaan begin roep state of funksies of prosedures.
Hulle is net aksies doen hierdie, en daar is nie
alles wat veel variasie om dit te.
>> Volgende stap hier al is, is hierdie conditions-- indien anders, anders as, anders.
En dit is genoem voorwaardes, of takke, en hulle is besluit punte.
En hulle ons toelaat om te doen iets voorwaardelik.
>> En in werklikheid, kom ons neem 'n vinnige kyk na miskien 'n bekende wangetjie--
Ons sal hom bel Bill-- en presies wat hierdie toestande,
hoe daar daarin voorsien kan word.
>> Bill Gates: Mense maak besluite elke dag.
Byvoorbeeld, voor jy gaan buite jou soort het 'n as verklaring wat sê:
As dit reën, dan het ek moet my baadjie kry.
>> En rekenaars is amazing wanneer jy besluit die soorte stellings
dat hulle betroubaar kan voer daardie dinge teen ongelooflike spoed.
En so 'n rekenaarprogram regtig is 'n bietjie van wiskunde en 'n paar
As state waar die besluit kry het.
>> David Malan: So nou kom ons fokus op 'n paar verskillende lines--
die wat ek het uitgelig in geel hier.
En dit blyk daar is verskillende maniere om hierdie idee te druk.
Maar intuïtief wat ons lyne 8 en 11 wat ek hier uitgelig wat jy vertel
te doen?
Ja, gaan na reël 3, maar wat gedrag is wat werklik induserende?
Dit is 'n soort van loop of fietsry, en jy kan soort van sien.
Reg?
As on line 8, gaan jy terug na lyn 3, en dan slaan jy reël 8 weer,
jy dalk terug na lyn 3, terug na lyn 3, terug te reël 3.
Daar is hierdie soort van siklus of lus.
En inderdaad, dit is veroorsaak in lyn 11 potensieel sowel.
En dit is 'n basiese programmering bou sowel.
>> Jy kan nie net wil doen iets met 'n verklaring
of iets te doen voorwaardelik 'n voorwaarde of tak.
Jy mag dalk wil om iets te doen siklies met 'n lus.
En ons sal iemand anders met wie jy dalk familiar-- ons hom bel
Mark-- hierdie konsep te verduidelik.
Mark Zuckerberg: Een Al wat rekenaars is
regtig 'n goeie by herhaal bevele.
As 'n persoon, sal jy regtig verveeld as jy
moes dieselfde ding te doen baie keer in 'n ry,
maar 'n rekenaar kan dieselfde ding doen miljoene of selfs biljoene kere
en nie verveeld raak en in staat wees om uit te voer wat werklik goed.
>> So byvoorbeeld, as ek wil almal wil
op Facebook 'n gelukkige verjaardag deur die stuur van hulle 'n e-pos,
dit kan my neem meer as 'n eeu om werklik uitskryf
al daardie e-pos aan almal.
Maar met net 'n paar reëls van die kode, kan ek 'n stelsel stuur 'n e-pos aan almal
op Facebook wat hulle 'n gelukkige verjaardag.
>> So dit is wat loops is en waarom waardevolle en iets wat hulle is
wat rekenaars baie goed kan doen.
>> David Malan: Baie dankie aan ons vriende by Code.org vir daardie twee films.
En net verlede week, kan jy gesien dat Mark Zuckerberg en Facebook
gepos hierdie aankondiging, naamlik dat hulle net
het 'n belangrike geslaag mylpaal vir die eerste keer ooit.
1000000000 mense gebruik Facebook in 'n enkele dag, spesifiek verlede Maandag.
Een uit elke sewe mense op aarde blykbaar aangeteken in Facebook.
>> Wel, lyk dit 'n goeie geleentheid om terug te kyk op die plek waar Facebook begin het,
en ons het in die CS50 se eie argiewe, want dit blyk in 2005,
Mark het 'n gaslesing in CS50.
Jy sal sien dat die produksie waardes was nie heeltemal dieselfde destyds
in terme van die tegnologie beskikbaar, en jy sal ook
sien dat die teenwoordigheid van hierdie gaslesing
nie noodwendig pique die belangstelling van die student liggaam, jou voorgangers,
soveel as wat dit mag hê net 'n paar jaar later.
>> So laat ons neem 'n blik by Science Center C.
Spreker 2: Asseblief saam met my, en verwelkom.
[Applous]
Mark Zuckerberg: Yo.
Alles reg.
Cool dit is die eerste keer dat ek ooit gehad het om een ​​van hierdie dinge te hou.
Dus is ek net gaan heg dit regtig vinnig.
Alles reg.
Kan jy dit hoor?
Is dit goed?
Is dit versterk nie?
Alles reg.
Sweet.
So, dit is soos een van die eerste keer Ek het aan die Harvard na 'n lesing was,
but--
>> David Malan: So uiteindelik die Wetenskap Sentrum het zoem in op die video,
maar nie voordat dit vas te vang uittreksel waar Markus praat,
waarin hy gepraat oor sy kamermaat, Dustin, wat
wou 'n hand by te sit met hierdie site genaamd die Facebook.com
en besef dat Mark is op die punt om noem tot programmering languages--
een genoem Perl, een genoem PHP-- as hy bespreek
die oorsprong van bydrae Dustin se.
Mark Zuckerberg: Ek begin hardloop die werf
en van stapel gestuur is dit op Harvard in Februarie 2004.
So ek dink nou byna twee jaar gelede.
En binne 'n paar weke, 'n n paar duisend mense het ingeskryf,
en ons begin om 'n paar e-posse van mense op ander kolleges vra
vir ons om dit van stapel te stuur by hul skole.
>> En ek is die neem van 161 op die oomblik.
So ek weet nie of julle weet die reputasie van 'n vakkursus,
maar dit was soort van swaar.
Dit was 'n baie pret natuurlik, maar dit het my nie laat veel tyd
om enigiets anders met Facebook doen.
So my kamermaat Dustin, wat ek dink het net klaar CS50, was soos, hey.
Ek wil om te help.
Ek wil die uitbreiding doen en help jy uitvind hoe om die dinge te doen.
>> So ek was soos, dit is pretty cool, dude.
Maar jy weet nie regtig enige PHP of iets soos dit.
Sodat naweek het hy die huis, gekoop die boek Perl vir Dummies,
teruggekom en was soos, alles reg.
Ek is gereed om te gaan.
>> Ek was soos, dude, die werf se skriftelike in PHP nie Perl, maar dis cool.
>> So het hy opgetel PHP oor soos 'n paar dae, omdat ek
belowe dat as jy ' 'n goeie agtergrond in C,
PHP is 'n baie eenvoudige ding om af te haal.
En hy het net soort gaan werk.
>> Voordat ons nou by 'n blik waar die kursus gaan,
laat my toe om net 'n paar uit te nooi van SC50 se personeel op te verhoog.
Sommige van hulle inkopies doen hul eie kursusse.
Maar as daardie TFS en GR'e en natuurlik koppe wat hier kon kom op
en saam met my vir 'n vinnige hallo.
>> Laat my toe om in te voer in die besonder, Hanna, Maria, Daven, en Rob,
CS50 se loop koppe hier in Cambridge.
>> [Applous]
>> David Malan: Inderdaad, getuig van die ondersteuning struktuur wat die kursus het
gebou uit die afgelope jare, CS50 personeel vanjaar getalle byna 100,
en dit is hier in Cambridge alleen.
Intussen, in New Haven, is daar 'n paar 40 TFS en GR'e en personeellede daar
om die pad te loop as well.
>> Laat ons eers stel, Rob Bowden.
ROB BOWDEN: Hi.
Ek is Rob.
Dit is my sesde jaar TFing in die kursus.
So, al die pad terug in my eerste jaar, ek het nie CS50 neem.
Jou eerstejaars fall-- jy dalk vertroud wees
dat jy net kan neem vier kursusse en daar is so baie kursusse vandag.
So ek is soos, eh.
Ek het AP CS my senior jaar van hoërskool dit was aaklig.
So, ek is soos, eh.
Rekenaarwetenskap is nie vir my nie.
>> So dan was dit oor die loop van my eerstejaars
val, dat ek het 'n vriend in CS50, en Ek dink ek het 'n lesing met haar.
Dis soos: Ag, hierdie is 'n soort van 'n beter as wat ek gehad het in die hoërskool.
>> En oor die afdeling van die jaar, ek het my eie probleem stelle
in die kursusse is ek eintlik neem.
Maar ek het gevind dat wanneer ek wou uitstel op daardie,
Ek sou teruggaan na CS50 en kyk na 'n paar van daardie dinge.
So, ja.
Ek is cool.
Ek uitstel met kodering.
So dan is dit aan die einde van die val dat ek besef, hey,
Rekenaarwetenskap is pretty cool.
Ek eindig met CS51.
In die volgende semester, Ek eindig met CS61.
En dit alles van daar af, dan eindig ek op verklaar
rekenaarwetenskap, wat ek moes absoluut geen voorneme om dit te doen
toe ek in die kollege.
En nou is ek hier.
So het die kursus is wat jy daarvan maak.
Ek hoop jy geniet dit.
>> [Applous]
David Malan: Baie dankie aan Rob.
>> En nou Maria, ons kop natuurlik assistent.
>> MARIA: Hey ouens.
My naam is Maria.
Ek is 'n stage in Cabot Huis, afkomstig van Bulgarye,
en ek is super opgewonde te wees deel van die personeel vanjaar.
Ek het CS50 as 'n groentjie verlede jaar, en ek het nooit eens
gedink oor CS vooraf.
So ek is absoluut mal oor die kursus, en ek hoop julle almal dit is lief vir soveel as wat ek gedoen het.
En, ja.
Welkom by CS50.
David Malan: Baie dankie aan Maria.
[Applous]
Nou Hanna, ons hoof onderrig mede.
HANNA: Hi, ek is Hanna.
Ek is 'n senior in Cabot studeer rekenaarwetenskap.
Ek het CS50 as 'n groentjie en het was TFing-- hierdie sal my derde jaar wees.
So sal Ek gelukkig betrokke wees in CS50 vir al vier jaar,
en ek sien uit daarna om saam met julle almal.
David Malan: Baie dankie aan Hanna.
[Applous]
En laastens, Daven, ons precepter.
DAVEN: Hey ouens.
Ek is 'n gebod oor in Rekenaarwetenskap hier.
Dit sal my vierde jaar onderrig wees.
Ek help ook die bestuur van die kursus.
So ek is seker jy sal my sien rond, veral by kantoorure.
Ek is altyd op kantoorure.
So as jy sien my loop rond, beslis kom sê hi.
Ek is lief vir almal te ontmoet.
Andersins, om pret te hê, en Ek sal jou sien rond.
>> David Malan: Baie dankie aan Daven sowel.
Sodat jy al ontmoet hierdie mense kort voor lank.
Maar sonder verdere ado, as jy ouens wil
graag jou sitplekke uit vroeër hervat.
Laat my toe om in te voer uit die verte nou sommige van ons vriende van New Haven,
veral koppe die kursus se wat sal word toesig CS50 there-- Professor
Brian Scassellati, Jason, en Andi, wat just-- sodat ons nie die noodlot het versoek
met enige FaceTime of die like-- het nou net gestuur ons minute
gelede die volgende video waarin hulle sê hallo uit lesingsaal
aan die Yale, waarin lesing word nou gestroom.
>> So ons vriende van Yale.
BRIAN SCASSELLATI: Hi, Dawid.
Hi, almal aan die Harvard.
Ons is so opgewonde om te bring CS50 om Yale hierdie semester.
My naam is Brian Scassellati, maar almal net noem my SCAS.
En ek is vandag hier in te voer aan u die CS50 personeel.
>> [Juig]
>> En nog belangriker, ek is hier om sowel voer
al die studente aan Yale wat vanaf vanoggend
het dit die gewildste gemaak kursus by Yale die CS50 studente.
>> [Juig]
>> So ons is baie opgewonde om hier sien jy
Vrydag en Saterdag vir Legkaart Dag en het 'n groot lesing.
Bye.
>> [Applous]
>> David Malan: Op die skerm hier is die name van die party van 140 personeel
lede wat jy wag oor die loop van die semester-- sommige van hulle
hier in Cambridge, sommige van hulle hier in New Haven.
En inderdaad het jy 'n hê geleentheid Saterdag,
as SCAS notas, te woon CS50 legkaart Dag.
Jy kan gesien het bietjie legkaart stukke gegly onder jou deure onlangs.
Ons het 'n paar ekstras hier later op wanneer jy bestaan ​​nie.
As jy versamel al vier legkaart stukke en voeg kragte saamgesnoer met kamers
nabygeleë joune in jou huis of dorm, sal hulle
vergader in 'n QR code-- of 'n twee dimensionele bar code, wat
keer vergader en geskandeer met jou selfoon sal jou lei
om 'n paar fantastiese prys or-- Ek veronderstel jy kan net foto dit nou
ook.
>> Maar vind diegene stukke van die legkaart nietemin ten einde te wen wat fantastiese prys.
En inderdaad een van die tradisies in SC50-- ah, te stadig.
Een van die tradisies in CS50 is om dien koek na die eerste lesing.
>> En so ja, in 'n n paar minute van nou af,
sal daar koek bedien buite beide hier en New Haven sowel.
>> Maar first-- versier ons hulle self.
Maar first-- en hopelik Daar sal genoeg wees.
>> Maar eers 'n vinnige blik.
So lesings is inderdaad sal wees meestal hier in Cambridge geproduseer.
Maar elke maand, sal ons aftrek hop na Yale met CS50 se produksie span en stroom
die kursus in die omgekeerde rigting sowel so
as hierdie twee kampusse te bring werklik vir die eerste keer in die geskiedenis
so na mekaar as moontlik as een in dieselfde kursus.
>> In terme van die ondersteuning struktuur wat is opgestaan ​​hier in Cambridge sowel
soos in New Haven, is afdelings.
Inderdaad, soos sommige van julle mag weet, ons het verskillende spore
binne die kursus vir diegene wat minder gemaklik, meer gemaklik,
en iewers tussenin sodat ongeag jou voor agtergrond,
kan jy uiteindelik daarin slaag om in die klas.
>> Kantoorure Intussen is 'n geleentheid op Maandae en Dinsdae
en Donderdagaande om beide werk hier en in New Haven op ons natuurlik se
probleem sit met tientalle personeel die kursus se naby jou.
>> Probleem stel Intussen is deur dinge wat ons noem
ipv, wat video is gebaseer tutoriale wat werklik beantwoord vrae
van waar om te uitdaging 'n week se begin.
En postmortems loop jy deur moontlike oplossings
sodat die einde van die probleem te stel, jy
weet presies wat jy kon gedoen het anders of heeltemal anders.
>> Die probleem sit self kom in twee uitgawes, 'n standaard uitgawe
wat ons verwag en nooi die meeste van die class-- sowat 90% plus om do--
en 'n sogenaamde hacker uitgawe waarop elke bladsy is vervoerd
hacker uitgawe, hacker uitgawe, hacker uitgawe,
sodat jy dit karma as jy wil, om te duik
in meer gevorderde weergawes van die kursus se probleem stelle
wat dekking oënskynlik dieselfde materiaal maar met 'n meer gesofistikeerde benadering
en met bykomende agtergrondinligting soms bekend gestel.
>> Intussen is daar nege laat dae wat jy kan aansoek doen om die probleem die kursus se
stel asook die laagste telling, wat ons laat val op die terme einde.
>> Maar wat wag?
Wel, 'n voorsmakie van die probleem stel aan die hand op Vrydag
en volgende week waar ons ploeteraars vir 'n paar dae in iets
genoem nuuts af, 'n grafiese programmering taal wat ontwikkel is deur ons vriende
by MIT se Media Lab dat jy kan om die program óf vir die eerste keer
of in 'n nuwe omgewing heeltemal met behulp van 'n sleep en tipe omgewing.
Waardeur stukke van die legkaart slegs saam verstrengel
As dit maak logies sin om dit te doen.
>> Intussen is in probleem stel twee verlede jaar byvoorbeeld
het ons voer die klas om die wêreld van kriptografie,
die kuns van versleutelen of skommeling inligting.
Inderdaad, hierdie teks hier as Ontcijferde, sal eintlik
lei jou na 'n paar pret bestemming.
En in die probleem stel, wat ons gehad studente
doen is presies wat implementeer soorte things-- 'n algoritme,
of stel instruksies vir die skommeling en skarrel inligting.
>> En in die hacker uitgawe van daardie selfde probleem stel,
het ons uit te daag studente om 'n te neem geënkripteerde lêer van 'n tipiese rekenaar
stelsel met baie gebruikers en geïnkripteer wagwoorde
en aan dié passwords-- kraak eintlik uitvind
wat hulle sonder om iets te weet a priori oor die werklike wagwoorde.
Intussen doen ons oorgang in die probleem
stel om te kyk na die wêreld van grafiese.
En in werklikheid, kan jy jou indink nou dat dit dalk
wees die eenvoudigste manier om verteenwoordig 'n swart-en-wit beeld.
>> 'N Wit pixel, of vierkante, soos op die top reg daar,
kan verteenwoordig met 'n 1 en 'n swart vierkant
kan verteenwoordig met 'n 0.
En net deur die gebruik van meer stukkies soos ons voorgestelde vroeër met 72 en 73 en 33,
kon ons verteenwoordig kleur pixels sowel.
En wat ons doen tydens hierdie probleem stel is
oor die algemeen 'n wandeling rondom kampus met 'n digitale kamera,
neem foto's van mense, plekke en dinge.
Toe een of ander manier elke semester, Ons lyk ongeluk
verwyder of korrupte die geheue kaart waarop al die foto's is,
en sodat jy uitgedaag om dan skryf sagteware
waarmee die JPEG herstel van 'n afskrif van die kaart ons kamera se.
>> Intussen het ons die hand wat jy later in die term 'n woordeboek van die Engelse woorde
wat 143,000 woorde, en wat jy nodig het om te kom
met 'n slim manier om laai dit in die geheue,
of RAM so te sê, om te antwoord navrae van die vorm: dit is 'n woord,
is dit 'n woord, die implementering van die vinnigste speltoetser wat jy kan,
selfs pinning jouself potensieel teen klasmaats
om te sien watter een van jou gebruik die minste hoeveelheid tyd
wanneer die bestuur van jou kode en selfs die minste hoeveelheid van geheue.
>> Later in die tweede kwartaal het jy eintlik implementeer jou eie webbediener.
So nie net 'n webwerf in 'n taal genoem HTML en meer,
maar 'n webbediener wat eintlik luister na versoeke op die internet
en reageer op hulle.
En inderdaad, dit is hoe ons te oorbrug ons wêreld van C waarmee jy
vertroud te raak volgende week en PHP en HTML en JavaScript
en CSS en dies meer.
>> Omdat een van die eerste web-gebaseerde projek later in die kwartaal het ons
is histories CS50 Finansies.
Etrade.com styl van 'n webwerf wat dit moontlik maak jy feitlik koop en verkoop aandele
terwyl dit ook skryf kode vir Yahoo te praat Finansies kry semi real time voorraad
haal om te werk jou eie portefeulje uit.
>> Maar laastens natuurlik is die finale project--
'n geleentheid om die meeste enigiets van doen belang vir jou 'n probleem hier op te los
of buite van belang is vir jy dis een of ander manier geïnspireerde
deur die lesse wat geleer is in die klas.
>> En die klas, as jy dalk weet, loop uit op sogenaamde CS50 Hackathon
en CS50 Fair en 'n aantal van ander kulturele gebeurtenisse
regdeur die semester wat u toelaat om betrokke te raak
met mekaar en personeel die kursus se.
>> Byvoorbeeld, by Vuur en ys in sitar vanjaar, wel, op Vrydagmiddae,
Ons nooi 'n paar 50 studente vir middagete, elkeen
wil ons aan te sluit, myself, en die personeel,
en ons vriende van die nywerheid en alumni om te gesels oor die lewe in die werklike wêreld
en verder, terwyl geniet 'n goeie middagete.
Op die Hackathon sal sien jy sulke beelde
aangesien hierdie, insluitend baie van die candy-- en as van 2014 vir die eerste time--
groente.
>> [Applous]
>> Maar deur 05:00, doen die toneel gewoonlik kyk 'n bietjie iets.
En dan net 'n week of sodat later, is die CS50 Fair
waaraan sowat 2000 plus studente en personeel en fakulteit
lede van regoor die kampus en oor kampusse vanjaar
kom om te sien en vreugde in die prestasies van CS50 studente, wat
is nou jou.
>> En inderdaad, terwyl vanjaar sal ons word uitgenooi en busing iemand
op aan die Yale wat graag tot kom Cambridge hierdie Saterdag vir CS50 legkaart
Dag, en ons sal presies dieselfde ding doen in Desember vir die CS50 Hackathon
sodat Harvard en Yale studente gelyk Deelname aan beide van hierdie gebeure.
>> Ons sal ook hou CS50 feeste in Cambridge en in New Haven vanjaar
sodat studente op beide kampusse en personeel en fakulteit
kan sien elke onderskeie vervulling kampus se.
En diegene prestasies sal so 'geheue veroorsaak
as dit en dit en uiteindelik hierdie, waarin almal van julle
verlaat die klas geklee in 'n bietjie iets waarin jy hopelik was
gelukkig of trots om te sê dat ek het CS50.
>> Maar voor dit en voordat ons dien koek,
Ons het saam op te danke aan CS50 se sit produksie span en 'n sekere self
stok, die een geleentheid wat ons gebruik sulke dinge for-- wanneer ons dit stuur
nie net hier om Cambridge maar ook na New Haven
om 'n paar hallo uit die insamel personeel en al die mense loop se
jy sal beide hier en in New ontmoet Haven oor die volgende maande.
>> Laat my toe om 'n stel paar van personeel CS50 se.
Mark Zuckerberg: Het wat dit gaan?
Ag, dit gaan.
Dit gaan.
Ooh.
Yarr!
>> [Musiek speel ANDY Grammer, "Liefling, ek is GOEIE "]
>> Maria Dit is Caitlin.
Dit is Jay, en ek is Maria.
SATO: Hi, ouens.
Ek is Sato.
MICHAEL G .: Hi.
My naam is Michael, G.
DOUG LLOYD: Ek is nie.
Geen.
Ek is Doug Lloyd.
Ek kan nie glo dat ek hou 'n Selfie vashou op die oomblik.
SPREKER 4: Hi.
SPREKER 5: Hi.
SPREKER 6: Hello.
SPREKER 7: Hi.
SPREKER 8: Hey.
Ons hang uit by Yale.
Ons is baie opgewonde vir hierdie semester, want dit is
die eerste keer dat dit kom by Yale.
Dit gaan awesome wees!
>> [Speel van musiek]
>> JACOB SCHERBA: My naam is Jakob Scherba.
Ek is opgewonde om te leer CS50, want ek dink
Dit bring rekenaarwetenskap aan mense in en toeganklike manier.
SPREKER 9: Ek is regtig opgewonde om CS50 leer
want ek het die klas verlede jaar, en dit is een van die beste klasse.
SPREKER 10: Ja.
My raad is moet jy CS50 neem.
JACOB SCHERBA: Ek verkies CS omdat Ek dink dit is 'n prettige en kreatiewe manier
om probleme op analitiese wyse op te los.
SPREKER 11: Terug toe ek 'n bietjie eerstejaars en bang vir rekenaarwetenskap
en bang om dit te doen ingenieurswese en dinge,
dit was die eerste harde klas het ek, en dit was ook my gunsteling klas ooit.
DOUG LLOYD: Dit is my negende jaar onderrig CS50.
Dit maak my so oud klink!
Daar is altyd iets nuuts.
Daar is altyd iets opwindend.
Daar is altyd nuwe uitdagings nuwe studente, en dit is pret om hulle te help
en aan dié ervaar uitdagings met hulle
en hulle help om hul probleme op te los.
>> SPREKER 12: Toe ek die eerste geleer hoe om dit te doen CS,
Dit was soos om te leer 'n super krag.
En om te sien dat in ander studente en om hulle te help deur middel van die proses
is een van die mees lonende dinge wat ek nog ooit.
>> SPREKER 7: Ek verkies CS want in die begin, ek was 'n wiskunde concentrator
en ek het CS50 en verlief geraak op dit.
Ek is ook van mening dat met CS, ek kon dinge te bou.
En dit, het ek gedink, was 'n baie cool aspek.
>> SPREKER 13: Sommige advies vir nuwe studente is na kantoorure
en hang saam met die ongelooflike TFS.
SPREKER 14: Begin jou P-stelle vroeg, gaan na kantoorure,
geword frends met jou TF.
SPREKER 15: Ja.
Alles het sy gesê.
SPREKER 16: Moenie bang om te vra vir hulp.
SPREKER 17: Ja.
SPREKER 18: Begin jou P-stelle vroeg.
SPREKER 19: Dit is 'n groot sosiale ervaring.
Maak 'n klomp vriende op hierdie manier.
SPREKER 14: Gaan na artikel Dit is pret.
SPREKER 11: Ek bedoel, go for it.
Dit is regtig moeilik.
Jy sal kry uit dit wat jy daarin sit,
maar dit is 'n baie pret klas, veral as jy '
bereid is om die tyd in te sit, maar dit help as jy tyd het daarin.
Jy sal 'n baie meer te kry daaruit later op.
MIKE: Ek is Mike.
CAMILLE: Ek is Camille.
HANYA: Ek is Hanya.
MATT: Ek is Matt.
PETER Ek is Petrus.
Phillip Ek is Phillip.
PATRICK: Ek is Patrick.
ROB BOWDEN: Ek is Rob Bowden.
BRIAN SCASSELLATI: My naam is SCAS, en this--
Almal: --is CS50.
SPREKER 20: aan die Yale.
SPREKER 21: aan die Yale.
[ROOIBORSDUIFIE]
David Malan: Dit is dit vir CS50.
Ons sal u sien van Yale op Vrydag, legkaart Dag op Saterdag.
Koek is nou bedien.
Dit is CS50.
>> [Speel van musiek]