[ΜΟΥΣΙΚΗ ΠΑΙΖΟΝΤΑΣ] [Χειροκρότημα] DAVID J. MALAN: Αυτό είναι CS50, Εισαγωγή του Πανεπιστημίου Harvard για την πνευματική επιχειρήσεις της επιστήμης των υπολογιστών και η τέχνη του προγραμματισμού. Τώρα, αν είστε μεταξύ εκείνων που κάθε χρόνο καθόμαστε εδώ με ένα κομμάτι των νεύρων στο μυαλό σας, όπως ότι δεν νομίζετε ότι ανήκετε εδώ, νομίζετε ότι οι περισσότεροι κάποιος κάθεται γύρω σας γνωρίζει πολύ περισσότερο από ό, τι, είναι όντως πιο άνετα από ό, τι σε υπολογιστή επιστήμη ή υπολογιστές γενικότερα, συνειδητοποιούν ότι το 78% των φοιτητών που τώρα λάβουν CS50 δεν έχουν καμία προηγούμενη εμπειρία. Πράγματι, δεν υπάρχει 100 κουκκίδες εκεί στην οθόνη, 78 εκ των οποίων είναι σταθερά με πράσινο χρώμα, το οποίο σημαίνει ότι εσείς, αν είστε μεταξύ των εν λόγω δημογραφικών, είναι σε πολύ καλή παρέα εδώ και στο εξής. Και αν είναι, αντί μεταξύ των 22% του CS50 φοιτητές που κάνουν πράγματι έχουν προηγούμενη εμπειρία, είτε σε γυμνάσιο ή κάποιο άλλο πρόγραμμα, συνειδητοποιούν ότι μπορείτε, επίσης, θα να προσβληθεί κατά τη διάρκεια. Όχι μόνο δεν έχουμε διαφορετικές πίστες για τους φοιτητές λιγότερο άνετα και πιο άνετα όσο σε τμήματα, Επίσης, έχουν το λεγόμενο εκδόσεις χάκερ από τα πιο προβλήματος θέτει ότι θα αποτελέσει πρόκληση για τους φοιτητές με την εν λόγω πρόσθετη εμπειρία να διερευνήσει παρόμοιο υλικό αλλά από μια πιο εξελιγμένα προοπτική. Αλλά τι είναι η επιστήμη των υπολογιστών; Λοιπόν, τελικά, αυτό που πρόκειται να θέμα όπως θα διερευνήσει αυτό το πεδίο δεν είναι τόσο πολύ, όπου θα καταλήξετε σε σχέση με τους συμμαθητές σας, αλλά όταν εσείς οι ίδιοι να καταλήξουν σε εβδομάδα 12 σε σχέση με 'όπου θα ξεκινήσει εδώ στην εβδομάδα μηδέν. Τώρα ο υπολογιστής science-- καλά, ας αποκαλούν η επιστήμη της computation-- όπου υπολογισμού είναι πραγματικά ακριβώς ένα φανταχτερό τρόπο λέγοντας, λαμβάνοντας κάποια στοιχεία, παράγουν κάποια έξοδο, και αυτόν τον τρόπο, εκτελώντας αλγορίθμων, σύνολα οδηγιών για την επίλυση κάποιο πρόβλημα σε αυτές τις εισροές προκειμένου να παράγουν κάποια έξοδο ή λύση που σας ενδιαφέρει. Γι 'αυτό και πρόσφατα είχε ευκαιρία να ταξιδέψουν έξω στην Καλιφόρνια για να συναντηθεί με έναν απόφοιτος. Το όνομά της είναι Susan Wojcicki. Και θα ήθελα να μιλήσω για εσάς εδώ στο βίντεο να καταθέσουν για πόσο ισχύει ακόμη και μόνο μια γεύση του υπολογιστή επιστήμης κατά τη εισαγωγικό επίπεδο μπορεί να είναι. Ακόμα κι αν δεν πάει για να συνεχίσει επιστήμη των υπολογιστών ως ένα πεδίο, ή ακόμα και της μηχανικής, ή STEM γενικότερα, θα δείτε, στην πραγματικότητα, το πώς ένα συγκεκριμένο Φυσικά έτσι επηρέασε τη ζωή της. Και μόλις πήρε όταν ήταν ανώτερος εδώ στο Harvard College. Αν μπορούσαμε να χαμηλώστε τα φώτα για την Σούζαν. SUSAN Wójcicki: Hello, world. Είμαι Susan Wojcicki. Είμαι ο Διευθύνων Σύμβουλος του YouTube. Και πήρα CS50 όταν ήμουν ένας ανώτερος στο Χάρβαρντ το 1990. Ήμουν πραγματικά μια ιστορία και τη λογοτεχνία σημαντική. Και κατώτερο καλοκαίρι μου, Συνειδητοποίησα ότι ίσως ήθελε να μάθει κάτι σχετικά με τους υπολογιστές. Και έτσι, ήρθα πίσω. Πήρα CS50. Ήταν δύσκολο, αλλά αυτό ήταν το πιο εκπληκτικό τάξη πήρα. Θα αλλάξει τον τρόπο που σκέφτομαι πάντα. Και όταν αποφοίτησε από το Χάρβαρντ το 1990, πήγα στο Silicon Valley. Και πήρα μια δουλειά. Και έχω εργαστεί στην τεχνολογία από τότε. DAVID J. MALAN: Τώρα τι Susan δεν αναφέρουμε σε αυτό το βίντεο, ότι ήταν στην πραγματικότητα σε αυτήν γκαράζ που η ίδια η Google ήταν ιδρύθηκε από τον Larry και τον Sergey. Τώρα έχουμε επίσης φτάσει στους φίλους μας σε code.org, μια οργάνωση που κατά το παρελθόν έτος υπήρξε να πάρει τους ανθρώπους ιδιαίτερα ενθουσιασμένος για την επιστήμη των υπολογιστών και προγραμματισμού, ιδίως. Αλλά αξίζει να σημειωθεί ότι ο προγραμματισμός Δεν είναι επιστήμη των υπολογιστών per se. Η επιστήμη των υπολογιστών δεν είναι προγραμματισμό. Μάλλον προγραμματισμού είναι απλώς μια tool-- με την οποία όλοι σας θα είναι όλα πάρα πολύ καλά εξοικειωμένοι με end-- εξαμήνου όπως ότι δεν μπορεί να εφαρμοστεί μόνο για το μέλλον μαθήματα σε CS αλλά τα όποια πεδία από όπου έρχεστε, στις ανθρωπιστικές επιστήμες, κοινωνικές επιστήμες, φυσικές επιστήμη, ή τα παρόμοια. Πράγματι, επιτρέπουν μερικές άλλες αποφοίτους και τους συναδέλφους τους να μιλήσει για τη δυνατότητα εφαρμογής του πεδίου που περιμένει. BILL GATES: Ήμουν 13 όταν για πρώτη φορά πήρε την πρόσβαση σε έναν υπολογιστή. JACK DORSEY: Οι γονείς μου μου αγόρασε ένα Macintosh το 1984 όταν ήμουν οκτώ χρονών. Mark Zuckerberg: Ήμουν στην έκτη τάξη. ΟΜΙΛΗΤΗΣ 1: Έμαθα να κώδικα στο κολέγιο. Ruchi Sanghvi: Πρωτοετής, πρώτη εξάμηνο, Εισαγωγή στην Επιστήμη των Υπολογιστών. BILL GATES: Έγραψα ένα πρόγραμμα ότι έπαιξε tic-tac-toe. DREW ΧΙΟΥΣΤΟΝ: Νομίζω ότι ήταν πολύ ταπεινό ξεκίνημα. Νομίζω ότι το πρώτο πρόγραμμα Έγραψα ρώτησε πράγματα όπως, ποιο είναι το αγαπημένο σας χρώμα; Ή πόσο χρονών είσαι; ELENA SILENOK: έμαθα για πρώτη φορά πώς να κάνει ένα πράσινο κύκλο και ένα κόκκινο τετράγωνο εμφανίζεται στην οθόνη. Gabe NEWELL: Η πρώτη φορά είχα πραγματικά κάτι που έρχονται και λένε, γεια σου, τον κόσμο. Και έκανα ένα υπολογιστή το κάνει αυτό. Ήταν απλά εκπληκτικό. Mark Zuckerberg: Μαθαίνοντας πώς στο πρόγραμμα δεν ξεκινήσει όπως θέλουν να μάθουν όλα της επιστήμης των υπολογιστών ή προσπαθεί να δαμάσει αυτό πειθαρχία ή κάτι τέτοιο. Είναι μόλις ξεκίνησε επειδή ήθελε να κάνει αυτό ένα απλό πράγμα. Ήθελα να κάνω κάτι που Ήταν διασκεδαστικό για τον εαυτό μου και τις αδελφές μου. Και έγραψα αυτό το μικρό πρόγραμμα. Και τότε ουσιαστικά μόνο προστίθεται λίγο σε αυτό. Και στη συνέχεια, όταν χρειάζεται να μάθουν κάτι νέο, Το έψαξα, είτε σε ένα βιβλίο ή στο διαδίκτυο, και στη συνέχεια προστέθηκε λίγο σε αυτό. DREW ΧΙΟΥΣΤΟΝ: Δεν είναι πραγματικά σε αντίθεση με παίζει ένα μουσικό όργανο ή κάτι ή παίζοντας ένα άθλημα. DAVID J. MALAN: Εντάξει. Επομένως, ας πραγματικότητα βουτήξει σε λίγο βαθύτερα. Ποιες είναι αυτές οι είσοδοι και έξοδοι ότι μιλάμε εδώ; Πώς, λοιπόν, για κάτι απλό; Ξέρετε πιθανώς, ακόμα και αν έχετε καμία εξοικείωση με την πληροφορική απολύτως, ότι οι υπολογιστές με κάποιο τρόπο χρησιμοποιούν και καταλαβαίνει μόνο μηδενικά και μονάδες. Αλλά πώς μπορεί αυτό ενδεχομένως να δοθεί το πώς πολύ τα σημερινά desktops και laptops όσο μπορεί να κάνει; Το DNA της ημέρας, ο μόνος αλφάβητο που κατανοούν είναι μηδέν ή ένα. Λοιπόν, σκεφτείτε αυτό. Εμείς, οι άνθρωποι, τείνουν να χρησιμοποιούν το δεκαδικό σύστημα. "Δεκέμβρη", που σημαίνει 10. Και αυτό είναι 10, διότι έχουμε 10 ψηφία, 0 έως εννέα. Τώρα υπολογιστές, αντιθέτως, τείνουν να χρησιμοποιούν δυαδικό. "Bi" σημαίνει δύο. Έτσι τείνουν να χρησιμοποιούν μόνο μηδέν και ένα. Αποδεικνύεται όμως, ότι ακόμα και μόνο με μηδενικά και αυτοί, ότι Είναι ένα αρκετά μεγάλο αλφάβητο με την οποία να αντιπροσωπεύει πλέον κάθε κομμάτι των δεδομένων που θέλετε, είτε πρόκειται για ένα αριθμό, είτε πρόκειται για ένα e-mail, είτε πρόκειται για ένα γραφικό ή ένα βίντεο στην οθόνη. Σκεφτείτε, για παράδειγμα, πώς εμείς οι άνθρωποι ερμηνεύουν συνήθως τον αριθμό αυτό εδώ. Αυτό είναι μόνο τρεις ψηφία, ένα, δύο, τρία. Αλλά γνωρίζουμε τον αριθμό αυτό εγγενώς τώρα ως 123. Αλλά γιατί είναι αυτό; Λοιπόν, αν νομίζετε ότι πίσω ίσως σε δημοτικό σχολείο, ίσως έχουν μάθει να σκέφτονται αυτοί οι αριθμοί ως σε στήλες, όπου το ένα είναι σε εκατοντάδες μέρος, οι δύο είναι στη θέση των δεκάδων, και τα τρία είναι στη θέση αυτά. Γιατί είναι ότι πραγματικά χρήσιμο; Λοιπόν, σκεφτείτε το super απλή αριθμητική ότι όλοι έχουν κάνει για χρόνια τώρα. Ουσιαστικά, αν έχετε ένα ένα στη θέση εκατοντάδες, κάνετε τη γρήγορη μαθηματικά 100 φορές 1 συν 10 φορές 2-- επειδή τα δύο είναι της τάξης των δεκάδων place-- συν 1 φορές 3-- επειδή τρία είναι στη θέση αυτά. Έτσι, φυσικά, εάν εμείς στην πραγματικότητα πολλαπλασιάζουν αυτό έξω, τι είμαστε πραγματικά εκπροσωπούν με αυτό pattern-- ένα δύο three-- είναι 100 συν 20 συν 3, η οποία, φυσικά, είναι 123. Τώρα δυαδική, και υπολογιστές πραγματικά, ουσιαστικά μιλούν την ίδια γλώσσα ότι κάνουμε. Απλά έχουν ένα μικρότερο αλφάβητο. Έτσι, οι υπολογιστές έχουν μόνο μηδενικά και αυτά που έχουν στη διάθεσή τους. Έτσι, ενώ εμείς οι άνθρωποι έχουν ουσιαστικά εξουσιών από 10 σε κάθε μία από αυτές τις places-- 10 προς το μηδέν, 10 στο ένα, δέκα στα δύο, δίνοντάς σας 110 και 100 αντίστοιχα. Επειδή οι υπολογιστές έχουν μόνο δύο τιμές μπορούν να καταλάβουν, το μηδέν και το ένα, πρέπει να χρησιμοποιούν διαφορετικές τιμές σε αυτές τις στήλες, ένα, δύο, τέσσερα. Και αν εμείς συνεχίζαμε, οκτώ, 16, 32, 64, και ούτω καθεξής. Αλλά το πρότυπο και ο νοοτροπία είναι ακριβώς η ίδια. Έτσι, με αυτή τη λογική, ο καθένας, πώς θα Πάω για να αντιπροσωπεύει τον αριθμό ένα σε δυαδικό; Αν έχετε ποτέ σκεφτεί αυτό πριν, τι το ένστικτό σου πω; ΚΟΙΝΟ: One. DAVID J. MALAN: One. Ακριβώς. Χρειαζόμαστε μόνο ένα ένα στο τόπος αυτά επειδή τα μηδενικά αρκεί να μας δώσει ούτε τέσσερα ούτε δύο. Έτσι μία φορές ένα ισούται με ένα. Τώρα τα πράγματα γίνονται λίγο ενδιαφέρον. Αν θέλω να εκπροσωπεί το δυαδικό τον αριθμό two-- αλλά, και πάλι, ακόμη και αν έχετε ποτέ μιλήσει αυτή τη γλώσσα πριν, πώς θα αντιπροσωπεύουν σε δυαδικό η αξία που εμείς οι άνθρωποι γνωρίζουμε ως δύο; Zero ένα μηδέν. Απλά βάλτε το ένα στο στήλη που θέλετε. Τώρα είναι να πάρει αρκετά εύκολο μάλλον τώρα. Έτσι, αν θέλω να αντιπροσωπεύουν three-- υπάρχει στήλη κανενός τρία του. Έτσι, και πάλι, μπορώ τώρα να προσθέσετε τις τιμές μαζί με την τοποθέτηση ενός εδώ. Μέχρι 2 φορές 1 συν 1 φορές 1 είναι, φυσικά, 3. Τώρα, τα πράγματα παίρνουν μια λίγη διασκέδαση στο ότι τα άτομα γίνονται πλέον μηδενικά. Και να αντιπροσωπεύουν τέσσερις, παίρνω αυτό. Και αν θα αυξήσετε αργά here-- ότι θα είναι πέντε. Αυτό θα ήταν έξι. Αυτό θα είναι επτά. Αλλά τώρα φαίνεται να έχουν τρέχει σε ένα πρόβλημα. Πως θα μπορούσα να πάω για το εκπροσωπούν eight-- θα είναι η επόμενη τιμή. Ναι, γι 'αυτό χρειαζόμαστε μια νέα κομμάτια. Και, πράγματι, εάν έχετε ακούσει αυτή τη φράση πριν, bits, αυτό είναι μόνο μικρή για δυαδικό ψηφίο, μηδέν ή ένα. Και έτσι τυχαίνει να εκπροσωπούν μόνο τρία τέτοια κομμάτια εδώ. Αλλά αν είχα έναν τρόπο να μην αποθηκεύει τρία διαφορετικά κομμάτια, αλλά τέσσερις, σίγουρα θα μπορούσε να αποτελέσει οκτώ, εννέα και στη συνέχεια, και έπειτα 10, και ακόμη και ψηλότερα. Αλλά αυτό τότε καλεί στο ερώτημα πώς μπορούμε πάει για εκπροσωπούν αυτές πράγματα στην πρώτη θέση. Είναι ένα πράγμα να επιστήσει τους εδώ σε μια διαφάνεια, αλλά πώς θα τους εκπροσωπήσει αν είστε μια μηχανική συσκευή; Τι είναι ένας υπολογιστής κάνει να αντιπροσωπεύουν τις εισόδους και τις εξόδους, ότι καθορίζουν ουσιαστικά υπολογισμού στο τέλος της ημέρας; Λοιπόν, τι γίνεται με κάτι super απλό σαν αυτό; Είναι απλά μια λάμπα. Και εγώ μπορεί να προκαλέσει αυτό το λάμπα για να πάει στο στρέφοντας κάποια ηλεκτρική ενέργεια και να επιτρέπει ηλεκτρόνια να ρέει μέσα, η οποία αλλάζει του κατάσταση ή την αξία του, να το πω έτσι. Για παράδειγμα, αυτό είναι μια λάμπα γραφείου παλιά σχολή εδώ με ένα τέτοιο λάμπα στο εσωτερικό του. Και τώρα δεν είναι πραγματικά να κάνει κάτι χρήσιμο. Αλλά μόλις το βύσμα σε μια ηλεκτρική πρίζα και στη συνέχεια να χρησιμοποιήσετε αυτό το switch-- ή μπορούμε να ονομάσουμε ακόμα και ένα τρανζίστορ ή να σκεφτείτε από το ως such-- Μπορώ τώρα να αντιπροσωπεύουν είτε αυτή η τιμή, όταν η λάμπα του προφανώς off, ή η τιμή. Αυτή η τιμή ή η τιμή αυτή. Αυτή η τιμή και ούτω καθεξής. Ώστε μέσα από έναν υπολογιστή, πιθανώς, είναι πολύ μικρότερα κομμάτια του hardware, αλλά ότι στο τέλος από την ημέρα έχουν απλώς να χρησιμοποιούν electricity-- ίσως συλλάβει it-- και στη συνέχεια να κρατήσει ούτε κάτι ή να κρατήσει κάτι μακριά. Φυσικά, αυτό δεν είναι ιδιαίτερα ενδιαφέρον να κάνουμε με ένα μόνο λαμπτήρα. Στην πραγματικότητα, πόσο ψηλά μπορώ να μετράνε σε δυαδικό με αυτό το φωτιστικό γραφείου εδώ; ΚΟΙΝΟ: One. DAVID J. MALAN: Ένα, σωστά; Χρειάζομαι περισσότερες λάμπες γραφείου αν πραγματικά θέλουν να μετράνε υψηλότερη. Αλλά μπορούμε να κάνουμε κάτι καλύτερο από αυτό. Επειδή οι λαμπτήρες ότι έχουμε βάλει σε αυτά τα πράγματα είναι πραγματικά φανταχτερά λαμπτήρες από χτες θα επιτρέψει. Και είναι πραγματικά δικτυωμένη λαμπτήρες. Και τσαμπιά των επιχειρήσεων κάνει αυτά τα πράγματα αυτές τις μέρες. Αλλά αποδεικνύεται ότι αυτό, ιδίως έρχεται με ένα χαρακτηριστικό το οποίο μπορείτε να αλλάξετε τα χρώματα του. Έτσι, για παράδειγμα, αν διακοσμημένο δωμάτιο dorm σας με μερικά από αυτά τα φως βολβοί, ανάλογα με τη διάθεσή σας, ανάλογα με το ποιος έρχεται, ανάλογα με τις καιρικές συνθήκες, ανάλογα με τον χρόνο της ημέρας, μπορείτε πραγματικά να αλλάξετε τα χρώματα του οι λάμπες στο δωμάτιό σας. Και αυτό γιατί αυτά τα ελαφρά βολβοί και άλλοι σαν να έχουν ό, τι είναι ονομάζεται ένα API, η εφαρμογή διεπαφή προγραμματισμού, η οποία Είναι ένα θέμα με το οποίο θα είστε καλά εξοικειωμένοι με μέχρι το τέλος του εξαμήνου. Και αυτό είναι μόνο ένα φανταχτερό, αινιγματικό τρόπο του λέγοντας, μπορείτε να προγραμματίσετε αυτά φως βολβούς για να κάνετε την προσφορά σας. Μπορείτε να στέλνετε μηνύματα ακριβώς όπως εσείς, ένας άνθρωπος, μπορεί να στείλει ένα μήνυμα σε έναν web server λέει, δώσε μου τα σημερινά νέα ή να μου δώσει το email μου. Μπορείτε να στείλετε πιο απόκρυφες μηνύματα σε αυτές τις λάμπες φωτός να πω, ενεργοποιήσετε και να απενεργοποιήσετε. Αλλά αυτό δεν είναι όλα τόσο ενδιαφέρουσα. Μπορείτε να πείτε, ενεργοποιήστε το κόκκινο, ενεργοποιήσετε πράσινο, ενεργοποιήστε μπλε, όλα με την ίδια λάμπα. Και μπορείτε ακόμη, με λίγο περισσότερα καταλαβαίνω, ας πούμε, γυρίστε τον εαυτό σας σε μπλε όταν πρόκειται για μια βροχερή ημέρα έξω, για παράδειγμα. Αυτό μπορεί πραγματικά να επιδιορθώσει σε ένας καιρός API και μάθετε τι ο καιρός είναι, ή ο χρόνος της ημέρας, ή άλλες τέτοιες ωθήσεις. Έτσι, στην πραγματικότητα, δύο από Τα μέλη του προσωπικού CS50 είναι, Dan Bradley και Ansel Duff εδώ, παρακαλούμε να αγοραστεί μας ένα σωρό από αυτούς λαμπτήρες πυράκτωσης. Και έχτισαν CS50 του πρώτη δυαδική λαμπτήρες, όπου έχουμε εκπροσωπούνται here-- με αυτά τα παιχνιδιάρικα λίγο magnets-- τα διάφορα σύμβολα κράτησης θέσης που υπαινίχθηκε μόλις πριν από λίγο. Έτσι τον τρόπο εδώ είναι η τόπος αυτά, δύο, τέσσερα. Και δεν είδαμε υψηλότερο από αυτό. Αλλά, φυσικά, είναι δυνάμεις του δύο. Οκτώ, 16, 32, 64, και 128. Έτσι, αν εγώ τώρα θέλω να είναι λίγο πιό φανταχτερό από τη χρήση αυτού του παλιού διακόπτη σχολείο, Έχω εδώ σε αυτό το iPad ένα σούπερ απλό interface ότι Dan Bradley, ένας πρώην φοιτητής και τώρα διδάσκει τους συναδέλφους, programed χρησιμοποιώντας κάποια HTML και JavaScript, τα οποία είναι σήμανσης και προγραμματισμού γλώσσες, αντίστοιχα. Και μπορείτε πιθανώς see-- ακόμη στην back-- υπάρχει ένα μεγάλο συν και ένα μεγάλο μείον, συν ένα κουμπί για κάθε μία από αυτές τις λάμπες. Και τι είναι αυτό που πρόκειται να μου επιτρέψετε να Δεν είναι, για παράδειγμα, κάντε κλικ στο σύμβολο συν και τώρα αντιπροσωπεύουν, από Φυσικά, ποιος είναι ο αριθμός; Ένα. Και μπορώ να το χτυπήσει και πάλι. Δύο. Τρεις. Τέσσερα. Πέντε. Έξι. Επτά. Και εδώ τώρα έχουμε ότι το rollover, αλλά έχουμε μια τέταρτη λίγο αυτή τη φορά, έτσι τώρα έχουμε οκτώ. Έτσι, θα μπορούσαμε να το κάνουμε αυτό για αρκετό καιρό. Στην πραγματικότητα, ως ένα μέρος, πόσο ψηλά θα μπορούσε να μετράμε; Όποιος; ΚΟΙΝΟ: 255. DAVID J. MALAN: 255, σωστά; Μην ανησυχείτε πάρα πολύ για τα μαθηματικά για τώρα, αλλά αυτό είναι μια αρκετά αξιοπρεπή αριθμό. Αλλά στην πραγματικότητα δεν δεσμεύεται μόνο πόσα κομμάτια των πληροφοριών, σαν ένα γράμμα, ή ένα γραφικό ότι θα μπορούσαμε να εκπροσωπούμε. Αλλά δεν έχει σημασία για την επιχείρηση. Πάω να πάει μπροστά και όλα αυτά να απενεργοποιήσετε. Και αν μπορούσα, θα ήθελα να ρωτήσω για εθελοντής, μας πρώτη volunteer-- oh, hello-- στη σκηνή. Τα αλιεύματα είναι ότι πρέπει να είναι άνετη εμφάνιση, όπως σαφώς είναι μπροστά από όλους τους συμμαθητές σας, καθώς και στο διαδίκτυο. Και επιτρέψτε μου να κοιτάξουμε και λίγο πέρα ​​στο-- σχετικά με το πώς εδώ στο λευκό πουκάμισο; Και το χέρι επάνω. Έλα πάνω. Ποιο είναι το όνομά σου; ΚΟΙΝΟ: Jackie. DAVID J. MALAN: Jackie. Jackie, έλα επάνω. Έτσι, ό, τι υπάρχει και σε αυτό iPad είναι ένα κουμπί που ονομάζεται Λειτουργία Game. Και αυτή η λειτουργία Game είναι Θα μου επιτρέψετε να εισάγετε εκ των προτέρων ένα συγκεκριμένο δεκαδικό αριθμός, οι αριθμοί που εμείς οι άνθρωποι είμαστε εξοικειωμένοι με. Και τότε θα πρέπει να αμφισβητηθεί εδώ για να χρησιμοποιήσετε τα κουμπιά για την top-- ένα για καθένα από αυτά τα bulbs-- πραγματικά να καταλάβω το μοτίβο των λαμπτήρων που αντιπροσωπεύει τον αριθμό στην ερώτηση. Και λυπάμαι, τι ήταν και πάλι το όνομά σας; ΚΟΙΝΟ: Jackie. DAVID J. MALAN: Jackie. Εντάξει. Χάρηκα για τη γνωριμία. Έτσι, επιτρέψτε μου να πάει μπροστά και πρόγραμμα για τον κόσμο να δει τον αριθμό 15. Θα το κρατήσετε μικρό σε πρώτη εδώ. Και Πάω να πάει σε λειτουργία Παιχνίδι. Και Πάω να καθορίσετε, μας δίνουν τον αριθμό 15. OK. Και τώρα με όλους watching-- αν θέλετε να σταθεί ίσως με αυτόν τον τρόπο, γιατί θα παρατάξει up-- προχωρήσει και εναλλαγή των οκτώ κουμπιά κατά μήκος της κορυφής να μετατρέψουν τις λάμπες για ή off όπως βλέπετε την τακτοποίηση. ΚΟΙΝΟ: OK. DAVID J. MALAN: Και καμία εξαπάτηση από το χτύπημα συν 15 φορές. Ω, πρόκειται να το κάνουμε αυτό. ΚΟΙΝΟ: Αχ, περιμένετε. Λυπάμαι πολύ. DAVID J. MALAN: Μπορείτε επίσης να ενεργοποιήσετε οι λαμπτήρες σε μεμονωμένα με κάθε ένα από αυτά τα κουμπιά στο πάνω μέρος. ΚΟΙΝΟ: Ναι, εντάξει. Έτσι, θα ήταν like-- DAVID J. MALAN: OK. Μέχρι τώρα έχουμε οκτώ. Ας παύση για το ακροατήριο να συμμετάσχει εδώ. Τι αριθμός είναι Jackie αντιπροσωπεύει σήμερα; 11. Έτσι, είμαστε σχεδόν εκεί. Και εξαιρετικό. Έτσι έχουμε την πρώτη μας νίκη. Συγχαρητήρια. Και σκεφτήκαμε να έχουμε μερικά καταπληκτικά δώρα. Αν θα θέλατε να είναι ένα τέτοιο dorm δωμάτιο εδώ στην Πανεπιστημιούπολη, μπορείτε να τον εαυτό σας να έχει ένα τελικό σχέδιο χρησιμοποιούν τώρα αυτό το API, χάρη στην Jackie. Έτσι now-- [Χειροκρότημα] --εάν μπορούσαμε, ένα πιο όπως γύρω από αυτό. Ω, τώρα ο καθένας θέλει κάποια λαμπτήρες. Για τη λεγόμενη έκδοση χάκερ, θα πάμε για να ράμπα μέχρι μια-- oh, ναι, επιφυλακτική. Νομίζω ότι έρχεστε τώρα αν το χέρι σας πηγαίνει προς τα κάτω. Ποιο είναι το όνομά σου; ΚΟΙΝΟ: Alex. DAVID J. MALAN: Alex, έλα εδώ. Έτσι, για τον Άλεξ, πρόκειται να πρόγραμμα σε ένα ελαφρώς μεγαλύτερο αριθμό. Ίσως σε τάξη. Ο αριθμός 50. ΚΟΙΝΟ: OK. DAVID J. MALAN: Αλλά, όπως I said-- και ίσως θέλω να βρίσκομαι εδώ, έτσι ότι τα κουμπιά παρατάξει όπως διαβάσαμε τις, αλλά έκανα καλέστε αυτό η έκδοση του χάκερ. So-- καλή τύχη! [Γέλια] Θα είναι σε θέση να μετατρέψει τους εκτός αν Εσύ-- OK. Εξαιρετική. Θαυμάσια. Συγχαρητήρια. [Χειροκρότημα] Υποθέτω ότι θα πρέπει να καταβάλουν. Συγχαρητήρια στον Άλεξ, καθώς και. OK. Έτσι, το τελικό πακέτο εδώ είναι ελπίζουμε, ειλικρινά, η simplicity-- η απλότητα με την οποία μπορείτε να πάρετε μερικά ωραία φως βολβοί, προφανώς σε [δεν ακούγεται]. Αλλά αυτοί αντιπροσωπεύουν, τελικά, η ίδια ιδεών με την οποία εμείς οι άνθρωποι είμαστε ήδη πολύ εξοικειωμένοι. Λοιπόν, τι θα μπορούσε το επόμενο βήμα είναι στην εξέλιξη προσπαθεί να κάνει κάτι ενδιαφέρον με τα δεδομένα και εκπροσωπούν τις εισροές που δεν είναι μόνο αριθμούς, αλλά είναι ίσως ή και περισσότερα γράμματα; Λοιπόν, αποδεικνύεται ότι η κόσμο των υπολογιστών, για πολλά χρόνια, απλά υιοθέτησε μια αυθαίρετη, αλλά ένα συνεπές πρότυπο που αντιστοιχίζει αριθμούς με τα γράμματα της αλφαβήτου. Για παράδειγμα, εδώ είναι ένα απόσπασμα από την εν λόγω χαρτογράφηση. Λέγεται Ascii. Α-S-C-Ι-Ι. Και αυτό είναι απλά ένα πίνακα που απεικονίζει τα κεφαλαία letters-- σε αυτό case-- σε δεκαδικό αριθμό. Αλλά ποια είναι η επίπτωση; Λοιπόν, αν θέλετε πραγματικά να εκπροσωπεί κάτι σαν ένα e-mail ή κάποιο κείμενο σε μια ιστοσελίδα, μπορείτε προφανώς θέλουν να δείξουν τα ανθρώπινα γράμματα του αλφάβητο, δεν είναι αριθμοί. Έτσι ανάλογα με την πλαίσιο του προγράμματος ότι ένας χρήστης χρησιμοποιεί, αν είναι ένα πρόγραμμα περιήγησης στο web ή e-mail client, αριθμοί μπορεί ασφαλώς να ερμηνεύεται ως γράμματα. Δηλαδή, τα πρότυπα των bits μπορούν εύκολα να ερμηνευθεί ως γράμματα. Και έτσι αυτό που μπορούμε να έχουμε είναι το γράμμα Α ον εκπροσωπήθηκαν ως 65, B που εκπροσωπήθηκαν ως 66. Έτσι, αν έχουμε ένα super σύντομη λέξη, όπως hi, ό, τι ένας υπολογιστής θα ήταν τελικά κατάστημα σε δεκαδικό, αλλά πραγματικά σε δυαδικό, χρησιμοποιώντας κάποια ακολουθία των bits, αξιοποιώντας ένα κομμάτι της ηλεκτρικής ενέργειας κατά κάποιο τρόπο, θα είναι οι δύο αριθμοί 72 και 73. Αλλά το πρότυπο των bits που αντιπροσωπεύει αυτές τις αξίες. Έτσι, αυτά τότε είναι πώς μπορούμε να αντιπροσωπεύουν εισόδους και εξόδους μας. Και αρκεί να πω, μπορούμε κάνει πιο πολύπλοκες αναπαραστάσεις τελικά με τα πράγματα όπως γραφικά, βίντεο, μουσική, και πολλά άλλα όπως θα δούμε αργότερα αυτόν τον όρο. Έτσι ώστε μόνο αφήνει στη συνέχεια αλγόριθμοι, αυτά τα σύνολα των οδηγιών με τις οποίες είμαστε επίλυση πραγματικών προβλημάτων. Είμαστε περνώντας σε εισόδους σε αλγόριθμους. Και αυτοί οι αλγόριθμοι παράγουν έξοδοι, ελπίζω σωστή εξόδους και ελπίζω, επίσης, αποτελεσματικά συγκεντρώθηκαν εξόδους. Με άλλα λόγια, είναι ένα πράγμα να εφαρμόσει κάτι σωστά. Είναι άλλο πράγμα να εφαρμόσει κάτι καλά ή αποτελεσματικά. Για παράδειγμα, μία επίδειξη ότι είμαστε λάτρης της κατά τη διάρκεια είναι αυτό. Αλλά αυτά τα πράγματα παίρνουν όλο και πιο δύσκολο να βρεθεί. Αλλά αυτό είναι πράγματι ένα παλιό σχολείο τηλεφωνικό κατάλογο, στο εσωτερικό των οποίων είναι 1.000 και πλέον σελίδες του τα ονόματα και τους αριθμούς τηλεφώνου. Και αν ήθελα να κοιτάζω προς τα πάνω κάποιος σε αυτό το βιβλίο του τηλεφώνου, Θα μπορούσα απλά να κάνω μια πολύ αφελής αλγόριθμο. Θα μπορούσε να ανοίξει στην πρώτη σελίδα, και Θα μπορούσε να αρχίσει να ψάξουν για, ας πούμε, κάποιος ονομάζεται Mike Smith. Και αν δεν είναι για την πρώτη σελίδα, θα προχωρήσει στο δεύτερο, και στη συνέχεια στην τρίτη, και έπειτα στο τέταρτο, και ούτω καθεξής, μέχρι να βρουν τελικά Mike Smith. Τώρα είναι σωστό ότι ο αλγόριθμος; ΚΟΙΝΟ: Ναι. DAVID J. MALAN: Ναι. Αν αυτός είναι εκεί, εγώ θα τελικά να τον βρει. Αλλά δεν είναι αναμφισβήτητα πολύ αποτελεσματικές, σίγουρα δεν γρήγορα, γιατί, Θεέ μου, γιατί είμαι σπατάλη χρόνου κτύπημα μου μέσα από όλες αυτές τις σελίδες όταν θα μπορούσα Σίγουρα το κάνετε αυτό φυσικά πιο γρήγορα; Λοιπόν, μια μικρή βελτιστοποίησης, έτσι ώστε να να μιλήσει, ίσως να μην είναι μία σελίδα τη φορά, αλλά δύο, τέσσερα, έξι, οκτώ, 10. Ακόμα σωστή; ΚΟΙΝΟ: Όχι DAVID J. MALAN: Έτσι, δεν έχει αν για παράδειγμα υπερπηδήσει Mike Smith. Αλλά εφ 'όσον εγώ πίσω πεντάλ μία σελίδα, αν μπορώ να τον υπερβεί, Ίσως θα μπορούσαμε να διορθώσουμε ό, τι διαφορετικά μπορεί να είναι μια gotcha. Αλλά είναι καλύτερα; Είναι πιο γρήγορα; Θέλω να πω, ναι. Είναι κυριολεκτικά δύο φορές πιο γρήγορα αν κάνω δύο σελίδες σε μια στιγμή. Έτσι, αν είχα αρχικά 1.000 σελίδες, τώρα έχω μόνο να αναστρέψετε 500 φορές, δεν είναι πλήρως 1.000 σελίδες για να πάρει πιθανώς στη χειρότερη περίπτωση στο τέλος του τηλεφώνου βιβλίο, όπου κάποιος όπως ο Mike Smith ή κάποιος με μεταγενέστερη ονομασία μπορεί στην πραγματικότητα να είναι. Αλλά, φυσικά, οι άνθρωποι σίγουρα δεν είναι πρόκειται να το κάνουμε αυτό, σίγουρα δεν είναι σε αυτό το σημείο στη ζωή μας. Τι είναι μια λογική ανθρώπινης πιθανό πρόκειται να κάνει; ΚΟΙΝΟ: Πηγαίνετε κατευθείαν στο The9 S του. DAVID J. MALAN: Πηγαίνετε κατευθείαν στο S είναι; Πώς μπορώ να πάω κατευθείαν στα S του; ΚΟΙΝΟ: Rip στο μισό. DAVID J. MALAN: Λοιπόν, δεν υπάρχει σήμανση. Οπότε, ναι, αν υπήρχαν όντως μια ετικέτα ή μια κολλώδη καρτέλα για S, εμείς πρέπει να βγαίνουμε εκεί. Αλλά είναι αρκετά αβλαβείς. Έτσι, το καλύτερο που μπορώ να κάνω είναι περίπου στο τμήμα S ή ίσως περίπου στη μέση. Αλλά το βασικό πακέτο now-- και η διαίσθηση ότι έχετε λάβει για χορηγούνται για χρόνια probably-- είναι ότι ό, τι κάνουμε τώρα ξέρετε σχετικά με αυτό το πρόβλημα; ΚΟΙΝΟ: [δεν ακούγεται] DAVID J. MALAN: Mike Smith είναι σίγουρα όχι σε αυτό το ήμισυ του προβλήματος επειδή Smith έρχεται μετά από το μεσαίο η οποία είναι περίπου το τμήμα M, φαίνεται να είναι. Έτσι, όπως ίσως έχετε δει σε Visitas, μπορούμε τώρα κυριολεκτικά δάκρυ αυτό το πρόβλημα κατά το ήμισυ. ΚΟΙΝΟ: Woo! DAVID J. MALAN: Είναι όλο και πιο εύκολη και πιο εύκολο. [Χειροκρότημα] Εκεί θα πάτε. [Γέλια] Και τώρα ουσιαστικά έχουν το ίδιο πρόβλημα, αλλά είναι κυριολεκτικά μισή. Είμαι ακόμη ψάχνει για το Mike Smith. Και τολμώ να πω, μπορώ ακόμα αναζητήστε τον με τον ίδιο τρόπο, χωρίζοντας το πρόβλημα στη μέση πάλι, σχίσιμο το πρόβλημα πάλι κατά το ήμισυ, το οποίο με αφήνει τώρα με ένα πρόβλημα το ένα τέταρτο του μεγέθους, ρίξει δραματικά την μισή μακριά, και επαναλάβετε ξανά και ξανά αυτή τη διαδικασία και πάλι, ρίχνοντας μια ματιά προς τα κάτω σε κάθε σημείο για να δείτε αν Mike Smith είναι για η εν λόγω σελίδα. Τώρα, αν κάνω αυτό το δικαίωμα, τελικά εγώ θα βρίσκομαι με μόνο μία σελίδα στην οποία Mike Smith είναι αν ο ίδιος είναι πράγματι στον τηλεφωνικό κατάλογο. Φυσικά, θα μπορούσα Ποτέ καλέσετε ξανά Mike. Αλλά το θέμα εδώ είναι ότι αν ξεκινούσαμε με 1.000 σελίδες, η πρώτη μου αλγόριθμο, αναστροφή της σελίδας, ίσως και 1.000 times-- σίγουρα λιγότερο, γιατί είναι ένα όνομα S και όχι Ω όνομα, αλλά ως πολλοί ως 1.000 σελίδες δυνητικά. Δεύτερη αλγόριθμο, καλύτερα. 500 σελίδες. Τρίτος αλγόριθμος, όμως, πόσα βήματα θα είναι να λάβει για να διαιρέσει ένα 1.000 σελίδα τηλέφωνο βιβλίο στη μέση σαν αυτό; 10, ή να δώσει. Έτσι, μόνο με το κτύπημα μέσω αυτού τηλεφωνικό κατάλογο, τις καταδύσεις και την κατάκτηση, να το πω έτσι, 10 φορές, θα κάνω τον τρόπο μου κάτω σε μία μόνο σελίδα. Και έτσι μπορούμε να συλλάβει αυτή τη διαίσθηση τώρα λίγο γραφικά αν απλά σκεφτείτε αυτό το σούπερ απλό γράφημα. Είμαστε στο x-άξονα, ή οριζόντιες άξονα, είναι το μέγεθος του προβλήματος μου, ο αριθμός των σελίδων του τηλεφωνικού καταλόγου. Και οι επιστήμονες ηλεκτρονικών υπολογιστών γενικά ήθελα να καλέσετε το μέγεθος ενός προβλήματος n, όπου n είναι μόνο κάποια μεταβλητή που represents-- σε αυτό case-- αριθμό των σελίδων. Η κάθετη, ή Υ-άξονας, εδώ είναι πρόκειται να είναι ο χρόνος για την επίλυση, ίσως ο αριθμός των γυρίζει σελίδα, ίσως ο αριθμός των δευτερολέπτων ή λεπτά, ανεξάρτητα από μονάδα μέτρησης του μετρητή σας είναι. Και έτσι αυτή η κόκκινη γραμμή παριστάνει τον πρώτο αλγόριθμο, επειδή υπάρχει ένα προς ένα σχέση μεταξύ του αριθμού των σελίδων και το ποσό του χρόνου που χρειάζεται. Αν Verizon διπλασιάζει τον αριθμό των σελίδες στο βιβλίο του τηλεφώνου του επόμενου έτους, μου τρέχει time-- η χρόνος που απαιτείται για να εκτελέσει ότι η πρώτη algorithm-- διπλασιάζεται στη χειρότερη περίπτωση. Αλλά το δεύτερο αλγόριθμο, όπου είμαι κτύπημα από δύο, απαιτεί λιγότερο χρόνο για ένα δεδομένο πρόβλημα μεγέθους. Έτσι, αν έχω αυτό πολλές ειδοποίηση σελίδες here-- ότι η κίτρινη γραμμή προτείνει λιγότερο χρόνο για να λύσει. Και πράγματι, αυτό αντιπροσωπεύει, θα πούμε, n πάνω από δύο. Αλλά τι είναι το σχήμα του τρίτου και η τελική καμπύλη θα μοιάζει; Ναι, αυτό είναι πραγματικά πρόκειται να κοίτα I Δεν ξέρω τι επρόκειτο να πει. Αλλά ας δούμε τι επρόκειτο να πει. ΚΟΙΝΟ: Όπως και αυτό. DAVID J. MALAN: Δεν πρόκειται να μοιάσει αυτό, μια λογαριθμική slope-- exactly-- σύμφωνα με την οποία έχετε αυτήν την περίεργη κλίση. Δεν είναι πια μια ευθεία γραμμή. Και αυτό είναι συναρπαστικό γι 'αυτό είναι ότι παρόλο που η γραφική παράσταση είναι τώρα αποκοπεί, μπορείτε να προεκτείνουν σε σας νου ότι η πράσινη γραμμή δεν είναι πρόκειται να αυξηθεί σε Ύψος όλα αυτά πολύ καθώς προχωράτε περαιτέρω προς αυτή την οριζόντιο άξονα. Πράγματι, Verizon, για παράδειγμα, θα μπορούσε να διπλασιάσει ο αριθμός των σελίδων στο τηλέφωνο βιβλίο μεταξύ αυτού του έτους και το επόμενο έτος από 1000 έως 2000 σελίδες, αλλά δεν είναι μεγάλη υπόθεση. Με αυτό το τρίτο και τελικό, υπάρχει ένα έξυπνο αλγόριθμο της διαίρεσης και κατάκτησης. Είναι πρόκειται να με πάρει πόσα περισσότερα βήματα το επόμενο έτος για να βρείτε κάποιον αρέσει Mike Smith; ΚΟΙΝΟ: One. DAVID J. MALAN: Υπάρχει μόνο μία. Και μπορούν να τετραπλασιάσει, είναι θα μου πάρει μόλις δύο βήματα και ούτω καθεξής. Και έτσι αυτό είναι απόδειξη για πόσο κάποια προσεκτικό σχεδιασμό και κάποια εκτίμηση για το τι εισόδους σας είναι να κάνει ακόμα καλύτερα. Τώρα είμαστε μια εξαπάτηση λίγο με την έννοια ότι είμαστε μόχλευση μια υπόθεση. Τι είναι η παραδοχή μου σχετικά με το τηλέφωνό βιβλίο μας που μου επέτρεψε να διαίρει και βασίλευε σε αυτό το διαισθητικό και ακόμα σωστό τρόπο; ΚΟΙΝΟ: [δεν ακούγεται] DAVID J. MALAN: Ναι. Γι 'αυτό διατάχθηκε. Ήταν αλφαβητική από η εταιρεία τηλεφωνικού καταλόγου. Αν ήταν σε τυχαία σειρά, ότι θα είναι μια κόλαση από ένα τηλεφωνικό κατάλογο, αλλά σίγουρα δεν θα προσφέρεται στον αλγόριθμο Θα χρησιμοποιηθεί, γιατί θα κάνατε ποτέ ακριβώς συμβαίνει σε όλη Mike Smith αν τηρούνται διαίρεση σε ένα δεύτερο με τον τρόπο αυτό κατά τύχη. Ας τώρα επισημοποιήσει τι είναι σαφώς διαισθητική. Έτσι κάτι που ονομάζεται ψευδοκώδικα είναι όπου θα ξεκινήσει ορισμένες από τις αρχικές μας προβλήματα. Και αυτό είναι ένας γενικός τρόπος περιγραφής ένας αλγόριθμος ή ένα πρόγραμμα ηλεκτρονικού υπολογιστή, δεν χρησιμοποιούν C ή C ++, ή Java, ή οποιαδήποτε συγκεκριμένη γλώσσα, αλλά χρησιμοποιώντας μόνο αγγλικά, με η οποία μπορεί να είναι εξοικειωμένος οποιοσδήποτε άνθρωπος. Και θα μπορούσαμε να γράψει το pseudocode για αυτό το πρόβλημα ως ακολούθως. Το πρώτο βήμα, σηκώστε το βιβλίο του τηλεφώνου. Βήμα δύο, ανοιχτή στο κέντρο του τηλεφωνικού καταλόγου. Βήμα τρία, να δούμε τα ονόματα. Βήμα τέσσερα, αν Smith είναι μεταξύ names-- Και τώρα αυτό είναι ένα ενδιαφέρουσα κατασκεύασμα. Είναι ένα σημείο απόφασης. Είναι μια διακλάδωση του δρόμου, αν θα, ένα κλαδί, να το πω έτσι. Έτσι, Πάω να εσοχή μόνο με σύμβαση step-- Δεν five-- το οποίο είναι σε ας πούμε, θα πάρω Mike. Έτσι, αυτή η εσοχή, εντελώς αυθαίρετη ανθρώπινη σύμβαση, αλλά είναι σήμαινε απλά να μεταφέρω σημασιολογικά ότι αν Smith είναι μεταξύ των ονομάτων, τότε θα πρέπει να καλέσετε τον Mike. Εν τω μεταξύ, στο στάδιο έξι, προειδοποίηση ότι η εσοχή φύγει. Έτσι, άλλο είναι η άλλη διακλάδωση του δρόμος, ο άλλος δρόμος που μπορεί να ταξιδέψει. Έτσι, άλλο αν Smith είναι νωρίτερα στο βιβλίο, τι είναι επόμενο βήμα μου πιθανότατα θα είναι εδώ; ΚΟΙΝΟ: Θα πάμε στην αριστερή πλευρά. DAVID J. MALAN: Ναι, έτσι πάει να το αριστερό μισό του τηλεφωνικού καταλόγου. Πετάξτε το δεξί μισό, αν Smith είναι νωρίτερα στο βιβλίο. Έτσι, ανοιχτό στη μέση του το αριστερό μισό του βιβλίου. Και τότε το βήμα οκτώ, πηγαίνετε στη γραμμή τρία. Και αυτό είναι ένα περίεργο βρόχο είμαι επαγωγής, μια αναδρομή να το πω έτσι. Αλλά περισσότερα για αυτό στο μέλλον. Είμαι χρησιμοποιώντας το ίδιο αλγόριθμο μου, ίδια pseudocode μου, να λύσει το ίδιο πρόβλημα ξανά γιατί το μόνο πράγμα που έχει αλλάξει είναι το μέγεθος του προβλήματος, όχι Στόχος μου, και όχι το πρόσωπο Ψάχνω για. Έτσι μπορώ να ξαναχρησιμοποιήσετε τον αλγόριθμο ότι έχω ήδη οριστεί. Αλλιώς, αν Smith είναι μεταγενέστερη σε book-- ίσως μαντέψω ανοιχτό στη μέση του το δεξί μισό του βιβλίου. Και πάλι, πηγαίνετε στη γραμμή τρία. Else-- ποια είναι η τελική γραμμή σε αυτό το πρόγραμμα θα είναι; Αν αυτός δεν είναι μεταξύ των ονόματα στη σελίδα είμαι για, αν δεν είναι νωρίτερα το βιβλίο, και ο ίδιος δεν είναι μεταγενέστερη στο βιβλίο, αυτό που ξέρω Είναι αλήθεια για Mike Smith τώρα; ΚΟΙΝΟ: Δεν είναι στο βιβλίο. DAVID J. MALAN: Δεν είναι στο βιβλίο. Έτσι, το καλύτερο που μπορώ να κάνω είναι απλά παραιτηθεί και να σταματήσει αυτό το πρόγραμμα. Εντάξει. Έτσι, σε αυτό το σημείο, ας ρίξουμε μια γρήγορη περιήγηση του μερικά από αυτά που περιμένει. Και στην πραγματικότητα, είμαι εντάχθηκαν εδώ από ένα αριθμό του προσωπικού CS50. Αν αυτοί οι λαοί θα μπορούσαν όλα ελάτε μαζί μου εδώ στη σκηνή. [Χειροκρότημα] Το μυαλό εσείς, αυτό είναι μόνο ένα υποσύνολο του προσωπικού CS50, δεδομένου ότι κάθε χρόνο έχουμε περίπου 100 άτομα προσωπικό μέλη στους ρόλους των βοηθών φυσικά, διδασκαλία υποτρόφων, και περισσότερο. Έλα πάνω. Έτσι θα ενωθούν μαζί μας εδώ αδέξια για μια στιγμή καθώς δίνουμε μια περιοδεία ανεμοστρόβιλος από ό, τι θα πρέπει να περιμένουμε εδώ στην πορεία. Έτσι, πρώτα απ 'όλα, έχουμε SAT / ΟΗΕ όπως η δυνατότητα ταξινόμησης κατά τη διάρκεια. Αυτό σήμαινε σκόπιμα να είναι μια επιλογή οπότε αν είστε λίγο άβολα στο να είναι κατά τη διάρκεια, και εσείς φοβάστε failure-- ακόμη και αν ειλικρινά αποτυχία σημαίνει ότι πληγώνει ΣΔΣ σας, να πάρει ένα Β και όχι μια A-- που είναι ακριβώς, σίγουρα για μια πύλη Φυσικά, όπως CS50 και άλλα εισαγωγικά μαθήματα, αυτή η επιλογή ταξινόμησης έχει ως στόχο να επιτρέψει. Εύχομαι ολόψυχα να ενθαρρύνουν φοιτητών ή σπουδαστών, ιδιαίτερα αν για το fence-- να ξεκινήσει η Φυσικά SAT / ΟΗΕ, ακόμα παραμένουν SAT / ΟΗΕ. Αλλά σίγουρα μπορείτε να μεταβείτε σε ένα e-mail βαθμό από την πέμπτη Δευτέρα στο όρου. Ειλικρινά, πίσω, όταν ήταν πρωτοετής το 1995, Εγώ ο ίδιος δεν κατάφερε καν να CS50 γιατί δεν πήρα το θάρρος να εντείνει πραγματικά το πόδι στην τάξη. Φάνηκε μια περιοχή πολύ άγνωστο σε μένα και πραγματικά μόνο για αυτούς τους φίλους μου, Ειλικρινά, ο οποίος είχε τον προγραμματισμό από τότε που ήταν έξι ή ίσως 10 χρονών. Και αυτό ήταν μόνο και μόνο επειδή ήμουν είναι σε θέση να λάβουν CS50 στην ημέρα μου στην αντίστοιχη εκδοχή του SAT / UNS-- επιτυχίας / αποτυχίας πίσω στην επομενη μερα ότι ακόμη και πήρα 50. Και με κάποιο τρόπο ή άλλο, είμαι πάλι εδώ μαζί σας σήμερα. Τώρα, εν τω μεταξύ, τι άλλο σας θα πρέπει να έχετε κατά νου για το 50 είναι η ταυτόχρονη εγγραφή. Σε αντίθεση με τις φήμες ότι μπορεί να έχετε ακούσει, μπορείτε, στην πραγματικότητα, ταυτόχρονα εγγραφούν σε CS50 και μια άλλη κατηγορία ότι συναντά την ίδια ή κάποια επικάλυψη χρόνο, όπως διαλέξεις CS50 είναι εδώ. Δείτε το αναλυτικό πρόγραμμα σπουδών για τα στοιχεία από την εφαρμογή τους. Διαλέξεις, εν τω μεταξύ, σε αντίθεση με τι είναι επίσημα στον κατάλογο, γενικά θα είναι μόνο συναντιούνται για μόλις μία ώρα. Σε μερικές περιπτώσεις μπορεί να τρέξει λίγο καιρό. Αλλά να έχετε κατά νου ότι η Στόχος σε διαλέξεις CS50 του είναι να σας παρέχουμε μια εννοιολογική επισκόπηση, ελπίζω κάποιοι διαδηλώσεις, ίσως ακόμη και μερικά δώρα, από ό, τι περιμένει για η εβδομάδα που ακολουθεί. Και έτσι σε διαλέξεις, θα διερευνήσει αυτά τα θέματα και παραδείγματα από κοινού, φέρνοντας τους μαθητές στη σκηνή, και προσωπικό πάνω στη σκηνή όσο πιο συχνά μπορούμε, μόνο για μια-δυο ώρες κάθε εβδομάδα. Τμήματα, εν τω μεταξύ, θα είναι προσφέρονται από αυτούς τους λαούς here-- πολλά από τη διδασκαλία τους υποτρόφων, μερικές από τα φυσικά assistants-- βούληση να συμβαίνει κάθε εβδομάδα. Και αυτό είναι το κλειδί για να κρατήσει στο μυαλό είναι ότι εμείς δεν have-- αντίθεση First Nights, η μουσική class-- διαφορετικά κομμάτια των τμημάτων για σπουδαστές λιγότερο άνετα, πιο άνετα, και κάπου ενδιάμεσα. Και ειλικρινά, ξέρεις αν είστε λιγότερο άνετα. Και ίσως γνωρίζετε αν είστε πιο άνετα. Και αν δεν είστε πραγματικά βέβαιοι, θα είναι εξ ορισμού κάπου ανάμεσα. Έτσι, όταν έρχεται η ώρα για την ενότητα σε μια εβδομάδα ή έτσι, κατά τη διδακτέα ύλη, θα σας κάνει αυτή την ερώτηση. Και μπορείτε να αυτο-επιλέξτε Βάσει στο δικό σας επίπεδο άνεσης και να με φοιτητών ή σπουδαστών, να είναι με πράσινο dots-- παρόμοιο επίπεδο άνεσης σας. Εν τω μεταξύ, έχουμε πρόβλημα θέτει, η οποία τελικά θα καθορίσει την εμπειρία σας σε αυτό το μάθημα. Είναι προσφέρονται συνήθως σε πολλαπλές εκδόσεις. Μια τυπική έκδοση που περιμένουμε περισσότερο κάθε φοιτητής κατά τη διάρκεια για την αντιμετώπιση αλλά επίσης το λεγόμενο έκδοση χάκερ ότι δεν προσφέρει καμία μορφή της επιπλέον πίστωσης οριστικές, αλλά στην πραγματικότητα τα δικαιώματα κομπορρημοσύνη να πω ότι έχετε δοκιμάσει και να αντιμετωπιστεί εκδόσεις χάκερ του μαθήματος ότι προσεγγίσει το παρόμοιο υλικό αλλά από ένα πιο εξελιγμένο γωνία. Τι προσφέρουμε για το standard έκδοση, για, πάλι, ένα σούπερ πλειοψηφία των φοιτητών, δεν είναι μόνο τα πόδια-through, που είναι βίντεο με επικεφαλής τον προσωπικό του μαθήματος ότι τα πόδια σας πραγματικά μέσα από την προβλήματα μαθήματος και ενδεχομένως το σχεδιασμό υλοποιήσεις. Και εμείς, επίσης, μετά από την Πράγματι, προσφέρουν postmortems, σύμφωνα με την οποία αν αναρωτιέστε πώς θα μπορούσε να έχει ή θα έπρεπε να επιλυθούν ορισμένα πρόβλημα, το διδακτικό προσωπικό θα σας καθοδηγήσει εκείνοι σε βίντεο, καθώς και. Εν τω μεταξύ, αυτό που περιμένει πάρα πολύ είναι πέντε ημέρες και αργά το γεγονός ότι θα μειωθεί σας χαμηλότερη πρόβλημα που βαθμολογίας. Σίγουρα εκτιμώ ότι σε αντάλλαγμα για τον φόρτο εργασίας που αναμένει 50 σας, η ζωή παίρνει με τον τρόπο Μερικές φορές, αν όχι πέντε φορές. Και έτσι αυτό θα προσφέρει Είσαι ένα κομμάτι της ευελιξίας, παράταση προθεσμίας σας από, ας πούμε, ένα Πέμπτη στις το μεσημέρι έως την Παρασκευή το μεσημέρι. Δείτε το αναλυτικό πρόγραμμα για το λεπτομέρειες εφαρμογής αυτού. Τώρα, τι τώρα περιμένει; Και αυτό είναι μόνο συμβαίνουν για μένα τώρα πόσο καιρό Είμαι έχοντας εσείς σταθεί εδώ στη σκηνή. [Γέλια] DAVID J. MALAN: Αλλά θα φτάσουμε σε η κλιμακούμενη φινίρισμα πριν από καιρό. Έτσι, αυτό που περιμένει από την άποψη του προβλήματος σύνολα; Καλά, ίσως ένα teaser από αυτό που όλοι έκανε πέρυσι με τους προκατόχους σας. Στο πρώτο σετ πρόβλημα πέρυσι, εισαγάγαμε Scratch, μια γραφική γλώσσα προγραμματισμού που σας επιτρέπει να προγραμματίσετε κυριολεκτικά από μεταφορά και απόθεση κομμάτια του παζλ, όπως αυτά, που είναι θυμίζει τα κατασκευάσματα θα δείτε μόλις μία εβδομάδα ως εκ τούτου, όταν θα στραφούν σε μια πιο παραδοσιακή γλώσσα, που είναι γνωστή ως C. Πέρυσι προχωρήσαμε σε αυτό το σύνολο του προβλήματος, συμμετοχή για την κρυπτογράφηση, την κρυπτογράφηση των πληροφοριών για να το κρατήσει από κυβερνητικές ή φίλους » μάτια που δεν θέλετε να το δείτε. Κωδικοποιημένο εδώ είναι ένα μήνυμα ότι σύντομα θα θα είναι σε θέση να αποκρυπτογραφήσει ή de-αγωνίζομαι. Breakout ήταν ένα πρόβλημα που το περασμένο έτος, όπου μπορείτε να χρησιμοποιήσετε αυτά τα νέα βρέθηκαν προγραμματισμού δεξιότητες για να εφαρμόσει πραγματικά ένα παιχνίδι wherein-- όπως σας ίσως θυμάστε από childhood-- ο στόχος ήταν να bash το τούβλα που βρίσκονται στην κορυφή της οθόνης εδώ, συσσωρεύοντας ένα σκοράρουν κατά μήκος του τρόπου, και την εφαρμογή της δικής σας αλγορίθμων με την οποία αυτό το διάλυμα τελικά σας επιτρέπει να παίξετε το παιχνίδι. Εν τω μεταξύ, αργότερα η εξάμηνο, θα σας δώσουμε ένα λεξικό των 143.091 αγγλικών λέξεων. Και θα πρέπει να αμφισβητηθεί να γράψετε ένα πρόγραμμα το οποίο ξόρκι ελέγχους, τα έγγραφα, με φόρτωση ότι πολλές λέξεις στη μνήμη όσο το δυνατόν αποτελεσματικότερα. Γενικά σκασίματα σας κατά τους συμμαθητές σας αν έχετε επιλέξει σε ένα κομμάτι της μια πρόκληση σε ηγέτη του σκάφους για να δούμε ποιος μπορεί να χρησιμοποιήσει τις λιγότερες δευτερόλεπτα του χρόνου λειτουργίας, και ο μικρότερος αριθμός των megabytes μνήμης, και στην πραγματικότητα εξομάλυνσης των βραχυχρόνιων διακυμάνσεων των προγραμμάτων σας να είναι απίστευτα αποδοτικότητας των πόρων δεν μόνο φορά. Πέρυσι, επίσης, κοιτάξαμε το τέλος του εξαμήνου σε προγραμματισμό web. Και πράγματι, θα το κάνουμε και πάλι αυτό έτους με πολλαπλές σειρές πρόβλημα, την εισαγωγή σας με τις τεχνικές και η νοοτροπία με την οποία μπορείτε να εφαρμόσετε αυτές οι γνώσεις προγραμματισμού για να ιστοσελίδες, δυναμικές ιστοσελίδες, ιστοσελίδες που πραγματικά να λύσει προβλήματα και να συμπεριφέρονται διαφορετικά και δεν είναι απλά στατικές περιοχές με στατικές πληροφορίες. Το τελικό σχέδιο τελικά θα καθορίσει, αν και, το αποκορύφωμα του μαθήματος για τους φοιτητές, όπου θα κληθούν να εφαρμόσουν κάτι πιο ενδιαφέρον σας, εφ 'όσον αυτό με κάποιο τρόπο αντλεί από τα διδάγματα του μαθήματος. Και όπως είδατε στο βίντεο στην αρχή, θα ολοκληρώσουμε το εξάμηνο με το CS50 Hackathon, το οποίο, αν δεν είναι εξοικειωμένοι, θα αρχίσει στις 19:00 το βράδυ και καταλήγουν στις 7:00 π.μ. το επόμενο πρωί. Γύρω 21:00, θα Για το πρώτο δείπνο. Περίπου 01 π.μ., θα Για το δεύτερο δείπνο. Και αν είστε ακόμα στέκεται στις 5:00 π.μ., θα θα μεταφοράς με λεωφορείο σας σε IHOP για το πρωινό. Το CS50 Fair, εν τω μεταξύ, είναι ένα γεγονός με την οποία συν 2.000 καθηγητές, φοιτητές, και το προσωπικό από όλη την πανεπιστημιούπολη θα έρχονται να δουν τα επιτεύγματά σας στην πορεία και το τελικό έργα και δημιουργίες ότι μπορείτε να δημιουργήσετε για φορητούς υπολογιστές σας, desktops, ή ίσως ακόμη και το φως λαμπτήρων. Εν τω μεταξύ, ώρες γραφείου και η δομή στήριξης. Και τώρα θα έχω πάει καλύτερη στιγμή για να σας φέρει όλα επάνω. Οι ώρες λειτουργίας θα λάβει χώρα τέσσερις νύχτες μια εβδομάδα για πολλαπλές ώρες κάθε βράδυ με γενικά 20 έως 30 του προσωπικό του μαθήματος στο καθήκον ταυτόχρονα για να σας παρέχει με οικεία one-on-one ευκαιρίες για την υποστήριξη με το πρόβλημα σύνολα του μαθήματος. Διδακτική πάρα πολύ θα είναι διαθέσιμα, ιδιαίτερα για τους φοιτητές λιγότερο comfortable-- ή τολμώ να πω τουλάχιστον comfortable-- για τους οποίους ώρες γραφείου δεν είναι η περισσότερο το περιβάλλον γαλούχηση και σίγουρα δεν είναι το πιο χωρίς άγχος. Ειδικά όταν οι προθεσμίες πιέζουν, εμείς θα ζεύγος ίδιοι προληπτικά με ένα μέλος του προσωπικού να εργαστεί με για κάποιο κανονικό πρόγραμμα ανάλογα με τις ανάγκες σας και το πρόγραμμά τους το επιτρέπει. Και το προσωπικό. Επιτρέψτε μου να εισαγάγει Davon, Rob, και Gabriel, επικεφαλής του τρέχοντος έτους. Αν κάθε ένας θα ήθελε να say-- [Χειροκρότημα] --ένα λέξη. [Χειροκρότημα] Davon εδώ είναι η διευθυντής μαθήματος, το οποίο σημαίνει σε ρόλο πλήρους απασχόλησης του βοηθά με την εκτέλεση και logistics του CS50. Davon: Ναι, γεια σας, παιδιά. Θα δείτε πολλά για μένα σε ώρες γραφείου. Θα πρέπει να διδάσκει τμήματα. Και αν σας πυροβολούν emails μπροστά, Θα πιθανώς να ανταποκρίνεται. Γι 'αυτό θα δείτε πολλά σε όλους σας εξαμήνου. Και ευπρόσδεκτοι να CS50. DAVID J. MALAN: Και τώρα Gabriel, ο οποίος ο ίδιος ήταν απλώς ένας καινούριος πέρυσι, αλλά για τα τελευταία δύο χρόνια έχει λειτουργεί τη δική του εκδοχή του CS50 στη Βραζιλία, σύμφωνα με την οποία ο ίδιος κατεβάσει όλα content-- του μαθήματος η οποία είναι σαφώς να γυρίστηκε και τοποθετούνται online-- έτσι ώστε να μπορεί να μεταφραστεί σε Πορτογαλική και στη συνέχεια διδάσκουν περισσότερα από 100 από τους συμμαθητές του, πάνω από το Φυσικά από ένα-δύο χρόνια, διδασκαλία στη μητρική γλώσσα του διδακτέα ύλη του μαθήματος. GABRIEL: Γεια σας. [Χειροκρότημα] GABRIEL: Γεια σου, είμαι ο Γαβριήλ. Είμαι η TF επικεφαλής του μαθήματος. Και ελπίζω ότι θα αγαπήσετε CS50. Αυτό είναι CS50. DAVID J. MALAN: Τώρα για τον Rob. Ω, θέλετε την εισαγωγή; ROB: Όχι, δεν ξέρω. [Γέλια] DAVID J. MALAN: Και Rob Boden. [Γέλια] ROB: Γεια σου, είμαι Rob. Αυτή είναι η πέμπτη χρονιά μου εμπλέκονται με την πορεία. Κάθε χρόνο, αυτό είναι μόνο ένα και καλύτερα τάξη, έτσι εσείς είναι σαφώς πρόκειται να είναι φοβερό. Ελπίζω όλοι σας να διασκεδάσουν με αυτό. Πάω να διασκεδάσουν με αυτό. Έτσι βλέπετε γύρω. DAVID J. MALAN: Και φορά δεν θα επιτρέψει us-- [Χειροκρότημα] Ο χρόνος δεν θα μας επιτρέψει να εισαγάγει όλους με το στάδιο και όλους τους συναδέλφους τους που ψωνίζουν τάξεις σήμερα. Αλλά επιτρέψτε μου να εισαγάγει Belinda και CS50 Puzzle Ημέρα, που περιμένει αυτή το ερχόμενο Σάββατο, η οποία είναι το πρώτο από τα μεγάλης κλίμακας συμβάντα μαθήματος. Το ένα ιδιαίτερα σήμαινε να καταστήσουμε σαφές το σημείο ότι η επιστήμη των υπολογιστών είναι τελικά όχι για τον προγραμματισμό, αλλά μάλλον για την επίλυση προβλημάτων γενικότερα. Και Puzzle Day, όπως θα δείτε, θα σας φέρει και τους συμμαθητές σας together-- Ελπίζουμε αυτό το Σάββατο. BELINDA: OK. Γεια σας, παιδιά. Έτσι, ευχαριστώ. Έτσι, ως επιφανής καπετάνιος μας είπε, το όνομά μου Belinda. Είμαι ένας δευτεροετής φοιτητής στο Quincy σπίτι. I, όπως ακριβώς εσείς, πήρε CS50 το περασμένο έτος, το λάτρεψα. Έχω ένα μαλακό σημείο για εσείς στην τρίτη σειρά. Και είμαι περήφανος να πω, είμαι τώρα σε μια δεσμευμένη σχέση με CS50 [δεν ακούγεται]. OK. Αυτό ήταν κουτσός δική μου εκδοχή του ένα αστείο. Τέλος πάντων, έτσι κινείται, απλά ήθελε να καλέσει εσείς όλοι στο i-εργαστήριο, ή HBS κνίδωση. Εμείς πάμε για να έχουν Puzzle Ημέρα 12:00-3:00. Και αυτό είναι μια μεγάλη ευκαιρία για σας παιδιά να πληρούν τους συναδέλφους CS φίλους σας, να λύσει κάποια μη-CS παζλ, όπως το Captain αναφέρεται, και επίσης τρώνε κάποια δωρεάν φαγητό, κερδίσετε μερικά απίθανα δώρα, όπως κάρτες δώρων, $ 75 ανά άτομο, και also-- τι ήταν; Wii U ή κάτι τέτοιο; Wii U; Ναι. Για λοταρία μας. Awesome. Γι 'αυτό θα μείνω μετά το μάθημα. Και αν εσείς έχετε οποιαδήποτε ερωτήσεις, επιτρέψτε μου να ξέρω. DAVID J. MALAN: Και θα δείτε, πέρα ​​από αυτό δεν υπάρχει τίποτα να κάνουμε σήμερα. Το πρώτο πρόβλημα που θα βγούμε την Παρασκευή. Αλλά για να μας φέρει στο σπίτι σήμερα, θα ήθελα να εισαγάγει μπορείτε να ειδικά ένα πιο μέλος του προσωπικού, Colton Εδώ Ogden, του οποίου τα χέρια είναι τώρα προστατεύονται από πάνω σας με Αυτό MIDI controller να καταστήσουμε σαφές το σημείο περαιτέρω ότι η επιστήμη των υπολογιστών, επίσης, έχει εφαρμογή πέρα ​​από μηχανική και STEM και η ίδια η επιστήμη των υπολογιστών, εκτείνονται ακόμη και σε τομείς όπως η μουσική. Colton έχει ευγενικά offered-- σκέφτηκα ένα από αυτά επρόκειτο να καθορίσει την εστίαση. Andrew, αν θα μπορούσαμε να καλέσει εστίαση εδώ μόνο για μια στιγμή. Τι Colton έχει γίνει εκ των προτέρων είναι το πρόγραμμα Αυτή η συσκευή, αυτό το ταμπόν από κουμπιά που βλέπετε απεικονίζεται εδώ, ως MIDI controller, σύμφωνα με την οποία κάθε ένα από αυτά τα κουμπιά είναι συνδεδεμένο με μια συγκεκριμένη μουσική νότα ή ένας ήχος, πιο γενικά μια καταγραφή, τέτοια ώστε παίζοντας πρότυπα αυτά κουμπιά, πολύ παρόμοια μοτίβα bits, μπορεί να εκπροσωπεί και άλλα υψηλότερου επιπέδου έννοιες. Θα μπορέσει τελικά να μας πάρει το σπίτι εδώ σήμερα; Χωρίς άλλη καθυστέρηση, εάν θα μπορούσαμε να χαμηλώστε τα φώτα, και να ενεργοποιήσετε την οθόνη πίσω από Colton. ΚΟΙΝΟ: Woo! DAVID J. MALAN: Αυτό είναι CS50. [ΜΟΥΣΙΚΗ ΠΑΙΖΟΝΤΑΣ] [Χειροκρότημα] Αυτό είναι για το CS50. Θα σας δούμε την Παρασκευή. Μερικά κέικ σας περιμένει στο Transept. [ΜΟΥΣΙΚΗ ΠΑΙΖΟΝΤΑΣ]