[Powered by Google Translate] Spreker 1: Dit is CS50.
So ek was waar jy nou is n paar jaar gelede, en toe was ek 'n groentjie op die
tyd, was ek nie regtig op hierdie pad van rekenaars wetenskap te doen, doen
ingenieurswese.
Inderdaad, ek het in hierdie plek as 'n regering concentrator.
Ek in die hoërskool 'n kind wat dinge soos die geskiedenis hou.
Ek hou van staatsreg, soort van Engels en wiskunde, so soort van
afgeronde, maar nie noodwendig dinge wat ek nie geleer ken
in die hoërskool.
En so eerstejaars jaar, ek het hierdie angs, waardeur selfs al het ek
graag rekenaars, rekenaar speletjies speel en dies meer, het ek seker nooit
van myself gedink as 'n rekenaar persoon, 'n rekenaar wetenskaplike en
eerlik te wees, ek het gedink my vriende in die hoërskool wat die neem van die rekenaar
wetenskap was 'n bietjie van 'n - geeks.
>> En tog, toe ek hier gekom het op die kampus, was daar hierdie kursus, CS50, en by
die tyd, dit het om die reputasie van die werklik iets om te pasop.
Dit was 'n goeie kursus.
Dit was 'n prettige kursus.
Maar jy het om werklik te kry dat die voet in die deur.
En selfs ek het nie oor die grens eerstejaars jaar.
En ek het op my pad gegaan om 'n regering concentrator, gaan deur
soveel van die voorvereistes as ek kon, steek toe dinge vir gen
ed of kern-en dies meer, en dan stage jaar, vir een of ander rede, het ek
up die senuwee voet te stap in Science Center B, waar CS50.
'N baie bekende rekenaar wetenskaplike met die naam van Brian Kernighan
leer hier om in daardie jaar, en selfs dan, ek was net bereid om te werklik
vul my studie kaart deur die neem van hierdie klas slaag / druip.
Ek kyk rondom my, en ek het gedink almal in hierdie kamer het om te weet
manier om meer oor rekenaar wetenskap, oor programmering, oor rekenaars.
Almal moet programmering in hierdie kamer, want hulle was 12, maar inderdaad,
dit was nie die geval nie.
En so het die heel laaste dag, die vyfde Maandag van die semester dat Ek neem
hierdie sprong en verandering van slaag / druip na 'n brief graad, en uiteindelik die verandering van my
konsentrasie wat dieselfde dag rekenaarwetenskap.
>> Nou is dit nie ons doel in hierdie klas, julle almal om te draai in die rekenaar
wetenskap concentrators, maar regtig, voor te stel dat daar van hierdie geleentheid
in hierdie veld en in ander velde wat jy dalk baie onbekende,
gegee dat hoërskole volg gewoonlik 'n redelik standaard kurrikulêre
pad, maar waag, in CS50, na nuwe waters.
En as jy hier sit vandag dink jy eintlik nie hoort nie, so
doen die meeste van die mense aan jou regterkant en aan jou linkerkant.
Trouens, verlede jaar, 76% van die studente in die klas het geen vorige ondervinding.
So, in teenstelling met wat jy dalk dink, is die meeste van die mense rondom jou sit
vandag nie, in werklikheid, het enige vorige ondervinding.
18% het een CS klas, en 6% het twee of meer.
Intussen, vra ons studente elke jaar om hulself te beskryf in terme
van comfort vlak, en dit is -
daar is nie een definisie van hierdie.
Jy het net soort van weet dit, as jy nie baie gemaklik in CS50.
En verlede jaar, ons het 55% in die groen sirkel sny hier, self-beskryf
as minder gemaklike studente wat eerlik ons ​​het geen idee hoekom hulle
shop die kursus op daardie eerste dag, maar dieselfde 55% met ons gebly tot
kwartaal se einde, het 35%, wat iewers tussen diegene wat meer
gemaklike en diegene wat minder gemaklik.
>> So, wat is rekenaarwetenskap?
Wel, in die hoërskool, en werklik, meer in die algemeen daar buite hierdie dae,
daar is hierdie persepsie of hierdie wanopvatting dat rekenaarwetenskap
programmering.
En dit is absoluut een aspek van rekenaarwetenskap, maar programmering,
ongeag die taal is, is regtig net 'n instrument wat die rekenaar wetenskaplikes
gebruik om probleme op te los, hetsy in die domein van die rekenaarwetenskap, of
toenemend hierdie dae, in die fisiese wetenskappe, die natuurlike
wetenskappe, in die geneeskunde, in die geesteswetenskappe, te analiseer
groot stelle data.
Enigeplek nou is daar rekenaar en data, daar is 'n geleentheid om aansoek te doen
lesse wat geleer is in 'n klas soos CS50.
>> So laat ons 'n probleem op te los wat 'n rekenaar wetenskaplike kan gaan oor
oplossing en probeer om sommige jargon te sit, 'n konseptuele raamwerk, om
wat anders kan 'n paar redelik abstrakte idees.
So, dit is 'n telefoon.
Jy sien nie hierdie dinge te dikwels.
Die kollege lyk nog steeds om dit te hê in die huise en slaapsale, maar
terug in die dag, wanneer jy wou 'n selfoon te gebruik soos hierdie, was daar geen
elektroniese adres boek in jou selfoon.
Nee, jy trek iets wat bekend staan ​​as 'n telefoon boek, en die telefoon boeke
het ongeveer 1000 bladsye tipies.
Hulle is gesorteer van A tot Z, en jy moes eenvoudig die regte bladsy te vind
vind die persoon wat jy is op soek na ten einde hul naam en hul te vind
telefoonnommer.
Nou hoe gaan jy oor op soek na iemand wat in hierdie boek?
>> Gestel my doel is om te gee my vriend Mike Smith 'n oproep.
Wel, hoe gaan ek te werk oor die vind van Mike Smith?
Wel, 'n baie redelike benadering, as naïef en ondoeltreffende, sal begin
hier, en begin daarby na bladsy vier na bladsy vyf na bladsy ses en te sorteer
van lineêr, langs 'n reguit lyn, gaan deur middel van die telefoon boek, en selfs
hoewel dit gaan ongelooflik vervelig wees, as Mike Smith is in hierdie
boek, ek is uiteindelik gaan om hom te bereik wanneer ek uiteindelik draai na die S
gedeelte van hierdie boek.
Nou, natuurlik, het jy nie nodig om na 'n rekenaar wetenskaplike wees om te weet dat hierdie
is 'n dom manier om hierdie probleem op te los.
Wat sou 'n tipiese mens doen?
Goed gedoen.
So, julle sal draai na die middel, reg?
So jy wil ongeveer flip na die middel, kyk hier, en dit lyk asof ek myself te vind
in die M-afdeling.
Okay, so M is duidelik nie wat ek soek nie.
Mike is na regs, om so te praat, van hierdie artikel, en soos sommige van julle het
gesien het, kan ons nou letterlik voortgaan om dit te skeur
probleem in 'n half.
>> Jy moet regtig nie dat beïndruk.
Skeur dit af in die naat is eintlik nie so moeilik.
Die regte mense doen dit op hierdie manier, maar die naat af, het ons
het nou twee probleme.
Elkeen wat die helfte so groot, en ons kan letterlik gooi die helfte van die
probleem weg.
Nou is ons gelaat nie met 1000 bladsye, maar sê, 500.
So nou wat moet ek doen?
Wel, sal 'n tipiese mens rofweg gaan weer in die middel, en Ek vind myself
die R-afdeling, so nie heeltemal daar nie.
Dit weer doen, kan ek hierdie probleem in die helfte skeur.
Dankie.
So nou is ek het net sowat 250 bladsye, en ek kan doen dit weer, en weer, en
weer, en gaan van 125 af tot ongeveer 60, 30, 15, en so meer.
En laastens, ek sal whittled kom neer na een van die S-bladsye waarop, as hy
in die telefoon boek, moet Mike Smith.
>> Nou is dit natuurlik redelik redelike algoritme, en dit is 'n
one-time gebruik algoritme in hierdie geval, maar wat kan ons soort van
neem weg van wat?
Wel, die eerste benadering, korrek is, indien naïef, al is, dit is, kan
beskryf by hierdie reguit lyn.
So as op die x-as, hier is ons sê, dit is die omvang van die probleem.
So as die x-as gaan na regs, die probleem groter.
Wat beteken dit om groter wees?
In die konteks van hierdie probleem, meer bladsye in die telefoon boek.
Daar is meer iets wat ons kan kwantifiseer.
Op die y-as, tyd op te los.
So as die as gaan, ons vermoed dit is vermoedelik neem meer tyd.
So dat die eerste benadering van lineêr soek van bladsy een tot bladsy 1000
is 'n lineêre proses, 'n lineêre algoritme of proses, en ons kan
beskryf dit by hierdie reguit lyn.
As ek nog een bladsy na die telefoon boek, dit gaan, in die ergste
geval, neem my nog een bladsy flip Mike Smith te vind.
As ek voeg 100 bladsye, 100 meer flips, of eenhede van tyd.
>> Nou kan ek 'n bietjie slim met hierdie.
Ek hoef nie te regtig draai dit een bladsy op 'n tyd.
Ek kan doen dinge soos twee op 'n tyd of vier op 'n slag, maar selfs dit is nie
alles wat fundamenteel beter.
Selfs al is dit twee op 'n tyd, ja, daardie soort van hierdie lyn beweeg 'n bietjie af,
en dit beteken dat dit neem minder tyd, gegewe die dieselfde aantal bladsye, maar
dit is nie fundamenteel beter.
Maar wat ons nie net doen, en wat het julle almal instinktief?
Jy eintlik 'n bietjie iets soos hierdie, logaritmiese tyd bereik,
waardeur die probleem kan groei en groei en groei, maar die koste van die oplossing van daardie
probleem, die tyd wat nodig is om die probleem op te los, is dit nie
groei byna so vinnig.
Dit sou 'n logaritmiese kurwe, log van n, waar n net in die grootte van
die probleem, die aantal bladsye in die telefoon boek.
En wat beteken dit in reële terme?
Wel, as ons het, soos, 500 mense in hierdie kamer right now -
of liewer, as ons -
vermenging metafoor -
nie doen wat byvoorbeeld nog hierdie jaar - so as ons het 500 bladsye in die telefoon
boek, en ons verdubbel dit tot 1000, in hierdie meer intelligent model van
daarby na die middel, hoeveel meer bladsy-tearers dit neem om te gaan
500 bladsye na 1000?
Wel, net 'n addisionele bladsy traan.
As jy aan my 'n 2000 bladsy telefoon boek, geen big deal.
Ek wil skeur dit net een addisionele tyd.
>> Dus, in kort, kan die omvang van die probleem groei baie vinniger as die koste van
eintlik die belangrikheid daarvan.
Dit is nou net een so 'n algoritme.
Daar is ander wat ons in hierdie selfde manier kan oplos.
En so hoekom ons nie dit doen - as jy my sou humor, al is dit ongemaklik hier
Sanders, voort te gaan, almal, as jy kan, en staan ​​in plek.
Soos jy kan sien op die skerm hier, dit is 'n algoritme, 'n proses, 'n rekenaar
program, as jy wil, wat uitgevoer moet word deur die mens, wat net drie stappe.
Ons het reeds op stap een, het jy opgestaan.
En nou dink aan jouself die nommer een.
Dit is jou huidige nommer.
Almal hier is nommer een.
Stap twee, 'n paar saam met iemand staan ​​en jou nommers,
en dan neem hierdie bedrag as jou nuwe nommer.
Een van julle moet sit, dan herhaal.
>> Op hierdie punt, moet minder en minder mense staan.
Dit is waar dit raak meer ongemaklik.
Iemand hier, hier.
Die ergste deel is, moet jy ook baie mondelings doen rekenkundige voor
van honderde van Harvard voorgraads.
Okay, bietjie van 'n fout hier.
Okay, wat is jou nommer?
Nege.
Okay.
Wat is jou nommer?
179.
Goed.
So 188.
Sodat julle kan sit.
Wat is jou nommer?
118.
'N paar slim undergrad begin om die wiskunde te doen.
Okay, 118, 188.
Wat anders het ons?
71.
79.
Okay.
En?
47, wat doserende personeel, wat gee ons hoeveel?
705 is die antwoord.
En dit is, in werklikheid, presies korrek.
>> Nee, ons was eintlik 'n bietjie af daar, maar hoe
moet dit gewerk het?
Wat moet net gebeur het?
So op elke iterasie van hierdie algoritme, het ons begin met 'n paar nommer
van die mense staan, en wat was die totale getal, n, op die eerste.
Dan die helfte van julle gaan sit, en ons het n oor twee.
Dan is die helfte van julle gaan sit het, het ons na 'n oor vier, n meer as agt, meer as 16,
en so meer, totdat, selfs al is dit soort van gedisintegreer daar by die
einde, in teorie, moes almal gepaarde af in die balkon, en mezzanine, en
orkes hier, ons het net een eensame persoon wat, met 'n totale
waarde, in hierdie geval, van 705.
Nou wat beteken dit beteken, al is, vir die loop van die tyd?
Wel, dink as ek, as die mens gedoen het dit handmatig.
Ek sou redelik naïef maar korrek het begin met een, twee, drie,
vier, vyf, ses, sewe, agt, en so meer, neem 'n geruime tyd.
So ek kan beter doen, reg?
In graad skool, het jy nie net in dié tel.
Jy tel in twees.
So twee, vier, ses, agt, tien, twaalf.
En wat kry baie vinniger, maar nou fundamenteel, deur gebruik te maak van die
kollektiewe intelligensie van almal in hierdie kamer, kan ons 'n kurwe baie bereik
meer soos hierdie, waarby nou, die aantal van die mense in hierdie kamer
kan dubbel, nog 700 mense loop in hierdie kamer vir 1400 mense, maar
sou dit neem ons net nog een iterasie van hierdie algoritme om op te los.
>> En dit toenemend, hierdie dae, wanneer ons hierdie groot data stelle in
Facebook, Google, en dies meer, is dit die oplossing van probleme met hierdie stukkie
insig, hierdie bietjie van die slimheid, dis wat ons toelaat om steeds baie om te doen,
veel meer kragtige dinge vandag met rekenaars.
As jy hou van hierdie soort van dinge, sou jy gesien het op Facebook CS50 se
eie legkaart Day, kom hierdie Saterdag.
As jy wil om deel te neem in iets soos hierdie, waardeur jy en
twee of drie, of vier spanne van vier wil graag op te los n paar raaisels sodanige
soos hierdie een, staan ​​jy 'n kans om 'n paar fantastiese pryse te wen, waaronder 'n
Wii, en 'n paar gift cards, en 'n paar ander Facebook buit hierdie Saterdag,
middag tot 15:00.
Gaan na cs50.net/rsvp vir sodanige.
En hierdie dia is aanlyn as jy wil om rond te speel.
Die kopkrapper hierdie jaar sal nuut wees.
>> Jy mag opmerk in die klaskamer, ook al hoe meer kameras vanjaar.
Dus nie net die kursus sal verfilm word op die gewone manier, CS50 kan ook
om deel te neem in 'n dokumentêr oor hoër onderwys wat kyk na die
transformerende ervaring wat 'n student kan deesdae in 'n
voorgraadse kursus van studie.
So na hierdie einde, sal ons nie net die verfilming word vir wat, ons sal verfilming word
asook vir, en toenemend, ons aanlyn publiek, sowel as op die geleentheid,
hierdie gehoor hier.
Sodat ons welkom aan die klas hierdie jaar het ons Harvard uitbreiding skool studente,
nagraadse skool van die ontwerp, die onderwys, die sakeskool, die Kennedy
Skool, die wet skool, sowel as 'n aantal van die studente van Belmont,
Lexington, Newton, en Watertown Hoërskole.
Welkom aan julle almal.
Daarbenewens het hierdie jaar, as jy dalk gehoor het, Harvard en MIT, en
Berkeley nou aangegaan is 'n gesamentlike vennootskap op 'n
inisiatief genaamd EDX, wat is 'n inisiatief om oop te maak onderwys vir almal
hoe meer mense aanlyn en, fundamenteel, begin navorsing doen oor
'n veel groter skaal as hoe mense leer.
En so CS50 sal die kollege se eerste kursus deel te neem in daardie
inisiatief, asook, wat beteken dat jy toegang tot al hoe meer
gereedskap, al die kurrikulere inhoud, al hoe meer video-inhoud as
'n gevolg, sowel as van gister oggend, die 53.019 mense wat
geregistreer CS50 saam met jou te neem hierdie jaar op die internet.
So, wat dit beteken, in die besonder, is dat die doserende personeel en ek het
nogal 'n bietjie van die tyd spandeer om hierdie somer voor te berei vir die herfs, beide op die kampus
en af, sodat ons kan begin om te bou aan 'n corpus van interessante,
dwingende, van die beoefening van opvoedkundige inhoud, wat fokus in die besonder op
meer intieme conveyances van redelik komplekse materiaal.
>> Dus, in Benewens die kursus se lesings, en artikels, en dinge
sogenaamde ipv, wat ons weer in net 'n bietjie, ons sal ook
hierdie kortbroek hierdie jaar wat u toelaat om betrokke te raak met die verloop van 'n
ander hoek almal saam.
So laat ons gebruik hierdie as 'n geleentheid om 'n vinnige blik te neem aan een wat
Bespreek hierdie idee van binêre.
>> So in die rekenaar wetenskap is daar dinge genoem algoritmes, waarvan twee
ons het net 'n blik op hierdie prosedures vir die oplos van probleme.
Maar aan die einde van die dag, het jy inligting nodig het om een ​​of ander manier voor te stel, en jy
moet dit voor te stel in 'n manier wat 'n rekenaar kan verstaan.
En selfs as jy nie regtig nie rekenaars te verstaan, en jy is in
dat 76% reg nou, het jy waarskynlik 'n paar vae gevoel dat rekenaars
een of ander manier 'n deal in nulle en ene, die binêre stelsel, om so te praat.
Nou is die rede waarom dit die geval?
Wel, blyk Toe rekenaars vir die eerste keer, as jy nodig het om te verteenwoordig
inligting, kan jy dit doen met elektrisiteit, en al is dit 'n bietjie
van 'n oorvereenvoudiging, 'n baie maklike manier om van die optekening van inligting is óf
deur die draai dat die elektrisiteit op 'n een in binêre, om so te praat, of draai
dat elektrisiteit af.
>> So Barry, indien jy nie sou omgee, kan ons dim die ligte
ten volle vir 'n oomblik?
Dit is hier 'n baie gratuite binêre nul.
Alles reg, as ons draai die ligte back-up, nou Sanders Teater
wat die binêre waarde van een.
Ongelukkig, met net 'n bietjie, met net een stel van die ligte, ons kan net
verteenwoordig twee getalle in die wêreld, nul en een, en dit sou mooi wees as
rekenaars kan 'n bietjie hoër is as wat tel nie, maar wel, kan hulle.
So laat my trek op die skerm hier om ons vriend, Nate Hardison, wie sal aan
ons 'n vinnige blik oor die verloop van 'n paar minute by
hierdie idee van binêre.
>> Nate HARDISON: Terug by wat jy geleer het hoe om te lees en skryf getalle, jy
geleer het oor die syfers van nul tot nege.
Heelgetalle groter as nege te skryf, moet jy leer dat alles wat jy gehad het om te doen
is 'n kombinasie van hierdie syfers gebruik, soos in 52 en 437.
So is hierdie manier van getalle skryf het 'n naam, desimale notasie.
Hoekom desimale?
Wel, die Latynse wortel van die desimale, decaBDE, beteken 10, en wanneer jy 10 syfers
in jou notasie stelsel, 10 'n eerder spesiale nommer.
Kom ons kyk na die getal 437 in desimale notasie geskryf om te verstaan ​​waarom.
>> Ons kan eers breek 437 tot 400 plus 30 plus 7.
Ons kan dit uitmekaar selfs meer, sodat ons vier keer 100 plus 3 het
keer 10 plus 7 keer 1.
onthou leer oor die mense, die 10s, die 100'e
plek, en so aan?
Dit is presies waar dit kom uit.
En ten slotte, kan ons sien hoe ons het 'n klomp van die magte van die
10 ingebed hier.
Ons het 4 keer 10 aan die 2 plus 3 keer 10 aan die 1 plus 7
keer 10 aan die nul.
So nou kan jy sien waarom 10 is 'n spesiale getal in desimale notasie.
Om die waarheid te sê, ons het 'n naam vir dit.
Dit is die basis genoem, want dit is die basis van die eksponent in
ons rekenkundige hier.
>> Desimale notasie is nie die enigste manier om getalle voor te stel.
Om die waarheid te sê, selfs al is ons ontslae te raak van die syfers 2 deur nege, kan ons nog
verteenwoordig al die getalle wat ons kon met desimale.
So nou dat ons twee syfers, nul en een, twee is ons spesiale nommer,
die basis van ons notasie stelsel.
Die naam van hierdie notasie stelsel genoem binêre, aangesien die
voorvoegsel bi beteken twee.
So in plaas, nou, met 'n kinders, en 10e plek, en so aan, ons
nou het dié plek, 'n twee-twee plek, 'n viere plek, en so aan, gaan deur
magte van die twee.
So laat ons sien dit deur te doen 'n paar tel.
So nul is steeds nul is, en 'n mens is nog steeds een.
Maar nou dat ons het 'n twee-twee in plaas van 'n 10s, 10
die nommer twee.
Drie tot kry, voeg ons dat, en kry 11.
Vier, want daar is nou 'n viere plek, word verteenwoordig deur 100.
Vyf is 101.
Ses is 110.
Sewe is 111.
Agt, weer, het sy eie plek.
So dit is 1000.
En ek dink jy kry die punt.
>> Spreker 1: So dit is om te sê wat rekenaars doen en wat die program is, is
eintlik nie so verskillend van wat ons het is die neem van toegestaan ​​vir 'n paar
jaar, reg?
Terug in graad skool, jy het geleer om presies te tel in die
mode dat Nate voorgestel, maar het jy waarskynlik nie regtig gedink oor
dit sedert die feit dat daar is hierdie kinders, 10s plek, en 100'e
plek, en dit is redelik arbitrêre.
En inderdaad, rekenaars gebruik eenvoudig die verskillende base.
Maar aan die einde van die dag, om fisies eintlik verteenwoordig hierdie idee van 'n
nul en een, het jy natuurlik nie net nie draai die ligte aan en af
noodwendig nie.
Wat jy nodig het om dit te doen op 'n baie fyner korrel skaal.
En deur fyner graan, kan jy onthou hierdie simpel speelding van kleins af,
Wollerige Willy en hierdie klein magnetiese deeltjies.
>> So magnetiese deeltjies is iets wat jy kan bring in 'n paar van
verskillende rigtings, miskien noord-suid-of Suid-Noord.
En so het 'n baie fisiese inkarnasies van tegnologie hierdie dae dat die gebruik
binêre, wat gebruik maak van nulle en ene, eenvoudig magnetisme aan die binnekant
wat ooreenstem dinge up-of af-up, en daardeur verteenwoordigend van 'n nul of 'n een,
onderskeidelik.
So inderdaad, laat ons wegbeweeg van die opsomming hier, en kyk na die binnekant
van wat is 'n meer tradisionele hardeskyf.
Hierdie een gebeur om te wees 'n bietjie groter op die skerm, in die sin dat dit is van 'n lessenaar
rekenaar, maar skootrekenaars vandag nog steeds dieselfde tegnologie, maar is geleidelik
word vervang deur meer gesofistikeerde dinge wat eintlik geen bewegende
dele - die binnekant, dan, van 'n hardeskyf.
>> Spreker 2: Die harde skyf is waar jou rekenaar stoor die meeste van
sy permanente data.
Dit te doen, die data uit die RAM reis saam met sagteware seine wat vertel
die hardeskyf hoe om daardie data te stoor.
Die hardeskyf stroombane vertaal daardie seine in spanning
fluktuasies.
Dit, op sy beurt, die hardeskyf se bewegende dele, 'n paar van die min beheer
bewegende dele links in die moderne rekenaar.
Sommige van die seine 'n motor, wat skole metaal bedek platters beheer.
Jou data is eintlik gestoor op hierdie platters.
Ander seine beweeg die lees-en skryf koppe te lees of
skryf data op die borde.
Hierdie masjinerie is so akkuraat dat 'n menslike hare, selfs kon nie slaag tussen
die hoofde van die spin-platters, maar dit werk teen geweldige spoed.
>> Spreker 1: So het ons nou in zoom op wat eintlik op die top van hierdie
platters in terme van die magnetisme, ons het die tweede van twee lyk.
>> SPREKER 3: Kom ons kyk na wat ons nou net gesien het in slow motion.
Wanneer 'n kort puls van elektrisiteit is gestuur na die lees-en skryf kop, dit flips
op 'n klein elektro vir 'n fraksie van 'n sekonde.
Die magneet skep 'n veld, wat verander die polariteit van 'n klein, klein
gedeelte van die metaal deeltjies wat jas elke skottel se oppervlak.
'N patroon reeks van hierdie klein gehef gebiede op die skyf verteenwoordig 'n
n bietjie van die data in 'n binêre getallestelsel wat gebruik word deur rekenaars.
Nou as die huidige een manier deur middel van die lees-en skryf kop, die gebied gestuur
is gepolariseerde in een rigting.
As die stroom in die teenoorgestelde rigting gestuur,
polarisasie is, word teruggeskryf.
Hoe kry jy data van die hardeskyf af?
Net die proses omkeer.
So dit is die deeltjies op die skyf wat die huidige en die lees-en skryf
kop beweeg.
Saamgevoeg miljoene van hierdie gemagnetiseerde segmente, en
jy het 'n lêer.
Nou is die stukke van 'n enkele lêer kan versprei word oor 'n ry se platters,
soort van soos die gemors van vraestelle op jou lessenaar.
So 'n spesiale ekstra lêer hou van waar alles is.
Dit nie doen nie jy wens jy het iets soos dit?
>> Spreker 1: Inderdaad.
So ons het die vermoë om hierdie inligting voor te stel, getalle
op 'n baie lae vlak.
Ons het 'n fisiese manier van dieselfde ding, maar ons kan nie regtig
doen al dat baie van belang is nie, behalwe miskien 'n paar rekenkundige en
wiskunde.
Daar is geen manier wat tot dusver dinge soos alfabetiese letters,
sodat ons mense kan kommunikeer, deur gebruik te maak van hierdie toestelle.
Maar gelukkig, bestaan ​​daar enkoderings, patrone van nulle en ene
wat hoër vlak konstrukte soos A, en B en C, en die hele stel
sinne en paragrawe, en dies meer.
En so ASCII, wat is 'n akroniem wat verwys na hierdie koderingstelsel waardeur
een getal 'n gegewe letter - byvoorbeeld, die getal wat ons weet
as desimale waarde 65 word bekend as die hoofstad letter A tot rekenaars.
Die desimale waarde van 97 in rekenaars is bekend as 'n kleinletter a.
En wat beteken dit werklik?
Wel, selfs al Nate, 'n oomblik gelede, net getel vanaf nul tot agt, indien
ons was om voort te gaan om te tel tot 65, of verder tot 97, die patroon van
nulle en ene dat hy sou getrek het op die skerm sal presies wees
wat 'n rekenaar gebruik om die letter A in alle pette, of die letter A te verteenwoordig
in kleinletters.
En inderdaad, daar is 'n hele skema te.
Dit is met die eerste oogopslag, oorweldigende grafiek enkoderings, maar as jy fokus
let net op die regter helfte hier, in die middelste kolom, het ons hierdie
begrip van getalle gevolg deur letters.
En by die top, het ons 32, en die karakter kar, waarin 32, die
integer, nou verwys, is blykbaar die space bar karakter.
Wanneer jy die space bar karakter op jou laptop, wat jy regtig
stuur is 'n getal, 'n patroon van nulle en ene, 'n vloei van elektrisiteit,
as jy wil, verteenwoordig daardie nulle en ene, dat die rekenaar dan
interpreteer as 'n ruimte karakter op die skerm.
'N uitroepteken is 33.
Dubbele aanhalingstekens is 34.
En as ons scroll down hier aan die regterkant, ons sien dat 65 is inderdaad 'n, en
97 is inderdaad kleinletter a.
>> So nou dat ons hierdie kodering skedule, kan ons begin om te
spel dinge uit.
Inderdaad, rekenaars tipies hulself uitdruk in standaard eenhede, nie
deur gebruik te maak van 'n individuele bietjie, wat weer, is nie alles wat nuttig om net
verteenwoordig nul of een, ligte op of af nie, maar eerder, met behulp van
rye bisse.
En die mees algemene eenheid van meting, soos u waarskynlik weet, of ten minste
afgelei word, is 'n greep.
'N greep is net agt bisse, agt nulpunte of wat in 'n ry.
Sodat ons kan begin met die spelling dinge uit.
En so het as ons kon, waarom nie probeer om dit 'n bietjie gesamentlik hier?
Is daar agt mense in hierdie kamer wat bereid sou wees om
om te kom op die verhoog?
Jy moet gemaklik wees op kamera te verskyn, maar jy het nie regtig nodig
om anders te weet wat gaan aan net nog.
Ek sien 'n persoon wat vrywillig hier.
Twee, drie, vier, vyf, ses, sewe, en hoe sowat agt?
Kom op.
>> So jy is oor 'n greep van die mense te verteenwoordig.
Laat my het jy al die 128s plek, jy die 64s plek, moet jy die 32s plek.
Maar ons gaan baie vinnig om dit om te keer.
So laat ek julle ontmoet daar.
En jy moet al die pad oor in die 128s plek, hier baie soos die
honderde plek of die duisende plek sou wees om verder aan die linkerkant, ons wil
die grootste plekhouer om hier te wees aan die linkerkant as well.
Ons het 'n 64s, 32, 16s, 8s, 4s, 2s, en 1s -
uitstekend.
So nou het ons -
okay, kan jy my help.
So nou het ons - wat is jou naam?
Joanne: Joanne.
SPEAKER 1: So Joanne en ek gaan nou hierdie ouens te adviseer oor hoe ons
kan gaan oor die spelling iets uit.
So op die rug van hulle velle papier, het hulle 'n bietjie cheat sheet
wat hulle gaan om te sê of hulle 'n nul of 'n een is verteenwoordig.
En waarom nie, vir eenvoud, sal ons verteenwoordig nul deur net
daar staan ​​ongemaklik.
Baie goed.
Of 'n een deur die verhoging van jou hand, wat 'n een.
En laat ons sien as ons nie kan uitspel 'n vier karakter frase hier.
>> So gaan voort nou, vrywilligers, en uit te voer 'n ronde een deur die verhoging van jou hand
as jy 'n een, of hou dit af as jy 'n nul.
So nou dat ons hierdie drie hande, watter getal, almal anders,
hulle eintlik verteenwoordig?
Okay, 67.
Hoekom?
Wel, vinnige gesonde verstand gaan.
64s plek, want dit is 'n een.
Dit is soos een keer 64, plus 1 maal het twee, so dit is 66, plus 1 keer 1.
Dis plus 1, so 67.
So nou hierdie ouens is gesamentlik verteenwoordig 67, wat blykbaar
verteenwoordig wat hier in ASCII?
Okay,
so 'n C. Alle regte.
So nou, laat ons gaan twee te rond.
Almal begin met hul hande neer, en dan die tweede ronde.
Eintlik is daar nie veel van 'n rol hier, dink ek, maar ons sal voorgee.
So het die tweede ronde, verhoog of verlaag jou hande.
>> Alles reg.
Publiek, wat is ons nou?
Uitdrukking is 83.
Sodat jy kan doen die wiskunde.
Maar vir iemand wie se hand op, voeg jy in die aantal wat hulle verteenwoordig.
So nou het ons 83.
Kom ons brei die cheat sheet 'n bietjie, en ons het nou -
dit kan duidelik wees waar ons hier gaan, maar
tog, die derde ronde.
Goed, die derde ronde is goed om te gaan daar, so die derde ronde, watter getal
hierdie ouens nou verteenwoordig?
Okay, ek hoor 53, wat nou verteenwoordig - interessant.
Nou waarom hierdie soort van teen-intuïtief gevolg, reg?
As ons wil vyf voor te stel -
ons almal waarskynlik weet waar dit gaan -
hoekom ek nie net verhoog die viere plek en die mense plek?
>> Wel, ons besef dat daar 'n verskil in wese tussen hoe
'n rekenaar interpreteer hierdie stukkies.
As jy probeer om die nommer vyf, dan absoluut verteenwoordig, het ons net
verhoog jou hand nommer vier en verhoog hand nommer een.
Maar ons is nie verteenwoordigend van getalle hier.
Die konteks hier op die verhoog is dat ons karakters is verteenwoordig of
karakters en in hierdie konteks, die rekenaar het om te besef dat oh, dit
patroon van die stukkies is nie 'n aantal alleen.
Dit is eintlik wat 'n hoër vlak van begrip.
In hierdie geval, 'n alfabetiese letter.
So die feit dat dit nou wat die nommer vyf met die
waarde 53 is omdat die saak in ASCII, ons esteties sien as die
nommer vyf self het 'n patroon van stukkies - want hoekom?
Wel, die wêreld net besluit om gebruik te maak van die laer nommers, nul, een, twee,
drie vir wat lyk te wees redelik kriptiese dinge.
En inderdaad, dit is die karakters wat nie op 'n sleutelbord.
Spesiale uitdrukkings wat jy nodig het in 'n rekenaar interessante dinge te doen, maar
die mens nooit eintlik tik hulle.
So 53, inderdaad, verteenwoordig vyf.
Nou net as 'n finale gesonde verstand tjek, Watter nommer moet hulle
verteenwoordig in net 'n oomblik?
Okay, so 48.
En inderdaad, voort te gaan, die vierde ronde.
16 plus 32 is inderdaad 48.
En so 'n groot applous, as ons kon, vir ons agt vrywilligers hier.
Baie goed gedoen.
Enige rigting is goed.
>> So het ons nou nie net 'n manier van dink oor hoe om data voor te stel,
en eintlik verteenwoordig dit fisies nie, maar ook doen hoër
vlak dinge op die top van.
En inderdaad, dit gaan om 'n tema in rekenaarwetenskap van
die bou van meer en meer interessante en komplekse dinge op die top van
redelik eenvoudige idees -
in hierdie geval, net nulle en ene.
In terme van die rede waarom dit is nuttig, goed, selfs al in 'n kursus soos hierdie,
ons sal fokus op fundamentele faktore en programmering, en op die oplos van
probleme, kan jy gaan in rekenaarwetenskap in 'n aantal aanwysings.
Hier in hierdie geval, dit is 'n kaart wat jy het op die agterste bladsy van jou
nie-amptelike gids tot CS by Harvard, een van vandag se twee drukstukke.
Dit dui op die baie verskillende rigtings waarin jy kan gaan na 'n
kursus soos hierdie -
leer oor kunsmatige intelligensie, oor die graphics, oor
masjien leer, oor die taal self.
Besef ook dat daar nog ander paaie.
Daar is meer wiskundige paaie in rekenaarwetenskap.
As jy nie eens in staat om iets te neem soos CS50 hierdie val, is daar
inleidende kursusse in die lente, Rekenaarwetenskap 1, byvoorbeeld, is
nog 'n op-afrit na hierdie nuwe wêreld.
>> Nou as 'n eenkant, in die belang van die oplos van probleme met betrekking tot die kursusse,
besef CS50 uiteengesit geruime tyd gelede probeer om een ​​van hierdie probleme op te los, 'n
probleem bekend as my.harvard, wat baie van julle kan gebruik word om werklik
winkel vir kursusse, maar indien nie, check 'n instrument soos hierdie, sowel as ander
afstammelinge dat sommige van ons oudstudente en personeel geskep het.
Maar in Harvard Kursusse, wat is 'n web-gebaseerde instrument, iets wat jy
sal in staat wees om van die ontwerp en implementering van julle, sowel as nog
ander dinge as goed deur die einde van die semester, besef dat dit bou
op 'n oop datastel.
In hierdie geval, natuurlik, katalogus, en stel studente in staat om in hierdie geval
verken 'n taamlik ingewikkelde stel data.
>> Ons opgegrawe gisteraand 'n paar statistieke gebaseer op die paar duisend mense wat
is die gebruik van hierdie oor die afgelope paar dae.
As jy is nuuskierig om te weet hoeveel kursusse jou vriende eintlik
geneig om te shop, goed, vandag hierdie data dui daarop dat 7,6 is die gemiddelde
aantal kursusse op iemand se inkopielys.
En nou sal ek gee jou ook die statistiek van die meeste aantal
kursusse op iemand se inkopielys - en ons almal weet waarskynlik
iemand soos hierdie.
201 is vanjaar se rekord.
Nou sommige van ons oud-studente en personeel werklik saam te stel om 'n clip te
verf 'n prent vir jou van wat hierdie pad van rekenaarwetenskap
en CS50 self is.
Laat my gaan voort en trek, te danke aan mnr. Harvahd hier, 'n video wat deur
sommige van jou voorgangers, as ons die lig kan hou vir hierdie.
[Musiek speel]
>> Spreker 1: Ek het geen idee wat gaan gebeur.
So 'n meer ernstige blik op wat voorlê.
Dus, in terme van die verwagtinge van hierdie kursus, is julle sal na verwagting
bywoon of kyk na die kursus se lesing, agt probleem stelle voorlê, neem twee
vasvrae, 'n finale projek.
In terme van grade, besef dat my kommentaar op die opening oor
slaag misluk, iets wat ons baie ter harte neem in CS50 - daar is nie
naastenby genoeg om te probeer om van 'n kultuur by Harvard
iets en die gevaar van mislukking.
Inderdaad, ons het getalle van studente, en myself in die besonder, wat
bekommerd oor die seer jou GPA, of om 'n B in iets soos CS50,
en die geleentheid om 'n kursus soos hierdie en ander poort kursusse te neem
die inleidende vlak slaag / druip, is 'n baie onderbenutte geleentheid op hierdie
kollege in die algemeen.
En so moet asseblief weet, selfs ek wat ingeskryf is in hierdie kursus aanvanklik vir slaag / druip
krediet alleen, en selfs al het ek skakelaar aan die einde van die dag, was dit
die vyf eerste weke, tot die vyfde Maandag van die semester, wat
die donker, wat my toegelaat het om werklik te voet in hierdie nuwe
waters, en eintlik probeer om iets baie vreemd en baie ongemaklik
vir my op die oomblik.
>> So nou in terme van die rol wat die verskillende hoeke wat jy kan
benader hierdie kursus dien -
sodat lesings. Dit is aan jou.
As jy betrokke raak met ons op hierdie plek, in die persoon inderdaad, ons weet
statisties dat ongeveer 40% van julle sal soort van kom en gaan oor die
loop van die semester, en 10% van julle sal ons nooit weer sien na vandag.
En dit is heeltemal fyn, om eerlik te wees.
Een van die kenmerkende eienskappe van CS50 is dat daar hierdie
ontelbare bronne, waarvan sommige sal ons rammel deur in net 'n oomblik,
met inbegrip van lesings en artikels, en die dinge wat ons genoem ipv, en kantoor
ure, en dies meer, en dit is meer hulpbronne as die tipiese student
moet of fisies kon neem voordeel van, maar dit is omdat
van die uiteenlopende leerstyle dat enige student liggaam manifesteer.
En so in lesings, die primêre rol soos ek dit sien is nie om mondelings druk
redelik komplekse materiaal en noodwendig lewer al die
verwikkeldheid van die grondbeginsels wat ons sal hierdie semester verken, maar
eerder dinge soos ons het al so ver reeds doen, om te doen hierdie voorbeelde
wat die mens op die toneel probeer om 'n prentjie te verf, en ook
skep, durf ek sê, sommige van hierdie onvergeetlike oomblikke, so dat selfs as jy
sukkel met sekere onderwerpe, jy het hierdie herinneringe, soos oh, selfs al
wat was taamlik abstrak, die wiskunde, het ek verloor het met die uitvoering van 'n een, soos,
dit werklik, aan die einde van die dag, is nie alles wat verskillend op iets wat ek
reeds weet.
En so het die rol dat lesings óf sal dien in persoon hier in Sanders
of aanlyn video is regtig die verhoog om geestelik te stel vir jou elke week
vir die verskillende konsepte en probleme wat ons sal duik in.
>> In terme van die hoë vlak konsepte, kan die meeste van hierdie woorde vloei oor
jou kop vir die oomblik.
En dit is goed.
Diegene van julle wat sal kom in die kursus meer gemaklik sal weet
sommige van hierdie onderwerpe nie, maar tipies vir 10% van die klas waarvoor
Hulle het baie meer agtergrond, AP rekenaarwetenskap, programmering sedert
hulle was 12, besef dat daar geleenthede sal wees in afdelings en
probleem stel al hoe meer diepte te gaan in verskeie onderwerpe in te vul
watter gapings jy kan hê van jou hoërskool of vorige agtergrond.
In terme van die tale, besef dat die taal wat ons gebruik in CS50
grootliks irrelevant aan die einde van die dag.
Ons gebeur hoofsaaklik gebruik 'n taal met die naam C. Teen die einde van die
semester, stel ons web-sentriese tale, soos PHP en JavaScript.
Maar ons en ander kan 'n kursus soos hierdie leer in die meeste enige moderne
hoë-vlak taal -
Python, en Ruby, en ander is baie gewild hierdie dae, want besef,
aan die einde van die dag, is jy nie leer in hierdie C. Jy is nie
leer PHP of JavaScript.
Jy leer hoe om probleme op te los, of web-gebaseerde, rekenaar-gebaseerde, of
data-georiënteerde self, die gebruik van hierdie eenvoudig as gereedskap.
>> In terme van die logistieke, sal jy gebruik om iets wat uiteindelik genoem die
CS50 Appliance.
Maak nie saak of jy 'n Mac, 'n rekenaar, 'n Linux-rekenaar, of iets dergeliks,
jy sal moet vrylik beskikbaar sagteware begin van volgende week met wat te gebruik
die CS50 Appliance, 'n virtuele omgewing wat jy gebruik op jou
eie rekenaar, sodat jy en al jou klasmaats 'n eenvormige Linux
lessenaar in hierdie geval.
Dit is die probleem stelle, al is, wat jy regtig kry jou hande
vuil in die kursus.
En aan die einde van die dag, dit is die probleem stelle, dink ek, wat werklik
Definieer 'n student se ervaring in hierdie kursus.
Besef dat baie van die probleem stelle vrygestel sal word in twee uitgawes -
'n standaard uitgawe dat ons verwag en moedig 90% van die
klas om te duik in.
Maar ons het ook 'n probleem stelle in sogenaamde hacker uitgawes vrygestel, en jy
weet dit is die hacker uitgawe, want op elke bladsy met 'n watermerk, is dit
sê hacker uitgawe op dit.
En dit is vir hierdie demografiese van julle wat AP rekenaarwetenskap het met 10
jare van programmering onder jou gordel, en is op soek na daardie gapings in te vul,
en meer formele, eerder as selfopgeleide opleiding miskien besef
dat daar 'n baie aansienlike demografiese in die klas wat
presies daardie selfde doel.
Jy het vyf laat dae.
Probleem stelle is oor die algemeen as gevolg op Donderdae, maar jy kan brei vyf
die sperdatums wat deur gebruik te maak van hierdie dinge genoem laat dae, en ons sal ook daal
jou laagste telling aan die einde van die semester volgens die
besonderhede in die sillabus.
>> Maar 'n ander bepalende eienskap van CS50 oor die jare geword het kantoor
ure, 'n geleentheid wat jy visueel sien in foto's 'n bietjie gelede waarin
versamel ons voorheen in die huis eetsale, voor wat in die
kelder van die wetenskap sentrum, en hierdie jaar in Annenberg Hall, vier
nagte 'n week 20:00-11:00, waar jy sal dit baie
gedeelde ervaring van werk aan, sukkel om deur sekere probleme,
maar met 'n aansienlike ondersteuning struktuur in plek.
Trouens, die manier waarop dit sal werk, kom jy by Annenberg as jy
'n vraag gedurende die week.
Jy bring jou laptop, sal jy sit, gryp n paar kos, en jy teken
in te CS50 Bespreek, 'n web-gebaseerde nut dat die doserende personeel
ontwikkel wat jou sal toelaat om vrae te plaas en Followups sien in 'n
tipiese gesprek forum sin, die gebruik van etikette en die soos, en motor-volledige
om die data te soek.
Maar jy sal ook in staat wees om, gedurende die ure van kantoorure, het jou
vrae toegeneem tot werklike menslike wesens.
Trouens, die doel is om uiteindelik sodat 'n mens, het ons begin om op te bou oor die
loop van die semester 'n korpus van hopelik baie nuttige inligting,
algemene antwoorde op algemene vrae, sodat jy jouself kan probleme op te los
en kry unstuck so vinnig as moontlik, terwyl die onderrig
personeel - gewoonlik 20% tot 30% van die onderrig-genote en natuurlik assistente
op die personeel in 'n keer.
>> Ons sal hê wat die CS50 Groeter in Annenberg genoem, en wanneer ons
bepaal dat, jy weet wat?
Hierdie vraag beantwoord, het ons regtig effektief aanlyn.
Ons moet jou rekenaar om te sien.
Ons wil om te praat met jou een op een.
Jy regtig sukkel, en jy dus wil een om te praat op 'n
sal jy saam met iemand, versend word na die CS50 Groeter, 'n
onderrig mede hou, letterlik, 'n iPod wat studente se name op die een
kant, onderrig personeel se name op die ander.
Ons sal jou naam versamel, gevolg deur die naam van 'n doserende personeel, en jou
rekenaar skerm sal flikkerende begin, sê asseblief gaan kyk Alice of asseblief
gaan kyk Bob by die personeel tafel.
En so op hierdie manier, sal ons in staat wees om dinge so doeltreffend gestuur
moontlik, sowel as jou lei na oplossings al die meer geredelik.
In afdelings, sal hierdie geleenthede vir meer intieme hande-
op geleenthede met een van die onderrig-genote en 12 tot 16 of so
jou klasmaats, wat elke week, sal ons probleme in die probleem stel
wat 'n aantal van konseptuele vrae vra, en 'n aantal van die byt-grootte
die programmering van die vrae wat jy op jou eie kan uitwerk, en jy kan
werk op jou eie, maar in die konteks van artikel, sal ons werk deur
gesamentlik 'n paar van die probleme en gaan waar die
gesprek neem ons.
>> Daarbenewens sal in artikel jy die geleentheid kry om voorleggings te hersien
huiswerk wat jy gemaak het, jou klasmaats, soms anoniem,
altyd deur 'n opt-in, as jy wil om te deel
werk wat u gestuur.
So sal dit werklik 'n twee-directional gesprek, en geleentheid om
jou eie werk hersien in 'n baie meer dinamiese sin, eerder as om net
op soek na 'n PDF of afdruk en dink oor dit vir 'n paar sekondes
en nie noodwendig die opname van die terugvoer wat die
doserende personeel verskaf.
En jy sal gebruik om 'n instrument wat hier genoem CS50 Spaces.
Vir diegene wat nie vertroud is, dit is die taal wat bekend staan ​​as C op links bo, en
kry jy dit oor tyd te weet, maar dit is 'n web-gebaseerde nut dat ons sal
gebruik in die artikel wat jou sal toelaat om jou en jou 15 of so klasmaats aan te teken met
jou onderrig genoot aan die voorkant van die kamer.
Jy sal in staat wees om kode te skryf in hierdie venster.
Jy sal in staat wees om elektronies te gesels as jy nie eintlik by die artikel by
daardie spesifieke oomblik, en jou onderrig mede, wanneer dit tyd is om te
bespreek Alice of Bob se oplossing in die klas, kan die onderrig mede-kliek op 'n
knoppie, en voila, projek op die skerm wat ook al dat die student
werk op daardie spesifieke punt in die tyd.
So vir diegene van julle het vriende wat in die verlede geneem CS50, besef
dat artikels aansienlik herselflaai hierdie jaar al hoe meer
aktief, al die meer dinamiese en regtig, 'n tweerigting-gesprek tussen
die onderrig van personeel en studente.
>> En deurlope.
So vir hierdie probleem stelle, bied ons ook nie net die spesifikasie
self, wat is oor die algemeen 'n redelik gedetailleerde PDF, maar ook die dinge bekend
as ipv, waardeur een lid van die doserende personeel sal lei 'n weeklikse
sessie wat letterlik loop jy deur middel van die probleem stel, gee jou
wenke en advies, en beginpunte, en is bedoel om die baie om te vra
wat dikwels gevra die vraag: waar moet ek begin?
Wel, jy begin deur duik in die spec op sy eie, of deur die bywoning van
of kyk na hierdie ipv.
Die eerste walkthrough, in werklikheid, sal hierdie Vrydag.
Hulle sal op Vrydae, nie soseer omdat ons dink dit sal 'n gewilde
tyd, maar omdat ons kan dan verfilm hulle baie vroeg in die week en kry
hulle aanlyn deur die naweek, sodat jy het baie dae as moontlik te
werklik betrokke te raak in die inhoud as well.
Maar meer oor wat in die lesing hierdie Vrydag.
>> Nou in terme van die ondersteuning struktuur, die belangrikste statistiek is
miskien die 108 onderrig genote en natuurlik assistente wat hierdie kursus
tans het.
Indien sommige van julle wat nie teenstrydige klasse wil aansluit
my hier op die verhoog, dit is hierdie ouens wat werklik sal uiteindelik jou definieer
ervaar in die kursus.
Ek het 'n baie van onderrig genote leer my klasse in die dag, en ek
onthou baie min van diegene, eerlik, maar tot op datum het ek nog onthou onder
daardie paar my CS50 TF, wat werklik het my gehelp om vrae te beantwoord, wat werklik
het my gehelp toe ek sukkel, en was regtig 'n vennoot in hierdie
ervaring van die leer van 'n heel nuwe wêreld.
In 'n bietjie, al hierdie ouens sal by jou aansluit buite vir die koek, wat
is 'n tradisie van CS50, in die transept van die Memorial Hall, maar laat my
voer jy eers weer na Nate Hardison, Rob Bowden, en Tommy
McWilliams, hoof van vanjaar se kursus.
As jy ouens wil saam met my hier in die middel.
Hulle het almal bereid n paar inspirerende kommentaar.
>> Tommy McWilliams: Ek het nie iets inspirerende voor te berei.
Maar my naam is Tommy.
Ek is 'n senior in Mather.
Ek studeer rekenaar wetenskap, regtig opgewonde om te wees op die top-span en
gaan deur die CS50 reis saam met jou.
Wat ek regtig baie lief vir CS50 is hoe dit werklik leer om te dink oor
probleme in 'n nuwe manier.
Dit is regtig 'n vaardigheid wat gaan van onskatbare waarde wees, maak nie saak watter veld
jy gaan in.
En nie alleen dit nie, maar ons bied meer vrye candy as enige
ander kursus op kampus.
So ek is regtig net op soek daarna om te sien wat
almal hierdie semester bou.
En as iemand enige vrae of regdeur die semester, beslis
voel vry om uit te reik na my, en ek wil gelukkig wees om te help.
>> ROB Bowden: Hi.
Ek is Rob Bowden.
Ek is 'n senior in Kirkland.
Ja, dit is reg.
Ons is regtig opgewonde vir die komende semester.
Ons hoop julle almal is opgewonde.
Ek het nie verwag dat.
Ja.
So ons sit soveel moeite in die maak van hierdie semester werklik 'n groot, en as
lank as wat jy bereid is om te sit in die poging, daar is so baie wat jy kan kry
uit van hierdie kursus.
Jy kan 'n baie pret uit van hierdie kursus.
Ons wil nie 'n personeel van 108, as jy nie kan kry 'n baie pret uit,
so probeer om betrokke te wees, en jy sal nie spyt wees nie.
>> Nate HARDISON: Hi, ouens.
Ek is Nate.
Ek is die leermeester vir die kursus.
Ek is regtig opgewonde om hier te wees as goed.
Dit is my eerste jaar hier.
Ek hoop julle almal hierdie kursus neem, en geniet dit soveel as wat ek het
geniet dit so ver.
En as jy ooit wil om te leer hoe om te kom tot nege of tien in binêre, kom
praat met my.
>> Spreker 1: So op die risiko van die verlaat van hierdie ouens hier op die verhoog 'n bietjie
ongemaklik, laat warrel deur net 'n paar van die dinge wat wag voor ons
verdaag vir koek.
Wat is dit wat voorlê?
Wel, as ons 'n vinnige blik op verlede jaar, in probleem stel nul, jou
voorgangers duif in 'n programmeertaal genoem krap, 'n grafiese
programmeringstaal wat jy sal gebruik in die eerste dae van die kursus, beginnende
hierdie Vrydag, sommige begrippe onbekende vir sommige van julle leer, maar besef
daar sal 'n gevorderde aspek van hierdie vir diegene van julle met vooraf
agtergrond.
>> In verlede jaar se probleem sit twee studente wat duik in die wêreld van
kriptografie, die kuns van geheimschrift of skommeling van inligting,
implementering van programme wat encrypted data, en in die hacker uitgawe laaste
jaar het studente voortgaan om te kraak of te dekodeer die wagwoorde in 'n tipiese
rekenaar se xc wagwoord lêer deur te kom met algoritmes en heuristiek vir
brute krag uitzoeken wat iemand se wagwoord op 'n rekenaar
stelsel was.
Laaste jaar of twee, in die probleem stel vier het studente
die uitvoering van die game van Sudoku.
En die hacker uitgawe in daardie jaar het studente nie net implementeer hoe om
speel die spel, maar eintlik 'n oplosser, waardeur die rekenaar kan u voorsien,
die mens, met wenke, vinniger as wat jy die oplossing van
dat die spesifieke probleem.
>> In probleem stel vyf, ons het forensiese, die kuns van die herstel van inligting
dit was per ongeluk of baie doelbewus
van die rekenaar verwyder.
Verlede jaar het die doserende personeel en ek stap om die kampus
foto's van mense, plekke en dinge en dan per ongeluk
geformateer die media kaart op ons kamera wat al die foto's het.
Maar nie 'n probleem nie, ons het 'n forensiese beeld van hierdie media-kaart, oorhandig dit uit
aan alle studente in die klas, en hulle uitgedaag om programme te kan skryf wat
verhaal al van die JPEGS van daardie kaart.
En dit is eintlik een van ons gunsteling probleem stelle, en ek begin het om 'n
ou e-pos van een van jou voorgangers wat was groot pret
Lees tyd gelede.
>> Dit is van Matt.
Geagte David, gister my suster per ongeluk geformateer haar kamera se SD
kaart en 'n jaar se moeite werd om van onvergeetlike foto's verloor.
Sy is ongelukkig nie die beste op die back-up van haar data.
Maar hierdie situasie herinner my van p-set 5, so ek het gedink ek sou probeer om te
hardloop haar SD kaart deur die herstel program wat ek geskryf het al die pad terug
in Oktober.
So na vier uur van die uitzoeken hoe om 'n rou beeld te skep van die
geformateerde SD kaart -
Google blyk te wees redelik nuttig in hierdie verband, totdat ek ironies genoeg
gebeur om te kom oor jou instruksies op die Internet -
na geknutsel rond met 'n paar van die command line argumente, het ek daarin geslaag om
die forensiese beeld te skep, en na die installering en instel van die
CS50 Appliance, het ek daarin geslaag om die forensiese beeld uit te voer deur my program en
alle 1027 van my suster se foto's, skryf Matt.
>> In verlede jaar se probleem Stel ses, ons het die studente 'n woordeboek van
150.000 Engelse woorde en hulle uitgedaag om te skryf van 'n speltoetser wat
beantwoord navrae van die vorm, is hierdie woord korrek gespel of verkeerd
so vinnig as moontlik.
En op opt-in die basis was studente wat toegelaat word om dan daag klasmaats
deur die plekke van hulle resultate, die hoeveelheid geheue wat hulle gebruik, die aantal
CPU siklusse of sekondes wat hulle gebruik het, sodat studente is dan posisie op
die kursus se webblad - weer suiwer opsioneel aspek van dit, maar groot pret
dat baie dikwels 'n student sou kry om posisie nommer 10 of so op die groot
raad, op die webwerf, gaan af na ete en dan terug te kom, en besef
sy kamermaat het net 'n rand in die voorkant van hom of haar op die groot raad,
daardeur giet nog twee of drie uur net op een
sy of haar kamermaat.
>> So ons sien uit na iets soortgelyks hierdie jaar so goed.
In probleem stel 7 het ons stuur in die rigting van die web programmering, eintlik
die oplossing van probleme in die steeds meer algemeen omgewing
van 'n webblaaier.
Weet dan decreasingly laai ons sagteware op die Mac en PC, maar
steeds, ons doen dit alles in die web.
>> En inderdaad, verlede jaar, ongeveer 88% van die studente se finale projekte in die kursus
web-gebaseerde.
En daardie is ook die vaardighede wat jy kan aflei uit hierdie klas deur
kursus se einde, want wat wag op die kursus se einde, is die CS50 Fair,
uitstalling wat is gebaseer op die idee van 'n wetenskap-beurs, maar in hierdie weergawe van die
'n regverdige doen alle studente in die klas bring hul skootrekenaars, en hul
vriende en familie, en om ander te Northwest Wetenskap, 'n groot gebou op
kampus, die opstel van hul laptop, kry 'n paar kos, kry 'n paar springmielies en drink, en
toon dan hul finale projekte vir almal in die bywoning, wat verlede jaar
2500 deelnemers van regoor die kampus, en uitdrukkings soos gemonster
hierdie, en soos dit nie ongewoon was nie op die beurs.
>> Wat gelei het tot die skou is die CS50 Hackathon, 'n geleentheid om te hop op 'n
Harvard shuttle, kop af in die straat te Microsoft op 20:00, en nie huis toe gaan
tot 07:00.
Ons dien die eerste dinee op 20:00, tweede ete by 01:00, en vir diegene wat nog
staan ​​om 5:00 am behandel ons pannekoek by IHOP.
En die Hackathon 'n geleentheid, soos hier, om te duik in jou
finale projekte, of op jou eie of saam met vriende in 'n
samewerkende omgewing, waar die hele doserende personeel is goed werk
in die nag met 'n ruim aanbod van Hong Kong Chinese kos.
Op 05:00 sal sodanige beelde as dit redelik algemeen is hierdie jaar so goed.
>> Dus as ons in 'n oomblik verdaag vir die koek, hou in gedagte dat 76% van die
mense in hierdie kamer het geen vorige ervaring, en soos per die sillabus,
wat uiteindelik sake in hierdie kursus is nie soseer waar jy opeindig nie
relatief tot jou klasmaats, maar waar jy eindig, in week 11, relatief tot
jouself in week 0.
Dit is CS50.