डेविड मालन: वापस, हर किसी का स्वागत। तो कल, आपको याद होगा कि हम यहाँ इन विषयों पर ध्यान केंद्रित किया। इसलिए हम चार व्यापक topics-- था गोपनीयता, सुरक्षा, और समाज; इंटरनेट प्रौद्योगिकी; क्लाउड कंप्यूटिंग; और अंत में, वेब विकास। किसी को भी किया है बैंडविड्थ या समय एक छोटे जॉन देखना ओलिवर कल रात? यह वास्तव में बहुत मनोरंजक है, नहीं तो एक छोटे से भयावह। किसी भी चीज पर सवाल हम कल किया था? किसी भी स्पष्टीकरण? किसी भी सवाल है कि आप बनाना चाहते हैं यकीन है कि हम किसी न किसी रूप में आज पर स्पर्श? इतना साफ स्लेट। तो क्या आज के लिए एजेंडा पर है? तो मैंने सोचा था कि हम आज शुरू होगा क्या आम तौर पर है पर एक नज़र के साथ पर कम्प्यूटेशनल thinking-- के रूप में जाना oversimplifying का खतरा है, यह सोच एक कंप्यूटर की तरह, शायद एक इंजीनियर की तरह सोच, और करने के लिए शुरू करने की कोशिश अपने विचारों को व्यवस्थित या आप एक बेहतर समझ देने के लिए क्या वास्तव में कमांडिंग में शामिल है एक कंप्यूटर के लिए कुछ करना प्रोग्रामिंग के माध्यम से। और हम इसे एक बहुत पर रखेंगे उच्च स्तर पर, बहुत ज्यादा अंग्रेजी, लेकिन परिचित का उपयोग करने का प्रयास उदाहरण को औपचारिक करने के लिए कैसे आप समस्याओं को सुलझाने के बारे में जाना होगा। और हम कुछ सीएस फिर से आना होगा विषयों, अमूर्त की तरह, जो एक जोड़े आया समय की कल, एल्गोरिदम, और फिर प्रतिनिधित्व। और कहा कि जहां हम शुरू करेंगे बस एक पल में आज। तो फिर हम प्रोग्रामिंग पर एक नज़र रखना होगा। हम कुछ पर एक नज़र रखना होगा मौलिक निर्माणों जिसके साथ आप परिचित हो सकता है और यहां तक ​​कि काफी सहज मिल सकता है। हम वास्तव में, देखता हूँ, एक नमूना प्रोग्रामिंग में पर्यावरण कि बहुत सुलभ है, बहुत चंचल है, और वास्तव निशाना उम्र 12 और ऊपर के लिए। हम वहाँ कुछ ही मिनट खर्च करेगा और फिर एक निचले स्तर के लिए चीजें ले और वास्तव में से कुछ के बारे में बात करते हैं एल्गोरिदम और डेटा संरचनाओं, तो बात यह है कि करने के लिए प्रोग्रामर आमतौर पर उपयोग कहीं अधिक समस्याओं को हल करने के लिए कुशलता से आप कर सकते हैं कुल मिलाकर उनके बिना ऐसा करने में सक्षम हो। फिर दोपहर के भोजन के बाद, हम देख लेंगे प्रौद्योगिकी के ढेर है, जो अभी है पर कहने का एक अच्छा तरीका प्रौद्योगिकियों का संग्रह आप के लिए उपयोग हो सकता है कि कुछ समस्या का समाधान। और हम वर्णमाला के बारे में बात करेंगे भाषाओं कि अस्तित्व का सूप today-- जावा और अजगर और सी ++ और पीएचपी और रूबी और अन्य चीजों के सभी प्रकार के। हम एक नज़र संक्षेप में ले लेंगे डिजाइन पैटर्न पर। प्रोग्रामर्स, समय के साथ, अपनाया तरीके है उन्हें मदद करने के लिए करते हैं कि और अधिक आसानी से समस्याओं का समाधान। जब आप शुरू अपने आप को देखने के लिए लिख बार बार कोड की इसी तरह, लोगों को उन repetitions शकल और मानो उन्हें नामों और फिर उन्हें का उपयोग करें और उन्हें बढ़ावा देने, अंततः। और हम एक छोटा सा बात करेंगे मोबाइल रणनीतियों के बारे में, की तरह क्या यह वास्तव में क्या मतलब है एक मोबाइल ऐप्लिकेशन या मोबाइल वेबसाइट बनाते हैं। आप Android के लिए करते हैं? आप यह आईओएस के लिए करते हैं? आप यह उन दोनों के लिए करते हैं? और व्यापार-नापसंद क्या हैं? और फिर अंत में, हम ले लेंगे एक नज़र वेब प्रोग्रामिंग, जो एक सामूहिक शब्द है वास्तव में किसी भी समय का वर्णन आप सॉफ्टवेयर है कि के बारे में वेब पर चलने का मतलब है, चाहे वह फोन पर या डेस्कटॉप या लैपटॉप। हम पर एक संक्षिप्त नज़र रखेंगे डेटाबेस और डिजाइन उसमें, तो सिर्फ इसलिए कि लगभग किसी भी दिलचस्प वेब आधारित अनुप्रयोग इन दिनों डेटाबेस किसी तरह का है। अन्यथा, यह होगा सिर्फ स्थैतिक सामग्री हो। और एक डेटाबेस तुम बनाने के लिए अनुमति देता है परिवर्तन समय के साथ, अपने आप को, चाहे या उपयोगकर्ताओं से। और हम कैसे आप पर विचार करेंगे डिजाइनिंग के बारे में जाना होगा उस डेटाबेस और शब्दजाल की तरह कि एक इंजीनियर के दशक में आ सकता है एक सफेद बोर्ड पर चर्चा जब वास्तव में लागू करने पहली बार के लिए एक app। हम के बारे में संक्षेप में बात करेंगे एपीआई, उपयोगी सेवाओं आप पर खड़ा करने के लिए उपयोग कर सकते हैं कि दूसरों के कंधों, कंपनियों है कि क्या या व्यक्तियों, और हल अपने और अधिक तेजी से अपनी समस्याएं। और फिर हम शायद भिगोना करेंगे जावास्क्रिप्ट के साथ एक सा है, एक प्रोग्रामिंग भाषा है कि इस्तेमाल किया दोनों ब्राउज़रों में इन दिनों, लेकिन यह भी सर्वर में। और शायद, हम करेंगे फिर से आना, समय की अनुमति, हाथ पर वेब सामग्री हम में से कुछ को कल किया था और दो एकीकृत एक साथ इससे पहले कि हम स्थगित। that-- साथ तो क्या ahead-- है वहाँ कुछ भी याद है कि आप यकीन है कि हम डालने करना चाहते हैं और कुछ बिंदु पर स्पर्श करें। अगर यह दिमाग में स्प्रिंग्स है, लंबे समय से पहले इसे लाने। लेकिन क्यों हम एक साथ नहीं शुरू करते हैं कम्प्यूटेशनल सोच को देखो। और मुझे उस का प्रस्ताव कम्प्यूटेशनल सोच है, फिर से, के उच्च स्तर के विवरण की तरह क्या एक कंप्यूटर वैज्ञानिक कर सकता है। और वास्तव में, चलो शुरू करो तीन सामग्री के साथ कि कम्प्यूटेशनल सोच में जाना हो सकता है। यह यह वर्णन करने का सिर्फ एक ही रास्ता है। हम निश्चित रूप से परिभाषित कर सकता है किसी भी तरीके की संख्या में इस। लेकिन मुझे का प्रस्ताव करते हैं, आज की खातिर, कि दुनिया की समस्याओं, दुनिया की सभी समस्याओं, जब एक से संपर्क किया कंप्यूटर वैज्ञानिक सकता है के रूप में देखा जा क्या हम करेंगे कॉल आदानों, जो हम क्या फोन करता हूँ में खिलाया पाने की जरूरत है एल्गोरिदम, जो तब outputs उपज। दूसरे शब्दों में, पूरे समस्या को सुलझाने मैं दावे की दुनिया में आसुत किया जा सकता इन तीन मुद्दों। तो मैं आदानों से क्या मतलब है? आदानों सिर्फ यह है कि आप क्या कर रहे हैं हल करने के लिए सौंप दिया। उदाहरण के लिए, यहाँ है एक पुराने स्कूल समस्या है। अगर मैं एक फोन की किताब यहाँ है और मैं इस बारे में कुछ देखना चाहता हूँ, यह मेरा इनपुट है। मैं 1000 में या तो है एक फोन की किताब में पृष्ठों की है। यह मेरी समस्या के लिए इनपुट है। और मैं कुछ देख रहे हैं माइक स्मिथ, तो एक दोस्त की तरह जिसका नाम और नंबर है उम्मीद है कि यह पता पुस्तिका में। इस सेल के दिन से पहले है फोन है, तो मैं इसके लिए बस खोज नहीं कर सकते। इसलिए मुझे लगता है कि यह पुराने क्या करना है स्कूल और वास्तव में खोज कुछ जवाब देने के लिए इन सूचनाओं। और कहा कि इस सवाल का जवाब सिर्फ जा रहा है उत्पादन के नाम से जाना। तो इनपुट फोन की किताब है। एल्गोरिथ्म के लिए जो कुछ भी सेट है कदम मैं माइक स्मिथ खोजने के लिए उपयोग। और आउटपुट, उम्मीद है कि है, माइक स्मिथ का फोन नंबर। और यह तो सिर्फ होगा सबसे अधिक किसी भी समस्या का प्रतिनिधि साथ करने के लिए आप हाथ आदानों हैं और आउटपुट का उत्पादन करना चाहते हैं। तो इससे पहले कि हम इस प्रक्रिया पर विचार जिसके द्वारा हम उस समस्या को हल कर सकते हैं, माइक स्मिथ और खोज ऐसा कुछ, की पहली पर विचार करते हैं और last-- इनपुट और आउटपुट। शारीरिक रूप से, निश्चित रूप से, इनपुट यहाँ कागज की एक पूरी गुच्छा एक साथ चिपके है एक फोन की किताब के रूप में। लेकिन कंप्यूटर, लैपटॉप के कोर्स और डेस्कटॉप और यहां तक ​​कि फोन इन days-- उन लोगों के हैं इलेक्ट्रॉनिक उपकरणों। और दिन के अंत में, क्या है एक कंप्यूटर के लिए एक ही इनपुट? खैर, यह ऐसा कुछ है इस शक्ति कॉर्ड यहाँ। मैं यह दीवार में प्लग, और मैं इलेक्ट्रॉनों का प्रवाह मिलता है, जो मुझे मशीन को चलाने के लिए अनुमति देता है। या हो सकता है उन इलेक्ट्रॉनों हैं मेरी बैटरी के माध्यम से बनाया। लेकिन दिन के अंत में, कि केवल एक चीज अपने लैपटॉप में जा रहा है। और इतना दिलचस्प सामान अंततः है बाहर आ रहा है, चाहे प्रिंटर के माध्यम से या स्क्रीन या audially या पसंद है। इसलिए हम सभी के रूप में है, तो हमारे एक कंप्यूटर के लिए मौलिक इनपुट बिजली है, तो बस इलेक्ट्रॉनों में और या बाहर जा रहा है और तो हम कैसे है कि निवेश का उपयोग कर सकते हैं वास्तव में जानकारी का प्रतिनिधित्व करने के लिए? दूसरे शब्दों में, हम कैसे मिलता है बिजली का एक सरल प्रवाह से वास्तविक प्रतिनिधित्व करने के लिए नंबर या वास्तविक पत्र स्क्रीन पर या वास्तविक छवियों या वास्तविक फिल्में या ई-मेल या इनमें से किसी भी नंबर उच्च स्तर की अवधारणाओं, अगर तुम जाएगा, उस पर दिन के अंत में किसी भी तरह इस में जमा करने के लिए है इलेक्ट्रॉनिक यांत्रिक उपकरण केवल उन साधारण ingredients-- का उपयोग कर इलेक्ट्रॉनों में और बाहर आ रहा है? तो यह है कि प्रतीत होता है, सरलतम रूप में, राज्यों की ही तरह मैं अपनी दुनिया में है, इसलिए शर्तों speak-- करने के लिए मेरे world-- भी नहीं है मैं इलेक्ट्रॉनों बह रहा है, बिजली बह रही है, या मैं इतने पर not-- करते हैं, बंद। और हम पर और बंद को औपचारिक रूप देना, के रूप में एक कंप्यूटर वैज्ञानिक हो सकता है, सिर्फ 1 और 0 के साथ। चलो बस कुछ मनमाने ढंग से वर्णन लेकिन यह करने के लिए लगातार संख्या। 1 पर इसका मतलब, 0 बंद का मतलब है। या फिर आप भी रूप में यह देख सकता है पर सच मतलब है और झूठी साधन। आप यह भी काला कर सकता है और सफेद या लाल और नीले रंग। तुम सिर्फ दो वर्णनकर्ता की जरूरत है। और एक कंप्यूटर वैज्ञानिकों होगा आम तौर पर केवल 0 और 1 का उपयोग करें। तो यह है कि अगर मामला है, मेरी ही वर्णमाला कैसे 0 और 1 के से मिलकर कर रहा है, मैं संभवतः संख्या भी करने के लिए मिल सकता है एक कंप्यूटर में 2, अकेले चलो संख्या 3 या वर्णमाला का एक पत्र या एक छवि या एक फिल्म? कैसे हम एक तरह से bootstrap हैं अपने आप को इस बुनियादी सिद्धांत से 0 और 1 के लिए और वास्तव में की अधिक दिलचस्प कुछ का प्रतिनिधित्व करते हैं? ठीक है, चलो कि प्रश्न डाल दिया बस एक पल के लिए पकड़ पर और कुछ विचार उम्मीद है कि परिचित, यहां तक ​​कि अगर तुम सच के बारे में नहीं सोचा है यह 10 के लिए किसी भी विस्तार, 20, 30, 40, 50 में अधिक साल। यह क्या है? आप का उच्चारण कैसे होता है? नहीं एक चाल सवाल। एक संख्या है, लेकिन यह क्या है? 1, 2, 3, या 123। और मैं इसे पसंद किया है आप कैसे कहा 1, 2, 3, क्योंकि है कि यह देखने का एक तरीका है। 1, 2, 3, यह एक दृश्य है तीन प्रतीकों की। यह चित्र है कि हम अब के लिए शब्द नहीं है। और अगर आप एक तरह से उन सभी को पढ़ने एक साथ, अंग्रेजी में एक ठेठ मानव 123 कहेंगे। और कहा कि एक की तरह है उच्च स्तर की अवधारणा, एक काफी बड़ी संख्या की तरह लगता है। लेकिन हम वहाँ कैसे मिलता है? खैर, यह बाद थोड़ी देर हो सकती है आप इसे इस तरह के बारे में सोचा है लेकिन मेरा दिन में वापस, मैं एक तरह से यह सीखा 1 के स्तंभ के रूप में, 10 की स्तंभ, और 100 के स्तंभ। तो Lakisa कहते हैं, यह है 1, 2, 3, लेकिन यह भी 123 है। लेकिन हम से कैसे मिलता है बाद के लिए पूर्व? खैर, आप आमतौर में क्या होगा 100 के स्तंभ, मैं एक 1 है। तो यह है कि 100 बार 1 कह की तरह है। और फिर 10 के कॉलम में, मैं 2 लोगों की है। तो यह है कि 10 बार 2 कह की तरह है। 1 के कॉलम में, मैं 3 लोगों की है। तो यह है कि 1 बार 3 कह की तरह है। और अगर मैं इन चीजों को जोड़ने एक साथ, यह, ज़ाहिर है, 100 से अधिक 10 प्लस 3। और ओह, यही कारण है कि मैं इस मिलता है 123 के उच्च स्तर धारणा। यह सिर्फ बुनियादी गणित, जिससे इन है प्रतीकों, उन्हें वजन है, अगर तुम , प्लेसहोल्डर या स्तंभ मान जाएगा। और एक बार मैं सब कुछ गुणा बाहर, मैं इस संख्या में मिलता है। तो आप में से कितने जानते हैं कि कैसे बात करने के लिए binary-- 0 और 1's-- एक कंप्यूटर की तरह? ठीक है, सही, कोई नहीं है, या आप में से कोई भी तुम्हें क्या लगता है। लेकिन मैं आप का दावा करेंगे वास्तव में पहले से ही यह पता है। हम बस की तरह tweak करने की आवश्यकता हमारी मानसिक मॉडल एक छोटा सा। लेकिन इस प्रक्रिया में बिल्कुल वैसा ही है। मेरे ऊपर इस एक छोड़ दें और बजाय एक पल के लिए यह नीचे खींच। कंप्यूटर की दुनिया में, हम केवल 0 और 1 का है। और तो बात है कि बदलने के लिए जा रहा है? खैर, मेरे इंसानों की दुनिया में, दशमलव प्रणाली, दिसम्बर अर्थ 10, मैं अपने निपटान में कितने अंक? 10, है ना? 0 9 के माध्यम से, बिल्कुल। और यही कारण है हमारे पास है 10 की जगह और 100 की जगह है। कहाँ से आ रहा है? खैर, इस 0 की सत्ता में 10 है। यह 1 की शक्ति के लिए 10, 10 2 की शक्ति, और बहुत आगे है। तुम सिर्फ अपने कॉलम गुणा रखने 10 से, सिर्फ 1 के साथ बंद शुरू दाएँ यहाँ एक में। की दुनिया में तो कंप्यूटर, अगर आप केवल binary-- द्वि अर्थ है 2-- या 0 और 1, हम बस वास्तव में बदलने की जरूरत है कि गणित के आधार। तो दूसरे शब्दों में, अब हम सिर्फ हूँ 1 के स्तंभ the-- है और जहां यह 2 के स्तंभ going-- है 4 के स्तंभ है, और शायद परे। ऐसा क्यों है? खैर, इस 0-वें पावर 2 है। यह 2 1 है। यह इतने पर 2 करने के लिए 2 है, और। तो यहाँ, जबकि हम 1, 10 की राशि, 100, 1000 के 10,000 के 100,000 की, 1 लाखों लोगों की है, और बहुत आगे है, यहाँ हम 1, 2, 4, 8, 16, 32, 64 है। तुम बस 2 से गुणा रखने के लिए, के बजाय 10 से गुणा रहते हैं। तो अब, अगर लक्ष्य पर हाथ का प्रतिनिधित्व करने के लिए है केवल 0 और 1 का उपयोग कर नंबर, चलो विचार कैसे हम वहाँ मिलता है। यह, ज़ाहिर है, पैटर्न 0 0 0, लेकिन क्या नंबर धारणात्मक यह प्रतिनिधित्व करता है? खैर, 4 गुना 0 प्लस 2 बार 0 जमा 1 बार 0, उन एक साथ जोड़ दें। 4 बार 0, ज़ाहिर है, 0 है, प्लस 2 बार 0, ज़ाहिर है, 0 प्लस 1 बार 0 जाहिर है, 0 है। तो आह, इस का प्रतिनिधित्व करता है नंबर हम इंसानों के 0 के रूप में जानते हैं। खैर, अब, चलो चलो बहुत जल्दी से तेजी से आगे। मैं बजाय का प्रतिनिधित्व नहीं कर रहा हूँ तो 0 0 0, लेकिन हम करते हैं 1 0 1, हो सकता है कि कैसे Lakisa, इससे पहले, सिर्फ यह 1 0 1 उच्चारण होता है। लेकिन अब, कैसे हम इसे उच्च करने के लिए लेते हैं नंबर हम इंसानों जानते हो सकता स्तर? तो इस नंबर क्या है? यह 5, संख्या हम 5 के रूप में जानते हैं। खैर, ऐसा क्यों है? वास्तव में क्रमबद्ध ठीक है, हम कर सकते हैं की यह प्रक्रिया के माध्यम से चलना 4 बार 1, 2 बार 0, 1 बार 1। उन एक साथ जोड़ें, तो इस 4 प्लस प्लस 1 0 है। और वह है, वास्तव में, 5। तो यह अब एक छोटे से थकाऊ हो रही है गणित फिर से और फिर से कर रहे हैं। लेकिन इस प्रक्रिया में बिल्कुल वैसा ही है। केवल एक चीज है कि हमारी दुनिया में बदल गया यह है कि हमारे स्तंभ हैं 1, 2, 4, 8, 16, और बहुत आगे है, बजाय 1, 10, 100, 1,000। और कहा कि सिर्फ हमारे वर्णमाला है क्योंकि है सिर्फ 0 से 1 9 0 के माध्यम से सिकुड़। एक छोटे प्रश्नोत्तरी यहाँ, कैसे होगा के रूप में तो आप द्विआधारी में नंबर 7 का प्रतिनिधित्व करते हैं? 0? खैर, 0, तुम मतलब 0 0 0? इसे फिर से कहो, करीना। उत्तम। ऐसा क्यों है? इसे प्रभावी ढंग से 4 प्लस 2 प्लस 1 है। बहुत अच्छा। हम एक छोटे से कैसे का प्रतिनिधित्व करते हैं another-- कैसे नंबर 2 के बारे में? बंद है, लेकिन पीछे की ओर। तो यह क्या है? 4 प्लस 1 है, ताकि 5 फिर से है। तो what's-- मैं माफी चाहता हूँ, करीना? 0 1 0। 0 1 0, 2 हो सकता है क्योंकि फिर से, यहां तक ​​कि यदि यह एक तरह से आप पर बाहर कूद नहीं है, सिर्फ गणित है। 4 बार 0, 0, 2 बार 1, 2, 1 0 0 बार है। तो इस संख्या को हम 2 के रूप में जानते है। कैसे नंबर 8 के बारे में? एचएम? अच्छा। तो हम किस तरह का एक और प्लेसहोल्डर की जरूरत है। हम 1 0 0 0 जरूरत है। और कहा कि हमारे एक तरह से सच है पुराने स्कूल दशमलव प्रणाली की। कैसे आप संख्या 1,000 प्रतिनिधित्व करते हैं? ठीक है, तुम होना प्रतीत होता है एक तरह से एक मुश्किल स्थान में, अगर आप से पूछना प्रतिनिधित्व करने के लिए नंबर 1000, क्योंकि आप अपने आप की तरह देना भले ही इनमें से 9, इनमें से 9, इनमें से 0, जो सबसे बड़ी संख्या है आप है, तो आप काफी 1,000 को नहीं मिला। तो अगर आप 1000, तुम सिर्फ एक और की जरूरत है स्थिति इतनी है कि आप 1 0 0 0 कर सकते हैं, फलस्वरूप संख्या 1,000। तो अब, चलो इस तरह की नक्शा चलो वैचारिक चर्चा हार्डवेयर पर वापस जाएँ जहां फिर, इनपुट बस गया था इस छोटे से बिजली केबल, बिजली में आ रहा है और बाहर बह रही है। और इतना है कि यहाँ से मैप किया जा करने के लिए वहाँ करने के लिए, ठीक है, क्या हम वास्तव में जरूरत है? ठीक है, तुम एक के अंदर जा रहा है के बारे में सोच सकते हैं कंप्यूटर, प्रकाश बल्ब की एक पूरी गुच्छा, अगर तुम। वे वास्तव में ट्रांजिस्टर कहते हैं। और ट्रांजिस्टर सिर्फ स्विच हैं कि या तो पर या बंद हो सकता है। तो अगर आप एक के बारे में सोच सकते ट्रांजिस्टर पर है कि बिजली प्रवाह करने की अनुमति है और एक ट्रांजिस्टर रोकने के रूप में बंद है कि बहने से बिजली। और ले बजाय रोशनी यहाँ पर, यही कारण है कि मैं इस तरह से नहीं करते नए स्कूल शैली की। तो यह एक 1, एक टॉर्च हो सकता है , पर किया जा रहा है केवल मात्र यद्यपि। और यह एक 0 हो सकता है, और अब यह बंद है। तो इस भौतिक डिवाइस का उपयोग कर, मैं अब बाइनरी सिस्टम का प्रतिनिधित्व कर सकते हैं। मैं सिर्फ दो राज्यों की जरूरत है। इससे कोई फर्क नहीं पड़ता कि क्या रंग यह है या यह क्या है। सब मायने रखता है कि मैं है पर एक राज्य और दूसरे राज्य से दूर। तो यहाँ अपने फोन का उपयोग कर, मैं कैसे कर नंबर हैं 0 के रूप में जानते प्रतिनिधित्व करते हैं? या यों डाल दिया, क्या संख्या अब मैं प्रतिनिधित्व कर रहा हूँ? 0, क्योंकि डिवाइस बंद है। और अगर मैं ऐसा? और अब, मैं कैसे कर नंबर 2 का प्रतिनिधित्व करते हैं? क्या मैं आपका फोन उधार ले सकता हूँ यहाँ, जैसा कि हम कल किया था? तो चलो देखते हैं, तो अगर मैं प्रतिनिधित्व करना चाहते हैं नंबर 2, इस संख्या 2 है? नहीं। क्या नंबर मैं गलती कर रहा हूँ यहां का प्रतिनिधित्व? यह वास्तव में नंबर 3 है। तो जो एक मैं बंद करने के लिए करना चाहते हैं? अगर अच्छी तरह से काले फोन or-- they're-- काले फोन या सफेद फोन? सफेद फोन। तो अगर मैं इस बंद कर देते हैं और हम यहाँ पर यह लाइन अप, हम एक 1 2 की जगह और एक 0 1 के स्थान पर। और इसलिए मैं अब कर रहा हूँ नंबर 2 का प्रतिनिधित्व। और यह, ज़ाहिर है, संख्या होगी 3, क्योंकि इन रोशनी की अब दोनों पर हैं। और मैं यहाँ बंद कर देंगे, लेकिन यह मतलब होता है अगर मैं प्रतिनिधित्व करना चाहते हैं नंबर 4 या 8 या अधिक है, मैं और अधिक फोन की जरूरत के लिए जा रहा हूँ। लेकिन यह सब उस पर जा रहा है। तो अगर आप कभी भी है कि सुना है एक-- के अंदर you-- कंप्यूटर धन्यवाद ट्रांजिस्टर के लाखों लोगों की है, कि है सिर्फ छोटे छोटे स्विच के लाखों लोगों की। और वे प्रकाश नहीं कर रहे हैं बल्ब उस पर और बंद कर देते हैं, लेकिन वे या तो बिजली की अनुमति है कहीं प्रवाह या इसे रोकने के लिए। और तो वहाँ अपने दो है पर या बंद states--, पर या बंद। तो क्या अब हम प्रतीत होता है इस की क्षमता है इस अवधारणा का प्रतिनिधित्व करने के लिए कि हम वास्तविक हार्डवेयर में करना चाहते हैं। लेकिन यह सब अब हम क्षमता है नंबरों यह प्रतीत होता है प्रतिनिधित्व करते हैं। इसलिए हम का प्रतिनिधित्व करने के बारे में कैसे जाना है वर्णमाला के अक्षरों, जो सुविधा के अगले प्रकार की तरह लगता है आप एक आधुनिक कंप्यूटर को जोड़ने के लिए चाहते हो जाएगा एक बार जब आप नंबर है? और वास्तव में, आप के बारे में लगता है कि अगर यह, ऐतिहासिक, कंप्यूटर वास्तव में पेश किए गए सेवा करने के लिए के रूप में संख्यानुसार calculators। लेकिन ज़ाहिर है, इन दिन, वे बहुत अधिक करते हैं। यहां तक ​​कि जब वे बूट, आप आम तौर पर एक या एक से अधिक शब्दों को देखें। तो तुम शब्द कैसे प्रतिनिधित्व करते हैं, आप सभी के लिए है, तो फिर, के अंत में बिजली दिन, या यों 0 और 1 का? हाँ। हाँ, मेरा मतलब है, हम एक तरह से किया था किसी न किसी रूप में यह कल, जहां कुछ बिंदु पर, मैं मैं मनमाने ढंग से लगता है कहा कि, अगर हम प्रतिनिधित्व करना चाहते हैं पत्र ए, हम सिर्फ कह सकते हैं कि एक 1। यह क्रिप्टोग्राफी के संदर्भ में था, जहां हम सिर्फ कोड के कुछ प्रकार की जरूरत है, मानचित्रण किसी तरह का। तो शायद एक एक के रूप में प्रतिनिधित्व किया जाएगा 1, और बी, एक 2 के रूप में प्रतिनिधित्व किया जाएगा और जेड प्रतिनिधित्व किया जाएगा एक 26, उदाहरण के लिए के रूप में। और फिर केवल चेतावनी है कि अगर मैं कर रहा हूँ अपने ईमेल में पत्र एन्कोड करने के लिए जा रहा या मेरे पाठ संदेशों में संख्या के रूप में, आप सभी उपयोग करने के लिए सहमत होना सम्मेलनों का एक ही सेट। और वास्तव में, दुनिया वास्तव में जो कुछ किया गया है। वहाँ दुनिया में एक प्रणाली है कहा जाता ASCII, अमेरिकन स्टैंडर्ड सूचना आदान लिए कोड, जो केवल एक निर्णय कुछ वर्ष है मनुष्य कर दिया है कि पहले कि तय किया कि एक बराबर करने के लिए नहीं जा रहा है 1, 2, और 26, और इसलिए यह एक है forth-- थोड़ा different-- लेकिन 65, 66, 67। और मैं अपने आप को रोकना होगा एक बस एक पल में चार्ट। लेकिन यह मनमाना है। लेकिन यह बात नहीं है कि यह मनमाना है। दुनिया बस लगातार हो गया है। अब, हाल ही में, वहाँ कुछ शौक़ीन है यूनिकोड कहा जाता है, क्योंकि दुनिया की तरह का एहसास हुआ, कंप्यूटर की खोज करने के बाद, वहाँ अच्छी तरह से भी अधिक है कि दुनिया में 256 प्रतीकों कि हम का प्रतिनिधित्व करने के लिए चाहते हो सकता है, खासकर जब आप परिचय एशियाई भाषाओं और अन्य symbologies कि आप अधिक से अधिक अर्थवत्ता की जरूरत है जल्द से जल्द संस्करण में फिट कर सकते हैं इस कोड है, जो ASCII बुलाया गया था। तो यूनिकोड वास्तव में अनुमति देता है आप और अधिक 0 और 2 का उपयोग करने के लिए। विशेष रूप से, आप सुनवाई रखना शब्द बाइट्स समाज में और यहां तक ​​कि बस बिता कल। और एक बाइट क्या फिर से है? एक बाइट क्या है? यह सिर्फ 8 बिट है। तो यह है कि वास्तव में क्या मतलब है? खैर, इसका मतलब है कि, इससे पहले, जब हम बच्चे थे के बारे में बात कर बाइनरी और मैं उपयोग कर रहा था मनमाने ढंग से तीन बिट्स जब हम बच्चे थे 1 की जगह binary-- के बारे में बात कर रही है, 2 की जगह, और 4 के place-- अच्छी तरह से, एक बाइट बस का अर्थ है कि आप बात कर रहे हैं तीन की इकाइयों में नहीं है, लेकिन चार, पांच, छह, सात से आठ, जो हमें 8 की जगह देता है, 16 की, 32 की, 64, और 128 के। दूसरे शब्दों में, एक सा सब नहीं है कि उपाय के उपयोगी एक इकाई है, यह सिर्फ एक छोटे से की तरह है क्योंकि जानकारी के टुकड़े, पर या बंद। तो कुछ साल पहले, दुनिया बस का फैसला यह थोड़ा और अधिक में बात करने के लिए सुविधाजनक है बाइट्स के संदर्भ में, एक समय में आठ बातें। और इसलिए इस प्रकार का जन्म हुआ एक बाइट की धारणा। और इसलिए हम आठ बिट्स यहाँ है। और यह पता है, भी बदल जाता है, इसी के लिए कारण, दुनिया वर्ष का फैसला पहले कि एक ASCII पत्र का प्रतिनिधित्व करने के लिए, आप 8 बिट की इकाइयों का उपयोग करने के लिए जा रहे हैं। यदि आप नहीं करते तो भी अगर कि कई की जरूरत है, आप कर रहे हैं हमेशा के लिए 8 बिट का उपयोग करने के लिए जा रहा वर्णमाला के एक पत्र का प्रतिनिधित्व करते हैं। और यह सुविधाजनक है, तब क्योंकि अगर आप है कि एक 0 0 0 1 1 एक संदेश प्राप्त होता है 1 1 0 एक और 1 1 1 0 1 0 द्वारा पीछा किया 0 1, तो आप 16 प्राप्त करते हैं बिट्स, दुनिया सिर्फ कर सकते हैं मान लेते हैं कि पहले 8 एक पत्र हैं और दूसरा 8 एक और पत्र हैं। कोई बात नहीं देखते हैं कितने। यह सिर्फ मायने रखता है कि हम सब लगातार हो जब हम इन बिट्स व्याख्या कर रहे हैं। और यह सिर्फ यादृच्छिक था। यही कारण है कि कुछ का मतलब है, लेकिन मैं नहीं था वास्तव में यह क्या मतलब के बारे में सोचते हैं। तो यह एक छोटे सफेद झूठ है। मूल रूप से, ASCII वास्तव में केवल 7 बिट्स का प्रयोग किया। और आठवें सा है विस्तृत ASCII बुलाया। लेकिन मुद्दा यह अंत में, एक ही है। दुनिया आम तौर पर 8 बिट पर मानकीकृत। तो यह एक छोटे से होना प्रतीत होता है सीमित है, क्योंकि मैं केवल कर सकते हैं राजधानी एक प्रतिनिधित्व करते हैं, राजधानी जेड के माध्यम से पूंजी बी लेकिन वास्तव में नहीं है, अगर मैं जाना है-- वहाँ संसाधनों का एक गुच्छा है ऑनलाइन, उदाहरण के लिए, asciitable.com, इस एक छोटे होने जा रहा है पहली बार में भारी। लेकिन मैं कहना करेंगे यहाँ क्या महत्वपूर्ण है। यह सिर्फ होता है be-- करने के लिए और मैं हूँ walk-- चलो देखते हैं, अगर मैं यहाँ पर चलते हैं। यहाँ दशमलव में है स्तंभ, संख्या 65। और दाहिने हाथ के कॉलम पत्र पर चरित्र, Chr, पत्र ए है और अब आप के लिए, अनदेखा कर सकते हैं, बीच में सब कुछ। इस हेक्साडेसिमल है, अष्टाधारी, और एक HTML कोड। इस साइट के लिए बस फेंक करने के लिए कोशिश कर रहा है पर एक बार जब आप पर जानकारी का एक बहुत। लेकिन हम सब के बारे में परवाह दशमलव है स्तंभ और चरित्र स्तंभ। इसलिए इस तर्क से, क्या है नंबर है कि दुनिया फैसला किया गया है एक एक छोटे प्रतिनिधित्व करता है? 97 हाँ। और सिर्फ भ्रमित करने के लिए संभवतः थोड़ा, क्या संख्या दुनिया का फैसला किया है नंबर 1 का प्रतिनिधित्व करेंगे? ठीक है, क्योंकि we-- 49, ऐसा लगता है यहाँ, नीचे में नीचे छोड़ दिया है। अब, मैं क्या मतलब है? तो यह पता चला है कि कंप्यूटर सिस्टम में, वहां आम तौर पर एक है बुनियादी फर्क एक संख्या है और एक चरित्र के बीच। एक नंबर बात है हम जब बढ़ रही सीखा हम ग्रेड स्कूल में सुपर जवान थे। यह बातें आप के साथ गिनती है। लेकिन एक चरित्र है, बस एक आकार है एक ग्लिफ़, तो बात करने के लिए स्क्रीन पर। अब, हम एक तरह से देखना मनुष्य कुछ है कि इस तरह दिखता है। और हम कहते हैं, ओह, यह संख्या 2 है। लेकिन नहीं, वह सिर्फ एक प्रतीक है कि लग रहा है क्या हम नंबर 2 के रूप में जानते हैं। और तो वहाँ इस है मौलिक भेद वास्तविक संख्या और पात्रों के बीच। यह एक संख्या है। लेकिन आम तौर पर, में एक कंप्यूटर के संदर्भ में, यदि आप के बजाय देखना इस तरह से कुछ quoted-- और आप हमेशा नहीं करते यह देखने के लिए उद्धृत किया है, लेकिन discussion-- की खातिर यदि लिए आप संख्या के आसपास उद्धरण देखते हैं, यह अब एक चरित्र है। तो इस नंबर 2 के नीचे एक कंप्यूटर के अंदर हुड एक पैटर्न के साथ प्रतिनिधित्व किया जाएगा बिट्स कि संख्या का प्रतिनिधित्व करते हैं 50 ऑनलाइन चार्ट के अनुसार। हालांकि, एक कंप्यूटर है, तो सिर्फ यही नहीं, यह देखता है साथ प्रतिनिधित्व किया जाएगा सा 0 0 0 0 0 0 1 0 के पैटर्न। जबकि, इस चरित्र होगा वास्तव में as-- और अब प्रतिनिधित्व किया, मैं एक छोटे से harder-- यह तो सोचने के लिए मिल चरित्र 0 के साथ प्रतिनिधित्व किया जाएगा 0 1-- क्या मैं यहाँ क्या ज़रूरत है? 0 0 1 1 0 0 1 0। मैं यह कैसे कर दिया? , आप अगर अच्छी तरह से इस संख्या 50 है इन स्तंभों का उपयोग कर इसे बाहर गुणा, इस नंबर 2 है, और इसलिए यही कारण है कि वहाँ इस विरोधाभास है कि है। और यह सिर्फ एक है सुविधाओं के लिए अब टीज़र प्रोग्रामिंग भाषाओं में मौजूद है कि कि हम बाद में आज संक्षिप्त पर स्पर्श करता हूँ। प्रोग्रामिंग भाषाओं में, आप आम तौर पर है, लेकिन हमेशा नहीं, बातें विभिन्न प्रकार के डेटा को बुलाओ। दूसरे शब्दों में, एक programmer-- जब वह या वह लिख रही है, एक प्रोग्रामर में फैसला करने के लिए हो जाता है क्या प्रारूप अपने या अपने डेटा स्टोर करने के लिए। के रूप में आप या तो डाटा स्टोर कर सकते हैं कच्चे संख्या, नंबर 2 की तरह। या आप उन्हें तार के रूप में स्टोर कर सकते हैं, या पात्रों के दृश्यों आप आम तौर पर साथ अभिव्यक्त होता है कि अपने प्रोग्रामिंग भाषा में उद्धरण। तुम बातें कर सकते हैं called-- मैं oversimplify और उन्हें फोन करता हूँ इतनी संख्या वास्तविक numbers-- कि नंबर 2 की तरह पूर्णांकों नहीं कर रहे हैं, लेकिन संख्या 4.56 पसंद है। तो वास्तविक संख्या भी कर सकते हैं दशमलव अंक है, इतना है कि एक अलग मौलिक है एक कंप्यूटर में डेटा का टुकड़ा। और फिर आप भी हो सकता है अभी भी अन्य प्रकार के डेटा। तो यह है कि वास्तव में सिर्फ एक नमूना है डिजाइन निर्णय का सरलतम कि एक प्रोग्रामर हो सकता है हुड के नीचे हैं। इसलिए किसी भी प्रश्न बस अभी तक? तो चलो बनाने की कोशिश करते यह एक छोटे से अधिक असली। यह हार्डवेयर नहीं है अब उपयोग में इतना। लेकिन इस कमरे में शायद सबसे सबको साथ बड़ा हुआ और अभी भी हार्ड ड्राइव का उपयोग करता है किसी तरह। यहाँ तक की सबसे हालांकि अब हमारे लैपटॉप , उपकरणों है कि इस तरह से संचालित है बजाय आम तौर पर आज लैपटॉप ठोस राज्य ड्राइव नहीं चलती भागों के साथ। और कहा कि अधिक महंगा हो जाता है, दुर्भाग्य से, लेकिन एक छोटा सा तेजी और एक-- अच्छी तरह से, अक्सर, एक बहुत तेजी से, जो कारणों में से एक है। और यह भी कि यह नहीं करता है के रूप में ज्यादा गर्मी उत्पन्न करते हैं। यह छोटा हो सकता है, तो यह है आम तौर पर एक शुद्ध सकारात्मक। लेकिन यह हमें एक नक्शा करने के लिए अनुमति देता है छोटे से अधिक concretely क्या हम 0 के बारे में बात कर रहे हैं और 1 के एक भौतिक डिवाइस के लिए अब स्तर। यह मुझे बात करने के लिए एक बात है मामले में के बारे में 0 और 1 मेरे फोन की या सूक्ष्म रूप मामले में के पर और बंद किया जा रहा है स्विच। लेकिन क्या हार्ड ड्राइव के बारे में? अपने लैपटॉप में, यदि आप एक बड़े हो, तो एक, या अपने डेस्कटॉप कंप्यूटर में, या निश्चित रूप से सर्वर में आज, तुम कहाँ है हार्ड ड्राइव है कि अंतरिक्ष के एक टेराबाइट, अंतरिक्ष के 4 टेराबाइट्स, अच्छी तरह से है कि क्या मतलब है? 1 के साथ एक हार्ड ड्राइव अंतरिक्ष का मतलब है की टेराबाइट वहाँ है 1 खरब बाइट्स किसी भी तरह के अंदर, या यों 8 खरब बिट्स के अंदर। 1 टेराबाइट 8 terabits होगा या 1 ट्रिलियन बिट्स, जो इसका मतलब है कि अगर आप एक कठिन है ड्राइव, आप किसी भी तरह की है या अन्य एक खरब 0 और यह की 1 के अंदर। और अगर हम सिर्फ एक पर एक नज़र रखना एक हार्ड ड्राइव की मनमानी के चित्र प्रतिनिधि, यह वही है जो एक कठिन है ड्राइव आमतौर पर अंदर की तरह लग सकता है। यह भी है, की तरह की तरह है एक पुराने खिलाड़ी फोनोग्राफ लेकिन आम तौर पर साथ अंदर कई रिकॉर्ड, इसलिए कई speak-- करने के लिए थाली, के रूप में वे कहते हैं, धातु परिपत्र डिस्क, और फिर एक छोटे से पढ़ने के सिर, एक पुराने रिकॉर्ड खिलाड़ी की तरह ज्यादा। और कहा कि पढ़ने के सिर को पीछे चलता रहता है और आगे और किसी भी तरह बिट्स पढ़ता है। और, इन थाली पर क्या भी हालांकि हम इंसानों उन्हें देख नहीं सकते, या तो वास्तविकता में या इस तस्वीर में, वहाँ छोटे छोटे चुंबकीय कणों है। और आप लंबे समय है, भले ही भूल गए कि कैसे बिजली काम करता है, एक चुंबकीय कण आम तौर पर आरोप लगाया है कि एक उत्तर अंत और एक दक्षिण है इसलिए उत्तर और दक्षिण end--। और तो दुनिया बस कुछ समय पहले का फैसला कि, अगर एक चुंबकीय प्रोटोकॉल अनिवार्य इस तरह से गठबंधन किया है, उत्तर-दक्षिण, का है कि एक 1 कहते हैं। यदि यह बजाय दक्षिण-उत्तर है, बस उस एक 0 कहते हैं। और अगर ऐसा है तो आप पर है अपने निपटान में एक ट्रिलियन छोटे छोटे चुंबकीय particles-- और उम्मीद है, में हार्डवेयर सरलता आदेश में उन लोगों के आसपास फ्लिप करने के लिए के रूप में आप fit-- देखते हैं अगर आप चाहते हैं 0 की एक पूरी गुच्छा प्रतिनिधित्व करते हैं, आप सिर्फ 8 चुंबकीय कणों की जरूरत है सब इस तरह से गठबंधन किया। और आप का प्रतिनिधित्व करना चाहते हैं आठ 1 है, तुम सिर्फ 8 चुंबकीय कणों गठबंधन की जरूरत है वापस इस तरह वापस करने के लिए वापस करने के लिए। मैं क्या मतलब है चुंबकीय कणों? सच कहूँ तो, इन सभी वर्षों के बाद, बात यह है कि अभी भी मेरे मन में आता है इस आदमी है, अगर आप इस बात के साथ बड़ा हुआ। इस के लिए एक little-- है उन unfamiliar-- एक थोड़ा बचपन खिलौना है कि इस गंजा आदमी यहाँ है कि इन सभी छोटे छोटे काले है चुंबकीय कणों कि इसके साथ आ रहे हैं। और कहा कि लाल छड़ी का उपयोग कर, जो सिर्फ एक चुंबक है, आप की तरह उसे एक मूंछें दे सकते हैं या आइब्रो या बाल या उस पर कुछ भी। तो वास्तव में, हम ज़ूम उदाहरण के लिए, इस में खेल की तरह है आप Wooly विली के साथ खेल सकते हैं। और यह केवल कहने के लिए है, इन है ज्यादा बड़ा चुंबकीय कण होते हैं की तुलना में एक हार्ड ड्राइव पर वास्तव में कर रहे हैं, और अब तक कम चुंबकीय कणों। लेकिन वास्तव में देखते हैं तो आपको क्या करना है, तो एक छोटे चुंबकीय कणों हार्ड ड्राइव, कैसे आप वास्तव में कर सकते हैं डेटा का प्रतिनिधित्व करने के लिए उन का उपयोग करें। [वीडियो प्लेबैक] -इस हार्ड ड्राइव जहां अपने पीसी है दुकानों अपनी स्थायी डेटा के अधिकांश। ऐसा करने के लिए, डेटा साथ राम से यात्रा सॉफ्टवेयर का संकेत है कि बताने के साथ हार्ड ड्राइव है कि डाटा स्टोर करने के लिए कैसे। हार्ड ड्राइव सर्किट उन का अनुवाद वोल्टेज के उतार चढ़ाव में संकेत है। इन, बारी में, हार्ड ड्राइव के नियंत्रण कुछ चल के कुछ parts-- चलती भागों आधुनिक कंप्यूटर में छोड़ दिया। संकेतों में से कुछ एक मोटर नियंत्रण, जो spins धातु लेपित थाली। आपका डेटा वास्तव में है इन थाली पर संग्रहीत। अन्य संकेतों पढ़ने / लिखने के सिर को स्थानांतरित पढ़ने या थाली पर डेटा लिखने के लिए। इस मशीनरी इतनी सटीक है कि एक मानव बाल भी नहीं कर सकता था सिर के बीच पारित और थाली कताई। फिर भी, यह सब भयानक गति पर काम करता है। [अंत प्लेबैक] और आप देख सकते हैं वीडियो की पूंछ अंत, वहां आम तौर पर कई थाली हैं। और इतना है कि पढ़ने सिर सिर्फ शीर्ष पढ़ नहीं है। यह एक तरह से तीन या की तरह है चार या अधिक पढ़ने के सिर इस तरह से है कि चाल, एक साथ डेटा पढ़ रहे हैं। तो वहाँ के एक बहुत है जटिलता और समय की तरह कि एक हार्ड ड्राइव में शामिल है। और बात यह वास्तव में रफ़ू घूम रहा है तेजी से है, इसलिए वहाँ जटिलता का एक बहुत कुछ है। लेकिन हम एक छोटे से गहरी जूम इन करते हैं और देखो, जहां इन चुंबकीय कण होते हैं और हम उन पर कैसे हो रही हैं। [वीडियो प्लेबैक] पर -Let के देखो क्या हम सिर्फ धीमी गति में देखा। जब बिजली की एक संक्षिप्त नाड़ी पढ़ने / लिखने के सिर के लिए भेजा है, यह एक छोटे से विद्युत चुम्बकीय पर flips एक दूसरे के एक अंश के लिए। चुंबक बनाता है एक क्षेत्र है, जो बदलता है एक छोटे, छोटे के polarity धातु के कणों के हिस्से जो कोट प्रत्येक थाली की सतह। इन छोटे की एक पद्धति श्रृंखला डिस्क पर आरोप लगाया क्षेत्रों में डेटा की एक एकल बिट का प्रतिनिधित्व करता है बाइनरी संख्या प्रणाली कंप्यूटर द्वारा उपयोग किया। अब, मौजूदा एक भेज दिया जाता है, तो पढ़ने / लिखने के सिर के माध्यम से जिस तरह से, क्षेत्र एक दिशा में ध्रुवीकरण हो रहा है। वर्तमान में भेज दिया जाता है, तो विपरीत दिशा, ध्रुवीकरण उलट है। कैसे आप हार्ड डिस्क से डाटा प्राप्त करते हैं? बस इस प्रक्रिया को उल्टा। तो उस पर कणों है डिस्क है कि चालू हो पढ़ने / लिखने के सिर में घूम रहा है। एक साथ लाखों रखो इन चुम्बकीय क्षेत्रों, और आप एक फ़ाइल को मिल गया है। अब, एक एकल फाइल के टुकड़े हो सकता है सब एक ड्राइव के थाली पर बिखरे हुए, एक तरह से गड़बड़ की तरह अपने डेस्क पर कागजात की। तो एक विशेष अतिरिक्त फ़ाइल रहता है जहां सब कुछ है का ट्रैक। तुम चाहो तो था नहीं करते हैं ऐसा कुछ? [अंत प्लेबैक] तो वहाँ के लिए alluded किया जा रहा है, शायद, है विलोपन की कल से उस विषय। जब आप किसी को नष्ट फ़ाइल, कल हमने कहा एक कंप्यूटर वास्तव में क्या करता है कि क्या, जब आप कुछ खींचें रीसायकल बिन या कचरा बिन करने के लिए? यह सिर्फ यह भूल जाता है। लेकिन 0 और 1, चुंबकीय कणों लाल और नीले रंग की तरह है कि देखो यहाँ बातें, या मेरे हाथ इधर, हार्ड ड्राइव पर अभी भी कर रहे हैं। और तो वहां मौजूद software-- नॉर्टन यूटिलिटीज और पुराने और अन्य अधिक आधुनिक software-- कि बस एक पूरी हार्ड ड्राइव स्कैन रहा होगा उन सभी 0 और 1 है, क्योंकि उस पर पता चला है कि सबसे फ़ाइल formats-- वर्ड दस्तावेजों, एक्सेल फाइल, चित्र, वीडियो सब कुछ है files-- पैटर्न है कि उनके बीच आम हैं। हर वीडियो फ़ाइल हो सकता है एक अलग वीडियो की हो, लेकिन पहले कई बिट्स आम तौर पर एक ही हैं। या पिछले कई बिट्स आमतौर पर एक ही हैं। और इसलिए उच्च संभावना के साथ, आप उन पैटर्न के लिए देख सकते हैं। और फ़ाइल, भूल गया है, भले ही आप उच्च संभावना के साथ कह सकते हैं, लेकिन इस एक शब्द दस्तावेज़ की तरह लग रहा है, इसे ठीक करने देता है और यह संयुक्त राष्ट्र के भूल जाते हैं, अगर तुम। और इतना है कि आप कैसे ठीक हो सकता है डेटा है कि या तो गलती से हो गया है नष्ट कर दिया या नष्ट कर दिया या जान-बूझकर जो कुछ प्रयोजनों के लिए नष्ट कर दिया। इसके विपरीत, सुरक्षित विलोपन क्या करता है इस तरह एक तस्वीर के संदर्भ में? वास्तव में, उन सब यादृच्छिक बनाता है। तो यह की तरह की कुछ चालें उन्हें नीचे, उनमें से कुछ, उनमें से कुछ को अपरिवर्तित छोड़ देता है, और आम तौर पर इसे से बाहर यादृच्छिक शोर करता है, या बस हो सकता है के सभी बनाता है उन्हें 0 या उन्हें 1 के सब के सब। और वह भी आम तौर पर कर सकते हैं अपने डेटा को दूर से हाथ धोने। तो चलो इस मुद्दे को अब लौट चलें कम्प्यूटेशनल सोच, जिससे की हम सूत्र जानकारी है। और एल्गोरिदम देता है आप अंततः outputs। हम आदानों पर अब ध्यान केंद्रित करने और आउटपुट, क्योंकि अब, मैं दावे हम का एक तरीका है इनपुट और आउटपुट का प्रतिनिधित्व। हम सिर्फ द्विआधारी का उपयोग करने के लिए जा रहे हैं। और कोई बात नहीं हम आज का प्रतिनिधित्व करना चाहते हैं, चाहे वह एक नंबर या एक पत्र है या फोन की किताब में उसके हजारों या छवियों या फिल्में, अंत में दिन की, यह सब 0 और 1 का है। और मैं दावा है कि, यहां तक ​​कि इस हालांकि केवल 0 के साथ एक सुपर सरल दुनिया है और 1 की, हम खुद बना सकते हैं। और हम में से एक उदाहरण देखा है पत्र इस प्रकार अब तक के साथ है। तो चलो इस पर अब ध्यान केंद्रित करते हैं बीच संघटक, एक एल्गोरिथ्म। और हम यह करने के लिए लौट चलें माइक स्मिथ का उदाहरण है। तो इस फोन की किताब है, जो मानते में, हम अब इतना उपयोग नहीं करते हैं, वहाँ एक समस्या को हल किया जा रहा है। हम माइक स्मिथ की तरह किसी को खोजने के लिए चाहते हैं। और क्या मैं माइक लगाने के लिए क्या हो सकता है? खैर, मैं सिर्फ इस खोल सकता है किताब, पहले पृष्ठ पर शुरू, और एहसास है, ओह, मैं एक खंड में हूँ। माइक वहाँ नहीं है। मैं स्मिथ के लिए S अनुभाग की जरूरत है। तो बस एक बार में एक ही पेज बदल रखना। मेरे बहाना है कि यह सब करते हैं सफेद पन्नों और पीले नहीं पृष्ठों, क्योंकि हम खोजने के लिए नहीं जा रहे हैं पीले पन्नों में वैसे भी माइक। लेकिन मैं सफेद पन्नों में हूँ। और अब, मैं बी अनुभाग में हूँ। मैं अभी भी उसे नहीं मिला है। तो मैं एक समय में एक पृष्ठ बदल रखना। यह एक एल्गोरिथ्म है। यह निर्देशों का एक सेट है कुछ समस्या को सुलझाने के लिए। दूसरे शब्दों में, देखो पेज, अगर माइक उस पर नहीं है, पेज बारी है, और दोहराता बार बार, आदर्श नीचे देख रहे हैं के रूप में आप यह कर रहे हैं। तो इस एल्गोरिथ्म है, इस प्रक्रिया, सही है? माफ़ कीजिये। नहीं, मैं कुछ ओपन स्कूल सुनते हैं। ठीक है, लेकिन यह हाँ है-, यह निश्चित रूप से कठिन है। की तरह, हम यहाँ सभी दिन अगर मैं हो जाएगा इस गति से माइक की तलाश में रहते। लेकिन मुझे यह दावा सही है चलो। यह बेवकूफी है, लेकिन यह सही है। दिन के अंत में, लंबे समय के रूप में यह हो सकता है ले, अगर वह वहाँ में है मैं माइक मिलेगा और मैं ध्यान दे रहा हूँ। और मैं अंत में अपने पेज तक पहुँचने। और अगर मैं बहुत दूर हो, अगर मैं, टी खंड के लिए मिलता है फिर मैं थोड़ा अनुकूलन कर सकते हैं और बस का कहना है, एचएम, सब कुछ किया। मैं भी बर्बाद करने की जरूरत नहीं है समय जेड की जा रही है। लेकिन यह एक बहुत है रेखीय दृष्टिकोण, तुम अगर एक बहुत ही तरह के बाएँ-से-सही होगा दृष्टिकोण, एक सीधी रेखा। और उसके सही लेकिन धीमी गति से। तो मैं ग्रेड स्कूल से याद है, की तरह एक पहली ग्रेडर से एक अनुकूलन की, जहां मैं कैसे नहीं गिनती करने के लिए सीखा लोगों द्वारा लेकिन twos-- तो 2, 4, 6 से। यह एक बहुत कठिन है, करते हैं, लेकिन सिद्धांत रूप में, यह है faster-- 8, 10, 12, 14, और बहुत आगे है। कैसे है कि एल्गोरिथ्म के बारे में? इसे और अधिक कुशल? यह तेजी से है? दर्शकों: यह कुशल है। डेविड मालन: हाँ, तो यह बात है def-- है सचमुच दो बार के रूप में तेजी, यह सोचते हैं मैं मेरी उंगलियों के साथ गच्चा नहीं मिलता। यह उपवास के रूप में दो बार है, क्योंकि मैं दो के माध्यम से बदल रहा हूँ एक बार की बजाय एक पर पृष्ठों, लेकिन यह है संभवतः सही में, क्योंकि क्यों? दर्शकों: आप कुछ लंघन कर रहे हैं। डेविड मालन: ठीक है, अगर माइक होता है क्या शायद sandwiched-- जा सकता है जब मैं बाद में कर रहा हूँ फोन की किताब में, माइक होना होता है इन दो पृष्ठों के बीच बैठा, और मैं बस आँख बंद करके इस पर छोड़। इसलिए हम वहाँ एक छोटे से तय की जरूरत है। एक बार जब मैं टी खंड मारा, मैं न सिर्फ विश्वास से कह सकते हैं, हम माइक स्मिथ नहीं मिल रहा था। मैं शायद वापस दोगुना करने की है। या वास्तव में, एक बार मैं किसी पहुँचने एस एन, बजाय स्मिथ के लिए एस-एम का नाम है, तत्काल, मैं दोहरा सकता है पीठ, क्योंकि शायद वह पिछले पृष्ठ पर था। लेकिन मैं अभी तक वापस दोगुना करने की जरूरत नहीं है। सिद्धांत रूप में, अगर मैं इसे सही पर कर समय, मैं तो बस एक पृष्ठ पीछे चलते हैं। तो यह केवल एक अतिरिक्त कदम जोड़ने है। तो मैं दो बार के रूप में तेजी से चला गया है, लेकिन यह मेरे लिए एक अतिरिक्त पृष्ठ की लागत। लेकिन वह एक शुद्ध जीत की तरह लगता है। लेकिन इस में कैसे ज्यादातर लोगों को नहीं है इस कमरे में इस समस्या का समाधान होगा। क्या होगा एक विशिष्ट व्यक्ति, हो सकता है एक कुछ साल पहले करते हैं, माइक स्मिथ खोजने के लिए? हाँ, माइक नहीं मिल रहा था। मैं क्या करूं? तो एक छोटे से करीब मिलता है, लेकिन मुझे क्या करना है know-- क्या एक फोन की किताब के बारे में सच है? दर्शकों: यह अनुक्रमिक है। डेविड मालन: यह अनुक्रमिक है। यह वर्णमाला है। और मैं एम अनुभाग में हूँ तो हैं, माइक, सही करने के लिए स्पष्ट रूप से है मैं सचमुच फाड़ कर सकते हैं half-- में समस्या यह आम तौर पर that-- आंसू की तुलना में आसान है आधे में समस्या है और इसे दूर फेंक, तो यह है कि अब, मैं एक समस्या यह है कि राशि अब कोई 1,000 pages-- कि मुश्किल था, क्योंकि मुझे लगता है कि मैं वास्तव में फाड़े फोन की किताब यह नहीं time-- 1,000 पृष्ठों, लेकिन 500। तो समस्या सचमुच बड़े रूप में आधा है। और कहा कि बहुत सम्मोहक है, क्योंकि मेरे पिछले एल्गोरिदम के साथ, संस्करण 1 और 2, मैं केवल एक समस्या बना रही थी एक पेज छोटे, छोटे दो पृष्ठों समय पर। अब जबकि, मैं इसे 500 बनाया पृष्ठों ही बार में सभी छोटे। ठीक है, तो अब, करीम का प्रस्ताव मैं सही आधा करने के लिए जाना है। तो मैं मोटे तौर पर जाने के लिए जा रहा हूँ बीच करने के लिए, दे या ले। और अगर मैं इस गणितीय किया था, मैं बीच में सही जा सकते हैं। और अब, मुझे पता है, ओह, मैं टी अनुभाग में हूँ। मैं वास्तव में बहुत दूर जाना था। लेकिन मैं, फिर से, फाड़ कर सकते हैं आधे में समस्या है, इसे दूर फेंक देते हैं। और मेरे बाइट्स के रूप में बड़ा नहीं। यह केवल, क्या, 256 पृष्ठों या 250 पृष्ठों, दे या अभी ले। लेकिन यह अभी भी जिस तरह से अधिक है एक पृष्ठ या दो पृष्ठों से अधिक है। और तो अब, मैं बीच करने के लिए मोटे तौर पर जाना। ओह, मैं अब काफी काफी दूर तक जाना नहीं था। तो मैं फिर से, दोहराने, दोहराने दोहराने, जब तक मैं उम्मीद कर रहा हूँ सिर्फ एक पेज के साथ छोड़ दिया है। तो यह है कि सवाल आमंत्रित किया है, अगर मैं मोटे तौर पर 1,000 पृष्ठों के साथ शुरू कर दिया, कितने कदम यह मुझे ले गए मेरे एल्गोरिथ्म के संस्करण 1 के साथ? वैसे, अगर माइक एस में है अनुभाग, सबसे खराब स्थिति में, वो काफ़ी करीब है वर्णमाला के अंत। तो अगर फोन की किताब 1,000 पृष्ठों की है, मैं 1,000 पृष्ठों के भीतर माइक मिल जाएगा, दे या ले। शायद यह 800 की तरह है या ऐसा है, लेकिन यह बहुत 1,000 के करीब है। जबकि, दूसरे में एल्गोरिथ्म, कितने पेज ज़्यादा से ज़्यादा हो जाती है मैं हो सकता है माइक स्मिथ लगाने के लिए आवश्यकता होती है? इसमें 1,000 पृष्ठों है, लेकिन मैं कर रहा हूँ उन्हें दो एक समय में कर रहे हैं। ठीक है, 500ish तरह अधिकतम ऐसा है, क्योंकि अगर मैं पूरी फोन की किताब के माध्यम से जाना है, पर जो बात है, मैं नहीं रोक सकता। लेकिन मैं से कुछ बंद दाढ़ी कर सकते हैं सिर्फ टी खंड पर रोक नहीं सकता। लेकिन यह सबसे खराब स्थिति 500 ​​पृष्ठों पर है। तो कितनी बार मैं विभाजित कर सकते हैं एक छमाही में 1,00o-पेज फोन की किताब फिर से और फिर और again-- से 500 125 करने के लिए 250 से 1000? कितना समय से पहले मैं एक पेज मारा? हाँ, इसके बारे में 10 है। गोलाई और इस तरह पर निर्भर करता है, यह है के बारे में 10 पृष्ठों दिया जा करने के लिए कुल की जरूरत या फोन किताबें फटे होने की जरूरत है। तो यह है कि बहुत शक्तिशाली है। हम 1,000 पेज की समस्या के साथ शुरू कर दिया इन कहानियों के सभी तीन में। लेकिन पहले एल्गोरिथ्म में, यह मुझे ले गया, सबसे ज्यादा मामले, 1000 पेज माइक लगाने के लिए बदल जाता है। दूसरा एल्गोरिथ्म, 500 पृष्ठों माइक खोजने के लिए। तीसरा एल्गोरिथ्म, 10 पृष्ठों माइक खोजने के लिए। और यह और भी ज्यादा है शक्तिशाली है जब आपको लगता है एक विपरीत परिदृश्य के प्रकार के बारे में। मान लीजिए कि अगले फोन कंपनी है कि साल शायद दो शहरों में एक साथ विलीन हो जाती है, और फोन की किताब अचानक है इस मोटी, बजाय इस बात का, इसलिए 2,000 के बजाय पृष्ठों 1,000। खैर, मेरी पहली एल्गोरिथ्म के लिए तलाश 2,000 पेज फोन बुक में माइक स्मिथ, बदतर स्थिति, इसे लेने के लिए जा रहा है कितने पेज अगले साल बदल जाता है? फोन की किताब, 2,000 पृष्ठों है so-- ठीक है, नहीं एक और। अगर फोन की किताब दो बार के रूप में मोटी है पहले एल्गोरिथ्म, पहले एल्गोरिथ्म, 2,000, है ना? सबसे खराब स्थिति में, माइक वास्तव में है पुस्तक के अंत के करीब है, इसलिए यह 2,000 पेज बदल जाता है। दूसरा एल्गोरिथ्म से जा रहा twos, 1000 पृष्ठों की तरह। लेकिन यह कैसे अपने तीसरे में के बारे में और सबसे हाल ही एल्गोरिथ्म? फोन कंपनी डबल्स हैं 1,000 से 2,000 पृष्ठों की संख्या, कितने अधिक बार मैं आंसू की जरूरत है छमाही में उस किताब माइक खोजने के लिए? दर्शकों: बस एक। डेविड मालन: बस एक और, क्योंकि के साथ एक पृष्ठ आंसू, मैं सचमुच विभाजित कर सकते हैं और जीत के लिए, अगर तुम जाएगा, आधे लेने में समस्या यह है कि इससे बाहर एक बड़े पैमाने पर काटने। और इसलिए इस का एक उदाहरण है दक्षता और यकीनन एक एल्गोरिथ्म जिसके साथ हम में से सभी कर रहे हैं एक तरह से intuitively परिचित। लेकिन यह सही रूप में सिर्फ है मेरे अन्य एल्गोरिदम के रूप में के लिए है कि tweak के साथ दूसरी एल्गोरिथ्म, लेकिन यह इतना अधिक कुशल है। और वास्तव में, क्या एक कंप्यूटर वैज्ञानिक, या बदले में एक प्रोग्रामर, आम तौर पर क्या होगा जब लेखन कोड पता लगाने की कोशिश है, सब ठीक है, मैं नहीं चाहता कि मेरी कार्यक्रम सिर्फ सही है, मैं भी यह कारगर होना चाहते हैं और समस्याओं का समाधान अच्छी तरह से। असली दुनिया में कल्पना कीजिए आज गूगल अनुक्रमण, खोजों की तरह पृष्ठों के अरबों की तरह, अगर वे कल्पना पहले एल्गोरिथ्म का इस्तेमाल किया बिल्लियों लगाने के लिए एक अरब pages-- पर देख रहे हैं के बीच अपने डेटाबेस में पहले पृष्ठ, दूसरे, तीसरे, बस देख एक बिल्ली के लिए, एक बिल्ली के लिए लग रही है। यह बहुत अरे धीमी है यह प्रतीत होता है। वे बजाय कुछ इस्तेमाल कर सकते कहा जाता है द्विआधारी खोज है, जो कोई coincidence-- द्वि दो अर्थ है, हम 2 में कुछ विभाजित रखने के लिए, half-- में वे द्विआधारी खोज का उपयोग कर सकता और हो सकता है, यहां तक ​​कि तेजी से बिल्लियों को खोजें या जो भी आप के लिए खोज कर रहे है। और सच में, वहाँ है यहां तक ​​कि शौक़ीन एल्गोरिदम कि बस से ज्यादा कर आधे में चीजों को विभाजित आदेश में जानकारी जल्दी खोजने के लिए। और हम एक छोटा सा बात करेंगे लंच के बाद उन के बारे में आज। तो मुझे सिर्फ इस प्रतिनिधित्व करने के लिए कोशिश करते हैं। हम में जाने की जरूरत नहीं है किसी भी गणित या वास्तविक संख्या। हम सार में इस बारे में बात कर सकते हैं। लेकिन मुझे बस का प्रस्ताव करते हैं, अगर आप अब एक चर्चा कर रहे थे इंजीनियरों के साथ इस एल्गोरिथ्म का प्रस्ताव और तुम बनाने के लिए कोशिश कर रहे हैं एक गणना निर्णय, क्योंकि हो सकता है इंजीनियर तुम, तुम से कहता है पता है कि मैं एक क्या, लागू कर सकते हैं जैसे दो मिनट में रैखिक खोज। इट्स दैट ईजी। द्विआधारी खोज, कि कल्पना नहीं है, लेकिन यह मुझे 10 मिनट की तरह ले जा रहा है, तो 5 बार के रूप में लंबे समय। वहाँ एक व्यापार यहाँ, यहाँ तक कि संदर्भ में है किस सॉफ्टवेयर लिखने के लिए निर्णय लेने से। आप सरल कलन विधि के बारे में है, जो सिर्फ आप दो मिनट का समय लगेगा? या आप अधिक समय खर्च करते हैं, 10 मिनट, शौक़ीन एल्गोरिथ्म लेखन? आप सवाल के उस तरह कैसे तय करते हैं? या आप इसे एक छोटे से अधिक वास्तविक कर सकता है। मैं अपने मालिक बता इसे लेने के लिए जा रहा है मुझे या तो एक सप्ताह या 10 सप्ताह को लागू करने के लिए इस तरह से सॉफ्टवेयर, कैसे आप तय करते हैं जो हरे रंग की रोशनी करने के लिए एल्गोरिथ्म? करीम? दर्शकों: दर्शकों, मुझे लगता है। डेविड मालन: दर्शकों को। आप दर्शकों से क्या मतलब है? दर्शकों: यह जा रहा है उपयोगकर्ताओं द्वारा इस्तेमाल किया जा जो [सुनाई] उपयोगकर्ताओं द्वारा [सुनाई]। लेकिन आप कर रहे हैं, तो यह कुछ है सिर्फ खुद के लिए कर रही है एक समस्या की सुविधा के लिए, [सुनाई] जल्दी। डेविड मालन: हाँ, यह जल्दी है और गंदा यह वर्णन करने के लिए एक अच्छा तरीका है। वास्तव में, आप कर रहे हैं अपने समय के बहुत का वर्णन स्नातक स्कूल में, जिससे अक्सर बार, मैं होश में बुरा कोड लिखा so-- कम से कम, कि कैसे मैं it-- बूझकर इसलिए युक्तिसंगत बनाया, क्योंकि भले ही मैं कोड लिख रहा था कि अपेक्षाकृत धीमी गति से निष्पादित करने के लिए किया गया था, मैं खुद कोड लिखने में सक्षम था बहुत तेजी से, खर्च कुछ ही मिनटों या नहीं घंटे दिनों के लिए। और यह पता चला, मैं कभी कभी सोने के लिए की जरूरत है। तो मेरा कोड की आवश्यकता है, भले ही 8 चलाने के लिए घंटे, अच्छी तरह से वह ठीक है, मैं सिर्फ सोने के लिए है, जबकि इसे चलाता जाना होगा। समय तो, मैंने सोचा कि यह था बहुत चालाक है, यहां तक ​​कि मैं हालांकि जाहिरा तौर पर अपनी पीएचडी के माध्यम से बहुत धीरे धीरे काम किया। लेकिन उस की बातचीत है कि, अगर मैं लिख रहे थे सॉफ्टवेयर अन्य लोगों के लिए जो मुझसे ज्यादा मायने रखता है, ठीक है, उन्हें होने के लिए 8 घंटे इंतजार अपने खोज परिणामों को वापस पाने के सब है कि बाध्यकारी नहीं है। और तो और अधिक समय खर्च सामने चुप सॉफ्टवेयर लिखने के लिए कि अधिक कुशल है और अधिक, हमारी तीसरी एल्गोरिथ्म की तरह, शायद समय के साथ उन फायदा होता है। तो यह वास्तव में अधिक निर्भर करता है समय कैसे उन लागत को जोड़ने। आप लिख रहे हो जा रहे हैं सॉफ्टवेयर यह एक बार का उपयोग करने के लिए, शायद के रूप में अच्छी तरह से कर सकता है त्वरित और गंदे, वे कहते हैं। बस इसे एक साथ फेंक देते हैं। यह कोड है कि embarrasses है आप, यह इतना बुरा है, लेकिन यह काम सही ढंग से किया जाता है, भले ही यह प्रभावी नहीं है। इसके विपरीत, यदि आप अधिक समय खर्च करते हैं कुछ पर, यह सिर्फ सही हो। और फिर समय के साथ परिशोधित, समय की है कि अग्रिम लागत , शायद सार्थक है अगर आप को बनाए रखने आम मामले के लिए अनुकूलन। और वास्तव में, कि एक विषय है प्रोग्रामिंग, या कंप्यूटर विज्ञान और अधिक आम तौर पर, अनुकूलन करने की कोशिश असामान्य नहीं मामले के लिए लेकिन आम case-- क्या ऑपरेशन बार-बार होने जा रहा है? आप अरबों के लिए जा रहे हैं उपयोगकर्ताओं के लिए अपनी वेबसाइट पर खोज, आप शायद अतिरिक्त खर्च करना चाहिए सामने चुप सप्ताह बेहतर सॉफ्टवेयर लेखन, तो अपने उपयोगकर्ताओं के सभी लाभ यह है कि। अब, यह एक पर कब्जा करने की कोशिश करते हैं थोड़ा pictorially, लेकिन इतना नहीं संख्यानुसार। यहाँ तो सिर्फ एक पुराने स्कूल चार्ट है। और मुझे कहना है कि इस समय क्या है। और यह what-- कोई फर्क नहीं पड़ता वास्तव में, नहीं, नहीं समय। दूसरे की धुरी पर है कि डाल दिया। हम कहते हैं कि इस समय है चलो, और इस समस्या के आकार है। और एक कंप्यूटर वैज्ञानिक आम तौर पर कॉल कर सकते हैं यह सिर्फ एन। n की तरह है हमारे जाने के लिए चर, जहां n एक नंबर, एन संख्या है, और वह है जो कुछ भी आप आदानों की संख्या। तो इस मामले में, n है पृष्ठों की संख्या। तो यह 1,000 में हो सकता है मामले में हम सिर्फ बताया। इसलिए समय माप की किसी भी इकाई हो सकता है। हो सकता है, यह दूसरी बात है। हो सकता है, यह दिन है। हो सकता है, यह पेज बदल जाता है की तरह है। कोई फर्क नहीं पड़ता। आप में गिनती करने के लिए, कि जो भी चाहते हैं समय हो या यों खर्च होंगे। तो उस के साथ बहुत पहले एल्गोरिथ्म, अगर मैं, उदाहरण के लिए, 1,000 पेज फोन की किताब थी, मैं वहाँ एक डॉट आकर्षित करने के लिए जा रहा हूँ, क्योंकि यह 1,000 पृष्ठों है, तो इसे ले लिया मोटे तौर पर 1,000 पेज बदल जाता है, दे या ले। एक और फिर अगर मैं था 2,000 पेज फोन की किताब, और मैं एक दूसरे को आकर्षित करने के लिए जा रहा हूँ यहाँ डॉट 2,000 पृष्ठों के लिए क्योंकि, यह 2,000 सेकंड की तरह है या पेज बदल जाता है या जो भी हो। और इसलिए जब मैंने पहले कहा, यह है एक रेखीय रिश्ते की तरह, कि जानबूझकर किया गया था, क्योंकि मैं चाहता था बाद में on-- सही now-- एक लाइन आकर्षित करने के लिए। यह एक सीधी की तरह है लाइन रिश्ता। ढलान 1/1, अगर तुम जाएगा। इस बीच, दूसरे एल्गोरिथ्म कहा, अगर आप 1,000 पृष्ठों मिल गया है और आप दूसरे एल्गोरिथ्म का उपयोग कर रहे थे, जहां मैं 2 के द्वारा गिना, मोड़ एक समय में दो पृष्ठों, मैं एक आकर्षित करना चाहिए नीचे या अपने मूल डॉट बिंदु ऊपर? दर्शकों: नीचे। डेविड मालन: नीचे, क्योंकि जैसा कि हमने देखा, यह ज्यादा समय के रूप में कम समय, आधा लेता है। इसलिए डॉट आधा होना चाहिए अन्य के रूप में उच्च। और यहाँ पर एक ही बात नहीं है, यह डॉट शायद मोटे तौर पर होना चाहिए। और तो मेरी दूसरी एल्गोरिथ्म, इसी तरह, समय के साथ एक रैखिक संबंध नहीं है। और हम इस तरह के रूप में यह आकर्षित कर सकते हैं। तो अब, तीसरे और अंतिम एल्गोरिथ्म के एक छोटे से आकर्षित करने के लिए कठिन है। लेकिन intuitively, मैं 1,000 मिल गया है मेरी तीसरी एल्गोरिथ्म के साथ पृष्ठों, यह केवल मुझे 10 कदम की तरह लेना चाहिए। और मैं 2,000 पृष्ठों मिल गया है मेरी तीसरी एल्गोरिथ्म के साथ, यह मुझे नहीं लेना चाहिए 10 कदम है, लेकिन 11, बस एक और। इसलिए हम केवल मात्र यह देखने के लिए जा रहे हैं। और यह पता चला है, अगर मैं इस पर ज़ूम, मैं हूँ प्रभाव के लिए अतिरंजना करने जा रहा है, कि रेखा के आकार, अंत में, एक सीधे line-- नहीं है क्योंकि, वास्तव में अगर यह थे, यह और अधिक की तरह लग रही होगी others-- यह वास्तव में एक वक्र रेखा है कि, अगर हम में ज़ूम, जा रहा है इस तरह से बहुत अधिक देखने के लिए। It-- ठीक है, ठीक है, इस हिस्से को अनदेखा। यही कारण है कि मेरी कलम कोण की जा रही थी। यह एक वक्र रेखा हमेशा होता है कि बढ़ रही है, हमेशा, हमेशा, हमेशा बढ़ रही है, लेकिन केवल अभी मुश्किल। और तो समय के साथ, आप एक है रिश्ते को और अधिक इस तरह है कि। यह लगभग सीधे लग रहा है। लेकिन यह कभी तो धीरे-धीरे बढ़ रही है। लेकिन साथ लगभग सभी बिंदुओं के लिए अपनी एक्स अक्ष, क्षैतिज अक्ष, यह उन अन्य लाइनों की तुलना में कम है। तो यह एक रिश्ता हो सकता है n, जिससे अगर आप एन पृष्ठों है, आप n सेकंड लेता है। इस एक रिश्ते एन / 2 हो सकता है। आप n पृष्ठों है, इसे लेता है आप एन / 2 सेकंड, आधे के रूप में कई। और यह एक लघुगणक है रिश्ता है, जो यदि आपको याद, लॉग n कब्जा के आधार 2 विकास के इस तरह है, तो बात करने के लिए। इसलिए इस पवित्र की तरह है इनमें से तीन के बीच ग्रेल यहाँ, बस इतना है क्योंकि यह अधिक कुशल, लेकिन यकीनन अधिक जटिल लागू करने के लिए। कोई सवाल? वैसे मुझे यह करते हैं, चलो मुझे एक पाठ खिड़की खुली अभी तो हम करने के लिए कोशिश कर सकते हैं यहाँ कुछ शकल। तो मुझे आगे चलते हैं और अब इस विधि को लागू कोड में माइक स्मिथ को खोजने के लिए, अगर तुम जाएगा, pseudocode कोड। मैं जावा या सी ++ का उपयोग करने के लिए नहीं जा रहा हूँ। मैं बस की तरह उपयोग करने के लिए जा रहा हूँ अंग्रेजी की तरह वाक्य रचना है, जो हम आम तौर पर pseudocode कोड कहेंगे। यहाँ, मैं एक खाली खिड़की है। और मैं बहुत चरण 1 कह रहा हूँ पहले एल्गोरिथ्म फोन की किताब लेने के लिए है। चरण 2 प्रथम पृष्ठ के लिए खुली किताब है। चरण 3 को देखने के लिए किया जाएगा माइक स्मिथ के लिए पेज। पेज पर हैं, माइक कहते हैं। बाकी बारी पेज और चरण 3 पर जाएँ। हो गया, हम कहते हैं। और इसलिए यह काफी सही नहीं है, जो हम एक पल में देखेंगे। लेकिन हम विचार करते हैं क्या अवधारणाओं मैं यहाँ पेश किया है। तो 1 और 2 और 3 चरणों बहुत ज्यादा verbs कर रहे हैं। वे बयानों कर रहे हैं, actions-- यह करते हैं। और हां एक प्रोग्रामिंग में भाषा, हम आम तौर पर होता है उन्हें बयानों फोन या कार्यों या प्रक्रियाओं, उन चीजों में से किसी भी नंबर पर कॉल। लेकिन वे सिर्फ ऐसा करने actions-- रहे हैं। चरण 4 मौलिक रूप से अलग है, क्योंकि यह एक तरह से एक सवाल पूछ रही है। यह कह रहा है कि हम तरह कर रहे हैं की सड़क में एक कांटा पर। अगर माइक पृष्ठ पर है, कॉल उसे, तो बदले अगर तुम जाएगा, छोड़ दिया है। और अगर नहीं, कुछ करने के लिए वापस जाने के लिए अन्य page-- या यों कहें, क्षमा करें, कुछ अन्य कदम है, जो करने के लिए वापस जाने के लिए पाशन निर्माण में किसी तरह का लाती है। और हम इसे फिर से और फिर से करना। और वास्तव में, तुम जानते हो क्या? हाँ। बाकी किताब रोकने के अंत में अगर। इसलिए हम एक-तिहाई की तरह की जरूरत हालत, तुम क्योंकि नहीं पेज विज्ञापन मोड़ रख सकते हैं nauseum, अंततः क्योंकि, मैं हूँ पुस्तक के अंत मारा। और एक कार्यक्रम में एक बग हो सकता है उस परिदृश्य की आशंका नहीं है। और फिर मैं बस एहसास है, ओह, रुको एक मिनट, मैं एक तिहाई परिदृश्य की जरूरत है। अगर मैं पन्नों से बाहर हूँ, मैं वास्तव में सिर्फ बंद कर देना चाहिए। अन्यथा, यह अपरिभाषित है। क्या होगा अगर मैं रखने जा रहा है पेज बदल जाते हैं और वापस जाने के लिए कह रही है, इस जब कंप्यूटर है फ्रीज या दुर्घटना, जब आप हिट लगता है कि जैसे कुछ अप्रत्याशित स्थिति है। अब, क्या माइक के बारे में स्मिथ का तीसरा algorithm-- फोन की किताब लेने, करने के लिए first-- को खुली किताब नहीं, नहीं पहले पृष्ठ इस बार, अच्छी तरह से, ओह middle-- करने के लिए, कि चाहते हैं दूसरी एल्गोरिथ्म हो। के सिर्फ तीसरे करने के लिए छोड़ दें। दर्शकों: ओह, मैं माफी चाहता हूँ। डेविड मालन: यह ठीक है। चलो बस third-- खुला करने के लिए छोड़ बीच करने के लिए और अब माइक स्मिथ के लिए देखो। पेज पर हैं, माइक कहते हैं। और फिर क्या हम यहाँ कहने के लिए करना चाहते हैं? और क्या? हम इस व्यक्त कर सकते हैं किसी भी तरीके की संख्या में। कोई सही जवाब है। ठीक है, फिर यदि नहीं, लेकिन हम करने की जरूरत है be-- ठीक है, हम दो में विभाजित करना चाहते हैं, लेकिन हम छोड़ दिया जाना या सही जाना चाहते हो? हम उस धारणा को कैसे व्यक्त करते हैं? खैर, माइक के मामले में, हाँ, यह सही है। लेकिन ठीक है, तो यह है कि वास्तव में एक अच्छी बात है। कोई बात नहीं। हम इस तर्क के साथ जा रहा रखेंगे। इसलिए-- दर्शकों: आधे से भी कम है। डेविड मालन: हाँ। तो और पेज है, तो हम कहते हैं, कम स्मिथ की तुलना में, स्मिथ के बाईं ओर, then-- चलो देखते हैं, है इस जटिल हो रहा है? बाकी पेज स्मिथ से पहले आता है, आंसू छमाही में, दूर फेंक जो आधे? दर्शकों: मैंने सोचा था कि [सुनाई] था। डेविड मालन: मैं सुन रहा हूँ दोनों जवाब। दर्शकों: वाम। डेविड मालन: ठीक है, फेंक दूर आधा छोड़ दिया है, के रूप में Lakisa पहले कहा था, छोड़ा आधा है, तो मैं एक तरह से बस जाने के लिए है- मैं सही करने के लिए जाना चाहते हैं। या यों, और मैं एक छोटे से बनाया यहाँ शुरुआत की गड़बड़ी का सा है, मैं प्रभावी ढंग से करना चाहते हैं फिर से 2 कदम करने के लिए जाना है, जहां middle-- या open-- के लिए खुला हाँ, बीच करने के लिए पृष्ठों चलो बस कहना है,। और यह बात ठीक करता है। यह अब एक किताब है। यह सिर्फ एक किताब का आधा है, बीच करने के लिए इतना खुला पृष्ठों की है। else-- लगभग वहाँ थे। चरण 6, बाकी पेज स्मिथ के बाद आता है, छमाही में आंसू, दूर सही आधा फेंक, उसके बाद चरण 2 पर जाएँ। बाकी छोड़ दिया है, एक चौथाई परिदृश्य यदि हम कोई पृष्ठों बारी करने के लिए छोड़ दिया है। इसलिए हम यह साफ कर सकता है। और हम यह साफ करना चाहिए। यह बहुत pseudocode कोड है, अगर आप होगा, बहुत ही उच्च स्तर का विवरण। लेकिन यह आम तौर पर विचार कब्जा करता है। और, फिर से, इस परिदृश्य में, हम , एक की हालत की धारणा है एक शाखा, सड़क में एक कांटा है, जिससे एक decision-- इस करते हैं, तो इस तरह से जाना है, और अगर, इस तरह से जाना है, और अगर, उस तरह से जाना। और यह एक बहुत ही आम है प्रोग्रामिंग तकनीक जो दिशा तय करने के लिए जाने के लिए, तो बात करो। और हम भी किसी तरह का है की संरचना पाशन, जहां हम फिर से और फिर कुछ कर रहे हैं। अब, यह पता चला है, ज्यादा इस उदाहरण के रूप में, सुपर सटीक होने के लिए महत्वपूर्ण है। लेकिन हम भी कुछ देखा है हम अमूर्त बुला रखें कि। यह फोन की किताब लेने के लिए क्या मतलब है? हम बस की तरह ले रहे हैं इस कमरे में प्रदान के लिए वह यह है कि कुछ अर्थ अर्थ नहीं है। हम सब बस की तरह पता है, ओह, खैर, फोन की किताब उठाओ। उसका वास्तव में क्या अर्थ है? वैसे, यह वास्तव में विस्तार का मतलब हाथ, दुबला, उंगलियों का विस्तार, उंगलियों के बीच पुस्तक चुटकी, खड़े हो जाओ, आप की ओर हाथ खींच। और हम वास्तव में हो सकता है इस बारे में पंडिताऊ, वास्तव में सुपर सटीक जा रहा है के रूप में मैं क्या कर रहा हूँ। लेकिन उन कदमों के सभी सामूहिक रूप से कर रहे हैं क्या यह एक फोन की किताब लेने के लिए इसका मतलब है। और तो इससे पहले, जब मैंने कहा, प्रत्येक इन पहले दो बयानों की एक के रूप में सोचा जा सकता है आगे बढ़ना या एक समारोह में, वास्तव में यह प्रतिनिधित्व करता है कि हम क्या एक अमूर्त बुला रखने के लिए। यह एक उच्च स्तर वैचारिक तरह है एक समस्या का वर्णन है कि वास्तव में काफी कुछ कदम शामिल है। एक और तो यह भी है प्रोग्रामिंग में विषय आवर्ती, जिससे मैं एक कार्यक्रम में लिख सकते हैं this-- तरह सिंटैक्स का उपयोग pick_up_phone_book ()। और फिर वाक्य रचना, मैं हूँ कुछ चोरी करने के लिए जा रहा सबसे प्रोग्रामिंग भाषाओं से। अब, चरण 1 भी लग रहा है एक समारोह की तरह अधिक है, एक प्रोग्रामर के रूप में यह नहीं कह सकता। ऐसा लगता है कि किसी को लग रहा है कोड एक नाम दे दिया है और दे दिया है मेरे लिए अन्य में उपयोग करने के somehow-- शब्द, मैं क्या लाइन पर प्रकाश डाला है हो सकता है कि कार्यक्षमता का प्रतिनिधित्व करता है मैं भी अपने आप को लागू नहीं किया। पुराने कोई है, से अधिक बुद्धिमान मुझे पहले से ही समझ से बाहर कैसे आप इस धारणा को व्यक्त एक फोन की किताब उठा के। और यह पांच कदम की तरह है मैं तो बस बंद परेशान है, मेरे सिर के ऊपर से। लेकिन वह या वह पहले से ही लागू यही नहीं, उन कई कदम दिया एक नाम, pick_up_phone_book। और कोष्ठक है बस क्या सबसे प्रोग्रामर इस तरह के बयान के अंत में कर रहे हैं। मैं अब पर खड़े हो सकते हैं उसके या उसके कंधे और फिर कभी नहीं, इसका क्या मतलब है के बारे में सोचते एक फोन की किताब लेने के लिए। मैं सिर्फ कह सकते हैं, फोन की किताब उठाओ। और वह वास्तव में क्या है हम में से सभी मनुष्यों यहाँ था। जब हम शायद 1 थे साल 2 वर्ष, बूढ़े, कोई हमें सिखाने के लिए किया था कि यह क्या एक फोन की किताब लेने के लिए मायने रखता है। और तब के बाद से हम दूर अनमना गए उन बहुत शुष्क से यांत्रिक कदम। और हम सिर्फ एक है सहज समझ क्या यह करने का मतलब है की एक फोन की किताब उठाओ। और अब आप एक्सट्रपलेशन कर सकते हैं और अधिक जटिल things-- करने के लिए एक इमारत का निर्माण। की तरह, कुछ लोगों के लिए, कि वास्तव में अर्थ नहीं है। ठेकेदारों को, वास्तुकारों को, कि कुछ अर्थ नहीं है। और वे जानते हैं कि क्या होगा, अगर ऐसा करने में मैंने कहा, एक इमारत का निर्माण जाना। लेकिन कमरे में हम में से ज्यादातर नहीं कर सका अमूर्त के स्तर के साथ सौदा। आप हमें मिल जाना चाहते बताने की जरूरत फावड़ा और ठोस मिल जाना और लकड़ी के टुकड़े कील एक साथ और जो कुछ भी एक इमारत के निर्माण में शामिल है। और उसकी वजह से हम नहीं किया है अभी तक समझने के लिए प्रोग्राम किया गया क्या यह एक इमारत का निर्माण करने के लिए इसका मतलब है। हम जानते हैं कि अमूर्त नहीं है। हम जानते हैं कि कार्यक्षमता की जरूरत नहीं है। और तो क्या आप में देखेंगे प्रोग्रामिंग भाषाओं, सामान्य रूप में, विशेष रूप से और अधिक आधुनिक भाषाओं, जावा, पीएचपी, रूबी, और अजगर की तरह, वे ज्यादा परिपक्व हो पुराने भाषाओं की तुलना में, सी और सी ++ और अभी तक दूसरों की तरह। और इसलिए वे अधिक के साथ आए कार्यक्षमता में बनाया। अधिक कोड लिखा गया है अतीत में लोगों द्वारा कि अब हम फोन कर सकते हैं या बुलाने या उपयोग करते हैं, के रूप में मैं कर रहा हूँ इशारा साथ में इस लाइन यहाँ पर प्रकाश डाला। और तो भले ही हम बात नहीं कर रहे एसई प्रति प्रोग्रामिंग भाषाओं के बारे में, सिर्फ pseudocode कोड के सभी विचार है कि चर्चा में अब भी कर रहे हैं। और यह पता चला सटीक है सुपर महत्वपूर्ण है, के रूप में अमूर्त है। और चलो की कोशिश करते हैं संवाद है कि इस प्रकार है। मैं गलती से खराब हो सकता है स्क्रीन पर एक स्लाइड चमकता द्वारा इस समय से पहले ही। लेकिन मुझे एक बहादुर स्वयंसेवक के लिए पूछना, आप ऊपर आ रहा है मन नहीं है। आप के सामने होगी कैमरा, अगर आप उस के साथ ठीक कर रहे हैं। किसी को भी आते हैं और देने के लिए करना चाहेंगे यहाँ अपने सहयोगियों को निर्देश? बस यहाँ पर आए हैं और यहाँ पर खड़े हैं और कुछ शब्द कहते हैं। विक्टोरिया सबसे मुस्कुरा रही है और सबसे मेरी आँखों से परहेज। तुम पर आने के लिए तैयार हो सकते हैं? ठीक। और अगर अपनी सीटों पर बाकी सब रद्दी कागज का एक टुकड़ा बाहर ले सकता है, अगर तुम। लाइन में खड़ा कागज ठीक है। इस तरह से चारों ओर आते हैं। या कागज के कुछ है कि आप कल दिए गए थे, बस किसी भी रिक्त पत्रक कागज का, अगर तुम सकता है। और अगर आप किसी भी नहीं है, तो सिर्फ अगर तुम सकता है अपने पड़ोसी से पूछो। तो पल के लिए, के लिए इस उदाहरण, विक्टोरिया की भूमिका निभाने के लिए जा रहा है एक प्रोग्रामर, एक इंजीनियर, जो आप कार्यक्रम के लिए सभी की जरूरत है, के रूप में कंप्यूटर, कुछ करने के लिए। और हम क्या मान्यताओं देखेंगे तुम बनाने के लिए तय है। हम कैसे सटीक वह हो चुनता देखेंगे। और इस प्रदर्शन हो जाता है शैक्षणिक दृष्टि से ठीक है, गलतियों के बहुत सारे बनाया जाएगा, कि हम तो इस्तेमाल करेंगे कि चर्चा के लिए एक अवसर के रूप में। लेकिन आप के लिए चुनौती चाहिए उन गलतियों से बचने के लिए हो सकता है, एक अच्छा प्रोग्रामर हो। और तो हाथ में चुनौती, अगर आप यहाँ पर चलने के लिए पसंद करेंगे स्क्रीन पर विक्टोरिया के सामने है here-- और उम्मीद है, आप में से कोई भी इस याद है जब मैं स्क्रीन पर लगीं। और चारों ओर मोड़ नहीं है सब पर है, क्योंकि इस कमरे में एक और स्क्रीन है कि मैं बंद कर सकते हैं। तो चारों ओर बारी नहीं है। विक्टोरिया के सामने कि एक ही चीख है। और उसकी नौकरी अब आप सभी को बताने के लिए है कागज का टुकड़ा अपने पर क्या आकर्षित करने के लिए। और हम देखेंगे पर आधारित अकेले मौखिक निर्देश, कंप्यूटर कोड, अगर तुम जाएगा, कैसे सटीक अपने चित्र are-- अपने कार्यान्वयन हैं। सही बात? दर्शकों: हाँ। डेविड मालन: ठीक है, पर अमल। दर्शकों: एक वर्ग ड्रा। [हँसी] डेविड मालन: और कोई सवाल पूछा जा सकता है। केवल आप क्या कर रहे हैं कहा जा सकता है। ओह, और अगर आप आज के स्लाइड्स एक टैब में खोलने के लिए, अपने टैब पर नहीं लग रहे। ठीक? दर्शकों: ठीक है, एक वृत्त खींचना। एक slope-- मैं ढलान कह सकते हैं? डेविड मालन: आप पर निर्भर है। दर्शकों: एक ढलान। और एक त्रिकोण। डेविड मालन: ठीक है। और यहाँ सिर्फ एक पल के लिए रहते हैं। और मैं आने के लिए जा रहा हूँ बस एक पल में चारों ओर। और कोई जरूरत उस पर अपने नाम डाल दिया। मेरे चारों ओर आते हैं और अपने चित्र एकत्रित करते हैं, आप उन्हें बाहर फाड़ मन नहीं है। यहाँ क्या हम वापस मिल गया है। मैं स्क्रीन पर प्रोजेक्ट कर देंगे। मैं एक वर्ग में देखते हैं, एक चक्र है, एक ढलान है, और एक त्रिकोण। तो है कि एक जवाब नहीं था। और वूप्स let's--। धन्यवाद। यहाँ एक और वर्गीकरण है, और इसके पीछे एक। इसलिए वे सभी भावना पर कब्जा करने लगते हैं। धन्यवाद। वहाँ एक और है, और यहाँ एक और एक है। एक ढलान व्याख्या है छोटे से अलग है, थोड़ा सुडौल। और करीबी, क्योंकि या तो की अद्भुत विशिष्टता के साथ जो तुम हो वर्णित है, या शायद आप की तरह देखा यह पहले, यह वास्तव में है विक्टोरिया वास्तव में क्या वर्णन किया गया था। लेकिन अब, आप में से जो लोग यह काफी सही नहीं मिला, चलो कुछ आपत्तियों यहाँ की पेशकश करते हैं। तो विक्टोरिया पहली बार एक वर्ग आकर्षित कहा। और अब, हम मान सकते हैं आज की खातिर हर कोई जानता है कि कैसे एक वर्ग आकर्षित करने के लिए। लेकिन यह है कि पूरी तरह से स्पष्ट है, सही नहीं है? आप कैसे और क्या हो सकता था एक वर्ग है, या जहां तैयार अस्पष्टता से कुछ हो सकता है यहां कंप्यूटर के लिए? दर्शकों: स्थान और आकार। डेविड मालन: स्थान, है ना? आप सब के सब, कुछ आकार का एक कागज था आम तौर पर आयत, लेकिन थोड़ा विभिन्न आकार। लेकिन आप निश्चित रूप से तैयार हो सकता है, अगर तुम चाहते थे, एक बहुत बड़ा वर्ग है, हो सकता एक छोटे से वर्ग। हो सकता है, यह घुमाया गया था। मुझे नहीं लगता है कि हम ने देखा है। लेकिन इसे और अधिक हीरा हो सकता था की तरह है लेकिन अभी भी, फिर भी, एक वर्ग गणितीय। तो यह है कि यकीनन अस्पष्ट था। फिर वह एक वृत्त खींचना कहा। आप में से कुछ लोग इसे अगले करने के लिए आकर्षित किया यह है, जो अनुचित नहीं है, क्योंकि मनुष्य लगता है कि या पढ़ने के लिए जाते हैं सही सबसे अधिक भाषाओं में छोड़ दिया है, इसलिए नहीं एक बुरा लगता है। लेकिन उस चक्र हो सकता था वर्ग के अंदर गया, चारों ओर हो सकता था वर्ग, कहीं और हो सकता था चादर पर है, तो यकीनन अस्पष्ट। ढाल शायद गया हो सकता है सबसे स्वतंत्रताओं मौखिक रूप से ले रही है इसका क्या मतलब है। और आप में से कुछ की व्याख्या की यह एक टेढ़ा-मेढ़ा लाइन के रूप में या एक सीधी रेखा या पसंद है। और फिर त्रिकोण भी है, हो सकता है किसी भी तरीके की संख्या में उन्मुख कर दिया गया। तो संक्षेप में, यहां तक ​​कि कुछ के साथ कि आप नज़र और आप की तरह, वाह कर रहे हैं, इसलिए सरल, एक बच्चे सकता है इस खींचना, अच्छी तरह से नहीं वास्तव में, जब तक कि आप कर रहे हैं सुपर, सुपर प्रेरक और कंप्यूटर बताओ वास्तव में क्या करना है। तो हम कर सकते हैं, अगर आपके पास कागज का एक चादर, चलो इस बार और अधिक प्रयास करें। और मैं विक्टोरिया एक देने के लिए जा रहा हूँ स्क्रीन यहां पर अन्य उदाहरण है। और फिर, चारों ओर मोड़ नहीं है और अपनी स्लाइड्स पर नहीं लग रहे। और मैं उसे करने के लिए एक पल दे दूँगा यह कैसे का वर्णन करने के बारे में सोचते हैं। उन्हें नहीं देखना तुम्हारी आँखों में डर लगता है। [हँसी] और फिर, इस समय का लाभ उठाने उन takeaways के कुछ और लगभग हर कोई प्राप्त करने की कोशिश कम से कम सही जवाब पर। दर्शकों: ठीक है, एक ले जाओ कागज का टुकड़ा, देखो कागज के उस टुकड़े के बीच में। उस टुकड़े के बीच में कागज के, एक घन आकर्षित। [हँसी] डेविड मालन: क्या हमने सीखा है? हम इतने करीब थे। ठीक है, अगर तुम सकता है दोहराने हर किसी के लिए। दर्शकों: के बीच में कागज का टुकड़ा, एक वस्तु आकर्षित जो एक घन की तरह लग रहा है। डेविड मालन: ठीक है, कि है आप सभी के साथ काम करने के लिए मिलता है। मेरे विश्लेषणात्मक होने की अनुमति दें और इतना महत्वपूर्ण नहीं, लेकिन दावा करना विक्टोरिया कि निश्चित रूप से बहुत सोच में किया जा रहा है उच्च स्तर की चीजें, जो अनुचित नहीं है। क्योंकि अन्यथा, हम सभी चाहते हैं बहुत बेकार हो, अगर हम कभी इतनी सटीक होना था सब कुछ के साथ हम दुनिया में नहीं है। लेकिन कह middle-- मैं करने के लिए जाना हम इस तरह के एक अच्छा ट्रैक पर थे सोचा वहाँ की तरह बहुत बीच करने के लिए जाना पेज के लिए, और फिर एक घन आकर्षित। तो वह चीजें में सोच रहा है, क्योंकि वह अभी भी देख रहा है क्या स्क्रीन पर के रूप में वास्तव में एक घन है। लेकिन वहाँ बहुत सारे अवसर है वहाँ व्याख्या के लिए। और वास्तव में, वहाँ इतने सारे अन्य तरीकों से आप को व्यक्त कर सकता है कि, जो मैं एक पल में प्रस्ताव देंगे। तो यहाँ हम एक अवतार है picture-- whoops-- एक की तस्वीर का अवतार है, तो एक यह करने के लिए थोड़ा तीन dimensionality, जो अच्छा है। यहाँ एक और एक है, जहां तुम हो एक ही है, हालांकि यह एक खुला घन की तरह है। कुछ लोगों को यह एक छोटे से ले लिया अधिक फ्लैट, दो आयामी। और कहा कि ठीक है। तो वहाँ है, वास्तव में कागज के केंद्र। यह एक मुझे लगता है कि तुम हूँ की तरह है, क्योंकि अगर हम यहाँ जाना है, इस लिए वह क्या वर्णन किया गया है। तो अब, मुझे प्रस्ताव और कैसे करते हैं हम इस स्थिति का वर्णन हो सकता है। वापस दिन में, सबसे में से एक अधिक सामान्य तरीके प्रोग्रामिंग जानने के लिए कोड लिख रहा था, लिखते निर्देश की लाइनें, कि एक छोटे से नियंत्रित स्क्रीन पर कछुआ। लोगो और इस के अन्य वेरिएंट भाषा के नाम था। और कछुआ एक ऐसी दुनिया में रहते थे। इसलिए इस आयताकार लगता है अंतरिक्ष उसकी दुनिया है। और अगर आप assuming-- मैं से शुरू होगा वास्तव में नहीं जानता कि कैसे कछुआ आकर्षित करने के लिए, तो चलो इसे इस तरह से करते हैं। और फिर वह एक खोल मिला है और तब शायद कुछ फुट। तो आप इस छोटे से हो सकता है स्क्रीन पर चरित्र। और यह की वस्तु प्रोग्रामिंग भाषा कछुआ मजबूर करने के लिए था ऊपर जाने के लिए, नीचे, दाएँ से बाएँ और अपनी कलम को नीचे रख या अपनी कलम उठाओ, तो वह वास्तव में स्क्रीन पर आकर्षित कर सकता है यह बहुत ही फ्लैट आयताकार दुनिया में। इसलिए जहां मुझे लगा कि तुम जा रही हो सकता है, और आप डाइविंग पर विचार करना चाहिए जहां मानसिक रूप से करने के लिए नीचे जब वर्णन निर्देश अधिक आम तौर पर, मैं दावा होगा, डाल दिया जाता है अपने middle-- में नीचे कलम और हम से छुटकारा मिल जाएगा कछुआ, क्योंकि मैं नहीं कर सकता वास्तव में उसे बहुत अच्छी तरह से ड्राइंग रखने के लिए। और अब, वरना कैसे कर सकता है मैं कहना है कि एक घन आकर्षित? खैर, हम ड्रॉ की तरह कुछ कह सकते हैं एक विकर्ण लाइन पूर्वोत्तर, उदाहरण के लिए, या एक 45 डिग्री के कोण पर ऊपर की ओर। और कहा कि मुझे यहाँ मिल गया है हो सकता है। और मैं बहुत दूर एक घन से हूँ। लेकिन अब, मैं कुछ कह सकते हैं की तरह छोड़ दिया करने के लिए 90 डिग्री बारी और की एक रेखा खींचना समान लंबाई उत्तर-पश्चिम। और मैं जारी रख सकता है इसी तरह के निर्देश के साथ। और यह आसान नहीं होने जा रहा है। और सच कहूँ तो, हम शायद होगा यहां पांच मिनट के लिए किया गया है। लेकिन शायद हम करने के लिए मिल गया होता कुछ है कि, दिन के अंत में, एक घन समाप्त होता जा रहा है, लेकिन हम कि अमूर्त के अंदर डुबकी लगाई इतनी कम पर यह करने के लिए स्तर है कि आप नहीं कर सकते हैं वास्तव में वहाँ आप पूरे तक क्या कर रहे हैं बात पृष्ठ पर वास्तव में वहाँ है। और इसलिए यह एक सामान्य सिद्धांत है, फिर से, इस विचार के programming-- अमूर्त के। यह इतना शानदार है शक्तिशाली, क्योंकि फिर, वह सिर्फ इतना कहा, जो सभी के लिए एक घन आकर्षित है, हमें बहुत ज्यादा बहुत जल्दी grok जाएगा। हम सिर्फ समझ जाएगा, ठीक है, एक घन आकर्षित। हम उन्मुखीकरण पता नहीं हो सकता, इसलिए हम एक छोटे से अधिक सटीक हो सकता है, लेकिन हम आम तौर पर तस्वीर कर सकते हैं या पता है कि एक घन है। और वह उपयोगी है, क्योंकि अगर हर बार जब आप नीचे में एक प्रोग्रामर के रूप में बैठे थे अपने कुंजीपटल कोड लिखने के लिए, आप इस तरह से सोचना था कि अगर एक निम्न स्तर, हम में से कोई कभी कुछ भी किया जाएगा। और निश्चित रूप से, हम में से कोई होगा कोड लिखने की प्रक्रिया का आनंद लें। यह 0 और 1 में लिखने की तरह होगा, जो स्पष्ट है कि सभी समय पहले नहीं था मनुष्य 0 और 1 के दशक में कोड लिख रहे थे। और हम बहुत जल्दी के साथ आया था इन उच्च स्तर languages-- सी ++ और जावा और दूसरों। तो चलो इस बार सिर्फ करने के लिए और अधिक प्रयास करते हैं टेबल फ्लिप, तो यह है कि हम सभी को सोचने के लिए मौका है बल्कि एक ही तरीके से। हम एक और अधिक स्वयंसेवक इस मिल सकता है समय बोर्ड के लिए आते हैं और आकर्षित करने के लिए, सुनाना नहीं? हाँ ठीक है। बेन, पर आते हैं। और, आप एक बार इस मामले में बेन बोर्ड का सामना करना छोड़ दिया है, मत देखो, सही नहीं लगते। केवल क्या आपके उनके सहयोगियों ने यहां आपको बता। और हर किसी के लिए कमरे, अब आप प्रोग्रामर हैं। उन्होंने कहा कि कंप्यूटर है। और तस्वीर मैं यहाँ चुन लिया है अग्रिम में इस एक यहाँ है। वे just-- रहे हैं वे सोच रहे हैं एक अजीब मजाक के सभी है। तो किसी को पसंद करता होगा स्वयंसेवक पहली अनुदेश या बयान दिया था कि ऐसा करना चाहिए आदेश बेन की कलम? और हम इस सामूहिक शायद करूँगा, प्रत्येक व्यक्ति से एक निर्देश। मुझे माफ कर दो? दर्शकों: एक चक्र ड्रा। डेविड मालन: एक चक्र ड्रा पहली बात मैंने सुना है। दर्शकों: ऊपर। डेविड मालन: ऊपर। ठीक है, हम आप हटाना, पूर्ववत कर सकते हैं। और अब, किसी और को। दान है, तुम आराम से हो जाएगा अगले निर्देश की पेशकश? दर्शकों: यकीन है, केंद्र आकर्षित चक्र के नीचे की, एक एक छोटे small-- साथ उस से छोटी सी जगह, एक सीधी रेखा से तीन नीचे खींचना जिस तरह के क्वार्टर बोर्ड के नीचे अपनी बाईं करने के लिए एक मामूली कोण। डेविड मालन: अच्छा। दर्शकों: मामूली कोण। डेविड मालन: पूर्ववत्, नियंत्रण-जेड। ठीक। एंड्रयू, आप की पेशकश करना चाहते हैं अगले निर्देश तक? दर्शकों: बिल्कुल। कि लाइन के नीचे से, एक और मामूली angle-- whoops-- शायद एक तिहाई के बारे में लंबाई की [सुनाई], मामूली कोण नीचे और एक तरह [सुनाई] की लंबाई का तीसरा। तो हाँ, उस बिंदु से, एक लाइन में एक तिहाई आकर्षित पिछले की लंबाई की बाईं ओर आगे लाइन। डेविड मालन: यह ठीक? सीधी रेखा, वह ठीक है? ठीक है, ओलिवर, आप चाहते हैं अगले ऊपर की पेशकश करने के लिए? दर्शकों: [सुनाई] से चक्र के नीचे, [सुनाई]। दाहिने हाथ की ओर ड्रा की [सुनाई] सेंटीमीटर। [हँसी] डेविड मालन: मुझे लगता है कि आप करने जा रहे हैं कि इंच यहाँ है परिवर्तित किया है। दर्शकों: बंद करो। [हँसी] डेविड मालन: ठीक है। [? आरा,?] आप चाहते हैं अगले ऊपर की पेशकश करने के लिए? दर्शकों: ड्रा एक [सुनाई] [सुनाई] उसी ऊपरी। [सुनाई] मंडली, करने के लिए आकर्षित [सुनाई] और [सुनाई] आकर्षित। डेविड मालन: ठीक है, कोई और अधिक पूर्ववत। के एक या दो और निर्देश करते हैं। क्रिस, आप एक पेशकश करने के लिए करना चाहते हैं? दर्शकों: तल में वृत्त की, [सुनाई] एक समान रेखा slopping आकर्षित बाएं [सुनाई] करने के लिए नीचे। डेविड मालन: ठीक है। एंड्रयू? हम करीम did--? दर्शकों: सही लाइन से शुरू, बाईं पंक्ति के अंत, नीचे, आप के बारे में सही जाने के लिए जा रहे हैं उस रेखा के रूप में एक ही लंबाई आप पर कर रहे हैं, के लिए ड्राइंग सही [सुनाई]। [सुनाई] डिग्री, इसलिए [सुनाई] सही पक्ष पर डिग्री। डेविड मालन: ठीक है। को थामने करते हैं। अभी तक चारों ओर मोड़ मत करो। को थामने के दो, और चलो एक अन्य प्रयास की कोशिश इससे पहले कि हम बेन को प्रकट क्या वह ड्राइंग गया है। आप के लिए बेन फेरबदल कर सकते हैं right-- या वास्तव में, नहीं, बस आप दे एक और बोर्ड, और भी बेहतर। तो किसी को अब चाहते हैं दृष्टिकोण के अधिक लेने के लिए कि विक्टोरिया पर पहले ले लिया है, जहां हम एक उच्च स्तर अमूर्त में बोलते हैं और सिर्फ एक वाक्य में या दो बेन का वर्णन क्या बिना आकर्षित करने के लिए मातम में हो रही है, तो यह एक निचले स्तर पर बात करने के लिए? विक्टोरिया। [हँसी] दर्शकों: एक आंकड़ा आकर्षित चलने आदमी की। और उसके पैर और हथियारों दाईं ओर होना चाहिए। डेविड मालन: ठीक है, कि तुम सब मिल रहा है। ठीक है। हम क्यों बेन को प्रकट नहीं करते हैं उसने क्या किया। तो प्रशंसा का एक दौर। यही कारण है कि सबसे मुश्किल शायद था। तो भी हम बात कर रहे हैं, हालांकि काफी मूर्ख संदर्भ में सिर्फ ड्राइंग के बारे में चित्रों, उम्मीद है कि आप वास्तव में की डिग्री सराहना कर सकते हैं अर्थवत्ता कि आवश्यक हो सकता है आदेश में एक कंप्यूटर क्या करना है यह बताने के लिए है। और वास्तव में, तथ्य यह है कि बेन इतनी जल्दी इस आकर्षित करने में सक्षम था वसीयतनामा की तरह एक का उपयोग कर रहा है भाषा, शायद एक उच्च स्तर अंग्रेजी का संस्करण है, जो उसे अनुमति देता है सिर्फ शब्दों का उपयोग करें, या शब्दों को सुनने के लिए विक्टोरिया से, उसे अनुमति देते हैं कि ये सिर्फ आकर्षित abstractions-- एक आंकड़ा के लिए चलने right-- है उस तरह का ऐसा नहीं है कि करने के लिए कुछ अर्थ अर्थ नहीं है लगभग स्पष्ट रूप से जब आप बस रहे हैं कह रही है, अपनी कलम नीचे डाल दिया, आकर्षित सही करने के लिए, बाईं ओर खींचना। और तो यह भी बहुत है प्रोग्रामिंग में आम है। यह एक तरह कहा जा होगा बहुत कम स्तर की भाषा, प्रोग्रामिंग में 0 और 1 के अगर तुम जाएगा। और यह एक उच्च स्तर होगा जावा में भाषा प्रोग्रामिंग, या कुछ इस तरह का। एक का एक सा अति सरलीकरण, लेकिन है कि भावुक की तरह की तरह लग रहा है कि आपको लगता है जब बात या किसी अन्य के एक प्रकार के प्रयोग से। जरूरत से यहाँ हताशा का एक सा इस तरह सटीक, लेकिन अवसर के लिए साथ एक छोटे से पराजित होने के लिए व्याख्या यहाँ। लेकिन ज़ाहिर है, कीड़े एक परिणाम के रूप में पैदा कर सकते हैं। आप home-- में करना चाहते हैं तो हम class-- में यह एक काम नहीं चलेगा लेकिन आप करना चाहते हैं तो इस एक घर लाने, मैंने सोचा कि हम इस में गोता जाएगा। आप इस खेलने के लिए चाहते हैं तो अगर अपने महत्वपूर्ण दूसरे के साथ खेल या बच्चों या की तरह, आप उस के रूप में अच्छी तरह से आनंद सकता है। तो चलो आगे चलते हैं और एक आखिरी देखो यहाँ कम्प्यूटेशनल सोच के लिए बात। और कहा कि हमें जॉन के लिए लाता है ओलिवर, क्लिप के लिए नहीं आप कल रात को देखा हो सकता है, लेकिन कुछ हद तक एक हाल ही में जारी करने के लिए। कुछ महीने पहले, वोक्सवैगन काफी आलोचना का एक सा लिया क्या कारण के लिए, यदि आप जानते हैं? क्या वे के लिए मुसीबत में मिलता है? हाँ, तो वे emissions-- उत्सर्जन को हरा करने की कोशिश कर रहे थे अनिवार्य होने से परीक्षण उनकी कारों के पर्यावरण को प्रदूषित कम जब उनकी कारों का परीक्षण किया जा रहा था और पर्यावरण को प्रदूषित अधिक जब कारों का परीक्षण नहीं किया जा रहा था। और क्या तेजी से दिलचस्प है दुनिया में, जैसा कि आप अनुमानित हो सकता है like-- की चर्चा से क्या है it-- CarPlay, कारों के लिए एप्पल के सॉफ्टवेयर और तथ्य यह है कि कई हमें की तेजी हमारी कारों में टच स्क्रीन है, वहाँ एक भयावह राशि है लोगों के दशक में सॉफ्टवेयर की कारों आज, जो सच कहूँ तो कीड़े जब की एक पूरी सकते हैं खोलता यह सुरक्षा और शारीरिक जोखिम के लिए आता है। लेकिन आज के लिए, चलो पर ध्यान केंद्रित है बस क्या सॉफ्टवेयर लेखन में शामिल कि इस प्रणाली gamed हो सकता है। की परिभाषा के लिए समस्या, अपरिचित उन लोगों के लिए, जॉन ओलिवर पर एक नजर डालते हैं। और साथ परिचित लोगों के लिए समस्या यह है की यह देखो जॉन ओलिवर के माध्यम से एक मजेदार लेंस के रूप में अच्छी तरह से। तो, मुझे इस पर खेलने मारा चलो मैं लगता है, तीन मिनट का परिचय। लानत है। [वीडियो प्लेबैक] -Cars-- डेविड मालन: जाहिर है, यूट्यूब पर, it's-- - में --The होशियार पात्रों फास्ट एंड द फ्यूरियस फिल्में। इस हफ्ते, जर्मन automaker वोक्सवैगन ही पाया की एक घोटाले के बीच में संभावित आपराधिक अनुपात। -Volkswagen अरबों के लिए हौसला पैदा कर रहा है जुर्माने के रूप में, संभव आपराधिक आरोप अपने अधिकारियों के लिए, के रूप में कंपनी से माफी मांगी 11 लाख कारों हेराफेरी के लिए यह उत्सर्जन परीक्षण हरा में मदद। -Certain डीजल मॉडल डिजाइन किए गए थे अत्याधुनिक सॉफ्टवेयर के साथ कि जानकारी का उपयोग किया है, स्थिति सहित स्टीयरिंग व्हील और वाहन के गति निर्धारित करने के लिए गाड़ी थी उत्सर्जन परीक्षण के दौर से गुजर। कि हालात के तहत, इंजन जहरीले उत्सर्जन को कम करेगा। लेकिन कार बाईपास से धांधली की गई थी कि जब यह संचालित किया जा रहा था। उत्सर्जन 40 करने के लिए 10 से वृद्धि हुई स्वीकार्य स्तर से ऊपर है EPA बार। -Wow, 10 से 40 बार EPA से अधिक की अनुमति देता है। यही कारण है कि सबसे बुरी बात यह है वोक्सवैगन कभी किया है कुछ आप अगर कह सकते है आप द्वितीय विश्व युद्ध के बारे में नहीं सुना था। लेकिन हो सकता है कि कैसे की पक्का संकेत ज्यादा परेशानी वोक्सवैगन में है, है कि बहुत से लोग ऊपर से नीचे कदम रखा है। सीईओ के बाद बुधवार को इस्तीफा दे दिया क्षति को नियंत्रित करने के लिए पांव मार, कह रही है वह बेहद खेद था, जो महान लग रहा था जब तक यह निकला वह केवल 10% माफ किया गया लेकिन उसके मुंह धांधली की थी कृत्रिम रूप से उसकी बुराई फुलाना। और इस बीच, वोक्सवैगन अमेरिका मुख्यमंत्री ने अपनी खुद की एक माफी था। -Let चलो इस बारे में स्पष्ट होना, हमारी कंपनी बेईमान था। और मेरी जर्मन शब्दों में, हम पूरी तरह से खराब कर दिया है। ; -हां, लेकिन पूरी तरह से खराब कर दिया है अप जर्मन काम करता है नहीं कर रहे हैं। और जर्मन भाषा कई खूबसूरत वाक्यांशों है सिर्फ इस तरह की स्थितियों का वर्णन है, जैसे [जर्मन], जो मोटे तौर पर मतलब है, उदासी आता है कि व्यापार से संबंधित झूठ से, या [जर्मन], जो तब्दील लोगों पिता को शामिल शर्मसार रूप में पेट्रोल के बादलों। यह एक सुंदर भाषा है। यह सिर्फ जीभ से पाल। और वैसे भी, जबकि उस आदमी का माफी के लिए ईमानदारी से लग रहा था हो सकता है, यह ध्यान देने योग्य बात है कि वह में बोल रहे थे लायक है 2016 के लिए एक आधिकारिक लांच पार्टी वोक्सवैगन Passat, कि शीघ्र ही अर्थ क्षमा कह के बाद उन्होंने यह बात कही। आप आने के लिए बहुत बहुत -Thank। शाम को आनंद लें। अगले Lenny Kravitz है। [संगीत बजाना] -OK, ठीक है, न खत्म होने वाली अपनी अगले के साथ माफी Lenny Kravitz नहीं करता शांत पश्चाताप चीख। यह चिल्लाती है, हम बॉन को कहा जोवी, और वह नहीं कहा। वोक्सवैगन ब्रांड है बुरी तरह से क्षतिग्रस्त हो गया। और सच में, अपने नए विज्ञापन अभियान बिल्कुल मदद नहीं कर रहा है। - [जर्मन], हम वोक्सवैगन पर चाहते हैं साथ आपको धोखा देने के लिए माफी माँगने के लिए हमारे वाहनों। [अंत प्लेबैक] एक तो यह था: डेविड मालन राउंडअबाउट रास्ते of-- sorry-- इस का एक राउंडअबाउट रास्ता था एक मूलभूत समस्या शुरू सॉफ्टवेयर है, जो कि आप में कुछ शर्तों का पता लगाने के लिए की जरूरत है। और तो हाथ पर सवाल यहाँ है, कैसे संभवतः एक कार करता है, सॉफ्टवेयर में लागू के रूप में इन प्रोग्रामर द्वारा, पता लगा है कि यह वास्तव में परीक्षण किया जा रहा है? तो सुपर स्पष्ट हो, वे क्या कर रहे थे जहां के वातावरण में किया गया था, प्रोग्रामर लगा कार जा रहा था परीक्षण किया है, वे किसी भी तरह बनाया कार कम उत्सर्जन करते हैं कम, उत्सर्जन, तो कम जहरीले धुएं और ऐसा। लेकिन जब यह सामान्य रूप से है सड़क पर गाड़ी चला, यह बस के रूप में ज्यादा फेंकना होगा प्रदूषण के रूप में यह चाहता था। तो हम कैसे लिख सकता है इस एल्गोरिथ्म के लिए pseudocode? हम pseudocode कैसे लिख सकता है कार में चल सॉफ्टवेयर के लिए? मेरा मतलब है, संक्षेप में, यह फोड़े कुछ इस तरह के नीचे। यदि परीक्षण किया जा रहा है, कम उत्सर्जन। बाकी अधिक उत्सर्जन करता है। लेकिन यह है कि एक छोटी सी है भी उच्च स्तर पर है, है ना? क्या इस के रूप में गोता लगाने की कोशिश करते हैं परीक्षण किया जा रहा है इसका मतलब है की अमूर्त। दूसरे शब्दों में, आप कुछ भी नहीं पता है कि भले ही प्रश्नों की कारों के बारे में, किस तरह आप यदि निर्धारित करने के लिए पूछ सकते हैं आप का परीक्षण किया जा रहा है, अगर आप कार रहे हैं? क्या विशेषताओं हो सकता है यदि एक कार का परीक्षण किया जा रहा है मौजूद है? दर्शकों: परीक्षण उपकरण। डेविड मालन: परीक्षण उपकरण। तो अगर परीक्षण उपकरण पास के, तो कम उत्सर्जन। तो मैं लागू करने की कल्पना कर सकता कैमरों के साथ किसी तरह का है कि या पता लगाने के लिए क्या आप के आसपास है। और मुझे का प्रस्ताव है, कि चलो अभी भी जटिल लगता है वास्तव में अतिरिक्त राशि के लिए सिर्फ इतना है कि उद्देश्य के लिए हार्डवेयर। दर्शकों: आप में कर रहे हैं पार्क, अगर अपने हुड खुला है। डेविड मालन: पार्क में या हुड खुला है, तो यह अच्छी बात है। दर्शकों: और कार चल रहा है। डेविड मालन: तो यह है कि एक छोटी सी है अधिक concrete-- और कार चल रहा है। तो यह एक का संयोजन होगा कुछ अलग परिस्थितियों, अगर तुम जाएगा। तो कार पार्क में है, और यहां तक ​​कि यदि हालांकि यह एक बहुत यांत्रिक बात है आमतौर पर, मैं कर सकता सॉफ्टवेयर लेखन की कल्पना है, विशेष रूप से वहाँ है, क्योंकि अक्सर वहाँ एक प्रकाश इन दिनों, मैं वहाँ सोच सकता है किया जा रहा है सॉफ्टवेयर है कि मज़दूर क्वेरी कर सकते हैं या क्या नहीं, आप पार्क में, कर रहे हैं ड्राइव में आप, आप रिवर्स में हैं। और मैं वापस एक प्राप्त कर सकते हैं जवाब है कि या तो हाँ या सवालों के उन प्रकार की कोई। और इसलिए मैं भी शायद जवाब सकता है एक सवाल की तरह, हुड खुला है। हो सकता है, वहाँ सेंसर किसी तरह का है कि या तो मुझे वापस कर देता है एक 1 या 0, सही है या गलत, हुड खुला है। और फिर कार चल रहा है, मैं पता लगा सकता है कि किसी तरह क्या तंत्र के माध्यम से? की तरह, कार चल रहा है, मैं पता लगा सकता है कि उस पर है, मैं किसी भी तरह पता लगा सकता है कि कार आगे बढ़ रहा है? दर्शकों: RPMs। डेविड मालन: हाँ, तो वहाँ है हमेशा कि सुई कि आप प्रति कितने घुमाव बताता है मिनट पहियों का सामना कर रहे हैं। और इसलिए मैं उस पर विचार कर सकता है। और अगर यह 0 नहीं है, कि शायद इसका मतलब कार आगे बढ़ रहा है। लेकिन हम एक होने की जरूरत थोड़ा सावधान वहाँ, because-- के this-- को आसान बनाने में करते हैं अगर हम सिर्फ इतना कहा, अगर कार चल रहा है, हम सिर्फ कम उत्सर्जन करने के लिए नहीं करना चाहते, हम चाहते हैं कि कार चला रहा है और यह परीक्षण किया जा रहा है। तो वहाँ कुछ अन्य कर रहे हैं सामग्री है कि लोगों को धारणा सॉफ्टवेयर कर रही है, क्योंकि अनुपस्थित वास्तविक स्रोत कोड, आप केवल एक तरह से से अनुमान कर सकते हैं के रूप में कार के भौतिक प्रभाव क्या नीचे चल रहा हो सकता है सॉफ्टवेयर में हुड। तो कार चल रहा है और हो सकता है अगर, कहते हैं, पीछे के पहिये नहीं चलती, इस संकेत हो सकता है परीक्षण की किसी तरह की? मैं यहाँ पर क्या इशारा कर रहा हूँ? हाँ, शायद, यह एक पर है उन चीजों में से रोलर, जहां पहियों की तरह घूम रहे हैं सामने या पीठ में, क्या यह सामने पहिया है पर निर्भर करता है या रियर व्हील ड्राइव है, तो पहियों के आधे बढ़ रहे हैं, लेकिन अन्य दो नहीं हैं, जो असली दुनिया में एक अजीब स्थिति है। आप पर गाड़ी चला रहे हैं रोड, कि ऐसा नहीं होना चाहिए। लेकिन अगर आप एक गोदाम में हैं रोलर प्रणाली के कुछ प्रकार पर, कि वास्तव में क्या हो सकता है। मैं लोगों को यह भी हो सकता है कि प्रस्तावित लगता है, अगर कार चल रहा है और स्टीयरिंग है नहीं चलती पहिया, कि भी एक संकेत हो सकता है, क्योंकि उसके लिए उचित है एक सड़क पर एक ईमानदार तरह। लेकिन फिर भी, मानव शायद है यह एक छोटा सा या निश्चित रूप से आगे बढ़ कुछ सेकंड से अधिक। या फिर एक के पाठ्यक्रम मिनट, हालात यह है नहीं कर रहे हैं में उतारना चाहते हो जा वास्तव में एक ही स्थिति है। तो दूसरे शब्दों में, हम घटाव ले जा सकते हैं, कर रहे हैं आप का परीक्षण किया जा रहा है, और कि कार्यक्षमता नीचे तोड़ने इन घटक अवयवों में। और कहा कि वास्तव में क्या है वोक्सवैगन है इंजीनियरों को किसी भी तरह से किया था। वे जानबूझकर करने के लिए सॉफ्टवेयर लिखा अगर कार का परीक्षण किया जा रहा है का पता लगाने, इसलिए कम है, बाकी का उत्सर्जन हमेशा की तरह फेंकना। और समस्या यहां भी, कि सॉफ्टवेयर नहीं है कुछ तुम सच में जब तक देख सकते हैं आप तथाकथित स्रोत कोड है। तो वहाँ के दो विभिन्न प्रकार है code-- कम से कम दो अलग अलग प्रकार दुनिया में कोड की। वहाँ कुछ कहा स्रोत है कोड है, जो विपरीत नहीं है हम लिख रहे हैं, स्रोत कोड। इस स्रोत कोड में लिखा है एक भाषा pseudocode कहा जाता है, जो सिर्फ कुछ अंग्रेजी की तरह है। इसमें से कोई औपचारिक परिभाषा है। लेकिन सी, और जावा, सी ++, उन सभी औपचारिक भाषाएं हैं कि, जब आप उन्हें में लिखने के लिए, तुम क्या है एक पाठ स्रोत कोड युक्त फ़ाइल है। लेकिन वहाँ भी कुछ है दुनिया मशीन कोड कहा जाता है। और मशीन कोड, दुर्भाग्य से, केवल 0 और 1 का है। तो मशीन कोड क्या है मशीनों निश्चित रूप से समझते हैं,। स्रोत कोड मनुष्य क्या समझ है। और आम तौर पर नहीं बल्कि हमेशा की तरह, वहाँ एक कार्यक्रम है कि एक प्रोग्रामर का उपयोग करता है स्रोत लेता है कोड और मशीन कोड में बदल जाता है। और उस प्रोग्राम है आम तौर पर एक संकलक कहा जाता है। तो अपने इनपुट स्रोत कोड है, अपने उत्पादन, मशीन कोड है और संकलक का एक टुकड़ा है सॉफ्टवेयर है कि है कि इस प्रक्रिया करता है। तो यह वास्तव में अच्छी तरह से करने के लिए नक्शे हमारे आदानों, एल्गोरिदम, outputs। लेकिन यह एक बहुत विशिष्ट अवतार है इस बात का है, जो कि कहने के लिए है, भले ही आप वोक्सवैगन की ही है कि इस का दोषी है कारों, यह आपको सिर्फ खोल सकते हैं की तरह नहीं है हुड या उपयोगकर्ता के मैनुअल खोलने या देखो स्रोत कोड पर है, क्योंकि समय से यह अपने मार्ग में अपनी कार तक पहुँच जाता है यह पहले से ही किया गया है 0 और 1 के रूप में परिवर्तित। और यह बहुत, मुश्किल असंभव नहीं है, लेकिन कुछ ज्यादा बटोरने के लिए बहुत मुश्किल सिर्फ देखने से अंतर्निहित 0 और 1 है। तो आप यह पता लगा सकते हैं, अंत में, यदि आप कैसे एक मशीन को समझने operates-- इंटेल inside-- अगर आप समझते हैं इंटेल वास्तुकला, लेकिन यह बहुत समय लगता है। और वहाँ भी, आप कर सकते हैं नहीं सब कुछ देखने के लिए सक्षम होना उस कोड वास्तव में क्या कर सकते हैं। इस या इस बारे में कोई सवाल प्रक्रिया की तरह अधिक आम तौर पर? और वास्तव में, हम इस चर्चा टाई कर सकते हैं एप्पल की कल की चर्चा करने के लिए। यह भी कारण है कि एफबीआई न सिर्फ कर सकते हैं जाओ और संदिग्ध के फोन में देखो और, कोड की लाइनों को खोजने के लिए उदाहरण के लिए, पासकोड सक्षम है कि या कि 80 मिलीसेकंड देरी सक्षम करें। क्योंकि समय से यह साथी के iPhone पर, यह पहले से ही किया गया है 0 और 1 के लिए बदल दिया। ठीक है, चलो यहाँ के लिए विराम देना हमारे कम्प्यूटेशनल सोच को देखो। क्यों हम एक 15 मिनट का ब्रेक नहीं लेते। और जब हम वापस, हम करेंगे प्रोग्रामिंग पर एक नज़र रखना खुद को और कुछ नक्शा करने के लिए शुरू इन उच्च स्तर की अवधारणाओं एक वास्तविक करने के लिए, चंचल हैं, प्रोग्रामिंग भाषा।