[Powered by Google Translate] SPEAKER 1: Ini adalah CS50.
Jadi saya di mana Anda sekarang beberapa tahun yang lalu, dan ketika saya masih menjadi mahasiswa di
waktu, saya tidak benar-benar di jalan ini melakukan ilmu komputer, melakukan
rekayasa.
Memang, saya datang ke tempat ini sebagai konsentrator pemerintah.
Aku berada di SMA seorang anak yang menyukai hal-hal seperti sejarah.
Aku menyukai hukum konstitusional, jenis bahasa Inggris dan matematika, sehingga jenis
baik-bulat, tapi belum tentu tahu hal-hal yang saya tidak pernah diajari
di sekolah tinggi.
Dan sehingga tahun pertama, saya punya keraguan ini, dimana meskipun saya
menyukai komputer, bermain game komputer dan sejenisnya, saya pasti tidak pernah
menganggap diriku sebagai orang komputer, seorang ilmuwan komputer, dan
terus terang, saya pikir teman-teman saya di SMA yang memakai komputer
ilmu yang sedikit - Geeks.
>> Namun, ketika saya tiba di sini di kampus, ada kursus ini, CS50, dan pada
waktu, itu ini reputasi benar-benar menjadi sesuatu untuk berhati-hati.
Itu adalah kursus yang baik.
Itu bersenang-senang saja.
Tapi Anda harus benar-benar mendapatkan kaki yang di pintu.
Dan bahkan saya tidak menyeberangi bahwa tahun pertama ambang batas.
Dan saya melanjutkan perjalanan saya menjadi konsentrator pemerintah, melalui
karena banyak prasyarat yang saya bisa, silang menghitung hal-hal untuk gen
ed atau inti dan tahun seperti, dan kemudian sophomore, untuk beberapa alasan, aku
mengumpulkan keberanian untuk langkah kaki di Science Center B, di mana CS50.
Seorang ilmuwan komputer yang sangat terkenal dengan nama Brian Kernighan adalah
mengajar di sini tahun itu, dan bahkan kemudian, saya hanya bersedia untuk benar-benar
mengisi kartu studi saya dengan mengambil kelas ini lulus / gagal.
Saya melihat sekeliling saya, dan saya pikir semua orang di ruangan ini yang harus tahu
cara yang lebih tentang ilmu komputer, tentang pemrograman, tentang komputer.
Setiap orang harus pemrograman di ruangan ini karena mereka adalah 12, tapi memang,
itu tidak terjadi.
Dan jadi hari terakhir, Senin kelima semester yang saya ambil
ini lompatan dan perubahan dari lulus / gagal nilai-huruf, dan akhirnya mengubah saya
konsentrasi yang sama hari ke ilmu komputer.
>> Nah, itu bukan tujuan kami di kelas ini, untuk mengubah Anda semua ke dalam komputer
ilmu konsentrator, tapi benar-benar, untuk mengusulkan bahwa ada kesempatan ini
dalam bidang ini dan di bidang lain dengan mana Anda mungkin cukup asing,
mengingat bahwa sekolah tinggi biasanya mengikuti kurikuler cukup standar
jalan, namun untuk menjelajah di, di CS50, ke perairan baru.
Dan jika Anda sedang duduk di sini hari ini berpikir Anda tidak benar-benar milik, sehingga
melakukan sebagian besar orang ke kanan dan ke kiri.
Memang, tahun lalu, 76% dari siswa di kelas ini tidak memiliki pengalaman sebelumnya.
Jadi bertentangan dengan apa yang Anda mungkin berpikir, sebagian besar orang yang duduk di sekitar Anda
hari ini tidak, pada kenyataannya, memiliki pengalaman sebelumnya.
18% telah mengambil satu kelas CS, dan 6% telah mengambil dua atau lebih.
Sementara itu, kami meminta siswa kami setiap tahun untuk menggambarkan diri mereka dalam hal
dari tingkat kenyamanan, dan ini adalah -
tidak ada definisi salah satu dari ini.
Anda hanya semacam tahu itu, jika Anda tidak sangat nyaman di CS50.
Dan tahun lalu, kami memiliki 55% dalam sepotong pie hijau di sini, self-describing
sebagai siswa kurang nyaman yang terus terang kami tidak tahu kenapa mereka
berbelanja kursus pada hari pertama, tapi 55% yang sama tetap bersama kami sampai
end istilah ini, seperti halnya 35%, yang berada di suatu tempat di antara mereka yang lebih
nyaman dan mereka yang kurang nyaman.
>> Jadi apa ilmu komputer?
Nah, di sekolah tinggi, dan benar-benar, lebih umum di luar sana hari ini,
ada persepsi atau kesalahpahaman ini bahwa ilmu komputer adalah
pemrograman.
Dan itu benar-benar salah satu aspek dari ilmu komputer, tetapi pemrograman,
bahasa apapun adalah, benar-benar hanya alat yang ilmuwan komputer
digunakan untuk memecahkan masalah, baik dalam domain ilmu komputer atau,
semakin hari ini, dalam ilmu fisika, alam
ilmu, dalam kedokteran, dalam humaniora, untuk menganalisis
besar set data.
Di mana saja sekarang ada komputer dan data, ada kesempatan untuk menerapkan
pelajaran di kelas seperti CS50.
>> Jadi mari kita memecahkan masalah yang seorang ilmuwan komputer bisa pergi tentang
memecahkan dan mencoba untuk menempatkan beberapa jargon, menaruh beberapa kerangka konseptual, sekitar
apa yang sebaliknya mungkin beberapa ide yang cukup abstrak.
Jadi ini adalah telepon.
Anda tidak melihat hal-hal ini terlalu sering.
Kampus ini nampaknya masih memiliki ini di rumah-rumah dan asrama, namun
kembali pada hari, ketika Anda ingin menggunakan telepon seperti ini, tidak ada
alamat elektronik buku di ponsel Anda.
Sebaliknya, Anda menarik sesuatu yang dikenal sebagai buku telepon, dan buku-buku telepon
memiliki sekitar 1.000 halaman biasanya.
Mereka diurutkan dari A sampai Z, dan Anda hanya harus menemukan halaman yang tepat untuk
menemukan orang yang Anda cari untuk menemukan nama mereka dan mereka
nomor telepon.
Sekarang bagaimana Anda pergi tentang mencari seseorang di buku ini?
>> Misalkan tujuan saya adalah untuk memberikan teman saya Mike Smith panggilan.
Nah, bagaimana aku pergi tentang menemukan Mike Smith?
Nah, pendekatan yang sangat wajar, jika naif dan tidak efisien, akan mulai
di sini, dan mulai membalik ke halaman empat, halaman lima, enam halaman, dan untuk mengurutkan
dari linear, sepanjang garis lurus, pergi melalui buku telepon, dan bahkan
meskipun itu akan menjadi sangat membosankan, jika Mike Smith dalam hal ini
buku, saya akhirnya akan menghubunginya ketika saya akhirnya membalik ke S
bagian dari buku ini.
Sekarang, tentu saja, Anda tidak perlu menjadi seorang ilmuwan komputer untuk mengetahui bahwa ini
adalah cara yang bodoh untuk memecahkan masalah ini.
Apa yang akan seorang manusia biasa yang lakukan?
Well done.
Jadi Anda akan flip ke tengah, kan?
Jadi Anda akan membalik kasar ke tengah, lihat di sini, dan sepertinya aku menemukan diriku
di bagian M.
Oke, jadi M jelas tidak apa yang saya cari.
Mike ke kanan, sehingga untuk berbicara, dari bagian ini, dan karena beberapa dari Anda memiliki
lihat sebelumnya, kita benar-benar bisa sekarang melanjutkan untuk merobek ini
masalah dalam setengah.
>> Anda benar-benar tidak boleh yang terkesan.
Merobeknya bawah jahitan sebenarnya tidak sulit.
Orang-orang yang sebenarnya melakukannya dengan cara ini, tetapi turun jahitan, kita
sekarang memiliki dua masalah.
Yang masing-masing setengah yang besar, dan kami benar-benar dapat membuang bahwa setengah dari
masalah pergi.
Sekarang kita meninggalkan tidak dengan 1.000 halaman, tetapi mengatakan, 500.
Jadi sekarang apa yang harus saya lakukan?
Nah, manusia biasa akan pergi kira-kira di tengah lagi, dan saya menemukan diri saya di
bagian R, sehingga tidak cukup ada.
Jadi sekali lagi, saya dapat merobek masalah ini di setengah.
Terima kasih.
Jadi sekarang saya hanya memiliki sekitar 250 halaman, dan saya bisa melakukan ini lagi, dan lagi, dan
lagi, dan pergi dari 125 turun ke sekitar 60, sampai 30, sampai 15, dan sebagainya.
Dan akhirnya, aku akan dipangkas menjadi salah satu halaman S, di mana, jika dia
dalam buku telepon, Mike Smith seharusnya.
>> Nah, itu algoritma jelas cukup masuk akal, dan itu adalah
satu kali penggunaan algoritma dalam kasus ini, tapi apa yang bisa kita semacam
mengambil dari itu?
Nah, pendekatan pertama, benar, jika naif, meskipun, itu, bisa
dijelaskan oleh garis lurus.
Jadi jika pada sumbu x-, di sini kita katakan, ini adalah ukuran dari masalah.
Jadi sebagai sumbu x pergi ke kanan, masalahnya akan lebih besar.
Apa artinya menjadi lebih besar?
Dalam konteks masalah ini, lebih banyak halaman dalam buku telepon.
Ada sesuatu yang lebih kita bisa mengukur.
Pada sumbu y, waktu untuk menyelesaikan.
Jadi sebagai sumbu naik, kami menganggap itu mungkin membutuhkan waktu lebih lama.
Sehingga pendekatan pertama linear mencari dari halaman satu ke halaman 1.000
adalah prosedur linear, algoritma linear atau proses, dan kita bisa
menggambarkannya oleh garis lurus.
Jika saya menambahkan satu halaman lebih ke buku telepon, itu akan, di terburuk
kasus, membawa saya satu halaman lebih flip untuk menemukan Mike Smith.
Jika saya menambahkan 100 halaman, 100 lebih membalik, atau satuan waktu.
>> Sekarang saya bisa menjadi pintar sedikit dengan ini.
Saya tidak perlu untuk benar-benar mengubahnya satu halaman pada satu waktu.
Aku bisa melakukan hal-hal seperti dua pada waktu atau empat pada satu waktu, tapi bahkan itu tidak
semua itu dasarnya baik.
Bahkan jika itu dua sekaligus, ya, seperti itu bergerak baris ini turun sedikit,
dan itu berarti bahwa waktu yang panjang, mengingat jumlah yang sama dari halaman, namun
itu tidak mendasar baik.
Tapi apa yang kita lakukan, dan apa semua yang Anda lakukan secara naluriah?
Anda benar-benar mencapai sesuatu yang kecil seperti ini, waktu logaritmik,
dimana masalah tersebut dapat tumbuh dan berkembang dan tumbuh, tetapi biaya pemecahan yang
Masalahnya, waktu yang dibutuhkan untuk memecahkan masalah itu, tidak
tumbuh hampir sama cepat.
Ini akan menjadi kurva logaritmik, log n, dimana n adalah hanya dalam ukuran
masalahnya, jumlah halaman dalam buku telepon.
Dan apa artinya ini secara riil?
Nah, jika kita memiliki, seperti, 500 orang di ruangan ini sekarang -
atau lebih tepatnya, jika kita memiliki -
pencampuran metafora -
tidak melakukan itu contoh belum tahun ini - jadi jika kita memiliki 500 halaman dalam telepon
buku, dan kami dua kali lipat ke 1.000, dalam model yang lebih cerdas
membalik ke tengah, berapa banyak halaman-tearers yang dibutuhkan untuk pergi dari
500 halaman dengan 1.000?
Nah, hanya satu air mata halaman tambahan.
Jika Anda menyodorkan buku telepon 2.000 halaman, bukan masalah besar.
Saya hanya akan merobeknya satu waktu tambahan.
>> Jadi singkatnya, ukuran masalah dapat tumbuh lebih cepat daripada biaya
benar-benar memecahkan masalah tersebut.
Sekarang ini hanyalah salah satu algoritma tersebut.
Ada orang lain yang kita dapat memecahkan dengan cara yang sama.
Dan jadi mengapa kita tidak melakukan hal ini - jika Anda akan humor saya, meskipun canggung di sini
di Sanders, silakan, semua orang, jika Anda bisa, dan berdiri di tempat.
Seperti yang Anda lihat pada layar di sini, ini adalah algoritma, proses, komputer
program, jika Anda mau, yang harus dijalankan oleh manusia, yang hanya memiliki tiga langkah.
Kami sudah satu langkah, Anda sudah berdiri.
Dan sekarang berpikir untuk diri sendiri nomor satu.
Itu adalah nomor Anda saat ini.
Semua orang di sini adalah nomor satu.
Langkah kedua, berpasangan dengan seseorang berdiri dan nomor Anda bersama-sama,
dan kemudian mengadopsi jumlah ini sebagai nomor baru Anda.
Salah satu dari kalian harus duduk, kemudian ulangi.
>> Pada titik ini, semakin sedikit orang yang harus berdiri.
Ini adalah di mana ia mendapat lebih canggung.
Seseorang di sini, di sini.
Bagian terburuk adalah, Anda juga harus sangat lisan melakukan aritmatika di depan
ratusan Harvard undergrads.
Oke, sedikit bug di sini.
Oke, apa nomor Anda?
Sembilan.
Oke.
Berapa nomor Anda?
179.
Oke, baik.
Jadi 188.
Jadi kalian bisa duduk.
Berapa nomor Anda?
118.
Beberapa undergrad pintar mulai melakukan matematika.
Oke, 118, 188.
Apa lagi yang kita punya?
71.
79.
Oke.
Dan?
47, yang, staf pengajar, yang memberi kita berapa banyak?
705 adalah jawabannya.
Dan itu, pada kenyataannya, persis benar.
>> Tidak, kami benar-benar sedikit dari sana, tapi bagaimana
harus ini telah bekerja?
Apa yang seharusnya hanya terjadi?
Jadi pada setiap iterasi dari algoritma ini, kami mulai dengan beberapa nomor
orang berdiri, dan itu jumlah total, n, pada awalnya.
Kemudian setengah dari Anda duduk, dan kami pergi ke n lebih dari dua.
Kemudian setengah dari Anda duduk, kami pergi ke n lebih dari empat, n lebih dari delapan, lebih dari 16,
dan sebagainya, sampai, meskipun jenis hancur ada di
end, dalam teori, setiap orang memiliki berpasangan di balkon, dan mezzanine, dan
orkestra di sini, kita akan memiliki hanya satu orang yang berdiri sendirian, dengan total
nilai, dalam hal ini, dari 705.
Sekarang apa artinya, meskipun, untuk waktu berjalan?
Nah, pikirkan jika saya, sebagai manusia, telah melakukan ini secara manual.
Saya akan mulai cukup naif tapi benar dengan satu, dua, tiga,
empat, lima, enam, tujuh, delapan, dan sebagainya, membutuhkan beberapa waktu.
Jadi saya bisa berbuat lebih baik, kan?
Di sekolah dasar, Anda tidak hanya mengandalkan pada orang-orang.
Anda menghitung dalam berpasangan.
Jadi dua, empat, enam, delapan, sepuluh, dua belas.
Dan itu akan jauh lebih cepat, tapi sekarang mendasar, dengan memanfaatkan
kecerdasan kolektif dari semua orang di ruangan ini, kita dapat mencapai kurva yang jauh
lebih seperti ini, dimana saat ini, jumlah orang-orang di ruangan ini
ganda bisa, yang lain 700 orang berjalan ke ruangan ini untuk 1.400 orang, namun
itu hanya akan membawa kita satu iterasi lebih dari ini algoritma untuk memecahkan.
>> Dan begitu semakin, hari ini, ketika kita memiliki data yang sangat besar dalam
Facebook, dan Google, dan sejenisnya, itu memecahkan masalah dengan ini sedikit
wawasan, ini sedikit kepandaian, yang memungkinkan kita semakin berbuat banyak,
jauh lebih kuat hal-hal dengan komputer hari ini.
Jika Anda menyukai hal-hal seperti, Anda mungkin telah melihat di Facebook CS50
Hari Puzzle sendiri, datang Sabtu ini.
Jika Anda ingin berpartisipasi dalam sesuatu seperti ini, dimana Anda dan
dua, atau tiga, atau empat tim dari empat ingin memecahkan beberapa teka-teki tersebut
seperti yang satu ini, Anda memiliki kesempatan untuk memenangkan hadiah luar biasa, di antaranya adalah
Wii, dan beberapa kartu hadiah, dan beberapa lainnya Facebook curian Sabtu ini,
siang sampai 3:00.
Pergi ke cs50.net/rsvp untuk seperti.
Dan geser ini online jika Anda ingin bermain-main.
Teka-teki tahun ini akan menjadi baru.
>> Anda mungkin melihat di dalam kelas, juga, semua kamera lebih tahun ini.
Jadi tidak hanya akan tentu saja akan difilmkan dengan cara yang biasa, CS50 mungkin juga
mengambil bagian dalam film dokumenter tentang pendidikan tinggi yang melihat
transformatif pengalaman bahwa seorang siswa dapat memiliki hari ini dalam
sarjana program studi.
Jadi menjelang akhir ini, tidak hanya kita akan syuting untuk itu, kita akan syuting
juga untuk, semakin, penonton online kami, serta, pada kesempatan,
ini penonton di sini.
Jadi kami menyambut ke kelas tahun ini mahasiswa Harvard ekstensi sekolah kami,
lulusan sekolah desain, pendidikan, sekolah bisnis, Kennedy
Sekolah, sekolah hukum, serta sejumlah mahasiswa dari Belmont,
Lexington, Newton, dan Sekolah Tinggi Watertown.
Selamat untuk Anda semua.
Selain itu, tahun ini, karena Anda mungkin telah mendengar, Harvard, MIT dan, dan
Berkeley sekarang telah menandatangani kemitraan kolaboratif pada
inisiatif yang disebut EDX, yang merupakan inisiatif untuk membuka pendidikan untuk semua
semakin banyak orang yang online dan, pada dasarnya, mulai melakukan penelitian tentang
skala yang lebih luas tentang bagaimana orang belajar.
Dan begitu CS50 akan menjadi program pertama perguruan tinggi berpartisipasi dalam
inisiatif, juga, yang berarti Anda akan memiliki akses ke semua lebih
alat, semua konten yang lebih kurikuler, semua lebih konten video sebagai
Akibatnya, serta pagi kemarin, 53.019 orang yang memiliki
terdaftar untuk mengambil CS50 bersama dengan Anda tahun ini di Internet.
Jadi apa artinya ini, khususnya, adalah bahwa staf pengajar dan saya memiliki
menghabiskan cukup banyak waktu musim panas ini mempersiapkan untuk musim gugur, baik di kampus
dan mematikan, sehingga kita dapat mulai membangun sebuah korpus menarik, dari
menarik, terlibat konten pendidikan, yang berfokus khususnya pada
lebih intim angkut material yang cukup kompleks.
>> Jadi selain kuliah kursus, dan bagian, dan hal
walkthrough disebut, yang kami akan kembali dengan hanya sedikit, kita juga akan memiliki
celana pendek ini tahun ini yang memungkinkan Anda untuk terlibat dengan kursus dari
sudut yang berbeda bersama-sama.
Jadi mari kita menggunakan ini sebagai kesempatan untuk mengambil mengintip cepat pada salah satu yang
membahas gagasan dari biner.
>> Jadi dalam ilmu komputer ada hal-hal yang disebut algoritma, dua di antaranya
kami hanya mengambil melihat - prosedur untuk memecahkan masalah.
Tetapi pada akhir hari, Anda perlu untuk mewakili informasi entah bagaimana, dan Anda
perlu menyajikannya dalam cara yang komputer dapat mengerti.
Dan bahkan jika Anda tidak benar-benar mengerti komputer, dan Anda berada di
bahwa 76% sekarang, Anda mungkin memiliki beberapa pengertian samar-samar bahwa komputer
entah bagaimana berurusan dengan nol dan satu, sistem biner, sehingga untuk berbicara.
Sekarang mengapa adalah bahwa kasus ini?
Nah, ternyata ketika komputer pertama kali muncul, jika Anda perlu untuk mewakili
informasi, Anda bisa melakukannya dengan listrik, dan meskipun ini adalah sedikit
suatu penyederhanaan yang berlebihan, cara yang sangat mudah merekam informasi yang baik
dengan memutar listrik yang pada, satu dalam biner, sehingga untuk berbicara, atau memutar
bahwa listrik off.
>> Jadi Barry, jika Anda tidak keberatan, bisa kita meredupkan lampu
sepenuhnya untuk sesaat?
Ini di sini adalah nol biner yang sangat beralasan.
Baiklah, jika kita menyalakan lampu kembali, sekarang Sanders Theatre
mewakili nilai biner dari satu.
Sayangnya, dengan hanya satu bit, hanya dengan satu set lampu, kita hanya bisa
mewakili dua angka di dunia, nol dan satu, dan itu akan sangat baik jika
komputer bisa menghitung sedikit lebih tinggi dari itu, tapi memang, mereka bisa.
Jadi biarkan aku menarik di layar teman kita di sini, Nate Hardison, yang akan memberikan
kita lihat cepat selama hanya beberapa menit di
ini gagasan biner.
>> NATE Hardison: Kembali ketika Anda belajar cara membaca dan menulis angka, Anda
belajar tentang angka nol sampai sembilan.
Untuk menulis bilangan bulat lebih besar dari sembilan, Anda belajar bahwa semua yang harus Anda lakukan
itu menggunakan beberapa kombinasi dari angka, seperti di 52 dan 437.
Jadi ini cara penulisan angka memiliki nama, notasi desimal.
Kenapa desimal?
Nah, akar Latin desimal, deca, berarti 10, dan ketika Anda memiliki 10 digit
dalam sistem notasi Anda, 10 menjadi nomor agak khusus.
Mari kita lihat angka 437 ditulis dalam notasi desimal untuk memahami mengapa.
>> Pertama-tama kita dapat memecah 437 menjadi 400 ditambah 30 ditambah 7.
Kita bisa mengambilnya terpisah bahkan lebih, sehingga kita punya empat kali 100 ditambah 3
kali 10 ditambah 7 kali 1.
ingat belajar tentang tempat yang, tempat 10s, 100s
tempat, dan sebagainya?
Ini adalah persis di mana itu berasal.
Dan akhirnya, kita dapat melihat bagaimana kita punya banyak kekuasaan
10 tertanam di sini.
Kami punya 4 kali 10 ke 2 ditambah 3 kali 10 ke 1 ditambah 7
10 kali ke nol.
Jadi sekarang Anda melihat mengapa 10 adalah nomor khusus dalam notasi desimal.
Pada kenyataannya, kita punya nama untuk itu.
Ini disebut dasar, karena itu dasar dari eksponen dalam
kami aritmatika sini.
>> Notasi desimal bukanlah satu-satunya cara untuk mewakili angka.
Pada kenyataannya, bahkan jika kita menyingkirkan angka dua sampai sembilan, kita masih bisa
mewakili semua angka-angka yang kita bisa dengan desimal.
Jadi sekarang kita memiliki dua digit, nol dan satu, dua adalah nomor khusus kami,
dasar sistem notasi kami.
Nama sistem notasi disebut biner, karena
awalan bi berarti dua.
Jadi sebagai gantinya, sekarang, memiliki tempat yang, dan tempat 10s, dan seterusnya, kami
sekarang memiliki tempat yang, tempat berpasangan, tempat merangkak, dan sebagainya, naik oleh
kekuatan dari dua.
Jadi mari kita lihat ini dengan melakukan penghitungan beberapa.
Jadi nol masih nol, dan satu masih satu.
Namun, sekarang kita punya tempat berpasangan bukan tempat 10s, 10
merupakan nomor dua.
Untuk mendapatkan tiga, kami menambahkan satu itu, dan mendapatkan 11.
Empat, karena sekarang ada tempat merangkak, diwakili oleh 100.
Lima adalah 101.
Enam adalah 110.
Tujuh adalah 111.
Delapan, sekali lagi, memiliki tempat tersendiri.
Jadi 1000.
Dan saya pikir Anda mendapatkan titik.
>> SPEAKER 1: Jadi ini adalah untuk mengatakan apa yang dilakukan dan apa komputer biner adalah adalah
sebenarnya tidak begitu berbeda dari apa yang kita telah mengambil untuk diberikan untuk beberapa
tahun, kan?
Kembali di sekolah dasar, Anda belajar untuk menghitung tepatnya di
fashion yang diusulkan Nate, tapi Anda mungkin belum benar-benar berpikir tentang
itu sejak, fakta bahwa ada tempat yang, tempat 10s, dan 100
tempat, dan itu cukup sewenang-wenang.
Dan memang, komputer ini hanya menggunakan dasar yang berbeda.
Tetapi pada akhir hari, untuk benar-benar secara fisik mewakili gagasan
nol dan satu, Anda jelas tidak hanya menyalakan lampu dan mematikan
tentu.
Anda perlu melakukannya pada skala butiran halus banyak.
Dan dengan butiran halus, Anda mungkin ingat ini mainan kecil konyol sejak kecil,
Woolly Willy dan partikel-partikel magnetik kecil.
>> Jadi partikel magnetik adalah sesuatu yang Anda dapat menyesuaikan dalam beberapa
berbeda arah, mungkin utara-selatan atau selatan-utara.
Dan begitu banyak inkarnasi fisik teknologi hari ini yang menggunakan
biner, yang menggunakan angka satu dan nol, hanya memiliki magnet di dalam
yang sejalan hal up-down atau down-up, sehingga mewakili nol atau satu,
masing.
Jadi memang, mari kita menjauh dari abstrak di sini, dan melihat dalam
dari apa drive komputer yang lebih tradisional keras.
Ini terjadi menjadi sedikit lebih besar di layar, dalam bahwa itu dari desktop
komputer, namun laptop saat ini masih memiliki teknologi yang sama, namun secara bertahap
digantikan oleh hal-hal yang lebih canggih yang sebenarnya tidak bergerak
bagian - bagian dalam, kemudian, dari sebuah hard drive.
>> SPEAKER 2: Hard drive adalah tempat PC Anda menyimpan sebagian besar
Data tetapnya.
Untuk melakukan itu, data perjalanan dari RAM bersama dengan sinyal software yang memberitahu
hard drive bagaimana untuk menyimpan data.
Sirkuit hard drive menerjemahkan sinyal tersebut menjadi tegangan
fluktuasi.
Ini, pada gilirannya, mengontrol bagian hard drive bergerak, beberapa dari sedikit
bagian yang bergerak tersisa di komputer modern.
Beberapa sinyal mengendalikan motor, yang piring-piring logam dilapisi sekolah.
Data Anda sebenarnya disimpan pada piring-piring.
Sinyal lain memindahkan kepala baca-tulis untuk membaca atau
menulis data pada piring-piring.
Mesin ini sangat tepat bahwa rambut manusia bahkan tidak bisa melewati antara
kepala piring berputar, namun semuanya bekerja pada kecepatan yang hebat.
>> SPEAKER 1: Jadi sekarang kita memperbesar pada apa yang sebenarnya terjadi di atas tersebut
piring-piring dari segi magnet, kita memiliki kedua dari dua penampilan.
>> SPEAKER 3: Mari kita melihat apa yang kita hanya melihat dalam gerakan lambat.
Ketika pulsa singkat listrik dikirim ke kepala baca-tulis, hal itu membalik
pada elektromagnetik kecil untuk sepersekian detik.
Magnet menciptakan lapangan, yang mengubah polaritas dari, kecil kecil
sebagian dari partikel logam yang melapisi permukaan setiap platter ini.
Serangkaian pola daerah dibebankan sampai kecil pada disk merupakan
satu bit data dalam sistem bilangan biner yang digunakan oleh komputer.
Sekarang jika saat dikirim satu jalan melalui kepala baca-tulis, daerah
terpolarisasi dalam satu arah.
Jika saat ini dikirim dalam arah yang berlawanan, yang
polarisasi terbalik.
Bagaimana Anda mendapatkan data dari hard disk?
Hanya membalikkan proses.
Jadi partikel pada disk yang mendapatkan arus dan baca-tulis
kepala bergerak.
Mengumpulkan jutaan segmen magnet, dan
Anda punya file.
Sekarang potongan-potongan dari file tunggal dapat tersebar di seluruh piring-piring drive ini,
jenis seperti kekacauan kertas di meja Anda.
Jadi file tambahan khusus melacak di mana semuanya.
Jangan Anda berharap Anda memiliki sesuatu seperti itu?
>> SPEAKER 1: Memang.
Jadi kita memiliki kemampuan untuk mewakili informasi ini, nomor
pada tingkat yang sangat rendah.
Kami memiliki cara fisik mewakili hal yang sama, namun kita tidak bisa benar-benar
melakukan semua itu banyak menarik lagi, selain mungkin berhitung dan
matematika.
Kami tidak memiliki cara untuk mewakili hal-hal sejauh seperti huruf abjad,
sehingga kita manusia dapat berkomunikasi, dengan menggunakan perangkat yang sama.
Tapi untungnya, terdapat pengkodean, pola nol dan satu
yang mewakili konstruksi tingkat yang lebih tinggi seperti A, dan B, dan C, dan seluruh
kalimat, dan paragraf, dan sejenisnya.
Dan begitu ASCII, yang merupakan akronim yang merujuk pada sistem coding dimana
nomor satu merupakan surat yang diberikan - misalnya, jumlah yang kita kenal
sebagai nilai desimal 65 dikenal sebagai huruf kapital A ke komputer.
Nilai desimal dari 97 di komputer dikenal sebagai huruf kecil.
Dan apa yang benar-benar berarti?
Nah, meskipun Nate, beberapa saat yang lalu, hanya dihitung naik dari nol sampai delapan, jika
kita terus menghitung hingga 65, atau lebih, untuk 97, pola
nol dan satu bahwa ia akan digambar di layar akan persis
apa yang digunakan komputer untuk mewakili huruf A dalam semua topi, atau surat
dalam huruf kecil.
Dan memang, ada skema keseluruhan untuk ini.
Hal ini, pada pandangan pertama, grafik yang luar biasa dari encodings, tetapi jika Anda berfokus
hanya pada setengah di sini, perhatikan di kolom tengah, kita memiliki
gagasan angka diikuti oleh huruf.
Dan di atas, kita memiliki 32, dan karakter char, yang 32,
integer, sekarang merujuk, ternyata karakter spasi.
Ketika Anda mendapatkan karakter spasi pada laptop Anda, apa yang Anda benar-benar
pengiriman adalah nomor, pola nol dan satu, aliran listrik,
jika Anda mau, mereka mewakili angka satu dan nol, bahwa komputer itu
menafsirkan sebagai karakter ruang pada layar.
Tanda seru adalah 33.
Tanda kutip ganda adalah 34.
Dan jika kita scroll ke bawah sini ke kanan, kita melihat bahwa 65 memang A, dan
97 memang huruf kecil a.
>> Jadi sekarang kita memiliki skema encoding, kita dapat mulai
mengeja hal-hal.
Memang, komputer biasanya mengekspresikan diri mereka dalam satuan standar, tidak
menggunakan sedikit individu, yang sekali lagi, tidak semua yang berguna untuk hanya
mewakili nol atau satu, lampu on atau off, melainkan, dengan menggunakan
urutan bit.
Dan unit yang paling umum dari ukuran, karena Anda mungkin tahu, atau setidaknya
disimpulkan, adalah byte.
Byte adalah hanya delapan bit, delapan nol atau yang berturut-turut.
Jadi kita dapat mulai mengeja hal-hal.
Dan jadi jika kita bisa, mengapa tidak mencoba ini sedikit kolektif di sini?
Apakah ada delapan orang di ruangan ini yang akan bersedia
untuk datang di atas panggung?
Anda harus nyaman muncul pada kamera, tetapi Anda tidak benar-benar perlu
untuk mengetahui jika apa yang terjadi dulu.
Saya melihat satu orang yang sukarela di sini.
Dua, tiga, empat, lima, enam, tujuh, dan delapan bagaimana?
Ayo up.
>> Jadi Anda akan mewakili byte orang.
Biarkan saya saja kau tempat 128s, Anda tempat 64s, 32s tempat Anda.
Tapi kami akan sangat cepat harus membalikkan ini.
Jadi biarkan aku bertemu Anda semua di sana.
Dan Anda harus berada di tempat 128s sepanjang jalan di atas, di sini banyak seperti
ratusan tempat atau tempat ribuan akan jauh ke kiri, kita ingin
placeholder terbesar berada di sini di sebelah kiri juga.
Kami memiliki 64s, 32, 16s, 2s 8s, 4s, dan 1s -
sangat baik.
Jadi sekarang kita punya -
oke, Anda dapat membantu saya.
Jadi sekarang kita memiliki - siapa namamu?
JOANNE: Joanne.
SPEAKER 1: Jadi Joanne dan saya sekarang akan menyarankan orang-orang tentang bagaimana kita
bisa pergi tentang mengeja sesuatu.
Jadi di punggung mereka lembaran kertas, mereka memiliki sedikit contekan
yang akan memberitahu mereka apakah mereka mewakili nol atau satu.
Dan mengapa tidak, untuk kesederhanaan, kita akan mewakili nol dengan hanya
canggung berdiri di sana.
Sangat baik.
Atau satu dengan mengangkat tangan Anda, yang mewakili satu.
Dan mari kita lihat apakah kita tidak bisa mengeja sebuah frase empat karakter di sini.
>> Jadi silakan sekarang, relawan, dan melaksanakan satu putaran dengan mengangkat tangan Anda
jika Anda satu, atau menjaga ke bawah jika Anda nol.
Jadi sekarang kita memiliki tiga tangan atas, apa nomor, orang lain, adalah
mereka benar-benar mewakili?
Oke, 67.
Kenapa?
Nah, kewarasan cepat memeriksa.
Tempat 64s, karena itu satu.
Itu seperti satu, kali 64 ditambah 1 kali dua, jadi itu 66, ditambah 1 kali 1.
Itu ditambah 1, sehingga 67.
Jadi sekarang orang-orang ini secara kolektif mewakili 67, yang tampaknya
mewakili apa di sini di ASCII?
Oke,
sehingga C. Baiklah.
Jadi sekarang mari kita lanjutkan ke putaran dua.
Semua orang mulai dengan tangan mereka turun, kemudian putaran dua.
Sebenarnya, tidak ada banyak peran di sini, saya kira, tapi kita akan berpura-pura.
Jadi putaran dua, menaikkan atau menurunkan tangan Anda.
>> Baiklah.
Pemirsa, apa kita sekarang?
Mengekspresikan adalah 83.
Sehingga Anda dapat melakukan matematika.
Tapi untuk siapa saja yang tangannya sudah habis, Anda menambahkan dalam jumlah yang mereka wakili.
Jadi sekarang kita punya 83.
Mari kita memperluas contekan sedikit, dan sekarang kami memiliki -
ini mungkin jelas di mana kita akan di sini, tapi
Meskipun demikian, putaran tiga.
Oke, putaran tiga yang baik untuk pergi ke sana, sehingga putaran tiga, nomor berapa
orang-orang ini sekarang mewakili?
Oke, aku mendengar 53, yang kini mewakili - menarik.
Sekarang mengapa ini semacam kontra-intuitif hasil, kan?
Jika kita ingin mewakili lima -
kita semua mungkin tahu di mana ini akan -
kenapa tidak saya hanya menaikkan tempat merangkak dan tempat yang?
>> Nah, kita menyadari bahwa ada perbedaan, secara fundamental, antara bagaimana
komputer menafsirkan bit-bit.
Jika Anda mencoba untuk mewakili nomor lima, maka benar-benar, kita hanya
meningkatkan jumlah tangan Anda empat dan meningkatkan jumlah satu sisi.
Tapi kami tidak mewakili angka di sini.
Konteks di sini di atas panggung adalah bahwa kita mewakili karakter atau
karakter, dan dalam konteks ini, komputer harus menyadari bahwa oh, ini
pola bit bukan nomor sendiri.
Itu benar-benar mewakili konsep tingkat yang lebih tinggi.
Dalam kasus ini, surat abjad.
Jadi fakta bahwa sekarang mewakili nomor lima dengan
Nilai 53 adalah karena di ASCII, hal yang kita lihat sebagai estetis
nomor lima itu sendiri membutuhkan pola bit - karena mengapa?
Nah, dunia hanya memutuskan untuk menggunakan angka yang lebih rendah, nol, satu, dua,
tiga untuk apa yang tampak menjadi hal yang cukup samar.
Dan memang, ini adalah karakter yang tidak pada keyboard.
Khusus ekspresi yang Anda butuhkan dalam komputer untuk melakukan hal-hal menarik, tapi
manusia tidak pernah benar-benar mengetik mereka.
Jadi 53, memang, mewakili lima.
Sekarang hanya sebagai cek kewarasan akhir, nomor berapa yang harus mereka
mewakili hanya dalam beberapa saat?
Oke, jadi 48.
Dan memang, pergi ke depan, putaran empat.
16 ditambah 32 memang 48.
Dan sehingga tepuk tangan meriah, jika kita bisa, selama delapan relawan kami di sini.
Sangat baik dilakukan.
Segala arah baik-baik saja.
>> Jadi kita sekarang memiliki cara tidak hanya berpikir tentang bagaimana untuk mewakili data,
dan benar-benar mewakili secara fisik, tetapi juga melakukan yang lebih tinggi
Tingkat hal di atas.
Dan memang, ini akan menjadi tema di seluruh ilmu komputer dari
membangun lebih banyak hal dan lebih menarik dan kompleks di atas
cukup sederhana ide -
dalam hal ini, hanya angka satu dan nol.
Dalam hal mengapa hal ini berguna, baik, meskipun dalam kursus seperti ini,
kita akan fokus pada fundamental, dan pada pemrograman, dan penyelesaian
masalah, Anda dapat pergi dalam ilmu komputer di sejumlah arah.
Dalam hal ini di sini, ini adalah tabel yang Anda miliki di halaman belakang Anda
resmi panduan untuk CS di Harvard, salah satu dari dua hari ini cetakan.
Ini menunjukkan banyak arah yang berbeda di mana Anda dapat pergi setelah
Tentu saja seperti ini -
belajar tentang kecerdasan buatan, tentang grafis, sekitar
mesin pembelajaran, tentang bahasa itu sendiri.
Sadarilah juga bahwa ada jalan lain lagi.
Ada jalan yang lebih matematika dalam ilmu komputer.
Jika Anda bahkan tidak mampu mengambil sesuatu seperti CS50 musim gugur ini, ada
kursus pengantar di musim semi, Ilmu Komputer 1, misalnya, adalah
lagi di-jalan ke dunia baru.
>> Sekarang sebagai samping, untuk kepentingan pemecahan masalah yang berkaitan dengan program,
menyadari CS50 set keluar beberapa waktu lalu untuk mencoba untuk memecahkan salah satu masalah, yang
Masalah yang dikenal sebagai my.harvard, yang banyak dari Anda mungkin menggunakan untuk benar-benar
toko untuk kursus, tetapi jika tidak, periksa alat seperti ini, serta lainnya
keturunan bahwa beberapa mantan siswa kami dan staf telah dibuat.
Namun dalam Program Harvard, yang merupakan alat berbasis web, sesuatu yang Anda
akan mampu merancang dan menyebarkan diri, serta belum
hal-hal lain juga pada akhir semester, menyadari bahwa ini dibangun
pada set data yang terbuka.
Dalam hal ini, tentu saja, katalog, dan memungkinkan siswa dalam hal ini untuk
menjelajahi satu set data yang cukup kompleks.
>> Kami menggali tadi malam beberapa statistik berdasarkan ribu beberapa orang yang
telah menggunakan ini selama beberapa hari terakhir.
Jika Anda sudah penasaran ingin tahu berapa banyak kursus teman Anda benar-benar
cenderung untuk berbelanja, baik, saat ini data ini menunjukkan bahwa 7,6 adalah rata-rata
jumlah program dalam daftar belanja seseorang.
Dan sekarang saya akan memberi Anda juga statistik paling banyak
kursus tentang daftar belanja seseorang - dan kita semua mungkin tahu
orang seperti ini.
201 adalah rekor tahun ini.
Sekarang beberapa mantan siswa kami dan staf benar-benar menempatkan bersama-sama klip untuk
melukis gambar untuk Anda tentang apa jalan ini ilmu komputer
dan CS50 sendiri.
Biarkan aku pergi ke depan dan menarik, berkat Pak Harvahd sini, video diproduksi oleh
beberapa pendahulu Anda, jika kita bisa menjaga lampu untuk ini.
[MUSIC PLAYING]
>> SPEAKER 1: Saya tidak tahu yang akan terjadi.
Jadi tampilan yang lebih serius pada apa yang ada di depan.
Jadi dalam hal harapan kursus ini, Anda memang diharapkan untuk
menghadiri atau menonton kuliah mata kuliah tersebut, mengirimkan delapan set masalah, mengambil dua
kuis, menyerahkan tugas akhir.
Dalam hal nilai, menyadari bahwa saya komentar pada pembukaan sekitar
lulus-gagal, sesuatu yang kami sangat mengambil hati dalam CS50 - tidak ada
hampir cukup dari budaya di Harvard mencoba
sesuatu dan mempertaruhkan kegagalan.
Memang, kami memiliki jumlah siswa, dan saya sendiri khususnya, yang
khawatir menyakiti Anda IPK, atau mendapatkan B dalam sesuatu seperti CS50,
dan kesempatan untuk mengambil kursus seperti ini dan program lainnya di gerbang
tingkat pengantar lulus / gagal adalah kesempatan yang sangat kurang dimanfaatkan ini
perguruan tinggi pada umumnya.
Dan jadi silakan tahu, bahkan saya terdaftar dalam kursus ini awalnya untuk lulus / gagal
kredit saja, dan bahkan meskipun aku beralih pada akhir hari, itu
lima minggu awal, hingga Senin kelima semester, yang
cutoff, yang memungkinkan saya untuk benar-benar menempatkan kaki ke dalam baru
perairan, dan benar-benar mencoba sesuatu yang sangat asing dan sangat tidak nyaman
bagi saya pada saat itu.
>> Jadi dalam hal sekarang apa peran berbagai sudut di mana Anda dapat
pendekatan kursus ini melayani -
sehingga kuliah. Terserah Anda.
Jika Anda terlibat dengan kami secara pribadi di tempat ini, memang, kita tahu
statistik bahwa sekitar 40% dari Anda akan jenis datang dan pergi atas
Tentu semester, dan 10% dari Anda kami tidak akan pernah melihat lagi setelah hari ini.
Dan itu baik-baik saja, harus jujur.
Salah satu karakteristik mendefinisikan CS50 adalah bahwa ada orang-
sumber daya yang tak terhitung banyaknya, beberapa di antaranya kita akan melalui mainan hanya dalam beberapa saat,
termasuk kuliah dan bagian, dan hal yang disebut walkthrough, dan kantor
jam, dan sejenisnya, dan itu sumber daya lebih dari siswa yang khas
seharusnya atau fisik bisa mengambil keuntungan dari, tapi itu karena
dari gaya belajar yang berbeda bahwa setiap tubuh siswa memanifestasikan.
Dan sehingga dalam kuliah, peran utama seperti yang saya lihat itu tidak mendorong secara lisan
out materi yang cukup kompleks dan selalu memberikan semua
seluk-beluk dari dasar-dasar yang kita akan mengeksplorasi semester ini, namun
lebih, untuk melakukan hal-hal seperti yang telah kami lakukan sejauh ini sudah, contoh-contoh
melibatkan manusia di atas panggung mencoba untuk melukis gambaran mental, dan juga
membuat, saya berani mengatakan, beberapa kenangan saat-saat, sehingga bahkan ketika Anda
berjuang dengan topik-topik tertentu, Anda memiliki kenangan, seperti oh, meskipun
yang cukup abstrak, matematika, aku tersesat dengan membawa satu, seperti,
itu benar-benar, pada akhir hari, tidak semua yang berbeda dengan sesuatu yang saya
sudah tahu.
Dan sehingga peran yang kuliah akan melayani baik secara langsung di sini di Sanders
atau online di video ini benar-benar untuk mengatur panggung mental untuk Anda setiap minggu
untuk berbagai konsep dan masalah yang kita akan menyelam ke dalam.
>> Dalam hal konsep tingkat tinggi, sebagian besar kata-kata ini mungkin mengalir di atas
Anda kepala untuk saat ini.
Dan itu baik-baik saja.
Orang-orang yang akan datang ke kursus lebih nyaman akan tahu
beberapa topik, tetapi biasanya untuk yang 10% dari kelas yang
mereka memiliki latar belakang yang lebih banyak, mengambil AP ilmu komputer, pemrograman sejak
mereka adalah 12, menyadari bahwa akan ada kesempatan di bagian dan
Masalah set untuk pergi semua kedalaman lebih ke berbagai topik, mengisi
apapun kesenjangan yang mungkin Anda miliki dari sekolah tinggi atau sebelum latar belakang.
Dalam hal bahasa, menyadari bahwa apa bahasa yang kita gunakan dalam CS50 adalah
sangat tidak relevan pada akhir hari.
Kami kebetulan menggunakan terutama bahasa disebut C. Menjelang akhir
semester, kami memperkenalkan web-sentris bahasa, seperti PHP dan JavaScript.
Tapi kita dan orang lain bisa mengajar kursus seperti ini di hampir semua yang modern
bahasa tingkat tinggi -
Python, dan Ruby, dan lain-lain yang cukup populer hari ini, karena menyadari,
pada akhir hari, Anda tidak belajar di C. Anda tidak
belajar PHP atau JavaScript.
Anda belajar bagaimana untuk memecahkan masalah, baik berbasis web, berbasis komputer, atau
Data-oriented sendiri, menggunakan hanya sebagai alat.
>> Sekarang dalam hal logistik, Anda akan menggunakan sesuatu yang akhirnya disebut
CS50 Appliance.
Tidak masalah jika Anda memiliki Mac, PC, sebuah komputer Linux, atau sejenisnya,
Anda akan memiliki perangkat lunak bebas tersedia mulai minggu depan dengan yang menggunakan
Appliance CS50, lingkungan virtual yang akan Anda gunakan pada
komputer sendiri, sehingga Anda dan semua teman sekelas Anda memiliki Linux seragam
desktop dalam kasus ini.
Ini adalah set masalah, meskipun, di mana Anda benar-benar akan mendapatkan tangan Anda
kotor di kursus.
Dan pada akhir hari, itu adalah set masalah, saya pikir, yang benar-benar
mendefinisikan pengalaman siswa dalam kursus ini.
Sadarilah bahwa banyak masalah set akan dirilis dalam dua edisi -
edisi standar yang kita harapkan dan mendorong 90% dari
kelas untuk menyelam ke dalam.
Tapi kami juga merilis set beberapa masalah dalam apa yang disebut edisi hacker, dan Anda
tahu itu edisi hacker, karena pada setiap halaman dengan watermark,
mengatakan hacker edisi di atasnya.
Dan itu untuk demografis Anda yang memiliki AP ilmu komputer dengan 10
tahun pemrograman di bawah ikat pinggang Anda, dan mencari untuk mengisi kesenjangan tersebut,
dan memiliki lebih formal, daripada otodidak pelatihan mungkin, menyadari
bahwa ada demografis yang sangat substansial dalam kelas yang memiliki
justru tujuan yang sama.
Anda akan memiliki lima hari terlambat.
Soal set umumnya jatuh tempo pada hari Kamis, tetapi Anda dapat memperpanjang lima
mereka tenggat waktu menggunakan hal-hal ini disebut hari akhir, dan kami juga akan turun
Anda terendah skor di akhir semester, per
keterangan dalam silabus.
>> Tapi lain ciri khas dari CS50 selama bertahun-tahun telah menjadi kantor
jam, kesempatan yang Anda lihat secara visual dalam foto sedikit lalu di mana
kita berkumpul sebelumnya di ruang makan rumah, sebelum itu di
basement pusat ilmu pengetahuan, dan tahun ini di Annenberg Hall, empat
malam minggu 20:00-11:00, di mana Anda akan memiliki sangat banyak
berbagi pengalaman bekerja, berjuang melalui masalah-masalah tertentu,
namun dengan struktur dukungan substansial di tempat.
Memang, cara ini akan bekerja adalah Anda akan tiba di Annenberg jika Anda memiliki
beberapa pertanyaan selama seminggu.
Anda akan membawa laptop Anda, Anda akan duduk, ambil beberapa makanan, dan Anda akan login
ke CS50 Discuss, sebuah utilitas berbasis web yang memiliki staf pengajar
dikembangkan yang akan memungkinkan Anda untuk mengirim pertanyaan dan melihat followups dalam
diskusi forum khas akal, dengan menggunakan label dan sejenisnya, dan auto-lengkap
untuk mencari data.
Tapi Anda juga bisa, selama jam jam kantor, Anda harus
pertanyaan meningkat dengan manusia yang sebenarnya.
Memang, tujuan akhirnya adalah agar salah satu, kita mulai membangun di atas
Tentu semester korpus informasi mudah-mudahan benar-benar berguna,
jawaban umum untuk pertanyaan umum, sehingga Anda sendiri dapat memecahkan masalah
dan melepaskan diri secepat mungkin, sementara memiliki pengajaran
Staf - biasanya 20% sampai 30% dari rekan-rekan mengajar dan tentu saja asisten
staf sekaligus.
>> Kami akan memiliki apa yang disebut Greeter CS50 di Annenberg, dan ketika kita
menentukan bahwa, Anda tahu apa?
Pertanyaan ini, kita benar-benar menjawab secara efektif online.
Kita perlu melihat komputer Anda.
Kami ingin berbicara dengan Anda satu lawan satu.
Kau benar-benar berjuang, dan karena itu Anda ingin berbicara satu lawan satu
bersama seseorang, Anda akan dikirim ke Greeter CS50, sebuah
mengajar sesama memegang, secara harfiah, sebuah iPod yang memiliki nama siswa pada satu
side, mengajarkan nama-nama staf di sisi lain.
Kami akan mengumpulkan nama, diikuti dengan nama staf pengajar, dan Anda
layar komputer akan mulai berkedip, mengatakan silakan pergi melihat Alice atau silahkan
pergi melihat Bob di meja guru.
Dan sehingga dengan cara ini, kita akan dapat mengirimkan hal-hal seefisien
mungkin, serta membimbing Anda menuju solusi semua lebih mudah.
Pada bagian, ini akan menjadi peluang untuk lebih intim hands-
peluang dengan salah satu rekan pengajaran dan 12 sampai 16 atau lebih dari
teman sekelas Anda, di mana setiap minggu, kita akan memiliki masalah dalam sejumlah masalah
yang meminta sejumlah pertanyaan konseptual, dan sejumlah gigitan-ukuran
pemrograman pertanyaan yang Anda bisa mencari tahu sendiri, dan Anda bisa
bekerja sendiri, tetapi dalam konteks bagian, kita akan bekerja melalui
kolektif beberapa masalah tersebut dan pergi ke mana
percakapan membawa kita.
>> Selain itu, dalam bagian akan Anda memiliki kesempatan untuk meninjau pengajuan
PR yang telah Anda buat, teman sekelas Anda, terkadang anonim,
selalu dengan opt-in, jika Anda ingin berbagi
bekerja bahwa Anda telah disampaikan.
Jadi itu benar-benar akan menjadi percakapan dua-arah, dan kesempatan untuk
meninjau pekerjaan Anda sendiri dalam arti yang jauh lebih dinamis, bukan hanya
melihat sebuah PDF atau cetakan dan berpikir tentang hal itu selama beberapa detik
dan belum tentu menyerap umpan balik yang
staf pengajar telah disediakan.
Dan Anda akan menggunakan alat yang disebut di sini CS50 Spaces.
Bagi mereka yang tidak terbiasa, ini adalah bahasa yang dikenal sebagai C di sebelah kiri atas, dan
Anda akan mendapatkan untuk mengetahui hal ini dari waktu ke waktu, tetapi ini adalah utilitas berbasis web yang kita akan
digunakan dalam bagian yang akan memungkinkan Anda dan 15 atau jadi teman sekelas Anda untuk login dengan
Anda mengajar sesama di depan ruangan.
Anda akan dapat menulis kode dalam jendela ini.
Anda akan dapat chatting elektronik jika Anda tidak benar-benar di bagian di
saat tertentu, dan sesama mengajar Anda, ketika tiba saatnya untuk
mendiskusikan Alice atau Bob solusi di kelas, rekan mengajar dapat mengklik
tombol, dan voila, proyek ke layar apapun mahasiswa yang telah
bekerja pada pada titik waktu tertentu.
Jadi bagi Anda memiliki teman-teman yang telah mengambil CS50 di masa lalu, menyadari
bahwa bagian telah secara signifikan reboot tahun ini menjadi semua lebih
aktif, semua lebih dinamis, dan benar-benar, percakapan dua arah antara
staf pengajar dan mahasiswa.
>> Dan penelusuran.
Jadi untuk ini set masalah, kami juga tidak hanya menawarkan spesifikasi
itu sendiri, yang umumnya merupakan PDF yang cukup rinci, tetapi juga hal-hal yang diketahui
sebagai walkthrough, dimana salah satu anggota staf pengajar akan memimpin sebuah mingguan
sesi yang benar-benar menuntun Anda melalui sejumlah masalah, memberikan Anda
petunjuk, rekomendasi, dan titik awal, dan dimaksudkan untuk meminta sangat
sering mengajukan pertanyaan: di mana saya mulai?
Nah, Anda mulai baik dengan menyelam ke spec sendiri, atau dengan menghadiri
atau menonton ini Walkthroughs.
Walkthrough pertama, pada kenyataannya, akan menjadi hari Jumat ini.
Mereka akan pada hari Jumat, tidak begitu banyak karena kita pikir itu akan menjadi populer
waktu, tetapi karena kita kemudian bisa memfilmkan mereka sangat awal minggu dan mendapatkan
online dengan akhir pekan mereka sehingga Anda memiliki sebagai hari sebanyak mungkin untuk
benar-benar terlibat dalam konten itu juga.
Tapi lebih pada bahwa dalam kuliah ini hari Jumat.
>> Sekarang dalam hal struktur pendukung, statistik yang paling signifikan adalah
mungkin rekan-rekan mengajar 108 dan asisten saja bahwa kursus ini
saat ini memiliki.
Jika beberapa dari Anda yang tidak memiliki kelas bertentangan ingin bergabung
saya di sini di atas panggung, itu adalah orang-orang yang pada akhirnya akan benar-benar mendefinisikan Anda
pengalaman dalam kursus.
Saya punya banyak rekan-rekan mengajar saya mengajar kelas di hari, dan saya
ingat sangat sedikit dari mereka, terus terang, namun sampai saat ini, saya masih ingat antara
beberapa orang saya CS50 TF, yang benar-benar membantu saya menjawab pertanyaan, yang benar-benar
membantu saya ketika saya sedang berjuang, dan benar-benar adalah mitra dalam
pengalaman belajar dunia yang sangat baru.
Dalam sedikit, semua orang-orang ini akan bergabung dengan Anda di luar untuk kue, yang
adalah tradisi CS50, di transept dari Memorial Hall, tapi biarkan aku
pertama memperkenalkan Anda kepada Nate Hardison lagi, Rob Bowden, dan Tommy
McWilliams, tentu saja tahun ini kepala.
Jika kalian akan bergabung dengan saya di sini di tengah.
Mereka semua telah menyiapkan beberapa komentar inspirasional.
>> TOMMY McWilliams: Saya tidak mempersiapkan apa-apa inspirasional.
Tapi nama saya Tommy.
Aku senior di Mather.
Saya sedang belajar ilmu komputer, benar-benar bersemangat untuk berada di tim dan kepala
akan melalui perjalanan CS50 dengan Anda.
Apa yang saya benar-benar mencintai tentang CS50 adalah bagaimana itu benar-benar mengajarkan Anda untuk berpikir tentang
masalah dengan cara yang baru.
Ini benar-benar suatu keterampilan yang akan sangat berharga, tidak peduli apa bidang
Anda pergi ke.
Dan tidak hanya itu, tapi kami menawarkan lebih bebas daripada permen
Tentu saja lain di kampus.
Jadi aku hanya benar-benar melihat ke depan untuk melihat apa yang
orang membangun semester ini.
Dan jika seseorang memiliki pertanyaan sekarang atau sepanjang semester, pasti
merasa bebas untuk menjangkau saya, dan saya akan senang untuk membantu.
>> ROB Bowden: Hi.
Saya Rob Bowden.
Aku senior di Kirkland.
Ya, itu benar.
Kita semua benar-benar bersemangat untuk semester berikutnya.
Kami berharap Anda semua bersemangat.
Aku tidak mengharapkan itu.
Ya.
Jadi kita menempatkan begitu banyak usaha untuk membuat semester ini benar-benar hebat, dan sebagai
Selama Anda bersedia untuk dimasukkan ke dalam upaya, ada begitu banyak Anda bisa mendapatkan
keluar dari kursus ini.
Anda bisa mendapatkan banyak menyenangkan keluar dari kursus ini.
Kami tidak akan memiliki staf 108 jika Anda tidak bisa mendapatkan banyak kesenangan dari itu,
jadi hanya mencoba untuk terlibat, dan Anda tidak akan menyesal.
>> NATE Hardison: Hi, guys.
Saya Nate.
Saya pembimbing untuk kursus.
Aku benar-benar senang berada di sini juga.
Ini adalah tahun pertama saya di sini.
Saya harap Anda semua mengambil kursus ini, dan menikmatinya sebanyak yang saya sudah
menikmatinya sejauh ini.
Dan jika Anda pernah ingin belajar bagaimana untuk datang ke sembilan atau sepuluh dalam biner, datang
bicara padaku.
>> SPEAKER 1: Jadi pada risiko meninggalkan orang-orang di sini di atas panggung sedikit
canggung, mari kita berputar melalui hanya beberapa hal yang menunggu sebelum kita
menunda untuk kue.
Apa yang kebohongan depan?
Nah, jika kita mengambil cepat melihat kembali pada tahun lalu, dalam masalah set nol, Anda
pendahulu terjun ke dalam bahasa pemrograman yang disebut Scratch, sebuah grafis
bahasa pemrograman yang akan anda gunakan pada hari-hari pertama saja, mulai
Jumat ini, untuk mempelajari beberapa konsep asing bagi sebagian dari Anda, tetapi menyadari
akan ada aspek canggih ini bagi anda dengan sebelum
latar belakang.
>> Dalam masalah tahun lalu mengatur dua, siswa terjun ke dunia
kriptografi, seni enciphering atau mengacak informasi,
melaksanakan program bahwa data dienkripsi, dan dalam edisi hacker terakhir
Tahun itu siswa melanjutkan untuk memecahkan atau decode password dalam khas
komputer xc sandi. file dengan datang dengan algoritma dan heuristik untuk
brute force mencari tahu apa password seseorang pada komputer
sistem itu.
Tahun lalu atau dua, dalam masalah menetapkan empat siswa melakukan
menerapkan permainan Sudoku.
Dan edisi hacker tahun itu tidak siswa tidak hanya menerapkan cara
memainkan permainan, tapi sebenarnya pemecah suatu, dimana komputer dapat memberikan Anda,
manusia, dengan petunjuk, lebih cepat dari yang Anda memecahkan
masalah tertentu.
>> Dalam sejumlah masalah lima, kami melakukan forensik, ini seni memulihkan informasi
itu sengaja atau dengan sengaja
dihapus dari komputer.
Tahun lalu, staf pengajar dan saya berjalan di sekitar kampus mengambil
foto-foto orang, tempat, dan hal-hal dan kemudian sengaja
diformat kartu media pada kamera kami yang memiliki semua foto-foto.
Tapi tidak ada masalah, kami membuat gambar forensik dari kartu media, menyerahkannya keluar
kepada semua siswa di kelas, dan menantang mereka untuk menulis program yang
pulih semua file JPEG dari kartu itu.
Dan ini sebenarnya adalah salah satu favorit kami set masalah, dan aku menggali sebuah
lama email dari salah satu pendahulu Anda yang menyenangkan untuk
baca beberapa waktu yang lalu.
>> Ini adalah dari Matt.
Dear David, kemarin adikku sengaja diformat kamera nya SD
kartu dan kehilangan satu tahun dari foto kenangan.
Dia sayangnya bukan yang terbaik di back up data nya.
Tapi situasi ini mengingatkan saya p-set lima, jadi saya pikir saya akan mencoba untuk
menjalankan kartu SD nya melalui program pemulihan yang saya tulis sepanjang perjalanan kembali
pada bulan Oktober.
Jadi setelah empat jam mencari tahu bagaimana untuk membuat gambar mentah dari
diformat SD card -
Google terbukti cukup membantu dalam hal ini, sampai saya ironisnya
kebetulan menemukan instruksi Anda di Internet -
setelah bermain-main-main dengan beberapa argumen baris perintah, saya berhasil
untuk membuat gambar forensik, dan setelah menginstal dan mengkonfigurasi
CS50 Appliance, saya berhasil menjalankan gambar forensik melalui program saya dan
memulihkan semua 1.027 foto-foto adik saya, menulis Matt.
>> Dalam sejumlah masalah tahun lalu enam, kami memberikan siswa kamus
150.000 kata bahasa Inggris dan menantang mereka untuk menulis sebuah spell checker yang
pertanyaan dijawab dari bentuknya, kata ini dieja dengan benar atau salah
secepat mungkin.
Dan pada opt-in dasar adalah siswa diperbolehkan untuk kemudian menantang teman sekelas
dengan mem-posting hasil mereka, jumlah RAM yang mereka gunakan, jumlah
CPU siklus atau detik yang mereka gunakan, sehingga siswa kemudian peringkat pada
kursus ini situs - lagi, aspek murni opsional, tapi menyenangkan
dalam sangat sering siswa akan mendapatkan nomor posisi 10 atau lebih besar di
papan, di website, pergi untuk makan malam dan kemudian kembali, dan menyadari
teman sekamarnya baru saja beringsut di depan dia di papan besar,
sehingga menuangkan dua atau tiga jam hanya untuk satu
nya atau teman sekamarnya up.
>> Jadi kami berharap untuk sesuatu yang serupa tahun ini juga.
Dalam sejumlah masalah yang kita 7 mengarahkan ke arah pemrograman web, sebenarnya
pemecahan masalah dalam lingkungan yang selalu semakin umum
dari browser web.
Tahu maka semakin menurun kita men-download perangkat lunak pada Mac dan PC, namun
semakin, kita melakukannya semua dalam web.
>> Dan memang, tahun lalu, sekitar 88% dari proyek akhir siswa dalam kursus
adalah web-based.
Dan orang-orang, juga merupakan keterampilan yang Anda akan berasal dari kelas ini dengan
end saja, karena apa yang menanti di akhir kursus adalah Fair CS50, ini
Pameran yang didasarkan pada gagasan yang adil ilmu pengetahuan, tetapi dalam versi ini
adil melakukan semua siswa di kelas membawa laptop mereka, dan mereka
teman-teman, dan keluarga, dan orang lain untuk Northwest Science, sebuah bangunan besar di
kampus, menyiapkan laptop mereka, mendapatkan beberapa makanan, mendapatkan beberapa popcorn dan minuman, dan
kemudian menunjukkan proyek terakhir mereka untuk semua orang hadir dalam, yang tahun lalu
nomor beberapa peserta 2.500 dari seluruh kampus, dan ungkapan-ungkapan seperti
ini, dan seperti ini tidak jarang di pameran tersebut.
>> Menjelang pameran adalah Hackathon CS50, kesempatan untuk naik pada
Harvard shuttle, kepala menyusuri jalan untuk Microsoft di 8:00 PM, dan tidak pulang ke rumah
sampai 7:00 AM.
Kami melayani makan malam pertama di 8:00 PM, makan malam kedua di 1:00, dan bagi mereka yang masih
berdiri pada 5:00 am kita memperlakukan untuk pancake di IHOP.
Dan Hackathon adalah sebuah kesempatan, seperti yang digambarkan di sini, untuk menyelam ke Anda
proyek akhir, apakah bekerja sendiri atau dengan teman-teman dalam
kolaboratif lingkungan, di mana seluruh staf pengajar bekerja dengan baik
ke dalam malam dengan pasokan banyak Hong Kong makanan Cina.
Pada 5:00 AM gambar tersebut akan seperti ini cukup umum tahun ini juga.
>> Jadi kita menunda suatu saat untuk kue, perlu diingat bahwa 76% persen dari
orang di ruangan ini tidak memiliki pengalaman sebelumnya, dan sesuai silabus,
apa yang akhirnya penting dalam kursus ini tidak begitu banyak di mana Anda berakhir
relatif terhadap teman sekelas Anda, tetapi di mana Anda, di minggu 11, berakhir relatif terhadap
diri Anda dalam minggu 0.
Ini adalah CS50.