माइक्रोसॉफ्ट ने हाल ही में अपना वार्षिक बिल्ड डेवलपर सम्मेलन शुरू किया। यह कोई सामान्य आयोजन नहीं था। माइक्रोसॉफ्ट ने कृत्रिम बुद्धिमत्ता, संवर्धित वास्तविकता में उल्लेखनीय प्रगति का प्रदर्शन किया, और विंडोज 10 की एक शक्तिशाली गेमिंग प्लेटफॉर्म के रूप में प्रतिष्ठा को मजबूत किया। लेकिन माइक्रोसॉफ्ट ने एक और चीज की घोषणा की। कुछ ऐसा जो बहुत से लोगों को उत्साहित कर रहा है।
सैन फ्रांसिस्को में मंच पर, विकास निदेशक केविन गैलो ने घोषणा की कि BASH शेल विंडोज 10 पर आ रहा है। ठीक है, लगभग।
उबंटू से सीधे
यह कहना कि BASH विंडोज 10 पर आ रहा है, स्थिति को बड़े पैमाने पर कम आंकना है, क्योंकि वास्तव में माइक्रोसॉफ्ट जिस पर काम कर रहा है वह इससे कहीं अधिक प्रभावशाली है। यह अनिवार्य रूप से एक लिनक्स सबसिस्टम है - कोई वर्चुअल मशीन नहीं - जो उबंटू 14.04 LTS पर आधारित है, जो उबंटू यूजरस्पेस तक पहुंच प्रदान करता है।
इस बात पर जोर देना महत्वपूर्ण है कि यह पहले से मौजूद चीजों से मौलिक रूप से अलग है। विंडोज 10 उबंटू को एक सीमित वर्चुअल मशीन में एमुलेट नहीं करेगा। न ही BASH को विंडोज के लिए कंपाइल किया गया है, जैसे Cygwin है, या जावास्क्रिप्ट में रीक्रिएट किया गया है, जैसे CASH है। बल्कि, यह एक अनुकूलता परत में चल रहा है।
लिनक्स सिस्टम कॉल (जिन्हें अक्सर 'सिसकॉल' कहा जाता है, अनिवार्य रूप से जब कोई प्रोग्राम OS कर्नेल से कुछ अनुरोध करता है) माइक्रोसॉफ्ट द्वारा बनाए गए कस्टम सॉफ़्टवेयर का उपयोग करके वास्तविक समय में विंडोज सिस्टम कॉल में अनुवादित होते हैं। इस अंतर को डस्टिन किर्कलैंड द्वारा बेहतर ढंग से समझाया गया है, जो कैनोनिकल के उन इंजीनियरों में से एक हैं जिन्होंने माइक्रोसॉफ्ट को इसे पोर्ट करने में मदद की।
इसका मतलब है कि यह सिर्फ BASH और संबंधित आवश्यक लिनक्स उपयोगिताओं को पोर्ट करने के बारे में नहीं है। यह लगभग सब कुछ है।
उपयोगकर्ता मानक लिनक्स SSH उपयोगिता का उपयोग कर सकेंगे, बजाय PuTTY जैसे थर्ड-पार्टी टूल के। वे कमांड लाइन से VIM के साथ टेक्स्ट एडिट कर सकेंगे, और Sed और Awk का उपयोग करके टेक्स्ट में हेरफेर कर सकेंगे। इससे भी बेहतर, वे अपने पैकेज प्रबंधित करने के लिए apt-get का उपयोग कर सकेंगे, और हजारों उबंटू बायनरी इंस्टॉल कर सकेंगे।
डस्टिन किर्कलैंड के अनुसार, अधिकांश चीजें काफी अच्छी तरह से काम करती हैं, उन एप्लिकेशन के अपवाद के साथ जो TTY का उपयोग करते हैं - जैसे byobu, screen, और tmux। वे आश्वस्त करते हैं कि वे वहां पहुंच रहे हैं, और चूंकि माइक्रोसॉफ्ट ने इसे अपने बिल्ड 2016 कीनोट में फ्रंट-एंड-सेंटर रखा, आप काफी आश्वस्त हो सकते हैं कि अंततः यह एक तैयार, पॉलिश्ड उत्पाद होगा।
इसका आम उपयोगकर्ता के लिए क्या मतलब है
मैं झूठ नहीं बोलूंगा। यह घोषणा मुख्य रूप से दो समूहों को आकर्षित करेगी: लिनक्स उत्साही और सॉफ्टवेयर डेवलपर्स। यदि आप उनमें से नहीं हैं, तो आप सोच रहे होंगे कि इसका आपके लिए क्या मतलब है। लेकिन उत्साहित होने का कारण है, भले ही आप आर्क-गीक न हों।
सबसे पहले, यह लोगों के लिए लिनक्स पारिस्थितिकी तंत्र के कभी-कभी धुंधले पानी में पैर डुबोने का एक शानदार तरीका प्रस्तुत करता है, बिना वास्तव में इसे इंस्टॉल किए। पूर्ण नौसिखिए विंडोज 10 की परिचित और सापेक्ष सुरक्षा से आम लिनक्स टूल के आवश्यक तत्व सीख सकेंगे।
दूसरे, यह उन लोगों के लिए भी बहुत अच्छा है जो पहली बार कोडिंग सीख रहे हैं। सीखने में सबसे आसान भाषाएं (और नतीजतन, शुरुआती लोगों के साथ सबसे लोकप्रिय), विंडोज पर इंस्टॉल करने में सबसे अधिक परेशान करने वाली भी हैं। उदाहरण के लिए, पायथन को ठीक से इंस्टॉल करने के लिए आपको विंडोज PATH में एक वेरिएबल जोड़ना होगा। यदि आप रूबी और आवश्यक दस्तावेज़ और टूल आसानी से इंस्टॉल करना चाहते हैं, तो आपको RubyInstaller जैसे थर्ड-पार्टी इंस्टॉलर का उपयोग करना होगा।
लेकिन अब, इच्छुक डेवलपर्स को केवल अपनी कमांड लाइन में "bash" टाइप करना होगा, और वे रूबी या पायथन स्क्रिप्ट पर काम करना शुरू कर सकेंगे, बिना विंडोज पर इन भाषाओं को कॉन्फ़िगर करने की जटिलताओं की चिंता किए।
साथ ही, चूंकि अधिकांश शुरुआती ट्यूटोरियल मैक OS X और लिनक्स के आसपास बने हैं, विंडोज उपयोगकर्ता बिना किसी समस्या के उनका उपयोग कर सकेंगे।
विंडोज पर लिनक्स: यह डेवलपर्स के लिए क्यों मायने रखता है
ऐतिहासिक रूप से, माइक्रोसॉफ्ट के कमांड-लाइन (क्षमा करें, कमांड प्रॉम्प्ट) टूल UNIX-आधारित ऑपरेटिंग सिस्टम पर उनसे मेल नहीं खाते थे। इसका सबसे बड़ा कारण यह है कि विंडोज ने हमेशा ग्राफिकल इंटरफेस और मेनू के माध्यम से कार्यों और समस्याओं को हल करने पर जोर दिया है, टर्मिनल के माध्यम से नहीं। हालांकि यह उपयोगकर्ताओं के लिए बहुत अच्छा है, यह डेवलपर्स के लिए कम अच्छा है, जो पिछले बीस वर्षों में तेजी से लिनक्स-आधारित सर्वरों पर निर्भर हो गए हैं, जो कहीं अधिक विश्वसनीय और सुरक्षित हैं।
इसका एक परिणाम यह है कि डेवलपर्स तेजी से विंडोज से दूर हो गए हैं। यदि आप किसी डेवलपर सम्मेलन या मीटअप में जाते हैं, या किसी प्रौद्योगिकी स्टार्टअप के कार्यालयों में जाते हैं, तो आप लगभग गारंटी दे सकते हैं कि उपयोग किए जा रहे अधिकांश डिवाइस ऐप्पल लैपटॉप हैं, या लिनक्स चलाने वाले पीसी हैं। उनके वापस स्विच करने की संभावना भी कम है, क्योंकि उन्होंने तब से इन ऑपरेटिंग सिस्टम का उपयोग करना सीख लिया है, और उनके आसपास वर्कफ्लो बना लिए हैं।
एक डेवलपर जिसके साथ मैंने काम किया था जब मैं स्क्रैपरविकि में समर इंटर्न था - लिवरपूल में एक डेटा साइंस स्टार्टअप - का एक कसकर अनुकूलित VIM एडिटर था, और एक रूटीन जो कुछ सामान्य (और कुछ असामान्य) लिनक्स उपयोगिताओं के आसपास केंद्रित था। उसकी कल्पना करना मुश्किल है जो आराम से विंडोज पर वापस स्विच कर सके।
शायद विंडोज 10 पर उबंटू इन डेवलपर्स को माइक्रोसॉफ्ट के पाले में वापस लाने के लिए पर्याप्त होगा, या कम से कम विंडोज प्लेटफॉर्म से डेवलपर्स के पलायन को रोकेगा।
यह माइक्रोसॉफ्ट की धूमिल प्रतिष्ठा को सुधारने की दिशा में भी एक लंबा रास्ता तय करता है, खासकर जब ओपन सोर्स समुदाय की बात आती है। 2000 के दशक की शुरुआत और 1990 के दशक के अंत में, माइक्रोसॉफ्ट ओपन सोर्स और लिनक्स के प्रति खुले तौर पर शत्रुतापूर्ण था: तत्कालीन CEO स्टीव बाल्मर ने इसे "कैंसर" बताया था, और उन्होंने "एम्ब्रेस, एक्सटेंड, एक्सटिंग्विश" रणनीति के साथ इसे (साथ ही कुछ प्रतिद्वंद्वी मालिकाना उत्पादों) को मारने की कोशिश की।
लेकिन सत्या नडेला के CEO के रूप में आने के बाद से, उन्होंने ओपन सोर्स समुदाय के साथ काम करने और इस संबंध में अपनी छवि को पुनर्वासित करने के लिए ठोस प्रयास किया है। ऐसा लगता है कि यह काम कर गया है।
विंडोज 10 के लिए BASH कैसे प्राप्त करें
लेखन के समय, BASH की केवल घोषणा की गई है - आप इसे वास्तव में अभी प्राप्त नहीं कर सकते। हालांकि यह आगामी विंडोज 10 एनिवर्सरी अपडेट का हिस्सा होगा, जिसके इस गर्मी में आने की उम्मीद है। चूंकि यह एक "एनिवर्सरी अपडेट" है और माइक्रोसॉफ्ट ने 29 जुलाई को विंडोज 10 लॉन्च किया था, आपको तब तक इसकी उम्मीद करनी चाहिए।
यदि आप इतना लंबा इंतजार नहीं कर सकते, तो आप विंडोज 10 इनसाइडर प्रोग्राम के माध्यम से इसे प्राप्त कर सकेंगे।
क्या आप विंडोज 10 पर BASH के आगमन को लेकर उत्साहित हैं? क्या यह आपको लिनक्स से स्विच करने के लिए पर्याप्त होगा? नीचे टिप्पणियों में मुझे बताएं।