[Powered by Google Translate] [Musiek speel]
David J. Malan: Dit is CS50.
So ek was waar jy nou is n paar jaar gelede.
En toe was ek 'n groentjie op die oomblik, ek was nie regtig op
hierdie pad van rekenaarwetenskap, doen ingenieurswese.
Inderdaad, ek het in hierdie plek as 'n regering concentrator.
Ek was in die hoërskool, 'n kind wat
graag dinge soos die geskiedenis.
Ek hou van grondwetlike reg, soort van Engels en wiskunde.
Dit is soos 'n soort van afgeronde, maar het nie
noodwendig weet dinge wat ek nie was
in die hoërskool geleer.
En so eerstejaars jaar, ek het hierdie bewing waardeur selfs
alhoewel ek graag rekenaars, speel rekenaar speletjies en die
hou nie, ek is seker nooit gedink aan myself as '
rekenaar persoon, 'n rekenaar wetenskaplike.
En eerlik, ek het gedink my vriende in die hoërskool wat
neem rekenaarwetenskap was bietjie van 'n geeks.
En tog, toe ek hier gekom het op die kampus, was daar
hierdie kursus CS50.
>> En op die oomblik, dit het hierdie reputasie van 'n baie
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 'n regering concentrator, gaan
deur middel van so baie van die voorvereistes as ek kon,
kruis-tel dinge vir gen ed of kern en die soos.
En dan stage jaar, vir een of ander rede, het ek die
senuwee voet te stap in Science Center B, waar CS50 was.
'N baie bekende rekenaar wetenskaplike met die naam van Brian
Kernighan hier daardie jaar onderrig.
En selfs dan, ek was net bereid is om werklik te vul
my studie kaart deur die neem van hierdie klas slaag / druip.
Ek kyk rondom my en ek het gedink almal in hierdie een se
manier om meer oor rekenaarwetenskap moet weet, oor
programmering, oor rekenaars.
Almal een moet wees 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, die Maandag van die semester,
ek het hierdie sprong en verandering van slaag / druip na 'n
brief graad en geëindig het om my konsentrasie te verander dat
dieselfde dag rekenaarwetenskap.
>> Nou, dit is nie ons doel in hierdie klas, julle almal om te draai
in rekenaarwetenskap concentrators, maar eintlik
stel voor dat daar is 'n geleentheid om 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, in
nuwe waters.
En as jy hier sit vandag dink jy nie
eintlik behoort, 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, die meeste van die mense
sit hier vandag nie, in werklikheid, het 'n vorige
ervaring.
18% het een CS klas, en 6% het twee of meer.
Intussen, vra ons studente elke jaar om te beskryf
hulself in terme van comfort vlak.
En 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 het geen idee gehad waarom hulle wil selfs die kursus shopped
daardie eerste dag.
Maar dieselfde 55% met ons gebly totdat kwartaal se einde, net soos
35% wat iewers tussen die meer gemaklik
en diegene wat minder gemaklik.
>> So, wat is rekenaarwetenskap?
Goed in die hoërskool, en werklik meer in die algemeen uit
daar hierdie dae, daar is hierdie persepsie of hierdie
wanopvatting dat die rekenaar wetenskap is om die programmering.
En dit is absoluut een aspek van rekenaarwetenskap.
Maar programmering, ongeag die taal is, is eintlik net 'n
instrument wat die rekenaar wetenskaplikes gebruik om probleme op te los, óf
in die gebied van rekenaarwetenskap of toenemend hierdie
dae in die fisiese wetenskappe, natuurwetenskappe, in
medisyne, in die geesteswetenskappe, groot stelle data te analiseer.
Enigeplek nou is daar rekenaar en data, is daar 'n
geleentheid om lesse wat geleer is in 'n klas soos CS50 om aansoek te doen.
>> So laat ons 'n probleem op te los wat 'n rekenaar wetenskaplike kan
oor die oplossing en probeer om sommige jargon te sit, sit 'n paar
konseptuele raamwerk, kan anders oor wat 'n paar
redelik abstrakte idee.
So, dit is 'n telefoon.
Jy sien nie hierdie dinge te dikwels, maar die kollege
lyk nog om dit te hê in die huise en slaapsale.
Maar terug in die dag wanneer jy wou 'n selfoon te gebruik
hierdie, was daar geen elektroniese adresboek
in jou selfoon.
Nee, jy trek iets
bekend as 'n telefoon boek.
En hierdie telefoon boeke het sowat 1000 bladsye, tipies.
Hulle is gesorteer van A tot Z., en jy het om te vind
reg die persoon wat jy soek te vind ten einde te
vind hulle naam en telefoonnommer.
Nou hoe gaan jy te werk om op te kyk
iemand in hierdie boek?
>> Gestel my doel is my vriend, Mike Smith, 'n oproep te gee.
Wel, hoe gaan ek te werk oor die vind van Mike Smith?
Wel, 'n baie redelike benadering, indien naïef en
ondoeltreffende, sou hier begin en begin daarby te
bladsy 4 op bladsy 5 na bladsy 6, en soort van lineêr, saam
'n reguit lyn, gaan deur middel van die telefoon boek.
En selfs al is dit gaan ongelooflik vervelig wees, indien Mike
Smith is in hierdie boek, ek is uiteindelik hom gaan bereik
toe ek uiteindelik flip aan die S-gedeelte van hierdie boek.
Nou natuurlik, hoef jy nie na 'n rekenaar wetenskaplike te wees
weet dat dit '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 ek lyk
om myself te vind in die M-afdeling.
OK, so M is duidelik nie wat ek soek nie.
En Mike se na regs, om so te praat nie, van hierdie artikel.
En as sommige van julle het tevore gesien het, kan ons nou letterlik
voortgaan om hierdie probleem op te skeur in die helfte.
>> [Applous]
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, ons het nou twee probleme, elkeen van
wat die helfte so groot is.
En ons kan letterlik gooi dat die helfte van die probleem weg.
Nou kan ons nie met 1000 bladsye, maar, sê, 500 gelaat.
So nou wat moet ek doen?
Wel, sal 'n tipiese mens rofweg gaan weer in die middel.
En ek vind myself 'n die R-afdeling.
So nie heeltemal daar nie.
Dit weer doen, kan ek hierdie probleem in die helfte skeur.
[Applous]
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 na ongeveer 60 tot 30 om te 15 en so meer.
En laastens, ek sal whittled kom neer tot een van die S-bladsye op
wat, as hy in die telefoon boek, Mike Smith moet wees.
>> Nou, dit is 'n natuurlik redelik redelike algoritme,
en dit is 'n one-time-gebruik algoritme in hierdie geval.
Maar wat kan ons soort van weg te neem van wat?
Wel, die eerste benadering, korrigeer indien naïef alhoewel dit
is, kan beskryf word by hierdie reguit lyn.
So as ons op die x-as hier sê dit is die grootte van die
probleem, so as die x-as gaan na regs, die
probleem groter.
Wat beteken dit groter te 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 op, neem dit vermoedelik meer tyd.
So dat die eerste benadering van lineêr soek van bladsy 1
dot dot dot bladsy 1000 is 'n lineêre proses, 'n lineêre
algoritme of proses.
En ons kan dit beskryf 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 dinge doen soos 2 op 'n tyd of 4 op 'n tyd.
Maar selfs dit is nie al wat fundamenteel beter.
Selfs al is dit 2 op 'n slag, ja, daardie soort van beweeg
lyn 'n bietjie af, en dit beteken dat dit neem minder tyd gegee
dieselfde aantal bladsye.
Maar dit is nie fundamenteel beter.
Maar wat het ons net dit doen, en wat het julle almal doen
instinktief?
Jy eintlik 'n bietjie iets soos hierdie bereik,
logaritmiese tyd, waardeur die probleem kan groei en groei en
groei, maar die koste om daardie probleem op te los, die tyd
wat nodig is om daardie probleem op te los, is dit nie
groei byna so vinnig.
Dit sou 'n logaritmiese kurwe, log van n, waar n
net die grootte van die probleem, die aantal bladsye in hierdie
telefoon boek.
En wat beteken dit in reële terme?
Wel, as ons nou soos 500 mense in hierdie kamer,
of liewer, as ons -
vermenging metafoor, het dit nie gedoen byvoorbeeld nog hierdie jaar -
so indien ons het 500 bladsye in die telefoon boek en ons dubbel om dit te
1000, in die meer intelligente model van daarby
na die middel, hoeveel meer bladsy trane wat dit neem om te gaan
van 500 bladsye 1000?
Wel, net 'n addisionele bladsy traan.
As jy aan my 'n 2000 bladsy telefoon boek, geen big deal.
Ek skeur dit net een addisionele tyd.
>> Dus, in kort, kan die omvang van die probleem baie vinniger groei
as die koste van die belangrikheid daarvan.
Dit is nou net een so 'n algoritme.
Daar is ander wat ons in die dieselfde manier kan oplos.
En so hoekom ons nie dit doen?
As jy my sou humor, al is dit ongemaklik hier in Sanders, gaan
voorlê, almal, as jy kan en op te staan ​​in die plek.
Soos jy kan sien op die skerm hier, dit is 'n algoritme, 'n
proses, 'n program op die rekenaar as jy wil, word uitgevoer deur
mense wat net 3 stappe.
Ons is reeds op stap 1.
Jy het opgestaan.
En nou dink aan jouself die aantal 1.
Dit is jou huidige nommer.
Almal hier is nommer 1.
Stap 2, 'n paar met iemand staan, voeg jou nommers
saam, en dan neem die som as u nuwe nommer.
Een van julle moet sit, dan herhaal.
>> Spreker 1: 205.
David J. Malan: Wat is dit?
Spreker 1: 205.
David J. Malan: OK.
Spreker 2: Hy het die ander kinders.
David J. Malan: 205?
SPREKER 3: Ja.
David J. Malan: OK.
3.
SPREKER 4: 400.
SPREKER 5: 5.
700.
David J. Malan: Alle reg.
Op hierdie punt, moet minder en minder mense staan.
Dit is waar dit raak meer ongemaklik.
Iemand hier.
Hier.
Die ergste deel is dat jy moet ook baie mondelings doen
rekenkunde in die voorkant van honderde van Harvard
voorgraads.
OK.
N bietjie van 'n fout hier.
Okay.
Wat is jou nommer?
SPREKER 6: Nege.
David J. Malan: Wat is dit?
SPREKER 6: Nege.
David J. Malan: Nege.
Okay.
Wat is jou nommer?
SPEAKER 7: 179.
David J. Malan: 179?
Okay.
Goed.
So 188.
Sodat julle kan sit.
Wat is jou nommer?
SPEAKER 8: 118.
David J. Malan: 118.
'N paar slim undergrad begin om die wiskunde te doen.
Okay.
118, 188.
Wat doen ons het?
SPEAKER 9: 71.
David J. Malan: 71.
SPREKER 10: 79.
David J. Malan: 79.
Okay.
SPREKER 11: 47.
David J. Malan: 47.
Wat, dosente, 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 aantal mense staan, en dit was die
totale getal n op die eerste.
Dan die helfte van julle gaan sit, en ons het oor 2 tot n.
Dan is die helfte van julle sit.
Ons het n meer as 4, 'n meer as 8, n oor 16, en so meer,
totdat, selfs al is dit soort van gedisintegreer daar by die
einde, in teorie, het almal gepaarde af in die balkon en
mezzanine en orkes hier, ons het net een eensaam
n Persoon wat, in hierdie geval, met 'n totale waarde van 705.
Nou, wat dit beteken, maar vir die loop van die tyd?
Goed dink as ek as die mens dit met die hand gedoen.
Ek sou redelik naïef maar korrek het begin met 1,
2, 3, 4, 5, 6, 7, 8, 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 2, 4, 6, 8, 10, 12.
En wat kry baie vinniger.
Maar nou fundamenteel, deur gebruik te maak van die kollektiewe
intelligensie van almal in hierdie kamer, kan ons bereik 'n
bekamp veel meer soos hierdie, waarby nou die nommer van die
mense in hierdie kamer kan verdubbel.
Nog 700 mense loop in hierdie kamer vir 1400 mense,
maar dit sal ons net nog een iterasie van hierdie
algoritme op te los.
>> En ja, toenemend hierdie dae, wanneer ons hierdie groot
datastelle in Facebook en Google en dies meer, is dit
die oplos van probleme met 'n bietjie van insig, hierdie bietjie van
slimheid, wat in staat stel om ons steeds baie, baie om te doen
meer kragtige dinge vandag met rekenaars.
As jy hou van hierdie soort van dinge, kan jy gesien het op
Facebook CS50 se eie legkaart dag kom hierdie Saterdag.
As jy wil om deel te neem in iets soos
waardeur jy, in 2 of 3 of 4 spanne van 4, sou graag
los n paar raaisels soos hierdie een, staan ​​jy 'n kans
n paar fantastiese pryse te wen, waaronder 'n Wii en 'n paar
gift cards of 'n ander Facebook buit.
Saterdag, middag tot 03:00, gaan na
cs50.net/rsvp vir sodanige.
En hierdie dia is aanlyn as jy wil om rond te speel.
Die probleme wat hierdie jaar sal nuut wees.
>> Jy mag opmerk in die klaskamer, ook al hoe meer
kameras hierdie jaar.
Dus nie net die kursus sal verfilm word in die gewone manier, CS50
kan ook deelneem aan 'n dokumentêr oor hoër
onderwys wat soek op die transformerende ervaring
dat 'n student kan deesdae in 'n voorgraadse
verloop van die studie.
So na hierdie, dan, sal ons nie net die verfilming word vir
, sal ons sowel verfilming vir toenemend ons
aanlyn publiek, asook by geleentheid gehoor hier.
Sodat ons welkom aan die klas hierdie jaar het ons Harvard
Uitbreiding Skool studente, Graduate School of Design,
Onderwys, die besigheid skool, die Kennedy Skool,
die wet skool, sowel as 'n aantal studente uit
Belmont, Lexington, Newton, en Watertown hoërskole.
Welkom aan julle almal.
In hierdie jaar, jy dalk gehoor het, Harvard en MIT,
en Berkeley nou, aangegaan het 'n gesamentlike
vennootskap, 'n inisiatief genaamd EDX, wat 'n
inisiatief oop te maak van die onderwys al hoe meer
mense aanlyn en fundamenteel begin doen
navorsing op 'n veel groter skaal as hoe mense leer.
En so CS50 sal die kollege se eerste kursus
deel te neem aan hierdie inisiatief as goed.
Wat beteken dat jy toegang tot al hoe meer gereedskap,
al hoe meer kurrikulere inhoud, al hoe meer video
inhoud as 'n gevolg, asook, soos van gister oggend, die
53.019 mense wat geregistreer het CS50 om saam te neem
met jou hierdie jaar op die internet.
Dus, sonder -
[Applous]
So, wat dit beteken, in die besonder, is dat die
dosente en ek het nogal 'n bietjie van die tyd spandeer
somer voor te berei vir die herfs, sowel op die kampus en af, so
dat ons kan begin om die opbou van 'n korpus van interessante,
dwingende, van die beoefening van opvoedkundige inhoud wat
fokus, in die besonder, op meer intieme conveyances van
redelik komplekse materiaal.
>> So bykomend tot die kursus se lesings en artikels en
dinge genoem ipv, wat ons weer in net 'n
n bietjie, ons sal ook hierdie kortbroek jaar wat toelaat dat
jou om betrokke te raak met die kursus uit 'n ander hoek
geheel en al.
So laat ons gebruik dit as 'n geleentheid om te neem 'n vinnige
blik op die een wat hierdie idee van binaries bespreek.
>> So in rekenaarwetenskap, is daar dinge genoem algoritmes -
twee van wat ons het net 'n blik op hierdie prosedures vir
probleme op te los.
Maar aan die einde van die dag, wat jy nodig het om te
Stel inligting op een of ander manier.
En jy moet dit voor te stel in 'n manier wat 'n rekenaar kan
verstaan.
En selfs al is jy nie regtig nie verstaan ​​rekenaars en
jy in daardie 76% nou, het jy waarskynlik 'n paar vae
sin dat rekenaars op een of ander manier te doen in 0'e en 1s, die binêre
stelsel, om so te praat.
Nou is die rede waarom dit die geval?
Wel, dit blyk Toe rekenaars vir die eerste keer oor, indien
wat jy nodig het om inligting voor te stel, 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
draai dat elektrisiteit -
'n 1 in binêre, om so te praat - of draai
dat elektrisiteit af.
>> So, as Barry, as jy nie sou omgee, kan ons dim die ligte
ten volle vir 'n oomblik?
Dit is hier 'n baie gratuite binêre 0.
Indien ons draai die ligte back-up, nou Sanders Teater
wat die binêre waarde van 1.
Ongelukkig, met net 'n bietjie, met net een stel van die
ligte, ons kan slegs twee getalle verteenwoordig in die
wêreld, 0 en 1.
En dit sou mooi wees as rekenaars kan reken 'n
effens hoër as dit.
Maar wel hulle kan.
So laat my trek op die skerm hier ons vriend Nate Hardison
Wie sal vir ons 'n vinnige blik oor die verloop van net 'n paar
minute op hierdie idee van binêre.
>> [Video-vertoning]
Nate HARDISON: Terug toe jy geleer het hoe om te lees en skryf
getalle, wat jy geleer het oor die syfers 0 tot 9.
Heelgetalle groter as 9 te skryf, het jy geleer dat alle
jy het om te doen is 'n kombinasie van hierdie syfers gebruik,
soos in 52 en 437.
So, hierdie manier van getalle skryf 'n
naam, desimale notasie.
Hoekom desimale?
Wel, die Latynse wortel van 'n desimale Desem, 10.
En wanneer jy 10 syfers in jou notasie stelsel, 10
word 'n eerder spesiale nommer.
Kom ons kyk na die getal 437 in desimale notasie geskryf na
verstaan ​​hoekom.
>> Ons kan eers breek 437 tot 400 plus 30 plus 7.
Ons kan dit uitmekaar selfs meer so dat ons 4 keer 100 het
plus 3 keer 10 plus 7 keer 1.
Onthou leer oor die mense, die tien plek,
die honderde, en so aan?
Dit is presies waar dit kom uit.
En ten slotte, kan ons sien ons 'n klomp van die magte van 10 het
ingebed in hier.
Ons het 4 keer 10 aan die 2 plus 3 keer 10 aan die 1 plus
7 keer 10 aan die 0.
So nou kan jy sien waarom 10 is 'n spesiale
aantal 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 tot 9, kan ons
verteenwoordig steeds al die getalle wat
kon ons met desimaal.
So nou het ons twee syfers 0 en 1, 2 is ons spesiale
nommer, die basis van ons notasie stelsel.
Die naam van hierdie notasie word genoem binêre sedert
die voorvoegsel "bi" 2.
So in plaas nou 'n kinders plek en tien plek en
so aan, ons het nou 'n plek, 'n twee-twee, 'n hande-viervoet
plek, en so aan, gaan deur die magte van 2.
So laat ons sien dit deur te doen 'n paar tel.
So, 0 is nog steeds 0 en 1 is nog steeds 1.
Maar nou dat ons het 'n twee-twee in plaas van die tiene
plek, 10 verteenwoordig die getal 2.
3 te kry, voeg ons net tot dié en kry 11.
4, want daar is nou 'n viere plek, is
verteenwoordig deur 100.
Vyf is 101.
6 is 110.
7 is 111.
8, weer, het sy eie plek.
So dit is 1000.
En ek dink jy kry die punt.
[Einde VIDEO speel]
>> David J. Malan: So, dit is om te sê, wat rekenaars doen en
wat binêre word is eintlik nie so verskillend van wat
het ons neem as vanselfsprekend aanvaar vir 'n paar jaar, reg?
Jy reken graad skool, het jy geleer om te tel in presies
die mode dat Nate voorgestel.
Maar jy sal waarskynlik nie regtig daaroor gedink, aangesien
die feit dat daar is hierdie kinders, tien, en
honderde.
En dit is redelik arbitrêre.
En inderdaad, rekenaars gebruik eenvoudig die verskillende base.
Maar aan die einde van die dag, om werklik fisies verteenwoordig
hierdie idee van 'n 0 en 1, het jy natuurlik nie net nie draai die
ligte aan en af ​​noodwendig.
Wat jy nodig het om dit te doen op 'n baie fyner korrelige skaal.
En deur fyner korrelige, kan jy onthou hierdie dom
klein speelding van kleins af, wollerige Willy en hierdie klein
magnetiese deeltjies.
>> So magnetiese deeltjies is iets wat jy kan sluit
in 'n paar van die verskillende rigtings, miskien
noord-suid of suid-noord.
En so 'n baie fisiese inkarnasies van tegnologie
hierdie dae wat gebruik binêre, wat gebruik 0e en 1e, net
magnetisme op die binnekant wat ooreenstem dinge, up-down of
down-up, met daardeur wat 'n 0 of 'n 1,
onderskeidelik.
So inderdaad, laat ons wegbeweeg van die abstrakte en
kyk na die binnekant van wat is 'n meer tradisionele
rekenaar hardeskyf.
Hierdie een gebeur om te wees 'n bietjie groter op die skerm in die sin dat dit is
van 'n desktop rekenaar.
Maar skootrekenaars vandag nog steeds dieselfde tegnologie, maar is
geleidelik vervang deur meer gesofistikeerde dinge wat
het eintlik geen bewegende dele.
Die binnekant, dan, van 'n hardeskyf.
>> [Video-vertoning]
SPEAKER 12: 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 schommelingen.
Dit op sy beurt die hardeskyf se bewegende dele, sommige van beheer
die paar bewegende dele links in die moderne rekenaar.
Sommige van die seine beheer oor 'n motor wat draai
metaal-bedekte platters.
Jou data is eintlik gestoor op hierdie platters.
Ander seine beweeg die lees-en skryf kop of lees
skryf data op die borde.
Hierdie masjien is so akkuraat dat 'n menslike hare kon nie
selfs tussen die koppe en spin platters.
Tog is dit werk teen geweldige spoed.
[Einde VIDEO speel]
>> David J. Malan: So, as ons nou zoom in op wat is eintlik
op die top van hierdie borde gebeur in terme van die
magnetisme, ons het die tweede van twee lyk.
>> [Video-vertoning]
SPEAKER 13: Kom ons kyk na wat ons nou net gesien het in stadig-motion.
Wanneer 'n kort puls van elektrisiteit word gestuur na die
lees-en skryf kop, dit flips op 'n klein elektromagneet vir 'n
breukdeel 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
'n bietjie van die data in die binêre getal
stelsel wat gebruik word deur rekenaars.
Nou, as die huidige een manier gestuur word deur die lees-en skryf
kop, die gebied in een rigting gepolariseerd is.
As die stroom wat in die teenoorgestelde rigting,
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 kry die stroom in
die lees-en skryf kop beweeg.
Miljoene van hierdie gemagnetiseerde segmente saam te stel en jy het
het 'n lêer.
Nou, kan die stukke van 'n enkele lêer verstrooi kan word oor die hele
'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?
[Einde VIDEO speel]
>> David J. Malan: Inderdaad.
So, ons het die vermoë om inligting, getalle voor te stel,
op 'n baie lae vlak.
Ons het 'n fisiese manier van dieselfde ding.
Maar ons kan nie regtig alles doen wat baie van belang nog
behalwe miskien 'n paar rekenkundige en wiskunde.
Ons het geen manier verteenwoordig dusver dinge soos
alfabetiese letters sodat ons mense kan kommunikeer
deur gebruik te maak van hierdie toestelle.
Maar gelukkig is daar bestaan ​​enkoderings, patrone van 0'e en
1s, dat 'n hoër vlak konstrukte soos a en b
en (c) en die hele sinne en paragrawe en dies meer.
En so ASCII, wat is 'n akroniem wat verwys na hierdie
koderingstelsel waardeur 'n getal 'n gegewe letter verteenwoordig.
>> Byvoorbeeld, die getal wat ons ken as desimale waarde 65
bekend as die hoofletter 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 slegs getel op
van 0 tot 8, indien ons voortgaan om te tel tot 65 of
verder tot 97, die patroon van 0'e en 1s dat hy sou hê
getrek op die skerm sal wees presies wat 'n rekenaar gebruik
die letter A in hoofletters of voor te stel
die brief in kleinletters.
En inderdaad, daar is 'n hele skema te.
Dit is 'n, met die eerste oogopslag, oorweldigende grafiek van
coderingen, maar as jy fokus net op die regter helfte hier,
kennisgewing in die middelste kolom ons het hierdie idee van getalle
gevolg deur die letters.
En ons het op top 32.
En die karakter, char, waarin 32, die heelgetal is, verwys
is blykbaar die space bar karakter.
Wanneer jy druk op die spasie balk karakter op jou laptop,
goed, wat jy eintlik stuur is 'n getal, 'n patroon
van 0'e en 1s, 'n vloei van elektrisiteit as jy wil,
verteenwoordig diegene 0'e en 1s 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, sien ons dat
65 is inderdaad A, en 97 is inderdaad kleinletter a.
>> En so nou dat ons hierdie kodering skedule, kan ons begin
dinge om uit te spel.
Inderdaad, rekenaars tipies hulself uitdruk in standaard
eenhede, nie met behulp van 'n individuele bietjie, wat weer is nie alle
wat nuttig 0 of 1, ligte op of af om net voor te stel, maar
eerder deur middel van rye van stukkies.
En die mees algemene eenheid van meting, soos u waarskynlik weet
of ten minste afgelei, is 'n greep.
'N greep is net agt bisse, agt 0s of 1s in 'n ry.
Sodat ons kan begin met die spelling dinge uit.
En ja, as ons kon, waarom nie probeer om dit 'n bietjie
gesamentlik hier.
Is daar agt mense in hierdie kamer wat bereid sou wees om
kom op die verhoog?
Jy moet gemaklik wees op kamera te verskyn, maar jy
nie werklik nodig het om te weet, anders, wat is
gaan 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 jy het die 128 se plek, moet jy die 64 se plek,
die 32 se plek.
Maar ons is baie vinnig gonna het om dit om te keer.
So laat ek julle ontmoet daar.
En jy moet al die pad hier in die 128 se plek.
Baie soos die honderde plek en die duisende plek sou
verder aan die linkerkant, wil ons die grootste plekhouer
om hier te wees aan die linkerkant as well.
Ons het 64s se 32, 16 se, 8's, 4's, 2's, en 1 se.
Uitstekend.
So nou het ons -
OK, kan jy my help.
So nou het ons - wat is jou naam?
Joanne: Joanne.
David J. Malan: Joanne.
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, hulle het 'n
bietjie cheat sheet wat gaan hulle of te vertel
hulle is verteenwoordigend van 'n 0 of 'n 1.
En waarom nie vir eenvoud, sal ons verteenwoordig 0 deur net
daar staan ​​ongemaklik.
Baie goed.
Of 'n 1 deur die verhoging van jou hand, wat 'n 1.
En laat ons kyk of ons kan nie spel 'n vier karakter
frase hier.
>> So, gaan voort nou, vrywilligers, en voer die tweede ronde een deur
die verhoging van jou hand as jy 'n 1 of hou dit
af as jy 'n 0.
So, nou dat ons hierdie drie hande, watter getal,
almal anders, hulle is eintlik verteenwoordig?
OK.
67.
Hoekom?
Wel, vinnige gesonde verstand gaan.
64 se plek, want dit is 'n 1, wat is soos 1 keer 64 plus 1
keer 2, so dit is 66 plus 1 keer 1.
Dis plus 1, so 67.
So nou hierdie ouens is gesamentlik verteenwoordig 67
wat verteenwoordig skynbaar wat hier in ASCII?
OK.
So 'n c.
Alles reg.
So nou, laat ons gaan twee te rond.
Almal begin met haar eie hande af.
En in die tweede ronde -
Eintlik is daar nie veel van 'n rol hier, dink ek, maar
sal ons voorgee.
So het die tweede ronde, verhoog of verlaag jou hande.
>> Alles reg.
Publiek, wat is ons nou die uitdrukking is 83.
So jy kan doen die wiskunde.
Maar vir iemand wie se hand op, jy voeg in die getal wat
wat hulle verteenwoordig.
So nou het ons 83.
Laat ons die cheat sheet uit te brei 'n bietjie, en ons het nou?
[Onhoorbaar]
David J. Malan: OK.
Dit kan duidelik wees waar ons hier gaan, maar
tog, die derde ronde.
OK.
Die derde ronde is goed om te gaan daar.
So die derde ronde, watter getal is hierdie ouens nou
verteenwoordig?
OK.
Ek het gehoor 53, wat nou verteenwoordig?
Interessant.
Nou hoekom hierdie soort van counter intuïtiewe resultaat, reg?
As ons wil hê om 5 voor te stel - ons almal weet waarskynlik
waar dit gaan -
hoekom ek nie net verhoog die 4 se plek en die plek van die 1?
>> Wel, besef dat daar 'n verskil is, fundamenteel,
tussen hoe 'n rekenaar interpreteer hierdie stukkies.
As jy probeer om die aantal 5, dan is absoluut voor te stel,
ons net hand nommer 4 verhoog en verhoog hand aantal 1.
Maar ons is nie verteenwoordigend van getalle hier.
Die konteks hier op die verhoog is wat ons verteenwoordig
karakters, of karakters.
En in hierdie konteks die rekenaar om dit te besef,
oh, hierdie patroon van bisse is nie alleen 'n aantal, 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 5
die waarde van 53 is, want in ASCII die ding wat ons
esteties sien as die getal 5 self moet 'n
patroon van stukkies.
Want waarom?
Wel, die wêreld het net besluit om gebruik te maak van die laer nommers, 0,
1, 2, 3, vir wat kyk na 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 doen, maar mense nooit
hulle eintlik tik.
So 53 verteenwoordig inderdaad 5.
Nou, net soos 'n finale sanity check Watter nommer moet hulle
verteenwoordig in net 'n oomblik?
Gehoor: 48.
David J. Malan: OK.
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.
Dankie.
Jy kan hierdie een hou.
As jy -
Baie goed gedoen.
Enige rigting is goed.
>> So, ons het nou nie net 'n manier van dink oor hoe om
stel data en verteenwoordig dit eintlik fisies,
maar ook hoër vlak doen dinge op die top van dit.
Trouens, dit gaan om 'n tema in die rekenaar
wetenskap van die bou van meer en meer interessant kompleks
dinge op die top van relatief eenvoudige idees, in hierdie
geval net 0'e en 1s.
In terme van die rede waarom dit nuttig is, en selfs al in 'n
kursus soos hierdie sal ons fokus op fundamentele en
programmering en op die oplos van probleme, kan jy gaan af in
rekenaarwetenskap in 'n aantal aanwysings.
Hier in hierdie geval, dit is 'n kaart wat jy by die
bladsy van jou nie-amptelike gids tot CS terug by Harvard, een van
vandag is 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 die 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
val, is daar inleidende kursusse in die lente.
Rekenaarwetenskap 1, byvoorbeeld, is nog 'n
'n oprit na hierdie nuwe wêreld.
>> Nou as 'n eenkant in die belang van die oplos van probleme
met betrekking tot die kursusse, besef dat CS50 uiteengesit geruime tyd
gelede te probeer om een ​​van hierdie probleme op te los, probleem bekend
as my.harvard, wat baie van julle kan gebruik word om werklik
shop 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 hulpmiddel -
iets wat jy sal in staat wees om van die ontwerp en
die implementering van jouself, sowel as nog ander dinge ook, deur
die einde van die semester.
Besef dat dit bou op 'n oop datastel, in hierdie geval
'n kursus 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 min
duisend mense wat die gebruik van hierdie
die afgelope paar dae.
As jy is nuuskierig om te weet hoeveel kursusse jou vriende
eintlik is geneig om te shop, goed, vandag se data dui daarop dat
7,6 is die gemiddelde aantal van kursusse op
iemand se inkopielys.
En nou sal ek jou gee, ook die statistiek van die mees
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 'n clip 'n prent vir jou te verf van wat hierdie
pad van rekenaarwetenskap en CS50 self is.
Laat my gaan voort en trek, te danke aan mnr. Hahvahd hier, 'n
video vervaardig deur sommige van jou voorgangers.
As ons kon hou die ligte vir hierdie.
[Video-vertoning]
[Einde VIDEO speel]
>> SPEAKER 14: (sang) Ons neem die tyd met 'n paar kras,
loops, gebeure, kan ons pas, die opstel van die gebruik van ons
bash, sal hierdie term nie 'n gebaar.
Hacking pret, 'n paar gratis etes, lesings is eenvoudig onwerklik,
ons beurs is so 'n groot deal, daar is so baie om te aanbid.
Gaan heen, David Malan.
Ipv, ek is nie die redding.
Kantoorure, is nie een nie.
Waar jy dink jy kodering, baba?
Hey, ek net met jou en dit is gek,
maar hier is ons rede.
Neem CS50.
Dit is moeilik kode reg sonder dat jy, baby.
Maar hier is ons rede.
Neem CS50.
Hey, ek net met jou en dit is gek,
maar hier is ons rede.
Neem CS50.
En elke ster firma wil om my te huur, 'n ander rede.
Neem CS50.
Voordat jy in my lewe gekom het, het ek gekodeer so sleg, ek so gekodeer
sleg, ek so gekodeer, so erg nie.
Voordat jy in my lewe gekom het, het ek gekodeer so sleg
en ek kan nie terugtrek nie.
Neem CS50.
>> David J. Malan: Ek het geen idee wat gaan gebeur.
So, 'n meer ernstige blik op wat voorlê.
Dus, in terme van die verwagtinge van hierdie kursus,
jy inderdaad verwag om die kursus by te woon of te kyk
lesings, 'n probleem stel, neem twee vasvrae, stuur
'n finale projek.
In terme van grade, besef dat my kommentaar by die opening
oor slaag / druip, iets wat ons baie
hart in CS50.
Daar is nie naastenby genoeg van 'n kultuur by Harvard probeer
iets en die gevaar van mislukking.
Inderdaad, ons het getalle van studente, en myself, in
die besonder, is wat bekommerd is oor die seer van jou GPA of
om 'n B in iets soos CS50.
En die geleentheid om 'n kursus soos hierdie te neem, en ander
gateway kursusse by die inleidende vlak, slaag / druip
is 'n baie onderbenutte geleentheid by dié kollege,
in die algemeen.
En so weet selfs ek wat ingeskryf is in hierdie kursus
aanvanklik vir krediet slaag / druip 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 werklik probeer om iets
baie onbekende en baie ongemaklik
vir my op die oomblik.
>> So, nou, in terme van die rol wat die verskillende hoeke via wat
jy kan nader om hierdie kursus dien, sodat lesings, dit is tot
as jy betrokke raak met ons in die persoon op hierdie plek.
Inderdaad, ons weet statisties dat ongeveer 40% van julle sal
soort van kom en gaan in die loop van die semester.
En 10% van jou, 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 is hierdie ontelbare bronne, sommige van
wat sal ons rammel deur in net 'n oomblik, met inbegrip van
lesings en artikels en dinge genoem ipv en
kantoorure en dies meer.
En dit is meer hulpbronne as die tipiese student behoort
moet of fisies kon neem voordeel van.
Maar dit is as gevolg van die uiteenlopende leerstyle wat
enige student liggaam manifesteer.
En so in lesings, die primêre rol, soos ek dit sien, is
nie mondelings stoot redelik komplekse materiaal en te
noodwendig al die verwikkeldheid van die lewer
beginsels 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 verhoog, probeer om
verf 'n geestelike beeld, en skep ook, durf ek sê, 'n paar
van hierdie onvergeetlike oomblikke.
So dat selfs as jy sukkel met sekere onderwerpe,
hierdie herinneringe wil, oh, selfs al is dit redelik
abstrakte, die wiskunde, het ek verloor het met die uitvoering van die 1, soos dit
regtig, aan die einde van die dag, is nie almal dat die uiteenlopende
iets wat ek reeds weet.
En so het die rol wat lesings sal dien, hetsy in persoon
hier in Sanders of aanlyn op video, is regtig te stel
stadium geestelik vir jou elke week vir die verskillende begrippe
en probleme wat ons sal duik in.
>> In terme van die hoë vlak konsepte, die meeste van hierdie woorde
kan vloei oor jou kop vir die oomblik, en dit is goed.
Vir dié van julle wat in die kursus kom meer gemaklik
sal weet van sommige van hierdie onderwerpe.
Maar tipies vir daardie 10% van die klas waarvoor hulle
baie meer agtergrond, AP rekenaarwetenskap,
programmering, want hulle was 12, besef dat daar
geleenthede in afdelings en in die probleem stel om te gaan al die
meer in diepte in verskeie onderwerpe, vul in watter
gapings wat jy kan hê van jou hoërskool of voor
agtergrond.
In terme van die tale, besef dat watter taal ons
gebruik in CS50 is grootliks irrelevant by
die einde van die dag.
Ons gebeur om te gebruik, hoofsaaklik 'n taal genaamd C. Teen die
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 aan die einde van die dag besef, jy is nie leer
Jy is nie in hierdie kursus C. leer PHP of JavaScript.
Jy leer hoe om probleme op te los, of web-gebaseerde,
rekenaar-gebaseer is, of data-georiënteerde self, met behulp van
hierdie bloot as gereedskap.
>> Nou, in terme van die logistiek, sal jy gebruik
iets, uiteindelik, het die CS50 Appliance.
Maak nie saak of jy 'n Mac, 'n rekenaar, 'n Linux-rekenaar,
of die wil.
Jy sal moet vrylik beskikbaar sagteware begin van volgende week
waarmee die CS50 toestel te gebruik, 'n virtuele
omgewing wat jy gebruik op jou eie rekenaar, sodat jy
en al jou klasmaats 'n eenvormige Linux
in hierdie geval.
Dit is die probleem stelle, al is, wat jy regtig sal kry
jou hande vuil in die kursus.
En aan die einde van die dag, dit is die probleem stelle, ek
dink, dat regtig definieer 'n student se
ervaar in hierdie kursus.
Besef dat baie van die probleem stelle vrygestel sal word
in twee uitgawes, 'n standaard Behalwe dat ons verwag en
90% van die klas om te duik in aan te moedig.
Maar stel ons ook 'n probleem stelle in
sogenaamde hacker toevoegings.
En jy weet dit is die hacker Daarbenewens, want op elke bladsy
sê dit met 'n watermerk hacker toevoeging op dit.
En dit is vir hierdie demografiese van julle wat AP het
rekenaar wetenskap met 10 jaar van programmering onder jou gordel
en is op soek na daardie gapings te vul en meer formele,
eerder as self-geleer, opleiding, miskien.
Besef dat daar 'n baie groot demografiese in die
klas wat het presies dieselfde doel.
Jy het vyf laat dae.
Probleem stelle is oor die algemeen as gevolg op Donderdae, maar jy kan
vyf van dié sperdatums brei die gebruik van hierdie
dinge genoem laat dae.
En ons sal ook daal jou laagste telling aan die einde van die
semester per die besonderhede in die sillabus.
>> Maar 'n ander bepalende eienskap van CS50 oor
die jare geword het kantoorure.
Dit is 'n geleentheid wat jy visueel sien in foto's 'n bietjie
gelede in wat ons versamel - voorheen in die huis eet
sale, voor in die kelder van die wetenskap
Sentrum, en hierdie jaar in Annenberg Hall - vier nagte 'n
week 20:00-11:00 waar jy het hierdie baie
baie gedeelde ervaring van werk aan, sukkel
deur sekere probleme, maar met 'n aansienlike ondersteuning
struktuur in plek.
Trouens, die manier om dit sal werk, kom jy by Annenberg
as jy 'n vraag gedurende die week, sal jy bring
jou laptop, sal jy sit, gryp n paar kos, en jy teken
in CS50 Bespreek, 'n web-gebaseerde nut dat die onderrig
personeel het ontwikkel wat jou sal toelaat om jou vrae te plaas
en sien follow-ups in 'n tipiese gesprek forum
sin, deur gebruik te maak van etikette en die wil en motor volledige
soek die data.
Maar jy sal ook in staat wees om, gedurende die ure van die amp
ure, jou vrae het toegeneem
die werklike menslike wesens.
Trouens, die doel is om uiteindelik sodat 'n mens, het ons begin om te bou
oor die loop van die semester 'n korpus van hopelik
baie nuttige inligting, 'n gemeenskaplike antwoorde op algemene
vrae, sodat jy jouself kan probleme op te los
en kry unstuck so gou as moontlik, maar terwyl die
dosente, gewoonlik 20 tot 30 van die onderrig-genote en
Natuurlik assistente, personeel in 'n keer.
>> Ons sal wat genoem word die CS50 Groeter in Annenberg.
En wanneer ons bepaal dat, jy weet wat, hierdie vraag,
ons kan nie regtig beantwoord effektief aanlyn.
Ons moet jou rekenaar om te sien.
Ons wil hê dat jy een-op-een om te praat.
Op een.
Jy regtig sukkel en jy dus wil om te praat
een-op-een saam met iemand, sal u gestuur word aan die
CS50 Groeter, 'n onderrig mede hou, letterlik, 'n
iPad wat studente se name aan die een kant, dosente se
name op die ander.
Ons sal jou naam kliek, gevolg deur die naam van 'n
dosente, en jou rekenaar skerm sal begin
flikkerende sê asseblief gaan kyk Alice of gaan kyk Bob op
die personeel tafel.
En so op hierdie manier, sal ons in staat wees om dinge te stuur as
doeltreffend as moontlik, asook lei jou na
oplossings al die meer geredelik.
In die afdelings, sal hierdie geleenthede vir meer
intieme hands-on geleenthede met een van die
onderrig genote en 12 tot 16 of so van jou klasmaats in
wat elke week sal ons probleme in die probleem stel
wat 'n aantal van konseptuele vrae vra en 'n
aantal van bis-grootte programmering vrae wat jy
op jou eie kan uitwerk, en jy kan werk aan jou
eie, maar in die konteks van artikel waar ons werk deur
gesamentlik 'n paar van die probleme en gaan waar die
verskillende gesprek neem ons.
>> Daarbenewens sal in artikel jy die geleentheid kry om te
hersiening voorleggings van huiswerk wat jy gemaak het, jou
klasmaats, soms anoniem, altyd via opt-in
as jy wil graag die werk wat jy het gestuur te deel.
So dit sal regtig 'n twee-directional gesprek,
'n geleentheid om jou eie werk te hersien in 'n veel meer
dinamiese sin, eerder as om net op soek na 'n PDF of 'n
uitdruk en dink oor dit vir 'n paar sekondes en nie
noodwendig absorbeer die terugvoer wat die onderrig
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 top
links, en jy sal dit met verloop van tyd te weet.
Maar dit is 'n web-gebaseerde nut wat ons sal gebruik in
artikel wat jou sal toelaat om jou en jou 15 of so klasmaats
aan te meld met jou onderrig mede by 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 op artikel op daardie spesifieke oomblik.
En leer mede, wanneer dit tyd is om te bespreek
Alice of Bob se oplossing in die klas, kan die onderrig mede
klik op 'n knoppie en voila, projek op die skerm,
wat dit ook al student is besig om op daardie spesifieke
punt in die tyd.
So vir diegene van julle wat vriende wat geneem CS50 in
die verlede, besef dat artikels aansienlik gewees het
herselflaai om hierdie jaar te wees al hoe meer aktief is, al hoe meer
dinamiese, en regtig 'n tweerigting-gesprek tussen onderrig
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 waar een
lid van die doserende personeel sal lei 'n weeklikse sessie
wat loop jy letterlik deur die probleem stel, gee
wenke en advies en beginpunte en is bedoel om
die baie dikwels gevra om te vra
vraag, waar ek begin?
Wel, jy begin óf deur die 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 wees
'n gewilde tyd, maar omdat ons kan dan verfilm hulle baie vroeg
in die week dit aanlyn te kry deur die naweek, sodat jy
soveel dae as moontlik om werklik betrokke te raak in
inhoud as goed.
Maar meer oor wat in die lesing hierdie Vrydag.
>> Nou in terme van die ondersteuning struktuur, die meeste
belangrike statistiek is miskien die 108 onderrig
genote en natuurlik assistente dat hierdie
kursus het tans.
Indien sommige van julle wat nie teenstrydige klasse wil
om saam met my hier op die verhoog, is hierdie ouens wat sal
uiteindelik regtig definieer jou ervaring 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 dié paar, my CS50 TF
wat werklik gehelp het om my vrae beantwoord, wat regtig gehelp
vir my wanneer ek sukkel, en was regtig 'n vennoot in hierdie
ervaring van die leer van 'n heel nuwe wêreld.
In 'n bietjie, sal al hierdie ouens saam met jou buite vir
koek, wat is 'n tradisie van CS50, in die dwars van
Memorial Hall.
>> Maar laat my toe om eers jou bekend te stel aan Nate
Hardison, weer, Rob Bowden, en Tommy MacWilliam, hierdie
jaar se kursus koppe.
As jy ouens wil saam met my hier in die middel.
Hulle het almal bereid n paar inspirerende kommentaar.
>> Tommy MacWilliam: Ek het nie voorberei nie
inspirerend.
Maar my naam is Tommy.
Ek is 'n senior in Mather.
Ek studeer rekenaarwetenskap.
Ek is regtig opgewonde om te wees op die heining span en gaan
deur die CS50 reis saam met jou.
Wat ek regtig baie lief vir CS50 is hoe dit regtig leer jy
na te dink oor die probleme in 'n nuwe manier.
Dit is regtig 'n vaardigheid wat gaan van onskatbare waarde 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.
Ja, en so ek is regtig uitsien om te sien wat
almal hierdie semester bou.
En as iemand enige vrae het nou of die hele
die semester, beslis voel vry om te bereik uit na my toe 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 regtig baie goed.
En solank as wat jy bereid is om te sit in die poging, is daar
so baie wat jy kan kry uit van hierdie kursus.
Ag, ons -
ja.
Jy kan 'n baie pret uit van hierdie kursus.
Ons wil nie hê dat 'n personeel van 108, as jy nie kan kry 'n baie
pret uit dit uit.
So, net 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 en geniet dit soveel as
Ek geniet dit so ver.
En as jy ooit wil om te leer hoe om te tel tot 9 of 10 in
binêre, kom praat met my.
>> David J. Malan: So op die risiko van die verlaat van hierdie ouens hier op
stadium 'n bietjie ongemaklik, laat warrel deur net 'n paar van
die dinge wat wag voor ons verdaag vir die koek.
Wat is dit wat voorlê?
Wel, as ons 'n vinnige blik op verlede jaar, in die probleem
gestel 0, jou voorgangers duif in 'n programmeertaal
taal, die sogenaamde krap, 'n grafiese programmeertaal
jy gebruik in die eerste dae van die kursus begin van hierdie
Vrydag sommige begrippe onbekende vir sommige van julle te leer.
Maar besef daar sal 'n gevorderde aspek van hierdie
dié van julle met vorige agtergrond.
>> In verlede jaar se probleem stel 2 studente duif in die
wêreld van kriptografie, die kuns van geheimschrift of skommeling
inligting, die implementering van programme wat geënkripteerde data.
En verlede jaar het in die hacker Daarbenewens studente voortgaan met
om te kraak of te dekodeer die wagwoorde in 'n tipiese
rekenaar se xe wagwoord lêer deur te kom met algoritmes en
heuristiek vir brute krag uitzoeken wat iemand is
wagwoord op 'n rekenaar stelsel was.
Verlede jaar, in die probleem stel 3, het studente implikasies - in
probleem stel 4 - het studente
die uitvoering van die game van Sudoku.
En in die hacker benewens daardie jaar het studente wat nie
net implementeer hoe om die spel te speel nie, maar eintlik 'n oplosser
waardeur die rekenaar kan u voorsien van die menslike, met
wenke deur vinniger as jy die oplossing van
dat die spesifieke probleem.
>> In probleem stel 5, ons het forensiese, hierdie kuns van
herstel inligting wat per ongeluk of baie
doelbewus verwyder van 'n rekenaar.
Verlede jaar het die doserende personeel en ek stap om die kampus
die neem van foto's van mense, plekke en dinge, en dan
per ongeluk die media kaart op ons kamera wat geformateer
het al die foto's.
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 te skryf
programme wat herstel al van die JPEGS van daardie kaart.
En dit is eintlik een van ons gunsteling probleem stelle.
>> En ek opgegrawe in 'n e-pos van een van jou voorgangers,
wat was groot pret om te lees iewers gelede.
Hy geskryf het - dit is van Matt - liewe Dawid, gister my
suster per ongeluk geformateer haar kamera se SD kaart en verlore
'n jaar se moeite werd om van onvergeetlike foto's.
Sy is ongelukkig nie die beste op die back-up van haar data.
Maar hierdie situasie herinner my pset 5, so ek het gedink ek
sou probeer om haar SD-kaart uit te voer deur middel van ons hersteloperatie
dat ek al die pad terug in Oktober geskryf het.
So na vier uur van die uitzoeken hoe om 'n te skep
rou beeld van die formaat SD kaart -
Google blyk te wees redelik help in hierdie verband tot
ironies genoeg het ek gebeur het om te kom oor jou instruksies op
die Internet -
na geknutsel rond met 'n paar van die opdrag argumente,
Ek het daarin geslaag om die forensiese beeld te skep.
En na die installering en instel van die CS50
Toestel, het ek daarin geslaag om die forensiese beeld uit te voer deur middel van my
program en herstel al 1027 van my suster se foto's.
Reg, Matt.
>> So in Laaste year's -
[Applous]
In verlede jaar se probleem stel 6, ons het die studente 'n
woordeboek van 150,000 Engelse woorde en hulle uitgedaag om
skryf 'n speltoetser wat beantwoord navrae van die vorm
is hierdie woord korrek gespel of
verkeerdelik so vinnig as moontlik.
En in 'n opt-in basis was studente wat toegelaat word om dan
daag klasmaats deur die plaas van hul resultate, die
hoeveelheid RAM wat hulle gebruik, die aantal CPU siklusse of
sekondes wat hulle gebruik het, sodat studente is dan die posisie van
op die kursus se webblad.
Weer suiwer opsioneel aspek van dit, maar groot pret in daardie
dikwels 'n student kry nommer 10 of so op te posisioneer
die groot bord op die webwerf, gaan af na ete, en dan
kom terug en besef sy kamermaat het net 'n rand in
voor hom of haar op die groot bord, en daardeur giet ander
twee of drie uur net om een ​​sy of haar kamermaat.
>> So ons sien uit na iets soortgelyks
hierdie jaar.
In probleem wat 7 het ons stuur in die rigting van die web
programmering, eintlik die oplos van probleme in die immer
toenemend gemeenskaplike omgewing van 'n webblaaier.
Weet decreasingly laai ons sagteware op Macs en
Rekenaars, maar al hoe meer doen ons dit alles binne die web.
>> En inderdaad verlede jaar, sowat 88% van die studente se finale projekte in
die kursus was web-gebaseerde.
En daardie is ook die vaardighede wat jy kan aflei uit hierdie
klas deur die kursus se einde.
Want wat wag op die kursus se einde is die CS50 Fair,
hierdie uitstalling wat gebaseer is op die idee van 'n wetenskap billike.
Maar in hierdie weergawe van 'n regverdige doen alle studente in die klas
bring hulle skootrekenaars en hul vriende en familie en ander
Noordwes Wetenskap, 'n groot gebou op die kampus, die opstel van
hulle laptop, kry 'n paar kos, kry 'n paar springmielies en drink,
en dan vir almal in hul finale projekte uitstal
bywoning wat verlede jaar sowat 2500 deelnemers genommer
van regoor kampus.
En uitdrukkings soos hierdie en soos hierdie was nie
ongewoon op die beurs.
>> Wat gelei het tot die skou is die CS50 Hackathon, 'n geleentheid
af in die straat om te hop op 'n Harvard-shuttle, hoof
Microsoft op 08:00, en nie huis toe gaan tot 07:00.
Ons dien die eerste dinee op 20:00, tweede ete op 01:00,
en vir diegene wat nog steeds staan ​​by 5:00 AM, behandel ons
pannekoek by IHOP.
En die Hackathon is 'n geleentheid, soos hier,
om te duik in jou finale projekte, of werk op
jou eie of saam met vriende in 'n gesamentlike 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 sulke beelde soos hierdie redelik algemeen
jaar sowel.
>> Dus as ons in 'n oomblik verdaag vir die koek, in gedagte hou dat
76% van die mense in hierdie kamer het geen vorige ervaring.
En soos per die sillabus, wat saak uiteindelik in hierdie
kursus is nie soseer waar jy opeindig nie relatief tot jou
klasmaats, maar waar jy in week 11 eindig met betrekking tot
jouself in week 0.
Dit is CS50.