[Powered by Google Translate] SPEAKER 1: Ini adalah CS50. Jadi saya adalah di mana anda berada kini beberapa tahun lalu, dan apabila saya adalah seorang bayat di masa, saya tidak benar-benar di atas jalan ini melakukan sains komputer, melakukan kejuruteraan. Malah, saya datang ke tempat ini sebagai concentrator kerajaan. Saya pernah di sekolah tinggi kanak-kanak yang suka perkara-perkara seperti sejarah. Saya suka undang-undang perlembagaan, jenis bahasa Inggeris dan matematik, jadi jenis baik bulat, tetapi tidak semestinya mengetahui perkara-perkara yang saya tidak pernah diajar di sekolah tinggi. Dan supaya tahun bayat, saya mempunyai trepidation ini, di mana walaupun saya suka komputer, bermain permainan komputer dan sebagainya, saya pasti tidak pernah memikirkan diri saya sebagai orang komputer, seorang saintis komputer, dan terus-terang, saya fikir rakan-rakan saya di sekolah tinggi yang telah mengambil komputer sains adalah sedikit - Geeks. Dan lagi, apabila saya sampai di sini di kampus, terdapat kursus ini, CS50, dan pada masa, ia mempunyai reputasi ini benar-benar menjadi sesuatu yang berhati-hati. Ia adalah kursus yang baik. Ia adalah kursus yang menyeronokkan. Tetapi anda terpaksa untuk benar-benar mendapatkan kaki itu di pintu. Dan walaupun saya tidak menyeberangi bahawa ambang tahun bayat. Dan saya pergi dalam perjalanan saya menjadi penumpu kerajaan, melalui seberapa banyak prasyarat seperti yang saya boleh, menyeberang mengira perkara untuk gen ed atau teras dan tahun seperti, dan kemudian mahasiswa tingkat kedua, atas sebab-sebab tertentu, saya mendapat sehingga saraf untuk melangkah kaki di Pusat Sains B, di mana CS50. Sebuah komputer yang sangat terkenal dengan nama Brian Kernighan saintis pengajaran di sini bahawa tahun, dan walaupun begitu, saya hanya bersedia untuk benar-benar mengisi kad kajian saya dengan mengambil kelas ini lulus / gagal. Saya melihat sekeliling saya, dan saya menganggap semua orang di dalam bilik ini mendapat tahu cara yang lebih lanjut mengenai sains komputer, kira-kira pengaturcaraan, mengenai komputer. Semua orang mesti pengaturcaraan di dalam bilik ini sejak mereka 12, tetapi sesungguhnya, yang tidak kes itu. Dan jadi hari terakhir, hari Isnin kelima semester bahawa saya mengambil ini lonjakan dan perubahan dari pas / gagal untuk gred surat, dan akhirnya berubah saya kepekatan pada hari yang sama untuk sains komputer. Sekarang yang tidak objektif kami di dalam kelas ini, untuk menjadikan anda semua ke dalam komputer concentrators sains, tetapi benar-benar, untuk mencadangkan bahawa terdapat peluang ini dalam bidang ini dan bidang-bidang lain yang anda mungkin menjadi agak tidak biasa, memandangkan bahawa sekolah tinggi biasanya mengikuti kurikulum agak piawai jalan, tetapi untuk meneroka dalam, pada CS50, ke dalam perairan baru. Dan jika anda sedang duduk di sini, hari ini berfikir anda tidak sebenarnya milik, jadi melakukan kebanyakan rakyat ke kanan dan ke kiri. Malah, pada tahun lepas, 76% daripada pelajar-pelajar di dalam kelas ini yang tidak mempunyai pengalaman terdahulu. Jadi bertentangan dengan apa yang anda mungkin berfikir, kebanyakan orang duduk di sekeliling anda hari ini tidak, pada hakikatnya, mempunyai apa-apa pengalaman. 18% telah mengambil satu CS kelas, dan 6% telah diambil dua atau lebih. Sementara itu, kami meminta pelajar kami setiap tahun untuk menggambarkan diri mereka dari segi tahap keselesaan, dan ini adalah - ada ada definisi satu ini. Anda hanya jenis tahu, jika anda tidak sangat selesa di CS50. Dan tahun lepas, kita mempunyai 55% dalam sepotong pai hijau di sini, sendiri menerangkan sebagai pelajar kurang selesa yang terus-terang kami telah idea why'd mereka membeli-belah kursus pada hari yang pertama, tetapi sama 55% kekal dengan kami sehingga akhir istilah, seperti melakukan 35%, yang berada di suatu tempat di antara mereka lebih selesa dan mereka yang kurang selesa. Jadi apa yang adalah sains komputer? Nah, di sekolah tinggi, dan benar-benar, lebih amnya di luar sana hari ini, ada ini persepsi atau salah faham ini bahawa sains komputer pengaturcaraan. Dan itulah benar-benar salah satu aspek sains komputer, tetapi pengaturcaraan, apa jua bahasa, adalah benar-benar hanya alat bahawa saintis komputer gunakan untuk menyelesaikan masalah, sama ada dalam domain sains komputer atau, semakin hari ini, dalam sains fizikal, alam sains, dalam bidang perubatan, kemanusiaan, untuk menganalisis set data yang besar. Di mana-mana kini terdapat komputer dan data, terdapat peluang untuk memohon pengajaran di dalam kelas seperti CS50. Jadi mari kita menyelesaikan masalah bahawa seorang saintis komputer mungkin pergi tentang menyelesaikan dan cuba untuk meletakkan beberapa jargon, meletakkan beberapa rangka kerja konsep, sekitar apa yang sebaliknya mungkin beberapa idea yang agak abstrak. Jadi ini adalah telefon. Anda tidak melihat perkara-perkara ini terlalu kerap. Kolej masih seolah-olah mempunyai ini di rumah dan asrama, tetapi kembali pada hari itu, apabila anda mahu menggunakan telefon seperti ini, tiada buku alamat elektronik di telefon bimbit anda. Sebaliknya, anda menarik sesuatu yang dikenali sebagai buku telefon, dan buku-buku telefon mempunyai kira-kira 1,000 muka surat biasanya. Mereka telah disusun dari A ke Z, dan anda hanya terpaksa untuk mencari halaman yang betul untuk mencari orang yang anda sedang mencari untuk mencari nama mereka dan mereka nombor telefon. Sekarang bagaimana anda pergi tentang mencari seseorang dalam buku ini? Katakan matlamat saya adalah untuk memberikan kawan saya Mike Smith panggilan. Nah, bagaimana saya boleh pergi tentang mencari Mike Smith? Nah, satu pendekatan yang sangat berpatutan, jika naif dan tidak cekap, akan mula di sini, dan mula Melibas halaman empat hingga lima halaman enam halaman, dan untuk menyusun linear, sepanjang satu garis lurus, pergi melalui buku telefon ini, dan juga walaupun ia akan menjadi sangat membosankan, jika Mike Smith adalah dalam ini buku, saya akhirnya akan sampai kepadanya apabila saya akhirnya flip S seksyen buku ini. Kini, sudah tentu, anda tidak perlu untuk menjadi seorang saintis komputer tahu bahawa ini adalah cara yang bodoh menyelesaikan masalah ini. Apa manusia biasa akan lakukan? Dilakukan dengan baik. Jadi, anda akan flip ke tengah, betul-betul? Jadi, anda akan flip kira-kira ke tengah, melihat di sini, dan saya seolah-olah untuk mencari diri dalam seksyen M. Okay, jadi M adalah jelas tidak apa yang saya cari. Mike ke kanan, jadi untuk bercakap, seksyen ini, dan sebagai sebahagian dari kamu mempunyai dilihat sebelum ini, kita boleh benar-benar kini meneruskan pemedih mata ini masalah dalam setengah. Anda benar-benar tidak perlu yang kagum. Mengoyak ia turun jahitan sebenarnya tidak yang keras. Orang sebenar melakukannya dengan cara ini, tetapi hujung jahitan, kita kini mempunyai dua masalah. Setiap yang separuh besar, dan kita benar-benar boleh membuang bahawa separuh daripada masalah jauhnya. Sekarang kita ditinggalkan bukan dengan 1,000 muka surat, tetapi berkata, 500. Jadi sekarang apa yang saya lakukan? Nah, manusia biasa akan pergi kira-kira di tengah-tengah sekali lagi, dan saya mendapati diri saya di seksyen R, jadi tidak cukup di sana. Jadi sekali lagi, saya boleh lusuh masalah ini pada separuh. Terima kasih. Jadi sekarang saya hanya mempunyai kira-kira 250 muka surat, dan saya boleh melakukan ini sekali lagi, dan sekali lagi, dan sekali lagi, dan pergi dari 125 turun kepada kira-kira 60 hingga 30, hingga 15, dan sebagainya. Dan akhirnya, saya akan mendapat dikecutkan salah satu halaman S, di mana, jika dia di dalam buku telefon, Mike Smith harus. Sekarang itulah algoritma jelas agak berpatutan, dan ia adalah satu masa algoritma digunakan dalam kes ini, tetapi apa yang kita boleh menyusun mengambil dari itu? Nah, pendekatan pertama, betul, jika naif, walaupun, ia adalah, boleh digambarkan oleh baris ini lurus. Jadi, jika pada paksi-x, di sini kita katakan, ini adalah saiz masalah. Jadi, sebagai paksi x pergi ke kanan, masalah mendapat lebih besar. Apakah maknanya menjadi lebih besar? Dalam konteks masalah ini, lebih banyak muka surat dalam buku telefon. Ada sesuatu yang lebih kita boleh mengukur. Pada paksi-y, masa untuk menyelesaikan. Jadi, sebagai paksi naik, kita menganggap ia mungkin mengambil masa yang lebih. Jadi bahawa pendekatan pertama linear mencari dari satu halaman kepada 1,000 halaman adalah satu prosedur yang linear, algoritma linear atau proses, dan kita boleh menggambarkan ia dengan baris ini lurus. Jika saya menambah satu halaman yang lebih kepada buku telefon, ia akan, dalam terburuk kes, mengambil saya satu halaman lagi flip untuk mencari Mike Smith. Jika saya menambah 100 muka surat, 100 lebih lambungan, atau unit masa. Sekarang saya boleh menjadi pandai sedikit dengan ini. Saya tidak perlu untuk benar-benar menjadikan ia satu halaman pada satu masa. Saya boleh melakukan perkara-perkara seperti dua pada satu masa atau empat pada satu masa, tetapi juga yang tidak semua yang asasnya yang lebih baik. Walaupun ia adalah dua pada satu masa, yeah, yang jenis bergerak garis ini turun sedikit, dan ia bermakna bahawa ia mengambil masa yang kurang, diberikan jumlah yang sama halaman, tetapi ia bukan asasnya yang lebih baik. Tetapi apa yang kita hanya lakukan, dan apa yang anda semua lakukan naluri? Anda sebenarnya mencapai sesuatu yang kecil seperti ini, masa logaritma, mana masalah ini boleh membesar dan berkembang dan berkembang, tetapi kos penyelesaian yang masalah, masa yang diperlukan untuk menyelesaikan masalah itu, tidak berkembang hampir secepat. Ini akan menjadi lengkung logaritma, log n, di mana n adalah hanya dalam saiz masalah itu, bilangan muka surat dalam buku telefon ini. Dan apakah ini bermakna dari segi sebenar? Nah, jika kita mempunyai, seperti, 500 orang di dalam bilik ini sekarang - atau sebaliknya, jika kita mempunyai - metafora pergaulan - tidak berbuat demikian contoh lagi tahun ini - jadi jika kita mempunyai 500 muka surat dalam telefon buku, dan kami menggandakan kepada 1,000, dalam model ini lebih pintar Melibas ke tengah, berapa banyak halaman-tearers ia mengambil masa untuk pergi dari 500 muka surat kepada 1,000? Nah, hanya satu muka surat lusuh tambahan. Jika anda menyerahkan saya buku telefon 2,000 halaman, ada masalah besar. Saya hanya akan lusuh ia satu masa tambahan. Jadi dalam jangka pendek, saiz masalah boleh membesar lebih cepat daripada kos sebenarnya menyelesaikan ia. Sekarang ini adalah hanya satu algoritma tersebut. Terdapat lain kita boleh selesaikan dengan cara yang sama ini. Dan sebagainya mengapa tidak kita melakukan ini - jika anda akan Humor saya, walaupun canggung sini dalam Sanders, pergi ke hadapan, semua orang, jika anda boleh, dan berdiri di tempat. Seperti yang anda lihat pada skrin di sini, ini adalah satu algoritma, proses, komputer program, jika anda akan, yang akan dilaksanakan oleh manusia, yang mempunyai hanya tiga langkah. Kami sudah berada pada satu langkah, anda berdiri. Dan kini berfikir untuk diri nombor satu. Itu adalah nombor semasa anda. Semua orang di sini adalah nombor satu. Langkah kedua, pasangan dengan kedudukan seseorang dan nombor anda bersama-sama, dan kemudian mengambil jumlah ini sebagai nombor baru anda. Salah satu daripada anda harus duduk, kemudian mengulangi. Pada ketika ini, kurang dan kurang orang harus berdiri. Ini adalah di mana ia mendapat lebih janggal. Seseorang di sini, di sini. Bahagian yang paling teruk adalah, anda juga perlu sangat lisan melakukan aritmetik di hadapan beratus-ratus Harvard undergrads. Okay, sedikit pepijat sini. Okay, apa nombor anda? Sembilan. Okay. Apakah nombor anda? 179. Okay, baik. Jadi 188. Jadi anda semua boleh duduk. Apakah nombor anda? 118. Sesetengah undergrad pintar mula melakukan matematik. Okay, 118, 188. Apa lagi yang kita dapat? 71. 79. Okay. Dan? 47, yang, tenaga pengajar, yang memberikan kita berapa banyak? 705 adalah jawapannya. Dan itulah, pada hakikatnya, betul-betul betul. Tidak, kita sebenarnya sedikit off sana, tetapi bagaimana ini harus telah bekerja? Apa yang sepatutnya hanya berlaku? Jadi pada setiap lelaran algoritma ini, kita bermula dengan beberapa nombor orang yang berdiri, dan yang adalah jumlah, n, pada mulanya. Kemudian separuh daripada anda duduk, dan kami pergi ke n lebih dua. Kemudian separuh daripada anda duduk, kita pergi ke n lebih empat, n lebih lapan, lebih 16, dan sebagainya, sehingga, walaupun ia jenis hancur sana pada akhir, dalam teori, terpaksa semua orang berpasangan luar balkoni, dan mezanin, dan orkestra di sini, kita akan mempunyai hanya satu kedudukan orang tunggal, dengan jumlah nilai, dalam kes ini, 705. Sekarang apakah itu bermakna, walaupun, untuk masa berjalan? Nah, berfikir tentang jika saya, sebagai manusia, telah melakukan ini secara manual. Saya akan mula agak naif tetapi betul dengan satu, dua, tiga, empat, lima, enam, tujuh, lapan, dan sebagainya; mengambil sekian lama. Jadi saya boleh melakukan lebih baik, kan? Di sekolah rendah, anda tidak hanya mengira orang. Anda mengira dalam berdua-dua. Jadi dua, empat, enam, lapan, sepuluh, dua belas. Dan yang mendapat lebih cepat, tetapi kini asasnya, dengan memanfaatkan kecerdasan kolektif semua orang di dalam bilik ini, kita boleh mencapai lengkung banyak lebih seperti ini, di mana sekarang, bilangan orang di dalam bilik ini boleh double, 700 orang lagi berjalan ke dalam bilik ini untuk 1,400 orang, tetapi ia hanya akan membawa kita lebih satu lelaran algoritma ini untuk menyelesaikan. Dan sebagainya semakin, hari ini, apabila kita mempunyai data-data yang besar di set Facebook dan Google, dan sebagainya, ia menyelesaikan masalah dengan sedikit ini wawasan, ini sedikit kepandaian, yang membolehkan kita semakin melakukan banyak, perkara yang lebih berkuasa dengan komputer hari ini. Jika anda seperti ini jenis perkara, anda mungkin telah dilihat pada Facebook CS50 Hari Teka-teki sendiri, datang Sabtu ini. Jika anda ingin untuk mengambil bahagian dalam sesuatu seperti ini, di mana anda dan dua, atau tiga, atau empat pasukan empat mahu menyelesaikan beberapa teka-teki sebagai salah satu ini, anda berpeluang untuk memenangi beberapa hadiah hebat, antaranya adalah Wii, dan beberapa kad hadiah, dan beberapa Facebook lain Barangan Istimewa Sabtu ini, tengahari hingga 3:00. Pergi untuk cs50.net/rsvp bagi apa-apa. Dan slaid ini adalah dalam talian jika anda ingin untuk bermain-main. Teka-teki tahun ini hendaklah baru. Anda boleh melihat di dalam kelas, juga, semua kamera yang lebih tahun ini. Jadi, bukan sahaja kursus akan difilemkan dalam cara yang biasa, CS50 juga mungkin mengambil bahagian dalam dokumentari mengenai pendidikan tinggi yang melihat pengalaman transformatif bahawa pelajar boleh mempunyai hari ini dalam kursus pengajian ijazah. Jadi, ke arah akhir ini, bukan sahaja kita akan penggambaran untuk itu, kita akan penggambaran serta untuk, semakin, penonton talian kami, serta, pada ketika, ini penonton di sini. Jadi kami mengalu-alukan kepada kelas tahun ini pelajar Harvard sekolah lanjutan kami, sekolah siswazah reka bentuk, pendidikan, sekolah perniagaan, Kennedy Sekolah, sekolah undang-undang, serta bilangan pelajar dari Belmont, Lexington, Newton, dan Watertown Sekolah Tinggi. Selamat datang kepada anda semua. Di samping itu, tahun ini, kerana anda mungkin telah mendengar, Harvard, dan MIT, dan Berkeley kini telah memeterai perkongsian kerjasama atas inisiatif dipanggil EDX, yang merupakan inisiatif untuk membuka pendidikan kepada semua lebih ramai orang dalam talian dan asasnya, mula melakukan penyelidikan mengenai skala yang lebih luas tentang bagaimana orang belajar. Dan sebagainya CS50 akan menjadi kursus pertama kolej menyertai dalam bahawa inisiatif, serta, yang bermakna anda akan mempunyai akses kepada semua lebih alat, semua kandungan kurikulum yang lebih, semua video lebih kandungan sebagai hasil, serta pagi semalam, 53.019 orang yang mempunyai didaftarkan untuk mengambil CS50 bersama-sama dengan anda tahun ini di Internet. Jadi apakah ini bermakna, khususnya, adalah bahawa kakitangan pengajaran dan saya mempunyai menghabiskan agak sedikit masa musim panas ini bersedia untuk jatuh, kedua-dua di kampus dan di luar, supaya kita boleh mula untuk membina korpus menarik, menarik, melibatkan kandungan pendidikan, yang memberi tumpuan khusus kepada lebih intim pengangkut bahan yang agak kompleks. Jadi di samping kuliah kursus, dan bahagian, dan perkara-perkara walkthroughs dipanggil, yang kita akan mengkaji semula dalam hanya sedikit, kita juga akan mempunyai ini seluar tahun ini yang membolehkan anda untuk melibatkan diri dengan kursus dari sudut yang berbeza semua bersama-sama. Jadi mari kita gunakan ini sebagai satu peluang untuk mengambil mengintip cepat pada satu bahawa membincangkan ini tanggapan binari. Jadi, dalam bidang sains komputer terdapat perkara-perkara yang dipanggil algoritma, dua yang kita hanya mengambil lihat di - prosedur untuk menyelesaikan masalah ini. Tetapi pada akhir hari, anda perlu untuk mewakili maklumat entah bagaimana, dan anda perlu untuk mewakili dalam cara yang komputer boleh memahami. Dan walaupun jika anda tidak benar-benar memahami komputer, dan anda berada dalam bahawa 76% sekarang, anda mungkin mempunyai beberapa perasaan yang kabur bahawa komputer entah bagaimana berurusan dalam sifar dan orang-orang yang, sistem binari, jadi untuk bercakap. Sekarang mengapa bahawa kes? Nah, ternyata apabila komputer pertama kali datang kira-kira, jika anda diperlukan untuk mewakili maklumat, anda boleh melakukannya dengan elektrik, dan walaupun ini adalah sedikit daripada melampaui batas, cara yang amat mudah maklumat rakaman sama ada dengan beralih elektrik yang pada, satu dalam binari, jadi untuk bercakap, atau beralih bahawa elektrik keluar. Jadi Barry, jika anda tidak keberatan, bolehkah kita meredupkan sepenuhnya hanya seketika? Ini di sini adalah sifar binari yang sangat tanpa sebab. Baiklah, jika kita menghidupkan lampu sandaran, kini Sanders Theatre mewakili nilai perduaan satu. Malangnya, dengan hanya sedikit satu, dengan hanya satu set lampu, kita hanya boleh mewakili dua nombor di dunia, sifar dan satu, dan ia akan menjadi baik jika komputer boleh mengira sedikit lebih tinggi daripada itu, tetapi sesungguhnya, mereka boleh. Jadi biarlah saya tarik sehingga pada skrin di sini kawan kita, Nate Hardison, yang akan memberikan kita lihat lebih cepat tentu hanya beberapa minit pada ini tanggapan binari. Nate HARDISON: Kembali apabila anda belajar bagaimana untuk membaca dan menulis nombor, anda belajar tentang angka sifar hingga sembilan. Untuk menulis nombor bulat yang lebih besar daripada sembilan, anda belajar bahawa semua yang anda perlu lakukan telah menggunakan beberapa kombinasi digit ini, seperti dalam 52 dan 437. Jadi ini cara menulis nombor mempunyai nama, notasi perpuluhan. Mengapa perpuluhan? Nah, akar Latin perpuluhan, Deca, bermakna 10, dan apabila anda mempunyai 10 digit dalam sistem notasi anda, 10 menjadi beberapa yang agak istimewa. Mari kita lihat pada nombor 437 ditulis dalam notasi perpuluhan untuk memahami mengapa. Kita boleh memecahkan sehingga 437 ke 400 ditambah 30 ditambah 7. Kita boleh mengambil ia selain lebih, supaya kita telah mendapat empat kali 100 ditambah 3 kali 10 ditambah 7 kali 1. ingat belajar tentang tempat orang, tempat 10s, 100s tempat, dan sebagainya? Ini adalah betul-betul di mana yang datang dari. Dan akhirnya, kita dapat melihat bagaimana kita telah mendapat sekumpulan kuasa 10 tertanam dalam sini. Kami telah mendapat 4 kali 10 ke 2 campur 3 kali 10 1 campur 7 masa 10 hingga sifar. Jadi sekarang anda lihat mengapa 10 adalah nombor khas dalam notasi perpuluhan. Malah, kita telah mendapat nama untuk itu. Ia dipanggil asas, kerana ia adalah asas eksponen dalam kami aritmetik sini. Notasi perpuluhan bukan satu-satunya cara untuk mewakili nombor. Malah, walaupun kita menyingkirkan dua digit melalui sembilan, kita masih boleh mewakili semua nombor yang kita dapat dengan perpuluhan. Jadi sekarang kita mempunyai dua digit, sifar dan satu, dua adalah nombor khas kami, asas sistem notasi kami. Nama sistem notasi ini dipanggil binari, sejak awalan bi bermakna dua. Jadi sebaliknya, sekarang, mempunyai orang, tempat dan tempat 10s, dan sebagainya, kita kini mempunyai tempat yang, tempat berdua-dua, tempat merangkak, dan sebagainya, pergi oleh kuasa dua. Jadi mari kita lihat ini dengan melakukan pengiraan beberapa. Jadi sifar masih sifar, dan satu masih salah. Walau bagaimanapun, kini bahawa kita telah mendapat tempat berdua-dua bukan tempat 10s, 10 mewakili nombor dua. Untuk mendapatkan tiga, kami menambah satu itu, dan mendapatkan 11. Empat, kerana kini ada tempat yang merangkak, diwakili oleh 100. Lima ialah 101. Enam adalah 110. Tujuh ialah 111. Lapan, sekali lagi, mempunyai tempat sendiri. Jadi ia adalah 1000. Dan saya fikir anda mendapat titik. SPEAKER 1: Jadi ini adalah untuk mengatakan apa yang komputer lakukan dan apa yang binari adalah sebenarnya tidak berbeza daripada apa yang kita telah ambil untuk diberikan bagi sesetengah tahun, kan? Kembali di sekolah gred, anda belajar untuk mengira dengan tepat dalam fesyen bahawa Nate dicadangkan, tetapi anda mungkin tidak benar-benar berfikir tentang sejak itu, hakikat bahawa terdapat tempat ini yang, tempat 10s, dan 100-an tempat, dan itulah agak sewenang-wenangnya. Dan sesungguhnya, komputer hanya menggunakan asas yang berlainan. Tetapi pada akhir hari, sebenarnya fizikal mewakili tanggapan ini sifar dan satu, anda jelas tidak hanya menghidupkan lampu di dalam dan luar semestinya. Yang perlu anda lakukan pada skala bijian lebih halus. Dan oleh bijian halus, anda mungkin ingat ini mainan bodoh sedikit dari zaman kanak-kanak, Kusut Willy dan zarah magnet sedikit. Zarah Jadi magnet adalah sesuatu yang anda boleh menyelaraskan dalam beberapa arah yang berbeza, mungkin utara-selatan atau selatan-utara. Dan begitu banyak jelmaan fizikal teknologi hari ini yang menggunakan perduaan, yang menggunakan sifar dan orang-orang yang hanya mempunyai kemagnetan di bahagian dalam yang menjajarkan perkara ke bawah atau ke bawah-up, sekali gus mewakili sifar atau satu, masing-masing. Jadi sesungguhnya, mari kita beralih daripada abstrak di sini, dan melihat dalam apa pemacu keras komputer yang lebih tradisional. Ini berlaku untuk menjadi sedikit lebih besar pada skrin, bahawa ia dari desktop komputer, komputer riba tetapi hari ini masih mempunyai teknologi yang sama, tetapi secara beransur-ansur digantikan oleh perkara-perkara yang lebih canggih yang sebenarnya telah tidak bergerak bahagian - bahagian dalam, kemudian, cakera keras. SPEAKER 2: cakera keras adalah di mana PC anda menyimpan kebanyakan data tetap. Untuk berbuat demikian, data bergerak dari RAM bersama-sama dengan isyarat perisian yang memberitahu cakera keras bagaimana untuk menyimpan data. Litar pemacu keras menterjemahkan isyarat kepada voltan turun naik. Ini, seterusnya, mengawal bahagian yang bergerak cakera keras, beberapa daripada beberapa bahagian yang bergerak kiri dalam komputer moden. Beberapa isyarat mengawal motor, yang pinggan-pinggan sekolah logam bersalut. Data anda sebenarnya disimpan atas pinggan-pinggan. Isyarat lain menggerakkan kepala baca-tulis untuk membaca atau menulis data pada pinggan-pinggan. Jentera ini begitu tepat bahawa rambut manusia tidak dapat melepasi antara kepala berputar pinggan-pinggan, tetapi ia semua berfungsi pada kelajuan yang hebat. SPEAKER 1: Jadi kita kini mengezum masuk pada apa yang sebenarnya berlaku di atas ini pinggan-pinggan dalam segi kemagnetan, kita mempunyai ini kedua dua kelihatan. SPEAKER 3: Mari kita melihat apa yang kita hanya lihat dalam gerak perlahan. Apabila nadi elektrik yang ringkas dihantar ke kepala baca menulis, ia lambungan elektromagnet kecil untuk sebahagian kecil daripada kedua. Magnet mewujudkan satu bidang, yang mengubah kekutuban kecil, kecil sebahagian daripada zarah logam yang kot setiap permukaan pinggan. Satu siri corak kawasan-kawasan yang dikenakan kecil pada cakera mewakili sedikit tunggal data dalam sistem nombor binari yang digunakan oleh komputer. Sekarang jika semasa menghantar satu cara melalui kepala baca menulis, kawasan adalah polarisasi dalam satu arah. Jika arus dihantar dalam arah yang bertentangan, polarisasi diterbalikkan. Bagaimana anda mendapatkan data dari cakera keras? Hanya menterbalikkan proses. Jadi ia adalah zarah pada cakera yang mendapat semasa dan baca-tulis kepala bergerak. Meletakkan bersama-sama berjuta-juta ini segmen bermagnet, dan anda telah mendapat fail. Sekarang keping fail tunggal boleh bertaburan di seluruh pinggan-pinggan memandu, jenis seperti mes kertas di atas meja anda. Jadi fail tambahan khas menjejaki di mana segala-galanya adalah. Jangan anda ingin anda mempunyai sesuatu seperti itu? SPEAKER 1: Sesungguhnya. Jadi kita mempunyai keupayaan untuk mewakili maklumat ini, nombor pada tahap yang sangat rendah. Kami mempunyai cara fizikal mewakili bahawa perkara yang sama, tetapi kita tidak boleh benar-benar lakukan semua yang banyak faedah lagi, selain daripada mungkin beberapa aritmetik dan matematik. Kita tidak mempunyai cara mewakili setakat perkara-perkara seperti huruf abjad, supaya kita manusia boleh berkomunikasi, menggunakan alat-alat yang sama. Tetapi bersyukur, wujud pengekodan, corak sifar dan orang-orang yang yang mewakili membina tahap yang lebih tinggi seperti A dan B, dan C, dan keseluruhan ayat, dan perenggan, dan sebagainya. Dan begitu ASCII, yang merupakan singkatan yang merujuk kepada sistem ini kod di mana satu nombor mewakili sesuatu surat tertentu - misalnya, nombor yang kita tahu sebagai nilai perpuluhan 65 dikenali sebagai surat modal A ke komputer. Nilai perpuluhan 97 di dalam komputer dikenali sebagai huruf kecil. Dan apakah yang benar-benar bermakna? Nah, walaupun Nate, masa lalu, hanya dihitung sehingga dari sifar hingga lapan, jika kita terus mengira sehingga 65, atau lebih lanjut, kepada 97, corak sifar dan orang-orang bahawa dia akan dilukis pada skrin akan menjadi tepat apa komputer digunakan untuk mewakili huruf A dalam semua topi, atau surat dalam huruf kecil. Dan sesungguhnya, ada skim keseluruhan ini. Ini adalah, pada pandangan pertama, carta besar daripada pengekodan, tetapi jika anda memberi tumpuan hanya pada separuh yang betul di sini, notis dalam ruangan ini tengah, kita mempunyai tanggapan nombor diikuti oleh surat. Dan di atas, kita mempunyai 32, dan char watak, mana 32, integer, sekarang merujuk, nampaknya aksara ruang bar. Apabila anda mendapat aksara ruang bar pada laptop anda, apa yang anda benar-benar penghantar merupakan nombor, corak sifar dan orang-orang, aliran elektrik, jika anda akan, yang mewakili sifar dan orang-orang itu, bahawa komputer kemudian menafsirkan sebagai watak ruang pada skrin. Tanda seru adalah 33. Petikan berganda adalah 34. Dan jika kita tatal ke bawah di sini di sebelah kanan, kita lihat bahawa 65 memang A, dan 97 adalah sememangnya huruf kecil a. Jadi sekarang kita mempunyai skim pengekodan, kita boleh mula untuk mengeja perkara keluar. Malah, komputer biasanya meluahkan diri mereka dalam unit standard, tidak menggunakan sedikit individu, yang sekali lagi, tidak semua yang berguna kepada hanya mewakili sifar atau satu, lampu pada atau di luar, tetapi sebaliknya, menggunakan jujukan bit. Dan unit yang paling biasa ukuran, seperti yang anda mungkin tahu, atau sekurang-kurangnya disimpulkan, adalah satu bait. Bait adalah hanya lapan bit, lapan sifar atau yang berturut-turut. Jadi, kita boleh mula ejaan perkara keluar. Dan sebagainya jika kita boleh, mengapa tidak mencuba ini sedikit kolektif sini? Adakah terdapat lapan orang di dalam bilik ini yang akan sanggup untuk tampil di atas pentas? Anda perlu selesa muncul pada kamera, tetapi anda tidak benar-benar memerlukan tahu, jika apa yang berlaku hanya lagi. Saya melihat seorang sukarelawan di sini. Dua, tiga, empat, lima, enam, tujuh, dan bagaimana kira-kira lapan? Datang di atas. Jadi anda adalah kira-kira untuk mewakili satu bait orang. Biar saya anda telah tempat 128s, anda tempat 64s, anda tempat 32S. Tetapi kita akan sangat cepat perlu untuk membalikkan ini. Jadi biarlah saya bertemu dengan kamu semua di sana. Dan anda perlu berada di tempat 128s sepanjang jalan ke atas, sini banyak seperti tempat beratus-ratus atau beribu-ribu tempat akan menjadi lebih jauh ke kiri, kita mahu placeholder terbesar berada di sini di sebelah kiri juga. Kami mempunyai 64s, 32, 16, 2s 8s, 4s, dan 1s - cemerlang. Jadi sekarang kita mempunyai - okay, anda boleh membantu saya. Jadi sekarang kita mempunyai - apa nama anda? Joanne: Joanne. SPEAKER 1: Jadi Joanne dan saya kini akan menasihati lelaki ini tentang bagaimana kita boleh pergi tentang ejaan sesuatu yang keluar. Jadi pada belakang helaian kertas mereka, mereka mempunyai lembaran menipu sedikit yang akan memberitahu mereka sama ada mereka mewakili sifar atau satu. Dan mengapa tidak, kesederhanaan, kami akan mewakili sifar dengan hanya berdiri di sana canggung. Sangat baik. Atau satu dengan mengangkat tangan anda, yang mewakili satu. Dan mari kita lihat jika kita tidak boleh mengeja keluar frasa empat watak di sini. Jadi teruskan sekarang, sukarelawan, dan melaksanakan satu pusingan dengan mengangkat tangan anda jika anda seorang satu, atau menyimpan ia ke bawah jika anda sifar. Jadi sekarang bahawa kita mempunyai ketiga-tiga tangan sehingga, apa nombor, orang lain, mereka sebenarnya mewakili? Okay, 67. Mengapa? Nah, kewarasan cepat check. Tempat 64s, kerana ia adalah salah satu. Itulah seperti satu kali 64, ditambah 1 kali dua, jadi itulah 66, ditambah 1 kali 1. Itulah campur 1, jadi 67. Jadi sekarang ini lelaki secara kolektif mewakili 67, yang nampaknya mewakili apa di sini dalam ASCII? Okay, jadi C. Baiklah. Jadi sekarang mari kita meneruskan untuk pusingan dua. Semua orang bermula dengan tangan mereka, dan kemudian pusingan kedua. Sebenarnya, terdapat tidak banyak peranan di sini, saya rasa, tetapi kita akan berpura-pura. Jadi pusingan kedua, meningkatkan atau menurunkan tangan anda. Semua hak. Penonton, apa yang kita sekarang? Menyatakan ialah 83. Jadi anda boleh melakukan matematik. Tetapi bagi sesiapa yang tangan adalah sehingga, anda menambah dalam bilangan yang mereka wakili. Jadi sekarang kita mempunyai 83. Mari kita mengembangkan lembaran menipu sedikit, dan kita kini mempunyai - ini mungkin jelas di mana kita pergi di sini, tetapi walau bagaimanapun, pusingan tiga. Okay, pusingan tiga adalah baik untuk pergi ke sana, jadi pusingan tiga, apa nombor lelaki ini kini mewakili? Okay, saya mendengar 53, yang kini mewakili - menarik. Sekarang mengapa ini jenis hasil kaunter-intuitif, bukan? Jika kita mahu untuk mewakili lima - kita semua mungkin tahu di mana ini akan - kenapa saya tidak hanya meningkatkan tempat merangkak dan tempat orang-orang? Nah, kita menyedari bahawa terdapat perbezaan, pada asasnya, antara bagaimana komputer menafsirkan bit ini. Jika anda cuba untuk mewakili nombor lima, maka benar-benar, kita hanya meningkatkan nombor tangan anda empat dan meningkatkan nombor tangan satu. Tetapi kita tidak mewakili nombor tersebut di sini. Konteks di sini di atas pentas adalah bahawa kita sedang mewakili aksara atau aksara, dan dalam konteks ini, komputer telah menyedari bahawa oh, ini corak bit tidak beberapa sahaja. Ia sebenarnya mewakili konsep tahap yang lebih tinggi. Dalam kes ini, surat abjad. Jadi hakikat bahawa ia kini mewakili nombor lima dengan nilai 53 adalah kerana dalam ASCII, perkara yang kita estetik lihat sebagai nombor lima itu sendiri memerlukan corak bit - kerana mengapa? Nah, dunia hanya memutuskan untuk menggunakan nombor yang lebih rendah, sifar, satu, dua, tiga untuk apa yang kelihatan menjadi perkara-perkara yang agak samar-samar. Dan sesungguhnya, ini adalah watak-watak yang tidak pada keyboard. Ungkapan khas yang anda perlukan dalam komputer untuk melakukan perkara-perkara yang menarik, tetapi manusia tidak pernah sebenarnya menaip mereka. Jadi 53, sesungguhnya, mewakili lima. Kini hanya sebagai cek kewarasan akhir, apakah nombor yang sepatutnya mereka mewakili dalam hanya seketika? Okay, jadi 48. Dan sememangnya, pergi ke hadapan, 4 pusingan. 16 campur 32 memang 48. Dan sebagainya pusingan besar tepukan, jika kita dapat, lapan sukarelawan kami di sini. Sangat baik dilakukan. Apa-apa arahan adalah baik. Jadi kita kini mempunyai cara yang bukan sahaja memikirkan tentang bagaimana untuk mewakili data, dan sebenarnya mewakili fizikal, tetapi juga melakukan lebih tinggi tahap perkara di atas. Dan sesungguhnya, ini akan menjadi tema sepanjang sains komputer membina lebih dan lebih menarik dan kompleks perkara di atas idea-idea yang agak mudah - dalam kes ini, hanya sifar dan orang-orang. Dalam segi mengapa ini berguna, baik, walaupun dalam kursus seperti ini, kita akan memberi tumpuan kepada asas-asas, dan pengaturcaraan, dan penyelesaian masalah masalah, anda boleh pergi dalam bidang sains komputer dalam apa-apa bilangan arahan. Dalam kes ini di sini, ini adalah carta yang anda mempunyai di halaman belakang anda Panduan tidak rasmi CS di Harvard, satu cetakan dua hari ini. Ini menunjukkan banyak arahan yang berbeza di mana anda boleh pergi selepas kursus seperti ini - belajar tentang kecerdasan buatan, tentang grafik, kira-kira pembelajaran mesin, tentang bahasa itu sendiri. Sedarlah, terlalu, bahawa terdapat lagi laluan lain. Terdapat laluan yang lebih matematik dalam bidang sains komputer. Jika anda tidak dapat untuk mengambil sesuatu seperti CS50 jatuh ini, terdapat kursus pengenalan pada musim bunga, Sains Komputer 1, misalnya, adalah satu lagi di jalan untuk dunia baru ini. Kini sebagai mengetepikan, dalam kepentingan menyelesaikan masalah yang berkaitan dengan kursus, merealisasikan CS50 set keluar sedikit masa lalu untuk cuba menyelesaikan salah satu daripada masalah-masalah ini, masalah yang dikenali sebagai my.harvard, yang ramai di antara anda mungkin menggunakan untuk benar-benar kedai untuk kursus, tetapi jika tidak, menyemak alat seperti ini, serta lain-lain keturunan bahawa sesetengah pelajar dan kakitangan kami yang lalu telah mencipta. Tetapi dalam Kursus Harvard, yang merupakan alat berasaskan web, sesuatu yang anda akan mampu merekabentuk dan menggerakkan diri kamu, serta lagi perkara-perkara lain juga menjelang akhir semester, sedar bahawa ini membina atas set data terbuka. Dalam kes ini, sudah tentu, katalog, dan membolehkan pelajar dalam kes ini untuk meneroka satu set data yang agak kompleks. Kami digali malam tadi beberapa statistik yang berdasarkan ribu beberapa orang yang telah menggunakan ini sejak beberapa hari lepas. Jika anda telah tertanya-tanya untuk mengetahui berapa banyak kursus-kursus yang kawan-kawan anda sebenarnya cenderung untuk membeli-belah, juga, hari ini data ini menunjukkan bahawa 7,6 adalah purata bilangan kursus atas senarai membeli-belah seseorang. Dan sekarang saya akan memberikan anda juga statistik bilangan yang paling kursus pada senarai membeli-belah seseorang - dan kita semua mungkin tahu seseorang seperti ini. 201 adalah rekod tahun ini. Sekarang beberapa bekas pelajar dan kakitangan kami sebenarnya meletakkan bersama-sama klip melukis sekeping gambar untuk anda apakah ini jalan sains komputer dan CS50 sendiri. Biar saya pergi ke hadapan dan tarik sehingga, terima kasih kepada Encik Harvahd di sini, video yang dihasilkan oleh beberapa orang terdahulu kamu, jika kita boleh menyimpan lampu untuk ini. [Bermain muzik] SPEAKER 1: Saya tidak mempunyai idea yang akan berlaku. Jadi kelihatan lebih serius pada apa yang terletak di hadapan. Jadi dari segi jangkaan kursus ini, anda memang dijangka menghadiri atau menonton kuliah kursus, mengemukakan lapan set masalah, mengambil dua kuiz, mengemukakan projek akhir. Dari segi gred, menyedari bahawa komen saya di pembukaan tentang lulus-gagal, sesuatu yang kita amat mengambil jantung di CS50 - tidak ada hampir cukup budaya di Harvard mencuba sesuatu dan risiko kegagalan. Sesungguhnya, kita mempunyai bilangan pelajar, dan diri saya khususnya, yang merupakan bimbang tentang mencederakan PNG anda, atau mendapat B dalam sesuatu seperti CS50, dan peluang untuk mengambil kursus seperti ini dan kursus pintu masuk yang lain pada tahap pengenalan lulus / gagal adalah satu peluang yang sangat digunakan sepenuhnya di ini kolej secara umum. Dan jadi sila tahu, walaupun saya mendaftar dalam kursus ini pada mulanya untuk lulus / gagal kredit sahaja, dan walaupun saya melakukan suis pada akhir hari, ia adalah mereka lima minggu awal, sehingga hari Isnin kelima semester, yang merupakan potong, yang membenarkan saya untuk benar-benar meletakkan kaki ke dalam baru ini perairan, dan sebenarnya cuba sesuatu yang sangat tidak dikenali dan sangat tidak selesa bagi saya pada masa itu. Jadi dari segi sekarang apa peranan pelbagai sudut yang anda boleh pendekatan kursus ini berkhidmat - jadi kuliah. Ia terpulang kepada anda. Jika anda terlibat dengan kita orang di tempat ini, sesungguhnya, kita tahu statistik bahawa kira-kira 40% daripada anda akan jenis datang dan pergi ke atas kursus semester, dan 10% daripada anda, kami tidak akan melihat lagi selepas hari ini. Dan itulah sempurna halus, untuk menjadi jujur. Salah satu ciri-ciri yang menentukan CS50 adalah bahawa terdapat- sumber terkira, beberapa yang kita akan gemeretuk melalui dalam hanya seketika, termasuk kuliah dan bahagian, dan perkara-perkara yang dipanggil walkthroughs, dan pejabat jam, dan sebagainya, dan ia adalah lebih banyak sumber daripada pelajar biasa perlu atau fizikal boleh mengambil kesempatan daripada, tetapi itu kerana gaya pembelajaran yang berbeza bahawa mana-mana badan pelajar menjelma. Dan demikian dalam kuliah, peranan utama seperti yang saya lihat ia tidak adalah untuk menolak secara lisan keluar bahan yang agak kompleks dan semestinya menyampaikan semua selok-belok asas-asas yang kita akan meneroka semester ini, tetapi sebaliknya, untuk melakukan perkara-perkara seperti yang kita telah lakukan setakat ini sudah, contoh-contoh melibatkan manusia di atas pentas cuba untuk melukis gambaran mental, dan juga mencipta, berani saya katakan, beberapa detik-detik dilupakan, supaya walaupun anda bergelut dengan topik-topik tertentu, anda mempunyai kenangan ini, seperti oh, walaupun yang agak abstrak, matematik, saya tersesat dengan membawa satu, seperti, ia benar-benar, pada akhir hari, tidak semua yang berbeza kepada sesuatu saya sudah tahu. Dan sebagainya peranan bahawa kuliah akan berkhidmat sama ada dalam orang di sini di Sanders atau talian pada video adalah benar-benar menetapkan peringkat mental untuk anda setiap minggu untuk konsep dan pelbagai masalah yang kita akan terjun ke dalam. Dari segi konsep tahap yang tinggi, kebanyakan kata-kata ini mungkin mengalir lebih kepala buat masa ini. Dan itulah denda. Anda yang akan datang ke kursus yang lebih selesa akan tahu beberapa topik-topik ini, tetapi biasanya bahawa 10% kelas yang mereka mempunyai latar belakang yang lebih, mengambil AP sains komputer, pengaturcaraan sejak mereka 12, menyedari bahawa akan ada peluang dalam seksyen dan masalah set untuk pergi semua lebih mendalam ke dalam pelbagai topik, mengisi apa-apa jurang anda mungkin mempunyai dari sekolah tinggi anda atau latar belakang terlebih dahulu. Dari segi bahasa, menyedari bahawa apa bahasa yang kita gunakan dalam CS50 sebahagian besarnya tidak relevan pada akhir hari. Kita berlaku terutamanya untuk menggunakan bahasa yang dipanggil C. Ke arah akhir semester, kami memperkenalkan bahasa-centric web, seperti PHP dan JavaScript. Tetapi kita dan lain-lain boleh mengajar kursus seperti ini dalam kebanyakan mana-mana moden peringkat tinggi bahasa - Python, dan Ruby, dan lain-lain adalah agak popular hari ini, kerana menyedari, pada akhir hari, anda tidak belajar di C. Anda tidak pembelajaran PHP atau JavaScript. Anda sedang belajar bagaimana untuk menyelesaikan masalah, sama ada berasaskan web, komputer berasaskan, atau data berorientasikan sendiri, menggunakan ini semata-mata sebagai alat. Sekarang dari segi logistik, anda akan menggunakan sesuatu yang akhirnya dipanggil CS50 Appliance. Tidak kira jika anda mempunyai Mac, PC, komputer Linux, atau seumpamanya, anda akan mempunyai perisian bebas yang ada bermula minggu depan dengan yang menggunakan Appliance CS50, persekitaran maya yang akan anda gunakan pada anda komputer sendiri, supaya anda dan semua rakan sekelas anda mempunyai Linux seragam desktop dalam kes ini. Ia adalah set masalah, walaupun, di mana anda benar-benar akan mendapat tangan anda kotor dalam kursus ini. Dan pada akhir hari, ia adalah set masalah, saya fikir, yang benar-benar mentakrifkan pengalaman pelajar dalam kursus ini. Sedar bahawa banyak set masalah akan dikeluarkan dalam dua edisi - edisi standard yang kita harapkan dan menggalakkan 90% daripada kelas untuk menyelam ke dalam. Tetapi kita juga mengeluarkan beberapa set masalah dalam edisi penggodam kononnya, dan anda tahu ia adalah edisi hacker, kerana pada setiap halaman dengan watermark, ia kata edisi penggodam pada ia. Dan itulah untuk demografi ini anda yang mempunyai AP sains komputer dengan 10 tahun pengaturcaraan di bawah tali pinggang anda, dan sedang mencari untuk mengisi jurang dalam orang-orang, dan mempunyai lebih formal, dan bukannya latihan otodidak mungkin, menyedari bahawa terdapat satu demografi yang sangat besar di dalam kelas yang mempunyai tepat bahawa matlamat yang sama. Anda akan mempunyai lima hari lewat. Set masalah adalah umumnya disebabkan pada hari Khamis, tetapi anda boleh melanjutkan lima mereka tarikh akhir menggunakan perkara-perkara yang dipanggil hari lewat, dan kita juga akan jatuh anda skor terendah pada akhir semester, setiap butir-butir dalam sukatan pelajaran. Tetapi satu lagi ciri yang menentukan CS50 sejak bertahun-tahun telah menjadi pejabat jam, peluang yang anda lihat visual dalam gambar sedikit lalu di mana kita berkumpul sebelum di dewan makan rumah, sebelum itu dalam bawah tanah pusat sains, dan tahun ini di Annenberg Hall, empat malam seminggu 20:00-11:00, di mana anda akan mempunyai ini amat pengalaman dikongsi bekerja, berjuang melalui masalah tertentu, tetapi dengan struktur sokongan yang besar di tempat. Malah, cara ini akan bekerja anda akan tiba di Annenberg jika anda mempunyai beberapa soalan sepanjang minggu. Anda akan membawa komputer riba anda, anda akan duduk, merebut makanan, dan anda akan log masuk ke CS50 Bincangkan, utiliti berasaskan web yang kakitangan pengajar mempunyai dibangunkan yang akan membolehkan anda untuk menghantar soalan dan melihat followups dalam tipikal perbincangan forum akal, menggunakan label dan sebagainya, dan auto-selesai untuk mencari data. Tetapi anda juga akan dapat, pada jam waktu pejabat, mempunyai anda soalan meningkat untuk makhluk manusia yang sebenar. Sesungguhnya, matlamat akhirnya adalah supaya satu, kita mula untuk membina lebih kursus semester corpus maklumat diharapkan benar-benar berguna, jawapan yang biasa kepada soalan-soalan yang sama, supaya anda sendiri boleh menyelesaikan masalah dan mendapatkan unstuck secepat mungkin, manakala yang mempunyai pengajaran kakitangan - biasanya 20% hingga 30% daripada felo pengajaran dan kursus pembantu pada kakitangan di sekali. Kami akan mempunyai apa yang dipanggil penyambut CS50 dalam Annenberg, dan apabila kita menentukan bahawa, anda tahu apa? Soalan ini, kita benar-benar menjawab secara online dengan efektif. Kita perlu melihat komputer anda. Kita mahu bercakap kepada anda satu pada satu. Anda benar-benar berjuang, dan oleh itu anda mahu bercakap satu lawan satu bersama seseorang, anda akan dihantar kepada penyambut CS50, pengajaran pegangan rakan-rakan, secara literal, iPod yang mempunyai nama pelajar pada satu sampingan, mengajar nama kakitangan di pihak yang lain. Kami akan mengumpul nama anda, diikuti dengan nama kakitangan pengajar, dan anda skrin komputer akan mula berkelip, mengatakan sila pergi melihat Alice atau sila pergi melihat Bob di meja kakitangan. Dan sebagainya dengan cara ini, kita akan dapat penghantaran perkara secekap mungkin, serta membimbing anda ke arah penyelesaian semua lebih mudah. Dalam bahagian, ini akan menjadi peluang untuk lebih intim tangan- peluang dengan satu daripada felo pengajaran dan 12 16 atau lebih rakan sekelas anda, di mana setiap minggu, kita akan mempunyai masalah dalam set masalah yang bertanya beberapa soalan konsep, dan beberapa menggigit bersaiz pengaturcaraan soalan yang anda dapat memikirkan sendiri, dan anda boleh bekerja sendiri, tetapi dalam konteks seksyen, kami akan bekerja melalui kolektif beberapa masalah mereka dan pergi ke mana perbualan membawa kita. Di samping itu, bahagian yang anda akan mempunyai peluang untuk mengkaji semula penghujahan kerja rumah yang anda telah dibuat, rakan sekelas anda, kadang-kadang tanpa nama, sentiasa oleh opt-in, jika anda ingin berkongsi kerja yang anda telah diserahkan. Jadi ia benar-benar akan perbualan dua hala, dan peluang untuk menyemak kerja anda sendiri dalam erti kata yang lebih dinamik, bukan sekadar melihat PDF atau cetakan dan memikirkan ia untuk beberapa saat dan tidak semestinya menyerap maklum balas bahawa tenaga pengajar telah disediakan. Dan anda akan menggunakan alat yang di sini dipanggil CS50 kawasan. Bagi mereka yang tidak biasa, ini adalah bahasa yang dikenali sebagai C di sebelah kiri atas, dan anda akan mendapat tahu kali ini lebih, tetapi ini adalah utiliti yang berasaskan web yang kita akan digunakan dalam bahagian yang akan membolehkan anda dan rakan sekelas 15 atau jadi anda log masuk dengan pengajaran anda rakan-rakan di hadapan bilik. Anda akan dapat untuk menulis kod dalam tetingkap ini. Anda akan dapat berbual secara elektronik jika anda tidak sebenarnya di seksyen di bahawa masa tertentu, dan rakan-rakan pengajaran anda, apabila ia datang masa untuk membincangkan Alice atau penyelesaian Bob di dalam kelas, rakan-rakan pengajaran boleh klik butang, dan VoilĂ , projek ke skrin apa jua pelajar yang telah bekerja pada titik yang tertentu dalam masa. Jadi bagi orang-orang yang anda mempunyai rakan-rakan yang telah diambil CS50 pada masa lalu, menyedari bahawa keratan telah ketara reboot tahun ini untuk menjadi semua lebih aktif, lebih dinamik, dan benar-benar, perbualan dua hala antara mengajar staf dan pelajar. Dan walkthroughs. Jadi untuk set masalah, kami juga menawarkan bukan sahaja spesifikasi sendiri, yang umumnya PDF yang agak terperinci, tetapi juga perkara-perkara yang dikenali sebagai walkthroughs, di mana seorang ahli tenaga pengajar akan membawa mingguan sesi yang benar-benar berjalan anda melalui set masalah, memberi anda petunjuk, dan nasihat, dan titik permulaan, dan bertujuan untuk meminta sangat kerap ditanya soalan: di manakah saya bermula? Nah, anda memulakan sama ada oleh menyelam ke spec sendiri, atau dengan menghadiri atau menonton walkthroughs ini. Walkthrough pertama, pada hakikatnya, akan menjadi Jumaat ini. Mereka akan menjadi pada hari Jumaat, tidak begitu banyak kerana kita fikir ia akan menjadi popular masa, tetapi kerana kita kemudian boleh filem mereka sangat pada awal minggu dan mendapatkan mereka dalam talian dengan hujung minggu supaya anda mempunyai sebagai hari-hari sebanyak mungkin untuk sebenarnya terlibat dalam kandungan yang baik. Tetapi lebih kepada bahawa dalam syarahan Jumaat ini. Sekarang dalam segi struktur sokongan, statistik yang paling ketara adalah mungkin pengajaran felo 108 dan pembantu tentu bahawa kursus ini kini mempunyai. Jika sesetengah daripada anda yang tidak mempunyai kelas yang bercanggah ingin menyertai saya di sini di atas pentas, ia adalah lelaki yang akhirnya akan benar-benar mentakrifkan anda pengalaman dalam kursus. Saya mempunyai banyak felo pengajaran mengajar saya kelas pada hari itu, dan saya ingat sangat sedikit daripada mereka, terus-terang, tetapi sehingga kini, saya masih ingat antara mereka beberapa TF CS50 saya, yang benar-benar membantu saya menjawab soalan-soalan, yang benar-benar membantu saya apabila saya berjuang, dan benar-benar adalah rakan kongsi dalam ini pengalaman pembelajaran dunia yang sangat baru. Dalam sedikit, semua lelaki ini akan menyertai anda di luar untuk kek, yang adalah satu tradisi CS50, di gereja yg merupakan salib Memorial Hall, tetapi biarlah saya mula memperkenalkan anda Nate Hardison lagi, Rob Bowden, dan Tommy McWilliams, kepala kursus tahun ini. Jika anda semua akan menyertai saya di sini di tengah-tengah. Mereka semua telah disediakan beberapa kenyataan inspirasi. TOMMY McWilliams: Saya tidak menyediakan apa-apa inspirasi. Tetapi nama saya Tommy. Saya seorang kanan dalam Mather. Saya belajar sains komputer, benar-benar teruja untuk berada dalam pasukan kepala dan akan melalui perjalanan CS50 dengan anda. Apa yang saya benar-benar suka tentang CS50 adalah bagaimana ia benar-benar mengajar anda untuk berfikir tentang masalah dalam cara yang baru. Ini adalah benar-benar satu kemahiran yang akan tidak ternilai, tidak kira apa bidang anda pergi ke. Dan tidak hanya itu, tetapi kami menawarkan lebih banyak gula-gula percuma daripada mana-mana kursus di kampus lain. Jadi, saya hanya benar-benar tidak sabar untuk melihat apa yang semua orang membina semester ini. Dan jika sesiapa yang mempunyai apa-apa soalan sekarang atau sepanjang semester, pasti berasa bebas untuk mendekati kepada saya, dan saya akan gembira untuk membantu. ROB Bowden: Hi. Saya Rob Bowden. Saya kanan di Kirkland. Ya, betul. Kita semua benar-benar teruja untuk semester ini seterusnya. Kami berharap anda semua teruja. Saya tidak menjangkakan bahawa. Yeah. Jadi kita meletakkan begitu banyak usaha dalam membuat semester ini benar-benar hebat, dan sebagai selagi anda bersedia untuk dimasukkan ke dalam usaha, terdapat begitu banyak yang anda boleh mendapatkan daripada kursus ini. Anda boleh mendapatkan banyak keseronokan daripada kursus ini. Kita tidak akan mempunyai kakitangan sebanyak 108 jika anda tidak boleh mendapatkan banyak keseronokan daripada itu, jadi hanya cuba untuk terlibat, dan anda tidak akan menyesal. Nate HARDISON: Hi, guys. Saya Nate. Saya pendidik bagi kursus. Saya benar-benar teruja untuk berada di sini juga. Ini adalah tahun pertama saya di sini. Saya harap anda semua mengambil kursus ini, dan menikmati ia seberapa banyak yang saya telah menikmati setakat ini. Dan jika anda mahu belajar bagaimana untuk datang ke sembilan atau sepuluh dalam binari, datang bercakap dengan saya. SPEAKER 1: Jadi pada risiko meninggalkan lelaki ini di sini di atas pentas sedikit canggung, mari kita berputar melalui hanya beberapa perkara yang menanti sebelum kita menangguhkan untuk kek. Apakah yang terletak di hadapan? Nah, jika kita mengambil melihat cepat kembali pada tahun lepas, dalam masalah menetapkan sifar, anda pendahulunya merpati ke dalam bahasa pengaturcaraan yang dipanggil Awal, grafik bahasa pengaturcaraan yang anda akan digunakan di hari pertama kursus, bermula Jumaat ini, untuk mempelajari beberapa konsep yang asing kepada sesetengah daripada anda, tetapi menyedari akan ada satu aspek yang maju bagi orang-orang di antara kamu dengan sebelum ini latar belakang. Dalam masalah tahun lepas menetapkan dua, pelajar merpati ke dalam dunia kriptografi, seni enciphering atau bergegas maklumat, melaksanakan program bahawa data disulitkan, dan dalam edisi penggodam terakhir pelajar tahun tidak meneruskan untuk retak atau decode kata laluan dalam tipikal komputer. xc kata laluan fail dengan datang dengan algoritma dan heuristik untuk kekerasan memikirkan apa kata laluan seseorang pada komputer sistem. Tahun lepas atau dua, dalam masalah menetapkan empat pula pelajar melaksanakan permainan Sudoku. Dan edisi penggodam tahun itu tidak pelajar tidak hanya melaksanakan bagaimana untuk bermain permainan, tetapi sebenarnya seorang penyelesai, di mana komputer boleh menyediakan anda, manusia, dengan petunjuk, dengan lebih cepat daripada anda menyelesaikan bahawa masalah tertentu. Dalam set masalah lima, kita lakukan forensik, seni ini pulih maklumat yang sengaja atau sangat sengaja dipadam daripada komputer. Tahun lepas, tenaga pengajar dan saya berjalan-jalan di sekitar kampus mengambil gambar orang, tempat, dan perkara-perkara dan kemudian sengaja format kad media pada kamera kita yang mempunyai semua orang gambar. Tetapi tidak ada masalah, kita membuat imej forensik kad media ini, menyerahkan ia keluar kepada semua pelajar di dalam kelas, dan mencabar mereka untuk menulis program yang pulih semua JPEG dari kad itu. Dan ini sebenarnya adalah salah satu daripada set masalah kegemaran kami, dan saya digali e-mel lama dari satu orang terdahulu kamu yang menyeronokkan untuk baca ketika dahulu. Ini adalah dari Matt. Dear Daud, semalam kakak saya sengaja format SD kamera itu kad dan hilang bernilai setahun gambar dilupakan. Beliau malangnya tidak adalah yang terbaik pada membuat sandaran data beliau. Tetapi keadaan ini mengingatkan saya p set 5, jadi saya fikir saya akan cuba untuk menjalankan kad SD beliau melalui program pemulihan yang saya tulis semua perjalanan pulang pada bulan Oktober. Jadi selepas empat jam memikirkan bagaimana untuk mewujudkan imej mentah dari diformat kad SD - Google membuktikan untuk menjadi agak membantu dalam hal ini, sehingga saya ironinya berlaku kepada mencari arahan anda di Internet - selepas tinkering sekitar dengan beberapa hujah baris arahan, saya berjaya untuk mewujudkan imej forensik, dan selepas memasang dan mengkonfigurasi CS50 Appliance, saya berjaya untuk menjalankan imej forensik melalui program saya dan mendapatkan semua 1,027 gambar-gambar kakak saya, menulis Matt. Dalam set masalah tahun lepas enam, kami memberikan pelajar kamus 150,000 perkataan Inggeris dan mencabar mereka untuk menulis pemeriksa ejaan yang menjawab pertanyaan bentuk, perkataan ini dieja dengan betul atau salah secepat mungkin. Dan pada asas pilihan pelajar dibenarkan kemudiannya mencabar rakan sekelas dengan menyiarkan keputusan mereka, jumlah RAM yang mereka gunakan, bilangan CPU kitaran atau saat bahawa mereka digunakan, supaya pelajar kemudiannya diranking pada laman web - kursus lagi, aspek semata-mata pilihan, tetapi menyeronokkan dalam yang sangat kerap pelajar akan mendapat kedudukan nombor 10 atau lebih besar lembaga, di laman web, pergi untuk makan malam dan kemudian kembali, dan menyedari rakan sebiliknya telah hanya meningkat di hadapan beliau pada lembaga besar, sekali gus mencurah dua atau tiga jam lagi hanya kepada satu atau rakan sebilik beliau sehingga. Jadi kita tidak sabar-sabar untuk sesuatu yang serupa tahun ini juga. Dalam set masalah 7 adakah kita mengemudi dalam arahan pengaturcaraan web, sebenarnya menyelesaikan masalah dalam persekitaran yang sentiasa semakin biasa sebuah pelayar web. Tahu kemudian decreasingly kita memuat turun perisian pada Mac dan PC, tetapi semakin, adakah kita lakukan itu semua dalam web. Dan sesungguhnya, tahun lepas, kira-kira 88% daripada projek akhir pelajar dalam kursus berasaskan web. Dan orang-orang, juga, adalah kemahiran yang anda akan mendapat dari kelas ini oleh akhir kursus ini, kerana apa yang menanti di akhir kursus ini adalah Pameran CS50, ini pameran itu berdasarkan idea adil sains, tetapi dalam versi ini adil melakukan semua pelajar di dalam kelas membawa komputer riba mereka, dan mereka kawan-kawan, dan keluarga, dan lain-lain ke Northwest Sains, sebuah bangunan yang besar pada kampus, menubuhkan komputer riba mereka, mendapatkan makanan, mendapatkan beberapa popcorn dan minuman, dan kemudian mempamerkan projek-projek akhir mereka untuk semua kehadiran mereka dalam, yang tahun lepas bernombor beberapa hadirin 2500 dari seluruh kampus, dan ungkapan-ungkapan seperti ini, dan seperti ini bukanlah sesuatu yang luar biasa di pameran itu. Yang membawa kepada adil adalah Hackathon CS50, peluang untuk melompat pada Harvard ulang-alik, kepala ke bawah jalan ke Microsoft pada pukul 8:00 PM, dan tidak pulang ke rumah hingga 7:00 AM. Kami melayani makan malam pertama pada pukul 8:00 PM, makan malam kedua di 01:00, dan untuk mereka yang masih berdiri di 5:00 AM adakah kita melayan penkek di bredden. Dan Hackathon adalah peluang, seperti yang digambarkan di sini, untuk menyelam ke dalam peranti anda. projek akhir, sama ada bekerja sendiri atau dengan rakan-rakan dalam persekitaran kerjasama, di mana keseluruhan tenaga pengajar adalah bekerja dengan baik ke malam dengan bekalan yang mencukupi Hong Kong makanan Cina. Pada 5:00 AM akan imej seperti ini menjadi agak biasa tahun ini juga. Jadi seperti yang kita menangguhkan dalam seketika untuk kek, perlu diingat bahawa 76% peratus daripada orang-orang di dalam bilik ini tidak mempunyai pengalaman, dan sebagai satu sukatan pelajaran, apa yang akhirnya perkara dalam kursus ini tidak begitu banyak di mana anda berakhir relatif kepada rakan sekelas anda, tetapi di mana anda, dalam 11 minggu, akhirnya relatif kepada diri anda di titik 0 minggu. Ini adalah CS50.