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