1 00:00:00,000 --> 00:00:02,952 >> [MUZIK Bermain] 2 00:00:02,952 --> 00:00:11,316 3 00:00:11,316 --> 00:00:13,284 >> [MUZIK Bermain] 4 00:00:13,284 --> 00:00:18,722 5 00:00:18,722 --> 00:00:19,680 DAVID MALAN: Baiklah. 6 00:00:19,680 --> 00:00:21,983 Ini adalah CS50. 7 00:00:21,983 --> 00:00:24,108 [MUZIK DITAYANGKAN Tritonal, Tunai Tunai,  "Untouchable"] 8 00:00:24,108 --> 00:01:40,846 9 00:01:40,846 --> 00:01:41,844 [MUZIK Bermain] 10 00:01:41,844 --> 00:01:45,337 SPEAKER 1: saya akan France, dan anda akan juga. 11 00:01:45,337 --> 00:01:48,331 [MUZIK Bermain] 12 00:01:48,331 --> 00:02:38,100 13 00:02:38,100 --> 00:02:41,930 DAVID MALAN: Ini adalah CS50, Pengenalan Universiti Harvard 14 00:02:41,930 --> 00:02:44,520 kepada intelektual perusahaan sains komputer 15 00:02:44,520 --> 00:02:47,940 dan kesenian program-- dan buat kali pertama dalam sejarah, 16 00:02:47,940 --> 00:02:49,800 Universiti Yale juga. 17 00:02:49,800 --> 00:02:53,830 Malah, sama ada anda berada di sini di Cambridge atau di New Haven atau Miami atau St Louis 18 00:02:53,830 --> 00:02:55,550 atau Amsterdam atau di mana seluruh dunia 19 00:02:55,550 --> 00:03:00,080 mengambil CS50, komputer sains E50, CS50X, CS50 AP, 20 00:03:00,080 --> 00:03:02,090 kita semua adalah satu dan sama. 21 00:03:02,090 --> 00:03:04,490 Selamat datang ke CS50. 22 00:03:04,490 --> 00:03:05,380 >> Apa yang kita ada-- 23 00:03:05,380 --> 00:03:06,348 >> [Tepuk tangan] 24 00:03:06,348 --> 00:03:07,800 >> [Ketawa] 25 00:03:07,800 --> 00:03:10,220 >> [Tepuk tangan] 26 00:03:10,220 --> 00:03:13,610 27 00:03:13,610 --> 00:03:16,920 >> Maka aku membuat kesilapan sendiri beberapa masa lalu apabila saya bermula kolej. 28 00:03:16,920 --> 00:03:21,580 Dan saya mendapat ke kolej, dan saya memutuskan untuk terus-terang, melekat dalam zon selesa saya. 29 00:03:21,580 --> 00:03:24,475 Akhirnya, saya mengisytiharkan kepekatan, atau yang utama, kerajaan. 30 00:03:24,475 --> 00:03:27,880 Ant yang kebanyakannya fungsi saya yang cukup biasa dengan kerajaan 31 00:03:27,880 --> 00:03:31,270 atau sekurang-kurangnya sejarah atau saya benar-benar suka undang-undang perlembagaan di sekolah tinggi. 32 00:03:31,270 --> 00:03:34,150 Dan apabila saya sampai di sini, saya jenis daripada tertarik ke arah perkara yang 33 00:03:34,150 --> 00:03:35,800 yang aku sudah biasa. 34 00:03:35,800 --> 00:03:36,300 Betul? 35 00:03:36,300 --> 00:03:38,167 Allah melarang saya berbuat buruk di dalam kelas. 36 00:03:38,167 --> 00:03:40,250 Saya pasti mahu tinggal dalam zon selesa saya, 37 00:03:40,250 --> 00:03:43,010 dan ia tidak sehingga tahun kedua kerana akhirnya 38 00:03:43,010 --> 00:03:46,820 bangun saraf untuk melangkah kaki di dalam kelas yang dipanggil CS50. 39 00:03:46,820 --> 00:03:51,150 Dan pada ketika itu, adakah saya akhirnya menyedari itu, Allahku, kerja rumah boleh sebenarnya 40 00:03:51,150 --> 00:03:51,910 menyeronokkan. 41 00:03:51,910 --> 00:03:54,410 >> Malah, saya adalah salah seorang dari orang-orang kanak-kanak bahawa pada hari Jumaat malam apabila 42 00:03:54,410 --> 00:03:57,640 P-SETS akan dibebaskan, saya akan kembali ke bilik dan menyelam saya 43 00:03:57,640 --> 00:03:58,790 ke dalam malam P-SETS. 44 00:03:58,790 --> 00:04:01,606 Dan bagi saya, itu adalah tanda bahawa ini adalah medan untuk saya. 45 00:04:01,606 --> 00:04:04,480 Tetapi apa yang lebih penting ialah Hakikat bahawa saya tidak mendapat sehingga saraf ini 46 00:04:04,480 --> 00:04:08,000 untuk menerokai perairan yang tidak dikenali kepada saya dan mendapatkan di luar zon selesa saya sendiri 47 00:04:08,000 --> 00:04:12,320 dan terus-terang, saya hanya mampu untuk berbuat demikian tahun kedua dengan mengambil kelas ini 48 00:04:12,320 --> 00:04:13,050 lulus / gagal. 49 00:04:13,050 --> 00:04:16,470 >> Sesungguhnya, ia adalah hari yang terakhir yang Saya akhirnya beralih dan akhirnya 50 00:04:16,470 --> 00:04:19,707 diisytiharkan CS sebagai tumpuan saya, meletakkan gov pada ketika itu di belakang saya. 51 00:04:19,707 --> 00:04:22,290 Dan sebagainya kita tidak menyatakan dalam kursus ini untuk menjadikan anda semua 52 00:04:22,290 --> 00:04:25,780 ke dalam jurusan CS atau concentrators, tetapi agak untuk memberikan anda peluang 53 00:04:25,780 --> 00:04:29,780 untuk mudah-mudahan melampaui dunia dengan mana anda berada kini biasa 54 00:04:29,780 --> 00:04:33,660 dan membawa kembali dari dunia ini kemahiran dan pengetahuan dan celik 55 00:04:33,660 --> 00:04:36,220 bahawa anda boleh memohon untuk anda dunia sendiri, sama ada itu 56 00:04:36,220 --> 00:04:39,080 dalam bidang kemanusiaan, sains sosial, sains semula jadi, atau lebih. 57 00:04:39,080 --> 00:04:40,871 >> Malah, jika anda berada rasa sedikit berani 58 00:04:40,871 --> 00:04:43,250 tentang menjadi di dalam bilik ini apatah lagi dalam kelas ini, 59 00:04:43,250 --> 00:04:47,560 sedar bahawa jika sejarah adalah petunjuk, 72% daripada anda 60 00:04:47,560 --> 00:04:49,802 tidak pernah mengambil kursus CS sebelum ini. 61 00:04:49,802 --> 00:04:52,760 Jadi ia adalah dengan cara semua tidak berlaku bahawa pelajar yang duduk ke kiri 62 00:04:52,760 --> 00:04:56,850 atau ke kanan atau di hadapan atau belakang anda mengetahui lebih lanjut mengenai CS 63 00:04:56,850 --> 00:04:58,820 atau pengaturcaraan khususnya daripada anda. 64 00:04:58,820 --> 00:05:00,432 Bukan itu sebenarnya kes itu. 65 00:05:00,432 --> 00:05:02,140 Dan sesungguhnya, banyak struktur sokongan 66 00:05:02,140 --> 00:05:04,600 bahawa kami telah ditubuhkan pada ini Sudah tentu lebih banyak tahun yang lalu 67 00:05:04,600 --> 00:05:08,840 telah untuk betul-betul yang reason-- untuk memberi di jalan yang masih keluar 68 00:05:08,840 --> 00:05:11,640 seperti yang ketat dan hanya setinggi ever-- 69 00:05:11,640 --> 00:05:14,860 tetapi cerun yang membolehkan pelajar kurang selesa dan lebih selesa 70 00:05:14,860 --> 00:05:18,420 sama untuk berjaya tanpa mengira latar belakang sebelum mereka. 71 00:05:18,420 --> 00:05:20,610 >> Sesungguhnya, apa yang akhirnya perkara-perkara di dalam kelas ini tidak 72 00:05:20,610 --> 00:05:22,830 begitu banyak di mana anda berakhir berbanding dengan rakan-rakan anda 73 00:05:22,830 --> 00:05:26,000 tetapi di mana anda pada minggu 12 berakhir berbanding dengan diri 74 00:05:26,000 --> 00:05:28,720 dalam minggu sifar, iaitu di mana kami berada di sini hari ini. 75 00:05:28,720 --> 00:05:32,315 >> Sesungguhnya dan ini boleh dengan baik dan mungkin tidak kelihatan seperti Greek 76 00:05:32,315 --> 00:05:32,940 kepada ramai daripada anda. 77 00:05:32,940 --> 00:05:35,200 Tetapi yakinlah, yang ini dan banyak lagi 78 00:05:35,200 --> 00:05:38,990 akan menjadi sepenuhnya dalam anda memahami hanya dalam sedikit masa. 79 00:05:38,990 --> 00:05:41,410 >> Tetapi hari ini, kita memberi tumpuan kepada beberapa daripada idea-idea tahap yang lebih tinggi 80 00:05:41,410 --> 00:05:43,822 untuk memberikan anda rasa sains CS50 dan komputer 81 00:05:43,822 --> 00:05:45,530 dalam rasa apa anda mendaftar untuk. 82 00:05:45,530 --> 00:05:48,000 Dan sesungguhnya, sains komputer mungkin suling lebih 83 00:05:48,000 --> 00:05:51,209 hanya sebagai thinking-- pengiraan berfikir seperti komputer, jika anda akan. 84 00:05:51,209 --> 00:05:54,000 Dan terdapat begitu banyak perkara yang berbeza bahan-bahan yang masuk ke dalam itu, 85 00:05:54,000 --> 00:05:56,240 tetapi mari kita mencadangkan hanya tiga hari ini. 86 00:05:56,240 --> 00:05:59,420 Jika matlamat kelas akhirnya tidak mengajar anda pengaturcaraan, 87 00:05:59,420 --> 00:06:03,022 tidak untuk mengajar anda C atau PHP atau SQL atau apa-apa bilangan perkataan 88 00:06:03,022 --> 00:06:04,730 dan akronim dalam penerangan kursus ini, 89 00:06:04,730 --> 00:06:07,850 tetapi untuk mengajar anda untuk menyelesaikan masalah dengan lebih berkesan 90 00:06:07,850 --> 00:06:11,670 dan untuk berfikir dengan lebih teratur dan lebih algorithmically, jadi untuk bercakap. 91 00:06:11,670 --> 00:06:13,610 Mari kita lihat apa sebenarnya yang dimaksudkan ini. 92 00:06:13,610 --> 00:06:17,000 >> Jadi saya akan mencadangkan pemikiran yang computationally bisul 93 00:06:17,000 --> 00:06:17,834 untuk menyelesaikan masalah. 94 00:06:17,834 --> 00:06:19,333 Apa yang anda perlukan untuk menyelesaikan masalah? 95 00:06:19,333 --> 00:06:21,470 Anda perlu input-- seperti input kepada problem-- yang 96 00:06:21,470 --> 00:06:23,636 anda memerlukan output, yang adalah diharapkan penyelesaian, 97 00:06:23,636 --> 00:06:26,720 dan kemudian anda perlu suatu proses di untuk menyelesaikan masalah, yang 98 00:06:26,720 --> 00:06:30,030 kami akan panggil algorithm-- satu set arahan untuk menyelesaikan beberapa masalah. 99 00:06:30,030 --> 00:06:33,340 >> Tetapi pertama, mari kita fokus pada hari pertama dan yang terakhir ini input dan output. 100 00:06:33,340 --> 00:06:38,070 Komputer selepas semua, nampaknya hanya memahami sifar dan satu. 101 00:06:38,070 --> 00:06:39,299 Tetapi bagaimana yang mungkin? 102 00:06:39,299 --> 00:06:42,090 Malah jika anda tidak biasa di semua dengan apa yang di bawah hood, 103 00:06:42,090 --> 00:06:44,980 anda mungkin sekurang-kurangnya mendengar bahawa komputer memahami binary-- 104 00:06:44,980 --> 00:06:48,050 hanya sifar dan ones-- tetapi bagaimana boleh anda mungkin berbuat apa-apa yang menarik? 105 00:06:48,050 --> 00:06:49,960 >> Nah, salah satu tema kelas akan 106 00:06:49,960 --> 00:06:53,293 menjadi ini layering-- di mana hari ini, kita akan mengambil satu renungan pada tahap yang paling rendah 107 00:06:53,293 --> 00:06:55,620 butiran, tetapi dengan setiap lulus hari, di mana kita lapisan 108 00:06:55,620 --> 00:06:59,420 atau abstrak di atas butir-butir untuk benar-benar menyelesaikan tahap yang lebih tinggi 109 00:06:59,420 --> 00:07:01,080 masalah menarik kepada kami. 110 00:07:01,080 --> 00:07:04,730 >> Jadi di sini adalah apa yang mungkin kita panggil binary-- dengan hanya abjad 0 dan 1. 111 00:07:04,730 --> 00:07:06,960 Tetapi kita manusia adalah kebanyakannya biasa dengan perpuluhan. 112 00:07:06,960 --> 00:07:08,130 Disember makna 10. 113 00:07:08,130 --> 00:07:09,070 Bi bermaksud dua. 114 00:07:09,070 --> 00:07:12,100 Dan sebagainya dalam perpuluhan sistem, kami mempunyai 10 digit 115 00:07:12,100 --> 00:07:14,099 di disposal-- kami Sudah tentu, sifar melalui sembilan. 116 00:07:14,099 --> 00:07:16,140 Jadi, jika anda melihat sebilangan seperti ini, kebanyakan kamu 117 00:07:16,140 --> 00:07:19,016 intuitif hanya memahami bahawa adalah 123. 118 00:07:19,016 --> 00:07:20,640 Tidak ada yang benar-benar keras tentang itu. 119 00:07:20,640 --> 00:07:22,452 Tetapi mengapa ia 123? 120 00:07:22,452 --> 00:07:24,660 Nah, jika anda berfikir kembali kepada school-- gred atau sekurang-kurangnya 121 00:07:24,660 --> 00:07:26,410 cara saya belajar ini jenis world-- anda 122 00:07:26,410 --> 00:07:29,640 mungkin ingat bahawa kita ini dirawat perkara dalam ruangan, atau tempat. 123 00:07:29,640 --> 00:07:31,412 >> Oleh itu, kita mempunyai tempat orang-orang yang di sebelah kanan. 124 00:07:31,412 --> 00:07:32,620 Puluhan tempat di tengah-tengah. 125 00:07:32,620 --> 00:07:34,240 Beratus-ratus meletakkan di sebelah kiri. 126 00:07:34,240 --> 00:07:36,980 Dan kemudian bagaimana kita mendapatkan dari corak ini symbols-- 127 00:07:36,980 --> 00:07:41,771 1 2 3-- ke tahap yang lebih tinggi ini idea yang kita kenali sebagai 123? 128 00:07:41,771 --> 00:07:43,461 Nah, ia hanya beberapa aritmetik mudah. 129 00:07:43,461 --> 00:07:43,960 Betul? 130 00:07:43,960 --> 00:07:48,960 >> Yang terdapat pada dasarnya bermakna memberikan kita 100 kali 1 ditambah 10 kali 131 00:07:48,960 --> 00:07:50,410 2 plus 1 kali 3. 132 00:07:50,410 --> 00:07:53,430 Dan sudah tentu jika kita keluar matematik sana, ia adalah 100 ditambah 20 133 00:07:53,430 --> 00:07:56,480 plus 3-- atau dikenali sebagai 123. 134 00:07:56,480 --> 00:07:58,820 >> Jadi, jika anda berada di halaman yang sama yang hak itu 135 00:07:58,820 --> 00:08:02,320 sekarang dan selesa dengan apa yang dipanggil sistem perpuluhan sebagai manusia, 136 00:08:02,320 --> 00:08:05,750 ia sebenarnya baik dalam skop anda keselesaan 137 00:08:05,750 --> 00:08:07,220 untuk mempertimbangkan sekarang sistem binari. 138 00:08:07,220 --> 00:08:10,110 Ambil liar yang guess-- ini mewakili, dalam dunia komputer 139 00:08:10,110 --> 00:08:12,001 dalam binary-- apa nombor? 140 00:08:12,001 --> 00:08:12,500 Zero. 141 00:08:12,500 --> 00:08:13,580 >> Tetapi mengapa itu? 142 00:08:13,580 --> 00:08:17,460 Nah, ternyata bahawa lajur atau tempat-tempat sini-- mereka tidak kuasa 10. 143 00:08:17,460 --> 00:08:19,670 1, 10, 100, 1000, dan sebagainya. 144 00:08:19,670 --> 00:08:21,890 Mereka sebaliknya, agak semata-mata, kuasa 2. 145 00:08:21,890 --> 00:08:25,400 Jadi, 1, 2, 4, 8, 16, 32, dan sebagainya. 146 00:08:25,400 --> 00:08:29,630 Dan sekarang kami sudah tentu dapat 0 di sini semata-mata kerana kita mempunyai 4 kali 147 00:08:29,630 --> 00:08:34,510 0 tambah 2 kali 0 tambah 1 kali 0, yang sudah tentu memberikan kita 0. 148 00:08:34,510 --> 00:08:37,399 >> Tetapi bagaimana saya boleh pergi tentang mewakili nombor 1? 149 00:08:37,399 --> 00:08:39,440 Apakah corak sifar dan orang-orang yang mewakili 150 00:08:39,440 --> 00:08:42,720 bilangan kita manusia dikenali sebagai 1? 151 00:08:42,720 --> 00:08:44,280 001. 152 00:08:44,280 --> 00:08:46,370 Dan 2? 153 00:08:46,370 --> 00:08:47,480 010. 154 00:08:47,480 --> 00:08:49,760 >> Dan kini corak mula ulangan. 155 00:08:49,760 --> 00:08:50,890 Kini sudah tiba 011. 156 00:08:50,890 --> 00:08:54,310 Dan sekali lagi, 0 merangkak, satu 2, salah 1. 157 00:08:54,310 --> 00:08:55,180 Jadi 2 plus 1. 158 00:08:55,180 --> 00:08:56,140 Itulah 3. 159 00:08:56,140 --> 00:08:59,069 >> Dan sekarang untuk mewakili 4, kita tidak hanya mengubahnya 0 kepada 1. 160 00:08:59,069 --> 00:09:01,360 Anda jenis mempunyai untuk menjalankan, jadi untuk bercakap, dan nombor-nombor 161 00:09:01,360 --> 00:09:03,700 mula Melibas sekitar hanya seperti di dunia perpuluhan. 162 00:09:03,700 --> 00:09:04,670 >> Jadi ini adalah 4. 163 00:09:04,670 --> 00:09:05,410 Ini adalah 5. 164 00:09:05,410 --> 00:09:06,330 Ini adalah 6. 165 00:09:06,330 --> 00:09:07,580 Ini adalah 7. 166 00:09:07,580 --> 00:09:09,720 Dan jadi kami telah dikira setinggi 7. 167 00:09:09,720 --> 00:09:12,400 >> Sekarang kita hanya perlu lebih merupakan bits-- lebih sifar dan seseorang. 168 00:09:12,400 --> 00:09:15,700 Dan sesungguhnya "bit", jika anda telah mendengar digit perduaan term-- ini. 169 00:09:15,700 --> 00:09:17,470 Bit adalah di mana yang datang dari. 170 00:09:17,470 --> 00:09:20,190 Dan jadi jika kita mahu untuk mewakili nombor yang lebih besar, kita memerlukan lebih banyak bit. 171 00:09:20,190 --> 00:09:24,360 Tetapi mari kita beralih daripada slaid sekarang kepada sesuatu yang lebih nyata. 172 00:09:24,360 --> 00:09:27,540 Katakan kita mahu sebenarnya mewakili perkara ini. 173 00:09:27,540 --> 00:09:31,790 >> Nah mari kita lihat sekarang pada demonstrasi kecil. 174 00:09:31,790 --> 00:09:35,270 Jadi ini adalah satu aplikasi berasaskan web bahawa salah satu CS50 sendiri, Michael G, 175 00:09:35,270 --> 00:09:38,160 meletakkan bersama-sama pada musim panas ini untuk membantu kita menjelaskan sebenarnya idea ini. 176 00:09:38,160 --> 00:09:40,420 Dan akan seseorang seperti meneroka ke pentas 177 00:09:40,420 --> 00:09:42,915 di hadapan semua rakan-rakan beliau? 178 00:09:42,915 --> 00:09:43,790 Di sana di depan. 179 00:09:43,790 --> 00:09:45,660 Naiklah. 180 00:09:45,660 --> 00:09:48,350 >> Anda perlu selesa pada kamera dan internet. 181 00:09:48,350 --> 00:09:50,930 182 00:09:50,930 --> 00:09:52,450 Oh, di sini. 183 00:09:52,450 --> 00:09:52,950 OKEY. 184 00:09:52,950 --> 00:09:53,740 Kami OK. 185 00:09:53,740 --> 00:09:54,240 Baiklah. 186 00:09:54,240 --> 00:09:54,740 Naiklah. 187 00:09:54,740 --> 00:09:56,150 Apa nama anda? 188 00:09:56,150 --> 00:09:58,550 Emily datang ke atas. 189 00:09:58,550 --> 00:09:59,410 Jadi ini adalah Emily. 190 00:09:59,410 --> 00:10:00,840 Apa tahun anda? 191 00:10:00,840 --> 00:10:01,660 >> Bayat. 192 00:10:01,660 --> 00:10:02,810 >> Emily, baik untuk bertemu dengan kamu. 193 00:10:02,810 --> 00:10:03,310 David. 194 00:10:03,310 --> 00:10:03,810 >> Baiklah. 195 00:10:03,810 --> 00:10:06,120 Jadi pada skrin di sini, kita mempunyai skrin sentuh ini 196 00:10:06,120 --> 00:10:08,425 yang akan membolehkan kita untuk sebenarnya berinteraksi dengan program ini, 197 00:10:08,425 --> 00:10:09,265 dan ia hanya pelayar. 198 00:10:09,265 --> 00:10:11,390 Ia Chrome penuh ditayangkan pada masa ini, tetapi ia 199 00:10:11,390 --> 00:10:14,030 telah diprogramkan oleh Michael ke bertindak balas dalam cara yang membolehkan 200 00:10:14,030 --> 00:10:15,970 kita bermain-main dengan angka binari. 201 00:10:15,970 --> 00:10:20,220 >> Jadi untuk contoh, di sini kita tidak mempunyai tiga tetapi lapan sifar bits-- dan satu. 202 00:10:20,220 --> 00:10:22,000 Buat masa ini, kami melihat bilangan 0. 203 00:10:22,000 --> 00:10:25,150 Dan sesungguhnya, semua lapan sifar dalam perpuluhan bermakna sifar. 204 00:10:25,150 --> 00:10:26,900 Jadi itu sahaja itulah sedang membayangkan di sini. 205 00:10:26,900 --> 00:10:29,395 >> Jadi, jika anda mahu mewakili bilangan 8, 206 00:10:29,395 --> 00:10:31,520 apa yang corak sifar dan orang-orang yang anda mahu? 207 00:10:31,520 --> 00:10:35,160 Anda hanya boleh mengetik atas atau ke bawah atau nombor yang diri mereka sendiri. 208 00:10:35,160 --> 00:10:35,660 Baiklah. 209 00:10:35,660 --> 00:10:37,659 Supaya sudah tentu adalah 8, seperti yang anda lihat di sana. 210 00:10:37,659 --> 00:10:41,260 Dan jika kita mahu yang 16, apa yang kita lakukan? 211 00:10:41,260 --> 00:10:42,701 >> Ya, hanya menyentuh sekali lagi. 212 00:10:42,701 --> 00:10:43,200 16. 213 00:10:43,200 --> 00:10:43,870 Baiklah. 214 00:10:43,870 --> 00:10:46,522 Jadi ini adalah semua baik dan baik, ia masih tahap yang sangat rendah. 215 00:10:46,522 --> 00:10:48,230 Kita memerlukan cara dalam dunia sebenar untuk Emily 216 00:10:48,230 --> 00:10:50,550 sebenarnya mewakili perkara-perkara ini. 217 00:10:50,550 --> 00:10:54,230 Dan supaya menganggap bahawa kita beralih ini sifar dan satu, yang sangat 218 00:10:54,230 --> 00:10:55,980 konsep, ke dalam mentol lampu yang sebenar. 219 00:10:55,980 --> 00:10:56,480 Betul? 220 00:10:56,480 --> 00:10:59,540 >> Komputer merupakan fizikal, mekanikal, peranti elektrik. 221 00:10:59,540 --> 00:11:02,220 Dan input-- sekurang-kurangnya jika anda palam dalam atau caj it-- 222 00:11:02,220 --> 00:11:05,090 adalah untuk mempunyai kuasa bateri dan elektron yang mengalir di dalam dan keluar. 223 00:11:05,090 --> 00:11:08,150 >> Maka sekarang, mengapa tidak kita berhenti berfikir mengenai bit sebagai sifar dan satu, 224 00:11:08,150 --> 00:11:10,470 tetapi sesuatu yang lebih fizikal seperti mentol lampu di sini. 225 00:11:10,470 --> 00:11:13,815 Dan jika Dan Armendariz boleh menyertai saya hanya untuk moment-- datang pada up-- 226 00:11:13,815 --> 00:11:15,440 kita akan beratur permohonan. 227 00:11:15,440 --> 00:11:15,940 >> Datang pada lebih, Emily. 228 00:11:15,940 --> 00:11:18,270 Maaf ini adalah yang paling demo janggal untuk anda selama-lamanya. 229 00:11:18,270 --> 00:11:20,330 Mari sini. 230 00:11:20,330 --> 00:11:22,080 Kami akan beratur dengan berkat Dan 231 00:11:22,080 --> 00:11:25,300 Armendariz, seorang lagi ahli kakitangan kami, permohonan dikenali sebagai mentol binari. 232 00:11:25,300 --> 00:11:28,070 >> Jadi apa yang kita ada di sini adalah sebuah aplikasi iPad 233 00:11:28,070 --> 00:11:31,970 yang mempunyai pengguna berikut antara muka pada skrin untuk Emily. 234 00:11:31,970 --> 00:11:35,400 Ia hanya mendapat UI yang tepat yang sama pada dasarnya itulah di sana. 235 00:11:35,400 --> 00:11:39,220 Dan jika anda kini mahu mewakili nombor, katakan 8, 236 00:11:39,220 --> 00:11:42,094 bagaimana anda akan pergi tentang melakukan perasan ini di sebelah kanan, 237 00:11:42,094 --> 00:11:43,510 mentol lampu yang kita ada di sini? 238 00:11:43,510 --> 00:11:46,576 239 00:11:46,576 --> 00:11:47,620 Ah-ha. 240 00:11:47,620 --> 00:11:48,290 Ajaib. 241 00:11:48,290 --> 00:11:51,830 Jadi, jika kita mahu sekarang menjadikan ini ke sesuatu yang lebih mencabar, 242 00:11:51,830 --> 00:11:58,100 dan mari kita pergi ke hadapan dan memilih secara rawak nombor seperti nombor 50 di sini. 243 00:11:58,100 --> 00:11:59,015 Input ini. 244 00:11:59,015 --> 00:12:01,640 Dan jika anda kini boleh dicabar untuk datang dengan nombor 50, 245 00:12:01,640 --> 00:12:04,268 kita akan mempunyai hadiah yang hebat untuk anda. 246 00:12:04,268 --> 00:12:06,144 >> EMILY: OK. 247 00:12:06,144 --> 00:12:08,692 Oh Tuhanku. 248 00:12:08,692 --> 00:12:10,650 DAVID MALAN: Aritmetik memang keras di hadapan 249 00:12:10,650 --> 00:12:12,860 ratusan rakan sekelas anda. 250 00:12:12,860 --> 00:12:16,260 Tetapi 50 telah jawapan di sini. 251 00:12:16,260 --> 00:12:18,132 >> [Tepuk tangan] 252 00:12:18,132 --> 00:12:21,875 >> Dan sehingga kini, ini bertujuan untuk menjadi demonstrative untuk Emily. 253 00:12:21,875 --> 00:12:24,315 Jadi, di sini, beberapa cahaya mentol yang seperti ini, 254 00:12:24,315 --> 00:12:26,190 tetapi ia sebenarnya jalur magnet sedikit. 255 00:12:26,190 --> 00:12:28,570 Dan apa yang sejuk kira-kira ini dan sebab kita menggunakannya dalam CS50 256 00:12:28,570 --> 00:12:31,640 adalah bahawa mereka menyokong sesuatu yang dinamakan yang API-- yang pengaturcaraan penggunaan 257 00:12:31,640 --> 00:12:34,681 antara muka, yang hanya cara yang mewah untuk mengatakan bahawa apa yang salah seorang daripada kakitangan kami 258 00:12:34,681 --> 00:12:37,284 adakah sepanjang musim panas telah mewujudkan permohonan iPad sini 259 00:12:37,284 --> 00:12:39,700 yang bercakap melalui internet kepada mentol lampu di sini, 260 00:12:39,700 --> 00:12:41,810 yang secara wayarles disambungkan ke peranti lain. 261 00:12:41,810 --> 00:12:43,912 Tetapi ini sekarang adalah satu pilihan untuk projek-projek akhir. 262 00:12:43,912 --> 00:12:46,370 Dan sebagainya Emily, jika anda pasti jadi seperti, pada akhir tempoh itu, 263 00:12:46,370 --> 00:12:48,703 anda boleh menghiasi bilik asrama anda dalam masa yang sama dengan orang-orang. 264 00:12:48,703 --> 00:12:50,376 Terima kasih kepada Emily juga. 265 00:12:50,376 --> 00:12:53,244 >> [Tepuk tangan] 266 00:12:53,244 --> 00:12:56,590 267 00:12:56,590 --> 00:13:00,055 >> Tetapi sekarang, mari kita mengubah perhatian kita kepada apa yang 268 00:13:00,055 --> 00:13:03,180 mesej yang mungkin kelihatan seperti, dan ia adalah sesuatu yang kecil seperti ini. 269 00:13:03,180 --> 00:13:05,320 Malah, ini adalah satu contoh seperti teaser 270 00:13:05,320 --> 00:13:08,400 daripada apa yang akan datang daripada apa yang dipanggil permintaan API. 271 00:13:08,400 --> 00:13:11,409 Dan supaya apa yang kami ada di sini adalah semata-mata betul-betul jenis mesej 272 00:13:11,409 --> 00:13:13,200 bahawa selepas beberapa minggu masa dalam CS50, anda akan 273 00:13:13,200 --> 00:13:16,590 dapat menghantar kepada sesuatu yang agak biasa seperti yang untuk benar-benar 274 00:13:16,590 --> 00:13:18,100 menghidupkan dan mematikan. 275 00:13:18,100 --> 00:13:19,350 Tetapi ini adalah semua baik dan baik. 276 00:13:19,350 --> 00:13:19,850 Betul? 277 00:13:19,850 --> 00:13:22,710 Kami mempunyai model mental diharapkan untuk mewakili nombor dengan 278 00:13:22,710 --> 00:13:23,660 sifar dan seseorang. 279 00:13:23,660 --> 00:13:26,290 Dan dari sifar dan satu, kita boleh mendapatkan nombor yang lebih tinggi seperti 50, 280 00:13:26,290 --> 00:13:29,460 sebagai Emily hanya melakukan, atau kita boleh bergerak ke atas itu. 281 00:13:29,460 --> 00:13:32,160 Dan saya mendakwa bahawa kita boleh mewakili perkara seperti surat juga. 282 00:13:32,160 --> 00:13:32,660 Betul? 283 00:13:32,660 --> 00:13:35,360 >> Komputer adalah jauh lebih menarik daripada hanya nombor. 284 00:13:35,360 --> 00:13:37,340 Dan jadi bagaimana anda pergi tentang perkataan yang mewakili 285 00:13:37,340 --> 00:13:39,420 pada skrin atau e-mel atau esei atau sebagainya? 286 00:13:39,420 --> 00:13:43,170 Nah, ternyata bahawa komputer hanya abstrak di atas tahap ini rendah 287 00:13:43,170 --> 00:13:47,380 butiran, dan manusia sedikit masa lalu, datang sehingga dengan sewenang-wenangnya, tetapi yang konsisten, 288 00:13:47,380 --> 00:13:51,710 pemetaan nombor untuk letters-- supaya yang bila-bila masa yang anda lihat huruf besar 289 00:13:51,710 --> 00:13:54,170 A pada komputer anda skrin, kemungkinan apa yang 290 00:13:54,170 --> 00:13:57,370 di bawah hood adalah corak sifar dan satu 291 00:13:57,370 --> 00:14:00,650 yang mewakili nombor, setiap carta ini, 65. 292 00:14:00,650 --> 00:14:02,830 >> Dan banyak lagi secara fizikal dalam komputer anda, 293 00:14:02,830 --> 00:14:06,450 berjuta-juta perkara yang dipanggil transistors-- days-- ini yang 294 00:14:06,450 --> 00:14:10,190 hanya beralih jika anda akan, perkara yang boleh pergi dalam dan di luar dan sebagainya bayangkan. 295 00:14:10,190 --> 00:14:14,130 Bukan lapan ini mentol lampu besar tetapi berjuta-juta ini cahaya sedikit kecil 296 00:14:14,130 --> 00:14:17,490 mentol, atau suis atau transistor, yang boleh menghidupkan dan mematikan 297 00:14:17,490 --> 00:14:19,170 berdasarkan bagaimana anda program mereka. 298 00:14:19,170 --> 00:14:22,120 Dan sekarang kita mempunyai cara mewakili huruf juga. 299 00:14:22,120 --> 00:14:25,300 >> Malah, jika saya menggunakan ini pemetaan sini dan cuba untuk benar-benar 300 00:14:25,300 --> 00:14:28,731 mengeja sesuatu, kita mungkin kelihatan pada corak ini digit perpuluhan 301 00:14:28,731 --> 00:14:29,230 sekarang. 302 00:14:29,230 --> 00:14:31,354 Oleh itu, kita tidak akan walaupun memberi tumpuan kepada binari lagi. 303 00:14:31,354 --> 00:14:35,910 Mari kita hanya mempertimbangkan ini sebagai nombor perpuluhan 72, 73, 33. 304 00:14:35,910 --> 00:14:38,044 Tetapi apa yang ini wakili? 305 00:14:38,044 --> 00:14:39,960 Sesiapa yang mempunyai cukup memori fotografi 306 00:14:39,960 --> 00:14:43,060 untuk mengetahui apa yang dieja pada skrin di sini? 307 00:14:43,060 --> 00:14:43,560 Yeah beberapa. 308 00:14:43,560 --> 00:14:44,190 Jadi hi. 309 00:14:44,190 --> 00:14:48,330 H-I dan kemudian tanda seru, yang tidak sebenarnya pada skrin. 310 00:14:48,330 --> 00:14:51,060 Tetapi memang ada pemetaan yang untuk setiap surat kepada setiap nombor 311 00:14:51,060 --> 00:14:53,340 yang anda mungkin mahu menaip pada papan kekunci anda. 312 00:14:53,340 --> 00:14:55,430 >> Tetapi nombor tidak perlu mewakili hanya huruf. 313 00:14:55,430 --> 00:14:55,930 Betul? 314 00:14:55,930 --> 00:14:59,570 Semua kita tahu tentang imej dan gambar-gambar dan fail audio 315 00:14:59,570 --> 00:15:00,870 dan fail video dan sebagainya. 316 00:15:00,870 --> 00:15:03,580 Jadi jelas kita boleh mewakili perkara tahap lebih tinggi masih. 317 00:15:03,580 --> 00:15:06,920 Dan supaya apa yang komputer tidak adalah hanya memilih 318 00:15:06,920 --> 00:15:11,240 untuk mentafsir corak yang sifar berbeza berdasarkan konteks. 319 00:15:11,240 --> 00:15:13,130 >> Jika anda klik dua kali yang ikon Microsoft Word, 320 00:15:13,130 --> 00:15:15,900 anda melihat perkataan pada skrin bukannya warna dan gambar 321 00:15:15,900 --> 00:15:18,850 kerana perkataan tahu bahawa ini adalah satu esei yang anda telah sebenarnya ditaip. 322 00:15:18,850 --> 00:15:21,510 Sebaliknya, jika anda klik dua kali pada JPEG atau GIF atau PNG, 323 00:15:21,510 --> 00:15:27,070 ia membuka dan imej kerana PNG atau .docx atau apa sahaja fail 324 00:15:27,070 --> 00:15:30,450 lanjutan dan walau apa jua perisian anda menggunakan tahu untuk mentafsir 325 00:15:30,450 --> 00:15:34,420 corak sifar dan orang-orang yang berbeza berdasarkan apa tujuan dalam hidup ini. 326 00:15:34,420 --> 00:15:37,330 >> Jadi misalnya, ini urutan sama nombor 327 00:15:37,330 --> 00:15:41,250 mungkin mewakili berapa banyak merah adakah anda mahu, berapa banyak hijau yang anda mahu, 328 00:15:41,250 --> 00:15:42,810 dan berapa banyak yang biru yang anda mahu. 329 00:15:42,810 --> 00:15:47,490 Dan sesungguhnya, jika anda pernah mendengar RGB-- biru hijau jadi hanya merah. 330 00:15:47,490 --> 00:15:51,380 Dan jadi jika saya melihat nombor seperti, ini memberi saya 72 merah, memberi saya 73 hijau, 331 00:15:51,380 --> 00:15:56,910 dan 33 biru, ini adalah bagaimana komputer menggunakan tiga bytes-- mana 332 00:15:56,910 --> 00:16:01,470 bait adalah lapan bit atau 24 bits-- akan mewakili bayangan cukup jahat 333 00:16:01,470 --> 00:16:03,660 coklat atau kuning di sini. 334 00:16:03,660 --> 00:16:07,500 Dan dalam konteks yang berbeza, boleh mereka corak tepat sama pada sifar dan satu 335 00:16:07,500 --> 00:16:10,780 bermaksud sesuatu yang sama sekali yang berbeza juga. 336 00:16:10,780 --> 00:16:13,899 >> Oleh itu, kita kini mempunyai satu cara untuk mewakili sifar information-- dan satu. 337 00:16:13,899 --> 00:16:15,190 Selain itu, kita akan mendapat surat. 338 00:16:15,190 --> 00:16:16,860 Selain itu, kita boleh mendapatkan warna. 339 00:16:16,860 --> 00:16:19,730 Dan mari kita andaikan untuk hari ini bahawa kita boleh mendapatkan audio dan video 340 00:16:19,730 --> 00:16:22,590 dan perkara-perkara banyak lagi canggih daripada itu. 341 00:16:22,590 --> 00:16:25,370 >> Tetapi sekarang mari kita mempertimbangkan bagaimana kita menggunakan orang-orang input 342 00:16:25,370 --> 00:16:27,390 dan menghasilkan orang-orang output sekarang bahawa kita mempunyai 343 00:16:27,390 --> 00:16:29,830 satu cara untuk mewakili maklumat tersebut. 344 00:16:29,830 --> 00:16:31,820 Well, kita memerlukan sesuatu dipanggil algoritma. 345 00:16:31,820 --> 00:16:34,320 Sekali lagi, satu set arahan untuk menyelesaikan beberapa masalah 346 00:16:34,320 --> 00:16:37,580 langkah demi step-- dan lebih tepat, lebih baik. 347 00:16:37,580 --> 00:16:42,090 >> Dan sebagainya contoh yang mana manusia adalah hari diakui kurang biasa ini, 348 00:16:42,090 --> 00:16:44,300 tetapi tetap masih dengan kami dalam perisian, 349 00:16:44,300 --> 00:16:47,490 adalah proses mencari sehingga seseorang dalam buku telefon. 350 00:16:47,490 --> 00:16:51,690 >> Sekarang, orang yang lebih sedikit dan lebih sedikit mengenali antara satu sama tahun apa relik ini sebenarnya ada di sini. 351 00:16:51,690 --> 00:16:53,470 Tetapi kembali pada hari saya, ini adalah sebuah buku telefon 352 00:16:53,470 --> 00:16:57,266 dengan beribu-ribu muka surat dan nombor dan nama-nama rakyat dari A hingga Z. 353 00:16:57,266 --> 00:17:00,390 Dan walaupun kita jenis menipu yang bit-- ini adalah kebanyakannya halaman kuning. 354 00:17:00,390 --> 00:17:01,920 Terdapat juga putih halaman pada satu masa, yang 355 00:17:01,920 --> 00:17:04,720 mempunyai semua nama-nama dan bilangan manusia yang sebenar. 356 00:17:04,720 --> 00:17:07,970 >> Dan jika saya mahu melihat seseorang di sebuah buku telefon seperti hari ini, sudah tentu, 357 00:17:07,970 --> 00:17:11,010 Saya hanya menaip pertama beberapa Watak-watak dalam namanya, 358 00:17:11,010 --> 00:17:13,480 dan telefon bimbit saya mendapati maklumat tersebut. 359 00:17:13,480 --> 00:17:15,970 Tetapi proses di mana telefon iPhone atau Android anda 360 00:17:15,970 --> 00:17:18,730 atau apa sahaja yang benar-benar mencari tempat seseorang dalam senarai kenalan anda 361 00:17:18,730 --> 00:17:22,099 adalah sama dengan apa yang kita manusia mungkin telah dilakukan untuk beberapa ketika. 362 00:17:22,099 --> 00:17:24,260 >> Sekarang saya boleh mengambil ini masalah, jika anda akan, 363 00:17:24,260 --> 00:17:26,220 dan input di sini tidak sifar dan satu. 364 00:17:26,220 --> 00:17:28,730 Mereka pages-- seperti, katakan 1000 muka surat. 365 00:17:28,730 --> 00:17:32,650 Dan jika saya mahu melihat ke atas seseorang suka Mike Smith dalam buku telefon ini, 366 00:17:32,650 --> 00:17:35,570 Saya boleh bermula pada awal dan melihat bahawa saya dalam seksyen A 367 00:17:35,570 --> 00:17:38,300 dan kemudian menghidupkan satu halaman pada satu masa, mencari dan mencari 368 00:17:38,300 --> 00:17:42,820 seperti yang saya buat kepada B dan C dan D's dan sebagainya untuk Mike Smith. 369 00:17:42,820 --> 00:17:46,000 Smith bermula dengan S yang, saya akan mudah-mudahan akhirnya mencari beliau. 370 00:17:46,000 --> 00:17:50,090 >> Adakah algorithm-- ini yang process-- betul? 371 00:17:50,090 --> 00:17:50,590 Yeah. 372 00:17:50,590 --> 00:17:51,610 Itu betul. 373 00:17:51,610 --> 00:17:57,040 Saya akan mencari Mike jika dia di sini, tetapi apa yang kaveat yang mungkin anda tawarkan. 374 00:17:57,040 --> 00:17:57,541 Ia perlahan. 375 00:17:57,541 --> 00:17:58,040 Betul? 376 00:17:58,040 --> 00:18:00,975 Saya tahu Mike S adalah jenis arah separuh kedua buku telefon. 377 00:18:00,975 --> 00:18:02,766 Kenapa sih aku bermula pada awal 378 00:18:02,766 --> 00:18:04,349 dan halaman akan oleh halaman demi halaman. 379 00:18:04,349 --> 00:18:06,890 Jadi, sudah tentu, saya boleh flip sekeliling dan mula dari belakang, 380 00:18:06,890 --> 00:18:08,973 tetapi yang akan mendapatkan saya ada pada kadar yang sama, 381 00:18:08,973 --> 00:18:10,930 jika anda willl-- halaman selepas halaman selepas halaman. 382 00:18:10,930 --> 00:18:14,190 Dan ia tidak akan berjaya jika saya mahu untuk mencari orang lain yang 383 00:18:14,190 --> 00:18:15,880 nama datang awal abjad. 384 00:18:15,880 --> 00:18:17,240 >> Jadi apa jika saya melakukan apa yang saya belajar di sekolah rendah, 385 00:18:17,240 --> 00:18:19,205 sekali lagi, melakukan perkara yang tidak oleh orang-orang tetapi dengan berdua-dua. 386 00:18:19,205 --> 00:18:23,060 Jadi 2, 4, 6, 8, 10, 12, dan sebagainya. 387 00:18:23,060 --> 00:18:23,740 Adakah itu betul? 388 00:18:23,740 --> 00:18:27,030 389 00:18:27,030 --> 00:18:27,560 No. 390 00:18:27,560 --> 00:18:28,830 Ia adalah jenis yang betul. 391 00:18:28,830 --> 00:18:33,210 Tetapi sebahagian dari kamu yang merungut tidak, mana adalah masalah, atau pepijat, 392 00:18:33,210 --> 00:18:34,240 kesilapan yang boleh dikatakan. 393 00:18:34,240 --> 00:18:34,580 Yeah. 394 00:18:34,580 --> 00:18:36,570 >> PELAJAR: Anda mungkin skip lebih masuk yang tepat. 395 00:18:36,570 --> 00:18:37,320 >> DAVID MALAN: Ya. 396 00:18:37,320 --> 00:18:40,340 Saya mungkin melangkau lebih Mike Smith ialah kerana saya telah mengambil dua halaman pada satu masa 397 00:18:40,340 --> 00:18:43,190 dan dia hanya berlaku untuk menjadi diapit di antara kedua-dua muka surat. 398 00:18:43,190 --> 00:18:46,500 Saya mungkin menyedari bahawa Saya ke bahagian T 399 00:18:46,500 --> 00:18:48,690 tidak mempunyai mendapati Mike Smith lagi. 400 00:18:48,690 --> 00:18:50,820 >> Dan supaya apa yang mungkin tetap ada? 401 00:18:50,820 --> 00:18:52,709 Nah, jika saya lakukan melanda Ts di dalam buku telefon, 402 00:18:52,709 --> 00:18:54,500 Saya mungkin perlu menggandakan menyokong satu atau lebih halaman. 403 00:18:54,500 --> 00:18:56,830 Jadi ia dipecahkan, tetapi ia tidak cukup semudah 404 00:18:56,830 --> 00:18:59,170 kerana hanya akan sebanyak dua hingga mempercepatkan prestasi saya. 405 00:18:59,170 --> 00:18:59,680 Tapi apa? 406 00:18:59,680 --> 00:19:00,180 Datang pada. 407 00:19:00,180 --> 00:19:03,530 Apa yang adalah apa yang kebanyakan manusia akan kaitan dengan jenis ini buku telefon? 408 00:19:03,530 --> 00:19:04,696 Anda diberi buku telefon. 409 00:19:04,696 --> 00:19:06,280 Apa yang kamu buat? 410 00:19:06,280 --> 00:19:06,922 >> Apa itu? 411 00:19:06,922 --> 00:19:07,630 Pergi ke tengah-tengah. 412 00:19:07,630 --> 00:19:10,620 Jadi saya mendengar pergi ke tengah-tengah, dan saya mendapati diri saya secara kasar dalam seksyen M, 413 00:19:10,620 --> 00:19:11,120 boleh dikatakan. 414 00:19:11,120 --> 00:19:12,670 Dan sekarang apa yang saya mahu lakukan? 415 00:19:12,670 --> 00:19:14,077 Syabas. 416 00:19:14,077 --> 00:19:14,785 Apa nama anda? 417 00:19:14,785 --> 00:19:15,350 >> JAMES: James. 418 00:19:15,350 --> 00:19:15,890 >> DAVID MALAN: James, baiklah. 419 00:19:15,890 --> 00:19:16,829 Apa yang saya lakukan seterusnya? 420 00:19:16,829 --> 00:19:18,620 JAMES: Anda pergi dalam separuh yang mempunyai S. 421 00:19:18,620 --> 00:19:18,740 DAVID MALAN: Baiklah. 422 00:19:18,740 --> 00:19:20,910 Saya akan pergi ke babak yang mempunyai S di dalamnya kerana, sekali lagi, 423 00:19:20,910 --> 00:19:22,920 penetapan di sini adalah bahawa perkara ini disusun. 424 00:19:22,920 --> 00:19:25,461 Ia adalah agak tidak berguna 1000 muka surat jika Verizon tidak sebenarnya 425 00:19:25,461 --> 00:19:27,339 menyusun perkara-perkara ini untuk kita A hingga Z. 426 00:19:27,339 --> 00:19:30,130 Jadi, jika saya tahu Mike mungkin dalam separuh kedua buku telefon, 427 00:19:30,130 --> 00:19:31,536 Saya boleh sekarang. 428 00:19:31,536 --> 00:19:33,388 >> [Ketawa] 429 00:19:33,388 --> 00:19:35,240 430 00:19:35,240 --> 00:19:37,391 >> Lusuh masalah ini pada separuh. 431 00:19:37,391 --> 00:19:38,615 >> [Tepuk tangan] 432 00:19:38,615 --> 00:19:39,115 433 00:19:39,115 --> 00:19:40,300 Terima kasih. 434 00:19:40,300 --> 00:19:42,510 Lusuh masalah ini pada separuh. 435 00:19:42,510 --> 00:19:44,440 Yang sebenarnya real-- perjuangan itu. 436 00:19:44,440 --> 00:19:47,050 Jadi lusuh buku telefon pada separuh, meninggalkan diri saya 437 00:19:47,050 --> 00:19:48,580 dengan asasnya masalah yang sama. 438 00:19:48,580 --> 00:19:50,060 Tetapi sudah tentu, separuh saiz. 439 00:19:50,060 --> 00:19:52,550 Dan jika saya mengikuti James nasihat lagi, dan saya pergi di sini. 440 00:19:52,550 --> 00:19:54,400 Saya katakan, oh sekarang saya dalam seksyen T. 441 00:19:54,400 --> 00:19:56,460 >> Dan sebagainya sudah tentu, saya boleh lusuh buku telefon 442 00:19:56,460 --> 00:19:59,660 pada separuh masa lebih, meninggalkan saya dengan masalah itu 443 00:19:59,660 --> 00:20:00,810 kini satu perempat daripada saiz. 444 00:20:00,810 --> 00:20:05,335 Jadi saya telah pergi dari 1000 kepada 500 250 ke 125 dan sebagainya. 445 00:20:05,335 --> 00:20:07,350 Rasanya seperti saya mengambil gigitan yang lebih besar daripada 446 00:20:07,350 --> 00:20:10,615 masalah ini dengan setiap lelaran, atau setiap langkah di dalamnya. 447 00:20:10,615 --> 00:20:15,580 >> Dan sesungguhnya, masa yang saya akan menghabiskan mencari Mike Smith dalam contoh ini 448 00:20:15,580 --> 00:20:18,970 begitu banyak kurang kerana akhirnya saya akan meraut buku roti manis ini turun 449 00:20:18,970 --> 00:20:20,192 kepada hanya satu halaman tunggal. 450 00:20:20,192 --> 00:20:23,010 Dan jika Mike adalah pada halaman itu, saya akan pergi ke hadapan dan memberikan kepadanya 451 00:20:23,010 --> 00:20:24,670 panggilan mempunyai mendapati beliau. 452 00:20:24,670 --> 00:20:27,030 >> Tetapi berapa banyak lebih baik adalah bahawa algorithm-- 453 00:20:27,030 --> 00:20:29,690 yang berani mengatakan intuitif algorithm-- daripada yang kita 454 00:20:29,690 --> 00:20:34,920 bermula dengan yang kami sangat linear-- kiri ke right-- pada kadar 1 atau 2x? 455 00:20:34,920 --> 00:20:36,100 >> Nah, mari kita merancang ini. 456 00:20:36,100 --> 00:20:39,380 Kami tidak perlu bimbang terlalu banyak tentang matematik atau nombor dalam kes ini di sini. 457 00:20:39,380 --> 00:20:40,550 Kami hanya melihat plot. 458 00:20:40,550 --> 00:20:43,600 Sehingga pada x, atau paksi mendatar, adalah saiz problem-- yang 459 00:20:43,600 --> 00:20:44,700 berapa banyak halaman yang berada di sana. 460 00:20:44,700 --> 00:20:46,760 On y, atau menegak paksi, adalah berapa banyak masa 461 00:20:46,760 --> 00:20:48,218 adakah ia akan membawa saya untuk menyelesaikannya. 462 00:20:48,218 --> 00:20:50,760 Dan mungkin itulah bagaimana banyak giliran halaman, berapa saat, 463 00:20:50,760 --> 00:20:52,370 bagaimana many-- beberapa unit langkah-langkah. 464 00:20:52,370 --> 00:20:57,810 >> Dan saya telah disediakan satu garis lurus merah di sini kerana jika setiap muka surat tambahan 465 00:20:57,810 --> 00:21:01,740 buku telefon, saya memerlukan untuk membuat satu langkah tambahan. 466 00:21:01,740 --> 00:21:03,680 Jadi, jika Verizon menambah satu lebih halaman tahun depan, 467 00:21:03,680 --> 00:21:06,970 Saya mungkin perlu flip satu halaman lebih untuk mencari seseorang seperti Mike Smith. 468 00:21:06,970 --> 00:21:11,340 >> Sementara itu, algoritma kedua, yang Saya pergi dengan berdua-dua, adalah bentuk yang sama. 469 00:21:11,340 --> 00:21:15,220 Ia masih sangat linear, sangat kiri ke betul, mengambil bytes sama setiap kali, 470 00:21:15,220 --> 00:21:16,900 tetapi kecerunan adalah sedikit lebih rendah. 471 00:21:16,900 --> 00:21:23,590 >> Sebagai contoh, jika saiz masalah ini adalah kira-kira di sini 472 00:21:23,590 --> 00:21:25,990 dan saya menggunakan algoritma pertama saya, Saya mungkin berakhir sepanjang jalan 473 00:21:25,990 --> 00:21:27,480 di bahagian atas garis merah. 474 00:21:27,480 --> 00:21:29,390 Tetapi jika saya sebaliknya menggunakan untuk twosies mendekati, 475 00:21:29,390 --> 00:21:31,480 garis kuning mencadangkan kerana ia adalah lebih rendah, 476 00:21:31,480 --> 00:21:33,790 bahawa ia akan mengambil saya kurang masa yang menyelesaikan. 477 00:21:33,790 --> 00:21:37,400 >> Tetapi apa yang bentuk yang algorithm-- ketiga sekali lagi, boleh dikatakan 478 00:21:37,400 --> 00:21:38,707 algoritma yang paling intuitif? 479 00:21:38,707 --> 00:21:40,540 Nah, ia kelihatan sedikit sesuatu seperti ini. 480 00:21:40,540 --> 00:21:43,480 Ia melengkung, atau logaritma, dalam bentuk. 481 00:21:43,480 --> 00:21:46,510 Dan walaupun ia tidak pernah jenis mendatar keluar, 482 00:21:46,510 --> 00:21:50,770 ia berasimptot inci dan naik dan naik tetapi sangat perlahan-lahan 483 00:21:50,770 --> 00:21:52,129 berbanding segala-galanya. 484 00:21:52,129 --> 00:21:53,170 Dan apa yang yang mengambil? 485 00:21:53,170 --> 00:21:54,215 Well, kita panggil ia log n. 486 00:21:54,215 --> 00:21:55,820 Tetapi apakah yang sebenarnya bermakna? 487 00:21:55,820 --> 00:21:58,580 Baik jika Verizon dua kali ganda bilangan muka surat di dalam buku telefon 488 00:21:58,580 --> 00:22:00,810 tahun depan daripada 1,000 kepada 2,000. 489 00:22:00,810 --> 00:22:04,600 Berapa banyak lagi langkah-langkah adalah saya algoritma pertama akan mengambil? 490 00:22:04,600 --> 00:22:05,440 >> algoritma pertama saya. 491 00:22:05,440 --> 00:22:06,399 Mungkin 1000 langkah lagi. 492 00:22:06,399 --> 00:22:08,106 Jika mereka dua kali ganda buku telefon, saya akan 493 00:22:08,106 --> 00:22:10,590 untuk mempunyai untuk flip melalui satu lagi 1000 halaman untuk mencari Mike. 494 00:22:10,590 --> 00:22:13,240 Sudah tentu, jika kedua algoritma, mungkin 500 kerana saya 495 00:22:13,240 --> 00:22:14,610 akan dua kali lebih cepat. 496 00:22:14,610 --> 00:22:18,380 >> Tetapi jika Verizon beregu jumlah halaman antara tahun ini dan seterusnya, 497 00:22:18,380 --> 00:22:21,650 dengan ketiga saya algorithm-- jurang dan menakluk bahawa James dicadangkan, 498 00:22:21,650 --> 00:22:24,450 akan pada separuh dan separuh dan half-- berapa banyak lagi langkah-langkah yang akan 499 00:22:24,450 --> 00:22:29,030 ia membawa saya tahun depan untuk mempunyai buku telefon daripada saiz 2000? 500 00:22:29,030 --> 00:22:29,670 Hanya satu. 501 00:22:29,670 --> 00:22:34,110 Kerana dengan satu gigitan, saya boleh mengambil, daripada masalah itu, separuh daripada muka surat 502 00:22:34,110 --> 00:22:34,694 jauh. 503 00:22:34,694 --> 00:22:37,860 Dan jika anda berfikir tentang ini sedikit crazily sekarang-- jika buku telefon tidak 504 00:22:37,860 --> 00:22:41,810 mempunyai 1000 atau 2000 halaman, tetapi katakan 4 bilion pages-- 505 00:22:41,810 --> 00:22:45,282 ia merupakan telefon besar book-- bagaimana banyak kali atau berapa banyak langkah 506 00:22:45,282 --> 00:22:47,740 adakah ia akan membawa saya untuk mencari Mike Smith di dalam buku telefon 507 00:22:47,740 --> 00:22:50,489 dengan 4 bilion laman. 508 00:22:50,489 --> 00:22:52,030 Anda boleh semacam mula melakukan matematik. 509 00:22:52,030 --> 00:22:52,200 Baiklah. 510 00:22:52,200 --> 00:22:53,175 4 bilion dibahagikan dengan 2. 511 00:22:53,175 --> 00:22:54,550 Jadi itulah 2 bilion dibahagikan dengan 1. 512 00:22:54,550 --> 00:22:55,510 Itulah 1 bilion. 513 00:22:55,510 --> 00:22:56,410 Kemudian setengah bilion. 514 00:22:56,410 --> 00:22:59,940 Kemudian 250-- supaya anda boleh melakukan ini lagi dan lagi tetapi tidak bahawa banyak kali sebelum ini 515 00:22:59,940 --> 00:23:01,020 anda sampai ke satu halaman. 516 00:23:01,020 --> 00:23:04,360 >> Dan sesungguhnya, walaupun telefon buku adalah 4 bilion muka surat yang panjang 517 00:23:04,360 --> 00:23:08,340 atau pangkalan data yang anda sedang mencari adalah 4 bilion rekod lama, 518 00:23:08,340 --> 00:23:12,720 ia akan membawa anda memberikan atau mengambil 32 langkah sahaja untuk mencari Mike Smith. 519 00:23:12,720 --> 00:23:15,990 Dan jika anda menggandakan buku telefon seterusnya tahun dari 4 bilion untuk 8 bilion, 520 00:23:15,990 --> 00:23:19,010 33 langkah-langkah bukan hanya 32. 521 00:23:19,010 --> 00:23:21,100 >> Dan ini adalah bukti kepada salah satu daripada idea-idea 522 00:23:21,100 --> 00:23:24,100 bahawa kita mungkin memeluk dalam komputer sains secara umum, yang 523 00:23:24,100 --> 00:23:26,760 adalah pemikiran pengiraan ini dan menghampiri masalah 524 00:23:26,760 --> 00:23:29,479 terus-terang menggunakan alat-alat dari alat sudah biasa anda 525 00:23:29,479 --> 00:23:31,520 kit-- dunia sebenar anda dengan yang anda biasa, 526 00:23:31,520 --> 00:23:34,730 tetapi memanfaatkan idea-idea untuk benar-benar menyelesaikan masalah. 527 00:23:34,730 --> 00:23:37,200 >> Tetapi kita perlu untuk merasmikan kami penyelesaian kepada masalah-masalah ini. 528 00:23:37,200 --> 00:23:40,200 Dan jadi biarlah saya memperkenalkan seketika sesuatu yang kita mungkin panggilan kod pseudo. 529 00:23:40,200 --> 00:23:44,260 Kebanyakan semester, kami akan dapat berbelanja dengan kod sebenar dalam bahasa-bahasa seperti C dan PHP 530 00:23:44,260 --> 00:23:46,570 dan JavaScript dan SQL dan sebagainya. 531 00:23:46,570 --> 00:23:49,000 >> Tetapi untuk sekarang, mari kita hanya melihat pada sesuatu yang agak intuitif 532 00:23:49,000 --> 00:23:49,930 seperti bahasa Inggeris. 533 00:23:49,930 --> 00:23:52,490 Saya mungkin menyuling yang algoritma dengan yang 534 00:23:52,490 --> 00:23:54,650 Saya mendapati Mike kepada langkah-langkah seperti ini. 535 00:23:54,650 --> 00:23:55,760 >> Mengambil buku telefon 536 00:23:55,760 --> 00:23:57,121 >> Terbuka kepada pertengahan buku telefon 537 00:23:57,121 --> 00:23:57,870 Lihatlah ini nama 538 00:23:57,870 --> 00:23:59,290 Jika Mike adalah antara yang nama 539 00:23:59,290 --> 00:24:00,450 panggil Mike 540 00:24:00,450 --> 00:24:02,290 Lain jika Smith lebih awal dalam buku ini 541 00:24:02,290 --> 00:24:04,540 Terbuka kepada pertengahan separuh kiri buku 542 00:24:04,540 --> 00:24:06,244 Yang lain pergi untuk beratur 3 543 00:24:06,244 --> 00:24:07,660 Lain jika Smith yang kemudian dalam buku ini 544 00:24:07,660 --> 00:24:09,330 Terbuka kepada tengah-tengah separuh betul buku ini 545 00:24:09,330 --> 00:24:09,996 Pergi untuk beratur tiga 546 00:24:09,996 --> 00:24:10,720 yang lain 547 00:24:10,720 --> 00:24:11,500 melepaskan 548 00:24:11,500 --> 00:24:15,360 Dan ada beberapa ciri-ciri sekarang ini yang bernilai menunjukkan. 549 00:24:15,360 --> 00:24:18,370 Jadi satu, semua garis Saya telah ditonjolkan dalam kuning 550 00:24:18,370 --> 00:24:21,430 kita akan mula memanggil kenyataan atau fungsi atau prosedur. 551 00:24:21,430 --> 00:24:24,160 Mereka hanya tindakan melakukan ini, dan tidak ada 552 00:24:24,160 --> 00:24:26,400 semua yang banyak kebolehubahan kepadanya. 553 00:24:26,400 --> 00:24:30,850 >> Langkah seterusnya di sini walaupun, adalah ini syarat-syarat-- jika, lain, lain jika, lain. 554 00:24:30,850 --> 00:24:34,020 Inilah yang dikenali sebagai syarat, atau cawangan, dan mereka mata keputusan. 555 00:24:34,020 --> 00:24:36,780 Dan mereka membolehkan kita untuk melakukan sesuatu yang bersyarat. 556 00:24:36,780 --> 00:24:39,650 >> Dan sebenarnya, mari kita cepat melihat mungkin satu face-- biasa 557 00:24:39,650 --> 00:24:43,380 kami akan memanggilnya Bill-- dan apa syarat-syarat ini, 558 00:24:43,380 --> 00:24:45,670 bagaimana mungkin digunakan. 559 00:24:45,670 --> 00:24:48,230 >> BILL GATES: Orang membuat keputusan setiap hari. 560 00:24:48,230 --> 00:24:51,800 Sebagai contoh, sebelum anda pergi ke luar anda jenis mempunyai kenyataan jika yang mengatakan, 561 00:24:51,800 --> 00:24:55,650 jika hari hujan, maka saya perlu untuk mendapatkan jaket saya. 562 00:24:55,650 --> 00:25:00,990 >> Dan komputer yang luar biasa sebaik sahaja anda menentukan orang-orang jenis penyata 563 00:25:00,990 --> 00:25:06,450 bahawa mereka pasti boleh melaksanakan perkara-perkara pada kelajuan luar biasa. 564 00:25:06,450 --> 00:25:12,470 Dan supaya satu program komputer benar-benar adalah sedikit matematik dan beberapa 565 00:25:12,470 --> 00:25:16,890 jika kenyataan di mana keputusan mendapat dibuat. 566 00:25:16,890 --> 00:25:19,432 >> DAVID MALAN: Jadi sekarang mari kita fokus pada lines-- beberapa berbeza 567 00:25:19,432 --> 00:25:21,140 yang saya telah menekankan kuning di sini. 568 00:25:21,140 --> 00:25:23,890 Dan ternyata ada yang berbeza cara untuk menyatakan idea ini. 569 00:25:23,890 --> 00:25:28,550 Tetapi intuitif apa baris kami 8 dan 11 bahawa saya telah ditonjolkan di sini memberitahu anda 570 00:25:28,550 --> 00:25:29,100 yang perlu dilakukan? 571 00:25:29,100 --> 00:25:33,081 Ya, pergi untuk beratur 3, tetapi apa yang tingkah laku adalah yang benar-benar mendorong? 572 00:25:33,081 --> 00:25:35,580 Ia adalah beberapa jenis gelung atau kitaran, dan anda jenis boleh melihatnya. 573 00:25:35,580 --> 00:25:36,079 Betul? 574 00:25:36,079 --> 00:25:39,710 Jika pada baris 8, anda kembali ke garisan 3, dan kemudian anda memukul talian 8 lagi, 575 00:25:39,710 --> 00:25:42,700 anda mungkin kembali ke garisan 3, kembali ke garisan 3, belakang untuk beratur 3. 576 00:25:42,700 --> 00:25:44,530 Ada semacam ini kitaran atau gelung. 577 00:25:44,530 --> 00:25:47,177 Dan sesungguhnya, itu disebabkan dalam line 11 berpotensi juga. 578 00:25:47,177 --> 00:25:49,260 Dan ini adalah asas pengaturcaraan membina juga. 579 00:25:49,260 --> 00:25:51,593 >> Anda mungkin tidak mahu hanya melakukan sesuatu dengan kenyataan 580 00:25:51,593 --> 00:25:54,280 atau melakukan sesuatu yang bersyarat dengan syarat atau cawangan. 581 00:25:54,280 --> 00:25:56,644 Anda mungkin mahu melakukan sesuatu cyclically dengan gelung. 582 00:25:56,644 --> 00:25:59,810 Dan kita akan mempunyai orang lain dengan siapa anda mungkin familiar-- kami akan memanggilnya 583 00:25:59,810 --> 00:26:02,996 Mark-- menjelaskan konsep ini di sini. 584 00:26:02,996 --> 00:26:04,870 Mark Zuckerberg: Satu Perkara komputer adalah 585 00:26:04,870 --> 00:26:07,460 benar-benar baik adalah mengulangi arahan. 586 00:26:07,460 --> 00:26:09,510 Sebagai orang, anda akan mendapat benar-benar bosan jika anda 587 00:26:09,510 --> 00:26:12,310 terpaksa melakukan perkara yang sama banyak kali berturut-turut, 588 00:26:12,310 --> 00:26:16,230 tetapi komputer boleh melakukan perkara yang sama berjuta-juta atau berbilion-bilion kali 589 00:26:16,230 --> 00:26:18,930 dan tidak bosan dan dapat untuk menjalankan yang keluar dengan sangat baik. 590 00:26:18,930 --> 00:26:21,240 >> Jadi, sebagai contoh, jika saya ingin mengucapkan 591 00:26:21,240 --> 00:26:24,450 di Facebook selamat ulang tahun dengan menghantar e-mel mereka, 592 00:26:24,450 --> 00:26:27,037 ia mungkin mengambil masa saya lebih daripada yang abad untuk benar-benar menulis 593 00:26:27,037 --> 00:26:28,370 semua orang-orang e-mel kepada semua orang. 594 00:26:28,370 --> 00:26:33,500 Tetapi dengan hanya beberapa baris kod, saya boleh mempunyai sistem yang menghantar e-mel kepada semua orang 595 00:26:33,500 --> 00:26:35,460 di Facebook yang ingin mereka selamat hari jadi. 596 00:26:35,460 --> 00:26:38,330 >> Jadi itulah yang gelung dan mengapa mereka berharga dan sesuatu 597 00:26:38,330 --> 00:26:40,076 bahawa komputer boleh lakukan dengan baik. 598 00:26:40,076 --> 00:26:43,109 >> DAVID MALAN: Terima kasih kepada rakan-rakan kami di Code.org untuk kedua-dua filem. 599 00:26:43,109 --> 00:26:46,150 Dan hanya minggu lepas, anda mungkin mempunyai dilihat bahawa Mark Zuckerberg dan Facebook 600 00:26:46,150 --> 00:26:47,940 mencatatkan pengumuman ini, iaitu bahawa mereka hanya 601 00:26:47,940 --> 00:26:50,398 telah berlalu yang penting pencapaian buat kali pertama. 602 00:26:50,398 --> 00:26:54,320 1 bilion orang menggunakan Facebook dalam hari, khususnya Isnin lepas. 603 00:26:54,320 --> 00:26:58,650 Satu dalam tujuh manusia di Bumi nampaknya log masuk ke dalam Facebook. 604 00:26:58,650 --> 00:27:03,310 >> Well, ini seolah-olah peluang yang baik untuk melihat kembali di mana Facebook bermula, 605 00:27:03,310 --> 00:27:06,840 dan kami telah melalui CS50 sendiri arkib kerana ia ternyata pada tahun 2005, 606 00:27:06,840 --> 00:27:10,020 Mark telah menyampaikan ceramah tetamu di CS50. 607 00:27:10,020 --> 00:27:13,870 Anda akan melihat bahawa nilai-nilai pengeluaran tidak cukup belakang yang sama maka 608 00:27:13,870 --> 00:27:16,110 dari segi teknologi ada, dan anda juga akan 609 00:27:16,110 --> 00:27:18,310 melihat bahawa kehadiran kuliah tumpangan ini 610 00:27:18,310 --> 00:27:22,470 tidak semestinya menarik minat yang badan pelajar itu, kamu yang terdahulu, 611 00:27:22,470 --> 00:27:24,910 seperti mana yang mungkin mempunyai hanya beberapa tahun kemudian. 612 00:27:24,910 --> 00:27:27,902 >> Jadi mari kita lihat di Pusat Sains C. 613 00:27:27,902 --> 00:27:29,389 614 00:27:29,389 --> 00:27:31,014 SPEAKER 2: Sila menyertai saya, dan selamat datang. 615 00:27:31,014 --> 00:27:33,374 616 00:27:33,374 --> 00:27:36,577 [Tepuk tangan] 617 00:27:36,577 --> 00:27:37,410 Mark Zuckerberg: Yo. 618 00:27:37,410 --> 00:27:37,900 Baiklah. 619 00:27:37,900 --> 00:27:40,420 Cool ini adalah kali pertama saya telah pernah terpaksa tahan salah satu daripada perkara-perkara ini. 620 00:27:40,420 --> 00:27:42,336 Jadi, saya hanya akan melampirkan ia benar-benar cepat. 621 00:27:42,336 --> 00:27:54,354 622 00:27:54,354 --> 00:27:54,854 Baiklah. 623 00:27:54,854 --> 00:27:57,314 Bolehkah anda mendengarnya? 624 00:27:57,314 --> 00:27:58,298 Adakah ini baik? 625 00:27:58,298 --> 00:28:00,684 Adakah ini dikuatkan di semua? 626 00:28:00,684 --> 00:28:01,184 Baiklah. 627 00:28:01,184 --> 00:28:02,040 Sweet. 628 00:28:02,040 --> 00:28:06,860 Jadi, ini adalah seperti salah satu daripada kali pertama Saya telah ke kuliah di Harvard, 629 00:28:06,860 --> 00:28:08,660 but-- 630 00:28:08,660 --> 00:28:12,510 >> DAVID MALAN: Jadi akhirnya Sains Pusat melakukan zum masuk pada video, 631 00:28:12,510 --> 00:28:15,110 tetapi tidak sebelum menangkap ini petikan di mana Mark bercakap, 632 00:28:15,110 --> 00:28:18,230 yang dia membincang beliau rakan sebilik, Dustin, yang 633 00:28:18,230 --> 00:28:20,885 mahu untuk menghulurkan bantuan dengan ini laman web dipanggil Facebook.com 634 00:28:20,885 --> 00:28:24,540 dan menyedari bahawa Mark adalah kira-kira untuk menyebut kepada pengaturcaraan languages-- 635 00:28:24,540 --> 00:28:27,290 satu dipanggil Perl, satu dipanggil PHP-- sebagai beliau membincangkan 636 00:28:27,290 --> 00:28:28,840 asal-usul sumbangan Dustin ini. 637 00:28:28,840 --> 00:28:31,499 638 00:28:31,499 --> 00:28:33,290 Mark Zuckerberg: Saya mula berjalan tapak 639 00:28:33,290 --> 00:28:37,770 dan melancarkan ia pada Harvard pada Februari 2004. 640 00:28:37,770 --> 00:28:39,540 Jadi saya rasa hampir dua tahun yang lalu sekarang. 641 00:28:39,540 --> 00:28:42,322 Dan dalam beberapa minggu, Beberapa ribu orang telah mendaftar, 642 00:28:42,322 --> 00:28:45,280 dan kami mula mendapat beberapa e-mel daripada orang di kolej-kolej lain meminta 643 00:28:45,280 --> 00:28:47,520 bagi kita untuk melancarkannya di sekolah-sekolah mereka. 644 00:28:47,520 --> 00:28:49,455 >> Dan saya telah mengambil 161 pada masa itu. 645 00:28:49,455 --> 00:28:52,080 Jadi, saya tidak tahu jika anda semua tahu reputasi kursus yang, 646 00:28:52,080 --> 00:28:54,402 tetapi ia adalah jenis berat. 647 00:28:54,402 --> 00:28:57,110 Ia adalah satu kursus yang benar-benar menyeronokkan, tetapi ia tidak meninggalkan saya dengan banyak masa 648 00:28:57,110 --> 00:28:59,260 berbuat apa-apa dengan Facebook. 649 00:28:59,260 --> 00:29:04,309 Jadi rakan sebilik saya Dustin, yang saya rasa baru sahaja selesai CS50, adalah seperti, hey. 650 00:29:04,309 --> 00:29:05,100 Saya ingin membantu. 651 00:29:05,100 --> 00:29:08,760 Saya mahu melakukan pengembangan dan membantu anda memikirkan bagaimana untuk melakukan barangan. 652 00:29:08,760 --> 00:29:10,780 >> Jadi saya adalah seperti, itu cukup sejuk, dude. 653 00:29:10,780 --> 00:29:13,130 Tetapi anda tidak tahu apa-apa PHP atau apa-apa seperti itu. 654 00:29:13,130 --> 00:29:16,444 Jadi hujung minggu itu ia pergi, membeli buku Perl untuk patung, 655 00:29:16,444 --> 00:29:17,860 pulang dan adalah seperti, hak semua. 656 00:29:17,860 --> 00:29:18,940 Saya sudah bersedia untuk pergi. 657 00:29:18,940 --> 00:29:23,010 >> Saya seperti, dude, laman web ini ditulis dalam PHP tidak Perl, tetapi itu sejuk. 658 00:29:23,010 --> 00:29:28,530 >> Jadi dia mengambil PHP lebih seperti beberapa hari kerana saya 659 00:29:28,530 --> 00:29:30,790 berjanji bahawa jika anda mempunyai latar belakang yang baik dalam C, 660 00:29:30,790 --> 00:29:32,970 PHP adalah satu perkara yang sangat mudah untuk mengambil. 661 00:29:32,970 --> 00:29:37,480 Dan dia hanya jenis pergi ke kerja. 662 00:29:37,480 --> 00:29:40,500 >> Sebelum kita melihat dengan sekarang di di mana kursus itu akan pergi, 663 00:29:40,500 --> 00:29:43,047 membenarkan saya untuk menjemput hanya beberapa kakitangan SC50 ini sehingga ke peringkat. 664 00:29:43,047 --> 00:29:44,880 Sesetengah daripada mereka membeli-belah kursus mereka sendiri. 665 00:29:44,880 --> 00:29:48,390 Tetapi jika TFS dan CA dan kursus kepala yang berada di sini boleh datang pada sehingga 666 00:29:48,390 --> 00:29:50,230 dan menyertai saya untuk hello cepat. 667 00:29:50,230 --> 00:29:54,670 >> Izinkan saya untuk memperkenalkan khususnya, Hanna, Maria, Daven, dan Rob, 668 00:29:54,670 --> 00:29:59,666 kursus CS50 mengetuai di sini di Cambridge. 669 00:29:59,666 --> 00:30:02,106 >> [Tepuk tangan] 670 00:30:02,106 --> 00:30:07,490 671 00:30:07,490 --> 00:30:11,060 >> DAVID MALAN: Sesungguhnya bukti kepada struktur sokongan bahawa kursus yang mempunyai 672 00:30:11,060 --> 00:30:15,660 dibina di atas banyak tahun yang lalu, kakitangan CS50 nombor tahun ini hampir 100, 673 00:30:15,660 --> 00:30:17,170 dan itu di sini di Cambridge sahaja. 674 00:30:17,170 --> 00:30:21,240 Sementara itu, di New Haven, ada beberapa 40 TFS dan CA dan kakitangan di sana 675 00:30:21,240 --> 00:30:22,800 untuk mengendalikan kursus tersebut juga. 676 00:30:22,800 --> 00:30:26,125 >> Membolehkan kita untuk memperkenalkan pertama, Rob Bowden. 677 00:30:26,125 --> 00:30:26,750 ROB BOWDEN: Hi. 678 00:30:26,750 --> 00:30:27,620 Saya Rob. 679 00:30:27,620 --> 00:30:32,750 Ini adalah tahun keenam saya TFing dalam perjalanan. 680 00:30:32,750 --> 00:30:37,970 Jadi, semua jalan kembali pada saya tahun pertamanya, saya tidak mengambil CS50. 681 00:30:37,970 --> 00:30:40,270 bayat anda fall-- anda mungkin biasa 682 00:30:40,270 --> 00:30:43,270 bahawa anda hanya boleh mengambil empat kursus dan terdapat banyak kursus hari ini. 683 00:30:43,270 --> 00:30:44,450 Jadi saya seperti, eh. 684 00:30:44,450 --> 00:30:48,050 Saya mengambil AP CS tahun kanan saya sekolah tinggi ia mengerikan. 685 00:30:48,050 --> 00:30:48,900 Jadi, saya seperti, eh. 686 00:30:48,900 --> 00:30:50,380 sains komputer bukan untuk saya. 687 00:30:50,380 --> 00:30:53,000 >> Oleh itu, maka ia berada di atas perjalanan bayat saya 688 00:30:53,000 --> 00:30:58,960 jatuh, bahawa saya mempunyai seorang kawan di CS50, dan Saya rasa saya menghadiri satu kuliah dengan dia. 689 00:30:58,960 --> 00:31:03,760 Ia seperti, oh, ini adalah jenis yang lebih baik daripada apa yang telah saya di sekolah tinggi. 690 00:31:03,760 --> 00:31:06,990 >> Dan sepanjang yang tahun, saya mempunyai set masalah saya sendiri 691 00:31:06,990 --> 00:31:08,750 dalam kursus saya sebenarnya mengambil. 692 00:31:08,750 --> 00:31:11,870 Tetapi saya mendapati bahawa setiap kali saya mahu berlengah-lengah kepada orang-orang, 693 00:31:11,870 --> 00:31:15,111 Saya akan kembali ke CS50 dan lihat beberapa barangan itu. 694 00:31:15,111 --> 00:31:15,610 Jadi, ya. 695 00:31:15,610 --> 00:31:16,140 Saya bergaya. 696 00:31:16,140 --> 00:31:19,350 Saya procrastination dengan pengkodan. 697 00:31:19,350 --> 00:31:22,910 Oleh itu, maka ia adalah pada akhir kejatuhan yang saya sedar, hey, 698 00:31:22,910 --> 00:31:24,410 sains komputer adalah agak sejuk. 699 00:31:24,410 --> 00:31:27,730 Saya akhirnya mengambil CS51. 700 00:31:27,730 --> 00:31:30,430 Pada semester yang akan datang, Saya akhirnya mengambil CS61. 701 00:31:30,430 --> 00:31:32,727 Dan semuanya dari sana, kemudian saya akhirnya mengisytiharkan 702 00:31:32,727 --> 00:31:35,310 sains komputer, yang saya terpaksa sama sekali tidak berniat untuk melakukan 703 00:31:35,310 --> 00:31:36,740 apabila saya datang ke kolej. 704 00:31:36,740 --> 00:31:39,330 Dan kini saya di sini. 705 00:31:39,330 --> 00:31:42,230 Jadi kursus ini adalah apa yang anda buat itu. 706 00:31:42,230 --> 00:31:43,463 Saya berharap anda menikmati. 707 00:31:43,463 --> 00:31:44,066 >> [Tepuk tangan] 708 00:31:44,066 --> 00:31:45,315 DAVID MALAN: Terima kasih kepada Rob. 709 00:31:45,315 --> 00:31:49,020 710 00:31:49,020 --> 00:31:52,180 >> Dan kini Maria, kami menuju pembantu tentu. 711 00:31:52,180 --> 00:31:53,140 >> MARIA: Hey guys. 712 00:31:53,140 --> 00:31:53,880 Nama saya Maria. 713 00:31:53,880 --> 00:31:56,930 Saya adalah seorang penuntut tahun Cabot House, yang datang dari Bulgaria, 714 00:31:56,930 --> 00:31:59,880 dan saya super teruja untuk menjadi sebahagian daripada kakitangan pada tahun ini. 715 00:31:59,880 --> 00:32:03,380 Saya mengambil CS50 sebagai bayat tahun lepas, dan saya tidak pernah 716 00:32:03,380 --> 00:32:04,750 berfikir tentang CS terlebih dahulu. 717 00:32:04,750 --> 00:32:08,380 Jadi saya benar-benar suka kursus ini, dan saya berharap anda semua suka seberapa banyak yang saya lakukan. 718 00:32:08,380 --> 00:32:09,250 Dan, yeah. 719 00:32:09,250 --> 00:32:10,868 Selamat datang ke CS50. 720 00:32:10,868 --> 00:32:12,201 DAVID MALAN: Terima kasih kepada Maria. 721 00:32:12,201 --> 00:32:13,674 [Tepuk tangan] 722 00:32:13,674 --> 00:32:16,129 723 00:32:16,129 --> 00:32:19,580 Sekarang Hanna, rakan-rakan kepala pengajaran kami. 724 00:32:19,580 --> 00:32:20,480 HANNA: Hi, Saya Hanna. 725 00:32:20,480 --> 00:32:22,990 Saya adalah seorang senior di Cabot pengajian sains komputer. 726 00:32:22,990 --> 00:32:28,120 Saya mengambil CS50 sebagai bayat dan mempunyai telah TFing-- ini akan menjadi tahun ketiga saya. 727 00:32:28,120 --> 00:32:31,000 Jadi saya akan gembira terlibat dalam CS50 untuk semua empat tahun, 728 00:32:31,000 --> 00:32:33,569 dan saya tidak sabar untuk bekerja dengan anda semua. 729 00:32:33,569 --> 00:32:34,902 DAVID MALAN: Terima kasih kepada Hanna. 730 00:32:34,902 --> 00:32:36,870 [Tepuk tangan] 731 00:32:36,870 --> 00:32:37,854 732 00:32:37,854 --> 00:32:40,274 Dan akhir sekali, Daven, precepter kami. 733 00:32:40,274 --> 00:32:40,940 Daven: Hey guys. 734 00:32:40,940 --> 00:32:42,390 Saya ajaran yang lebih dalam sains komputer di sini. 735 00:32:42,390 --> 00:32:44,010 Ini akan menjadi pengajaran tahun keempat saya. 736 00:32:44,010 --> 00:32:45,261 Saya juga membantu menguruskan kursus. 737 00:32:45,261 --> 00:32:47,801 Jadi saya pasti anda akan melihat saya, terutama pada waktu pejabat. 738 00:32:47,801 --> 00:32:48,970 Saya sentiasa pada waktu pejabat. 739 00:32:48,970 --> 00:32:51,640 Jadi, jika anda melihat saya berjalan sekitar, pasti datang mengatakan hi. 740 00:32:51,640 --> 00:32:52,681 Saya suka bertemu orang. 741 00:32:52,681 --> 00:32:55,830 Jika tidak, bersenang-senang, dan saya akan melihat anda sekitar. 742 00:32:55,830 --> 00:32:58,210 >> DAVID MALAN: Terima kasih kepada Daven juga. 743 00:32:58,210 --> 00:33:01,290 Jadi, anda akan memenuhi semua orang ini tidak lama lagi. 744 00:33:01,290 --> 00:33:03,040 Tetapi tanpa lagi ado, jika anda semua akan 745 00:33:03,040 --> 00:33:05,840 menyambung semula kerusi anda dari awal. 746 00:33:05,840 --> 00:33:10,940 Izinkan saya untuk memperkenalkan dari jauh sekarang beberapa rakan-rakan kami dari New Haven, 747 00:33:10,940 --> 00:33:14,690 dalam kepala kursus ini tertentu yang akan dapat mengawasi CS50 there-- Profesor 748 00:33:14,690 --> 00:33:19,550 Brian Scassellati, Jason, dan Andi, yang just-- supaya kita tidak menggoda nasib 749 00:33:19,550 --> 00:33:22,610 dengan mana-mana FaceTime atau like-- yang baru sahaja menghantar kami minit 750 00:33:22,610 --> 00:33:27,380 lalu video berikut di mana mereka bertanya khabar dari dewan kuliah 751 00:33:27,380 --> 00:33:31,480 di Yale, di mana kuliah sedang distrim sekarang. 752 00:33:31,480 --> 00:33:34,052 >> Jadi rakan-rakan kami dari Yale. 753 00:33:34,052 --> 00:33:35,260 BRIAN SCASSELLATI: Hi, David. 754 00:33:35,260 --> 00:33:36,480 Hi, semua orang di Harvard. 755 00:33:36,480 --> 00:33:41,400 Kami amat teruja untuk membawa CS50 ke Yale semester ini. 756 00:33:41,400 --> 00:33:45,250 Nama saya Brian Scassellati, tetapi semua orang hanya memanggil saya SCAS. 757 00:33:45,250 --> 00:33:50,402 Dan saya di sini hari ini untuk memperkenalkan kepada anda kakitangan CS50. 758 00:33:50,402 --> 00:33:52,346 >> [Bersorak] 759 00:33:52,346 --> 00:33:55,760 760 00:33:55,760 --> 00:33:59,780 >> Dan yang lebih penting, saya di sini untuk memperkenalkan serta 761 00:33:59,780 --> 00:34:03,690 semua pelajar di Yale yang pada pagi ini 762 00:34:03,690 --> 00:34:09,289 telah membuat ini yang paling popular kursus di Yale pelajar CS50. 763 00:34:09,289 --> 00:34:12,090 >> [Bersorak] 764 00:34:12,090 --> 00:34:25,850 765 00:34:25,850 --> 00:34:28,310 >> Jadi kami sangat teruja yang akan melihat anda di sini 766 00:34:28,310 --> 00:34:34,239 pada hari Jumaat dan pada hari Sabtu untuk Teka-teki Hari dan mempunyai kuliah yang besar. 767 00:34:34,239 --> 00:34:35,440 Selamat tinggal. 768 00:34:35,440 --> 00:34:37,360 >> [Tepuk tangan] 769 00:34:37,360 --> 00:34:42,170 770 00:34:42,170 --> 00:34:45,497 >> DAVID MALAN: Pada skrin di sini adalah nama-nama beberapa daripada 140 kakitangan 771 00:34:45,497 --> 00:34:48,330 ahli yang menanti anda dalam tempoh perjalanan yang semester-- sebahagian daripada mereka 772 00:34:48,330 --> 00:34:50,540 di sini di Cambridge, beberapa daripada mereka di sini di New Haven. 773 00:34:50,540 --> 00:34:52,706 Dan sesungguhnya anda akan mempunyai peluang Sabtu ini, 774 00:34:52,706 --> 00:34:54,530 sebagai nota SCAS, untuk menghadiri CS50 Puzzle Day. 775 00:34:54,530 --> 00:34:57,780 Anda mungkin telah melihat kepingan teka-teki sedikit susut di bawah pintu anda baru-baru ini. 776 00:34:57,780 --> 00:35:00,420 Kami mempunyai beberapa tambahan di sini kemudian apabila anda wujud. 777 00:35:00,420 --> 00:35:04,030 Jika anda memasang semua empat teka-teki keping dan bergabung tenaga dengan bilik 778 00:35:04,030 --> 00:35:06,450 anda berdekatan dalam anda rumah atau asrama, mereka akan 779 00:35:06,450 --> 00:35:09,690 memasang ke dalam code-- QR atau dua kod bar dimensi, yang 780 00:35:09,690 --> 00:35:12,970 sekali dipasang dan diimbas dengan telefon anda akan membawa anda 781 00:35:12,970 --> 00:35:17,060 untuk beberapa hadiah hebat or-- saya rasa anda hanya boleh mengambil gambar ini sekarang 782 00:35:17,060 --> 00:35:17,560 juga. 783 00:35:17,560 --> 00:35:22,560 >> Tetapi mencari sesiapa kepingan teka-teki tetap untuk memenangi hadiah yang hebat. 784 00:35:22,560 --> 00:35:25,900 Dan sesungguhnya salah satu tradisi dalam SC50-- ah, terlalu perlahan. 785 00:35:25,900 --> 00:35:29,790 Salah satu tradisi dalam CS50 adalah untuk menghidangkan kek selepas kuliah pertama. 786 00:35:29,790 --> 00:35:31,620 >> Dan maka sesungguhnya, dalam beberapa minit dari sekarang, 787 00:35:31,620 --> 00:35:36,040 akan ada kek dihidangkan di luar di sini dan di New Haven juga. 788 00:35:36,040 --> 00:35:39,530 >> Tetapi first-- kita dihiasi mereka diri kita sendiri. 789 00:35:39,530 --> 00:35:43,360 Tetapi first-- dan diharapkan akan ada cukup. 790 00:35:43,360 --> 00:35:44,830 >> Tetapi pertama, melihat cepat. 791 00:35:44,830 --> 00:35:47,880 Jadi kuliah memang akan menjadi kebanyakannya dihasilkan di sini di Cambridge. 792 00:35:47,880 --> 00:35:51,580 Tetapi setiap bulan, kami akan melompat ke Yale dengan pasukan produksi CS50 dan aliran 793 00:35:51,580 --> 00:35:53,730 kursus dalam sebaliknya arah dan juga supaya 794 00:35:53,730 --> 00:35:56,840 untuk membawa kedua-dua kampus benar-benar buat kali pertama dalam sejarah 795 00:35:56,840 --> 00:36:00,450 sebagai rapat yang mungkin satu dalam kursus yang sama. 796 00:36:00,450 --> 00:36:04,050 >> Dari segi struktur sokongan itulah telah berdiri di sini di Cambridge dan juga 797 00:36:04,050 --> 00:36:05,646 seperti di New Haven, adalah bahagian. 798 00:36:05,646 --> 00:36:08,020 Malah, sebagai sebahagian daripada anda boleh tahu, kami mempunyai trek yang berbeza 799 00:36:08,020 --> 00:36:10,850 dalam perjalanan untuk mereka yang kurang selesa, lebih selesa, 800 00:36:10,850 --> 00:36:14,610 dan suatu tempat di antara supaya tanpa mengira latar belakang sebelum anda, 801 00:36:14,610 --> 00:36:17,670 boleh anda akhirnya berjaya dalam kelas. 802 00:36:17,670 --> 00:36:21,320 >> Waktu pejabat sementara itu, adalah peluang pada hari Isnin dan Selasa 803 00:36:21,320 --> 00:36:26,570 dan petang Khamis untuk bekerja kedua-dua di sini dan di New Haven di padang kita 804 00:36:26,570 --> 00:36:30,370 set masalah dengan berpuluh-puluh kakitangan kursus berhampiran anda. 805 00:36:30,370 --> 00:36:35,380 >> Masalah menetapkan sementara itu, adalah disokong oleh perkara-perkara yang kita panggil 806 00:36:35,380 --> 00:36:39,140 walkthroughs, yang berdasarkan video tutorial yang benar-benar menjawab FAQ 807 00:36:39,140 --> 00:36:41,670 di mana untuk memulakan cabaran seminggu. 808 00:36:41,670 --> 00:36:44,290 Dan postmortems berjalan anda melalui penyelesaian yang mungkin 809 00:36:44,290 --> 00:36:46,490 supaya akhir set masalah juga, anda 810 00:36:46,490 --> 00:36:50,820 tahu apa yang anda boleh dilakukan berbeza atau sama sekali sebaliknya. 811 00:36:50,820 --> 00:36:53,895 >> Masalahnya menetapkan sendiri datang dalam dua edisi, edisi standard 812 00:36:53,895 --> 00:36:57,510 yang kita harapkan dan menjemput kebanyakan class-- beberapa 90% ditambah do-- 813 00:36:57,510 --> 00:37:00,520 dan edisi penggodam yang dipanggil di mana setiap halaman adalah terpampang 814 00:37:00,520 --> 00:37:02,790 edisi penggodam, penggodam edisi, edisi penggodam, 815 00:37:02,790 --> 00:37:07,550 supaya anda mempunyai karma yang jika anda akan, untuk menyelam 816 00:37:07,550 --> 00:37:10,230 ke dalam versi yang lebih maju set masalah tentu 817 00:37:10,230 --> 00:37:14,970 perlindungan yang kononnya bahan yang sama tetapi dengan pendekatan yang lebih canggih 818 00:37:14,970 --> 00:37:19,020 dan dengan latar belakang tambahan kadang-kadang diperkenalkan. 819 00:37:19,020 --> 00:37:22,350 >> Sementara itu, ada sembilan hari lewat yang anda boleh memohon untuk masalah tentu 820 00:37:22,350 --> 00:37:26,160 menetapkan serta skor yang paling rendah, mana kita jatuh pada akhir terma. 821 00:37:26,160 --> 00:37:26,900 >> Tetapi apa yang menanti? 822 00:37:26,900 --> 00:37:29,300 Nah, rasa masalah ini menetapkan di tangan pada Jumaat 823 00:37:29,300 --> 00:37:31,959 dan minggu depan di mana kita cuba-cuba hanya untuk beberapa hari dalam sesuatu 824 00:37:31,959 --> 00:37:35,000 dipanggil Scratch, pengaturcaraan grafik bahasa yang dibangunkan oleh rakan-rakan kami 825 00:37:35,000 --> 00:37:39,290 di Media Lab MIT yang membolehkan anda untuk program sama ada untuk kali pertama 826 00:37:39,290 --> 00:37:43,510 atau dalam persekitaran yang baru sama sekali menggunakan persekitaran jenis drag dan drop. 827 00:37:43,510 --> 00:37:45,595 Mana kepingan teka-teki hanya berpaut bersama-sama 828 00:37:45,595 --> 00:37:48,080 jika ia masuk akal logik untuk berbuat demikian. 829 00:37:48,080 --> 00:37:50,440 >> Sementara itu dalam masalah menetapkan dua tahun lepas misalnya, 830 00:37:50,440 --> 00:37:53,010 adakah kita memperkenalkan kelas ke dunia kriptografi, 831 00:37:53,010 --> 00:37:55,370 seni menyulitkan atau berebut maklumat. 832 00:37:55,370 --> 00:37:58,940 Sesungguhnya, teks ini di sini jika dibuka, akan benar-benar 833 00:37:58,940 --> 00:38:01,277 membawa anda ke beberapa destinasi yang menyeronokkan. 834 00:38:01,277 --> 00:38:03,110 Dan dalam masalah yang ditetapkan, apa yang kita mempunyai pelajar 835 00:38:03,110 --> 00:38:06,280 lakukan adalah melaksanakan tepat mereka jenis things-- algoritma, 836 00:38:06,280 --> 00:38:09,530 atau set arahan untuk berebut dan bergegas maklumat. 837 00:38:09,530 --> 00:38:11,850 >> Dan dalam edisi penggodam itu set masalah yang sama, 838 00:38:11,850 --> 00:38:15,800 adakah kita mencabar pelajar untuk mengambil fail disulitkan dari komputer biasa 839 00:38:15,800 --> 00:38:18,840 sistem dengan banyak nama pengguna dan kata laluan disulitkan 840 00:38:18,840 --> 00:38:21,400 dan untuk memecahkan mereka passwords-- sebenarnya memikirkan 841 00:38:21,400 --> 00:38:25,870 apa yang mereka tanpa mengetahui apa-apa keutamaan mengenai mereka kata laluan yang sebenar. 842 00:38:25,870 --> 00:38:27,620 Sementara itu, kita peralihan dalam masalah ini 843 00:38:27,620 --> 00:38:29,536 menetapkan untuk kemudian melihat dunia grafik. 844 00:38:29,536 --> 00:38:32,240 Dan sebenarnya, anda mungkin bayangkan kini bahawa ini boleh mungkin 845 00:38:32,240 --> 00:38:35,200 menjadi cara yang paling mudah untuk mewakili imej hitam dan putih. 846 00:38:35,200 --> 00:38:39,570 >> A pixel putih, atau persegi, pada bahagian atas di sana, 847 00:38:39,570 --> 00:38:41,620 mungkin diwakili dengan 1 dan persegi hitam 848 00:38:41,620 --> 00:38:43,490 mungkin diwakili dengan 0. 849 00:38:43,490 --> 00:38:47,670 Dan hanya dengan menggunakan lebih bit seperti kita dicadangkan lebih awal dengan 72 dan 73 dan 33, 850 00:38:47,670 --> 00:38:49,882 boleh kita mewakili piksel warna juga. 851 00:38:49,882 --> 00:38:51,590 Dan apa yang kita lakukan semasa set masalah ini adalah 852 00:38:51,590 --> 00:38:54,660 umumnya berjalan-jalan sekitar kampus dengan kamera digital, 853 00:38:54,660 --> 00:38:56,730 mengambil gambar orang, tempat dan benda. 854 00:38:56,730 --> 00:38:59,270 Kemudian entah bagaimana setiap semester, kita seolah-olah sengaja 855 00:38:59,270 --> 00:39:02,600 dipadam atau merosakkan kad ingatan di mana semua orang-orang gambar adalah, 856 00:39:02,600 --> 00:39:04,610 dan supaya anda dicabar untuk kemudian menulis perisian 857 00:39:04,610 --> 00:39:09,650 yang boleh digunakan untuk mendapatkan semula mereka JPEG dari salinan kad kamera kita. 858 00:39:09,650 --> 00:39:13,550 >> Sementara itu, kita menyerahkan engkau di kemudian istilah kamus perkataan Inggeris 859 00:39:13,550 --> 00:39:16,680 yang mempunyai 143,000 kata-kata, dan anda perlu datang 860 00:39:16,680 --> 00:39:19,240 dengan cara yang pintar memuatkan mereka ke dalam ingatan, 861 00:39:19,240 --> 00:39:22,850 atau RAM jadi untuk bercakap, untuk menjawab pertanyaan dalam bentuk: adalah perkataan ini, 862 00:39:22,850 --> 00:39:25,910 adakah ini satu perkataan, melaksanakan paling cepat penyemak ejaan yang anda boleh, 863 00:39:25,910 --> 00:39:28,180 walaupun menyematkan diri berpotensi terhadap rakan sekelas 864 00:39:28,180 --> 00:39:30,460 untuk melihat siapakah di antara kamu menggunakan jumlah-kurangnya masa 865 00:39:30,460 --> 00:39:33,440 apabila menjalankan kod dan juga anda sekurang-kurangnya jumlah ingatan. 866 00:39:33,440 --> 00:39:36,060 >> Kemudian dalam tempoh yang anda sebenarnya melaksanakan pelayan web anda sendiri. 867 00:39:36,060 --> 00:39:39,470 Jadi bukan hanya sebuah website dalam bahasa dipanggil HTML dan banyak lagi, 868 00:39:39,470 --> 00:39:43,300 tetapi pelayan web yang benar-benar mendengar permintaan di internet 869 00:39:43,300 --> 00:39:44,460 dan bertindak balas kepada mereka. 870 00:39:44,460 --> 00:39:47,210 Dan sesungguhnya, ini adalah bagaimana kita merapatkan dunia kita C dengan yang anda akan 871 00:39:47,210 --> 00:39:50,550 menjadi biasa minggu depan dan PHP dan HTML dan JavaScript 872 00:39:50,550 --> 00:39:51,820 dan CSS dan sebagainya. 873 00:39:51,820 --> 00:39:54,820 >> Kerana salah satu web yang pertama berdasarkan projek yang kita lakukan kemudian dalam jangka 874 00:39:54,820 --> 00:39:57,516 adalah sejarah CS50 Kewangan. 875 00:39:57,516 --> 00:40:02,580 Etrade.com gaya laman web yang membolehkan anda untuk membeli dan menjual saham hampir 876 00:40:02,580 --> 00:40:08,240 sementara juga menulis kod untuk bercakap dengan Yahoo Kewangan mendapat separuh saham masa nyata 877 00:40:08,240 --> 00:40:11,490 memetik untuk mengemaskini portfolio anda sendiri. 878 00:40:11,490 --> 00:40:13,370 >> Tetapi akhir sekali sudah tentu, adalah project-- akhir 879 00:40:13,370 --> 00:40:16,960 peluang untuk melakukan sebahagian daripada apa-apa menarik minat anda untuk menyelesaikan masalah di sini 880 00:40:16,960 --> 00:40:20,970 atau di luar menarik minat anda bahawa entah bagaimana diilhamkan 881 00:40:20,970 --> 00:40:22,670 dengan pengalaman yang dipelajari di dalam kelas. 882 00:40:22,670 --> 00:40:26,140 >> Dan kelas, seperti yang anda tahu, memuncak dalam apa yang dipanggil CS50 Hackathon 883 00:40:26,140 --> 00:40:29,330 dan CS50 Adil dan apa-apa bilangan acara kebudayaan lain 884 00:40:29,330 --> 00:40:31,770 sepanjang semester yang membolehkan anda untuk melibatkan diri 885 00:40:31,770 --> 00:40:33,460 antara satu sama lain dan kakitangan kursus ini. 886 00:40:33,460 --> 00:40:37,170 >> Sebagai contoh, di Bomba dan Ais dalam Sitar tahun ini, baik, pada petang Jumaat, 887 00:40:37,170 --> 00:40:39,220 kami menjemput kira-kira 50 pelajar untuk makan tengah hari, sesiapa 888 00:40:39,220 --> 00:40:41,190 ingin menyertai kami, diri saya sendiri, dan kakitangan, 889 00:40:41,190 --> 00:40:44,840 dan rakan-rakan kami dari industri dan alums untuk berbual mengenai kehidupan dalam dunia sebenar 890 00:40:44,840 --> 00:40:46,670 dan di luar sambil menikmati makan tengah hari yang baik. 891 00:40:46,670 --> 00:40:49,050 Pada Hackathon akan anda melihat imej tersebut 892 00:40:49,050 --> 00:40:53,740 kerana ini, termasuk banyak candy-- dan pada 2014 untuk time-- pertama 893 00:40:53,740 --> 00:40:55,096 sayur-sayuran. 894 00:40:55,096 --> 00:40:56,960 >> [Tepuk tangan] 895 00:40:56,960 --> 00:40:58,358 896 00:40:58,358 --> 00:41:02,710 >> Tetapi pada 05:00, adakah tempat kejadian biasanya melihat sesuatu yang kecil seperti ini. 897 00:41:02,710 --> 00:41:05,330 Dan kemudian hanya seminggu atau lebih kemudian, adalah Fair CS50 898 00:41:05,330 --> 00:41:08,270 yang beberapa 2000 plus pelajar dan kakitangan dan fakulti 899 00:41:08,270 --> 00:41:11,910 ahli dari seluruh kampus dan di seluruh kampus tahun ini 900 00:41:11,910 --> 00:41:15,620 datang untuk melihat dan kegembiraan dalam pencapaian pelajar CS50, yang 901 00:41:15,620 --> 00:41:16,140 sekarang adalah anda. 902 00:41:16,140 --> 00:41:19,000 >> Dan sesungguhnya, manakala tahun ini kita akan menjemput dan busing sesiapa 903 00:41:19,000 --> 00:41:22,460 di di Yale yang ingin datang ke Cambridge Sabtu ini untuk CS50 Puzzle 904 00:41:22,460 --> 00:41:26,410 Hari, dan kami akan melakukan perkara yang sama pada bulan Disember untuk CS50 Hackathon 905 00:41:26,410 --> 00:41:30,080 supaya pelajar Harvard dan Yale memakannya sama dalam kedua-dua acara. 906 00:41:30,080 --> 00:41:33,630 >> Kami juga akan mengadakan pameran CS50 dalam Cambridge dan di New Haven tahun ini 907 00:41:33,630 --> 00:41:36,480 supaya pelajar di kedua-dua kampus dan kakitangan dan fakulti 908 00:41:36,480 --> 00:41:39,260 boleh melihat antara satu sama masing-masing pencapaian kampus. 909 00:41:39,260 --> 00:41:41,540 Dan orang-orang pencapaian akan mendorong memori seperti 910 00:41:41,540 --> 00:41:45,440 kerana ini dan ini dan akhirnya ini, di mana anda semua 911 00:41:45,440 --> 00:41:48,460 keluar kelas memakai sedikit sesuatu di mana anda adalah diharapkan 912 00:41:48,460 --> 00:41:52,680 gembira atau bangga untuk mengatakan bahawa saya mengambil CS50. 913 00:41:52,680 --> 00:41:55,220 >> Tetapi sebelum itu dan sebelum kita berkhidmat kek, 914 00:41:55,220 --> 00:41:58,980 kami telah meletakkan together-- terima kasih kepada CS50 pasukan pengeluaran dan diri tertentu 915 00:41:58,980 --> 00:42:03,120 stick, majlis itu satu yang kita gunakan perkara-perkara seperti bagi- apabila kita telah memberikan 916 00:42:03,120 --> 00:42:05,380 bukan sahaja di sini untuk Cambridge tetapi juga ke New Haven 917 00:42:05,380 --> 00:42:08,760 untuk mengumpul hellos sahaja dari kakitangan kursus ini dan semua orang 918 00:42:08,760 --> 00:42:12,640 anda akan bertemu di sini dan di New Haven pada bulan-bulan berikutnya. 919 00:42:12,640 --> 00:42:15,449 >> Izinkan saya untuk memperkenalkan beberapa kakitangan CS50. 920 00:42:15,449 --> 00:42:16,990 Mark Zuckerberg: Adakah yang membuat ia pergi? 921 00:42:16,990 --> 00:42:18,266 Oh, ia akan. 922 00:42:18,266 --> 00:42:20,910 Ia sedang berlangsung. 923 00:42:20,910 --> 00:42:21,570 Ooh. 924 00:42:21,570 --> 00:42:23,170 Yarr! 925 00:42:23,170 --> 00:42:25,350 >> [MUZIK DITAYANGKAN Andy Grammer, "HONEY, I'M  BAIK"] 926 00:42:25,350 --> 00:42:29,672 927 00:42:29,672 --> 00:42:32,152 >> MARY: Ini adalah Caitlin. 928 00:42:32,152 --> 00:42:34,515 Itulah Jay, dan saya Mary. 929 00:42:34,515 --> 00:42:35,140 SATO: Hi, guys. 930 00:42:35,140 --> 00:42:35,640 Saya Sato. 931 00:42:35,640 --> 00:42:36,264 MICHAEL G .: Hi. 932 00:42:36,264 --> 00:42:37,181 Nama saya Michael, G. 933 00:42:37,181 --> 00:42:38,014 DOUG LLOYD: Saya tidak. 934 00:42:38,014 --> 00:42:38,540 No. 935 00:42:38,540 --> 00:42:39,310 Saya Doug Lloyd. 936 00:42:39,310 --> 00:42:41,757 Saya tidak boleh percaya bahawa saya memegang gambar diri sendiri yang melekat sekarang. 937 00:42:41,757 --> 00:42:42,340 SPEAKER 4: Hi. 938 00:42:42,340 --> 00:42:42,560 SPEAKER 5: Hi. 939 00:42:42,560 --> 00:42:43,307 SPEAKER 6: Hello. 940 00:42:43,307 --> 00:42:44,023 SPEAKER 7: Hi. 941 00:42:44,023 --> 00:42:44,648 SPEAKER 8: Hey. 942 00:42:44,648 --> 00:42:46,436 Kami melepak di Yale. 943 00:42:46,436 --> 00:42:48,910 Kami benar-benar teruja untuk semester ini kerana ia adalah 944 00:42:48,910 --> 00:42:50,840 pertama kali ia datang ke Yale. 945 00:42:50,840 --> 00:42:53,012 Ia akan menjadi hebat! 946 00:42:53,012 --> 00:42:55,928 >> [MUZIK Bermain] 947 00:42:55,928 --> 00:43:02,190 948 00:43:02,190 --> 00:43:04,664 >> JACOB SCHERBA: Nama saya Yakub Scherba. 949 00:43:04,664 --> 00:43:08,310 Saya teruja untuk mengajar CS50 kerana saya fikir 950 00:43:08,310 --> 00:43:11,429 ia membawa sains komputer untuk orang di dalam dan cara mudah didekati. 951 00:43:11,429 --> 00:43:13,220 SPEAKER 9: Saya benar-benar teruja untuk mengajar CS50 952 00:43:13,220 --> 00:43:17,717 kerana saya mengambil kelas tahun lepas, dan ia adalah salah satu kelas yang terbaik. 953 00:43:17,717 --> 00:43:18,425 SPEAKER 10: Ya. 954 00:43:18,425 --> 00:43:20,476 Nasihat saya adalah anda perlu mengambil CS50. 955 00:43:20,476 --> 00:43:23,350 JACOB SCHERBA: Saya memilih CS kerana Saya rasa ia adalah cara yang menyeronokkan dan kreatif 956 00:43:23,350 --> 00:43:25,314 untuk menyelesaikan masalah dengan cara yang analitikal. 957 00:43:25,314 --> 00:43:28,480 SPEAKER 11: Kembali apabila saya sedikit bayat dan takut sains komputer 958 00:43:28,480 --> 00:43:30,229 dan takut untuk berbuat kejuruteraan dan barangan, 959 00:43:30,229 --> 00:43:34,091 ia adalah kelas keras pertama saya mengambil, dan ia juga adalah kelas kegemaran saya pernah. 960 00:43:34,091 --> 00:43:36,090 DOUG LLOYD: Ini adalah saya tahun kesembilan CS50 pengajaran. 961 00:43:36,090 --> 00:43:37,482 Yang membuatkan saya terdengar begitu lama! 962 00:43:37,482 --> 00:43:38,690 Selalu ada sesuatu yang baru. 963 00:43:38,690 --> 00:43:39,550 Selalu ada sesuatu yang menyeronokkan. 964 00:43:39,550 --> 00:43:43,077 Selalu ada cabaran baru yang dihadapi oleh pelajar baru, dan ia menyeronokkan untuk membantu mereka 965 00:43:43,077 --> 00:43:44,910 dan pengalaman mereka cabaran dengan mereka 966 00:43:44,910 --> 00:43:45,925 dan membantu mereka menyelesaikan masalah mereka. 967 00:43:45,925 --> 00:43:47,955 >> SPEAKER 12: Apabila saya mula-mula belajar bagaimana untuk melakukan CS, 968 00:43:47,955 --> 00:43:49,413 ia adalah seperti belajar kuasa super. 969 00:43:49,413 --> 00:43:53,749 Dan untuk melihat bahawa dalam pelajar-pelajar lain dan untuk membantu mereka melalui proses yang 970 00:43:53,749 --> 00:43:55,665 adalah salah satu yang paling perkara yang bermanfaat yang saya pernah. 971 00:43:55,665 --> 00:43:58,706 >> SPEAKER 7: Saya memilih CS kerana dalam bermula, saya adalah seorang concentrator matematik 972 00:43:58,706 --> 00:44:00,497 dan saya mengambil CS50 dan jatuh cinta dengannya. 973 00:44:00,497 --> 00:44:02,455 Saya juga merasakan bahawa dengan CS, saya boleh membina sesuatu. 974 00:44:02,455 --> 00:44:04,410 Dan itu, saya fikir, adalah aspek benar-benar sejuk. 975 00:44:04,410 --> 00:44:08,156 >> SPEAKER 13: Beberapa nasihat untuk baru pelajar adalah pergi ke waktu pejabat 976 00:44:08,156 --> 00:44:09,573 dan bergaul dengan TFS menggerunkan. 977 00:44:09,573 --> 00:44:11,906 SPEAKER 14: Mula P-SET anda awal, pergi ke waktu pejabat, 978 00:44:11,906 --> 00:44:13,457 menjadi frends dengan TF anda. 979 00:44:13,457 --> 00:44:14,165 SPEAKER 15: Ya. 980 00:44:14,165 --> 00:44:16,164 Semuanya katanya. 981 00:44:16,164 --> 00:44:17,997 SPEAKER 16: Jangan takut untuk meminta bantuan. 982 00:44:17,997 --> 00:44:18,980 SPEAKER 17: Ya. 983 00:44:18,980 --> 00:44:22,052 SPEAKER 18: Mula P-SET anda awal. 984 00:44:22,052 --> 00:44:23,760 SPEAKER 19: Ia adalah satu pengalaman sosial yang besar. 985 00:44:23,760 --> 00:44:25,112 Membuat banyak kawan-kawan dengan cara ini. 986 00:44:25,112 --> 00:44:26,570 SPEAKER 14: Pergi ke bahagian Ia menyeronokkan. 987 00:44:26,570 --> 00:44:28,050 SPEAKER 11: Maksud saya, pergi untuk itu. 988 00:44:28,050 --> 00:44:28,770 Ia benar-benar keras. 989 00:44:28,770 --> 00:44:30,581 Anda akan mendapatkan daripada itu apa yang anda masukkan ke dalamnya, 990 00:44:30,581 --> 00:44:32,580 tetapi ia adalah benar-benar menyeronokkan kelas terutamanya jika anda 991 00:44:32,580 --> 00:44:35,496 sanggup meletakkan masa ke dalamnya, tetapi ia membantu jika anda meletakkan masa ke dalamnya. 992 00:44:35,496 --> 00:44:38,336 Anda akan mendapat lebih banyak daripada itu di kemudian hari. 993 00:44:38,336 --> 00:44:38,960 MIKE: Saya Mike. 994 00:44:38,960 --> 00:44:39,882 CAMILLE: Saya Camille. 995 00:44:39,882 --> 00:44:40,590 HANYA: Saya Hanya. 996 00:44:40,590 --> 00:44:41,310 MATT: Saya Mat. 997 00:44:41,310 --> 00:44:42,140 PETER: Saya Peter. 998 00:44:42,140 --> 00:44:42,620 PHILLIP: Saya Phillip. 999 00:44:42,620 --> 00:44:43,495 PATRICK: Saya Patrick. 1000 00:44:43,495 --> 00:44:45,234 ROB BOWDEN: Saya Rob Bowden. 1001 00:44:45,234 --> 00:44:47,150 BRIAN SCASSELLATI: My Nama SCAS dan this-- 1002 00:44:47,150 --> 00:44:49,958 ALL: --is CS50. 1003 00:44:49,958 --> 00:44:50,806 SPEAKER 20: At Yale. 1004 00:44:50,806 --> 00:44:51,639 SPEAKER 21: At Yale. 1005 00:44:51,639 --> 00:44:52,840 [KETAWA] 1006 00:44:52,840 --> 00:44:54,270 DAVID MALAN: Itu sahaja untuk CS50. 1007 00:44:54,270 --> 00:44:59,000 Kami akan melihat anda dari Yale pada Jumaat, Teka-teki Hari Sabtu ini. 1008 00:44:59,000 --> 00:45:00,475 Cake kini dihidangkan. 1009 00:45:00,475 --> 00:45:01,640 Ini adalah CS50. 1010 00:45:01,640 --> 00:45:05,314 1011 00:45:05,314 --> 00:45:10,992 >> [MUZIK Bermain] 1012 00:45:10,992 --> 00:47:00,434