निशु गोयल भारत में रहने वाले एक मशहूर वेब इंजीनियर हैं. वे ऐंग्युलर और वेब टेक्नोलॉजी के लिए Google डेवलपर एक्सपर्ट हैं. उन्होंने हमें अपनी सामुदायिक भागीदारी, करियर की योजना, और वेब डेवलपमेंट सीखने के सबसे अच्छे तरीकों के बारे में बताया.
निशु गोयल, भारत में रहने वाले एक जाने-माने वेब इंजीनियर हैं. साथ ही, ये Angular और वेब टेक्नोलॉजी के लिए Google Developer विशेषज्ञ हैं. साथ ही, Microsoft Most मददगार प्रोफ़ेशनल भी हैं. उन्होंने Step byStep Angular Routing (BPB, 2019) और A Hands-on Guide to Angular (Educative, 2021) की लेखक हैं. साथ ही, वे Web Almanac 2021 JavaScript चैप्टर की लेखक भी हैं. निशु, फ़िलहाल epilot GmbH में एक फ़ुल स्टैक इंजीनियर के तौर पर काम करते हैं. उन्होंने हमें अपनी सामुदायिक भागीदारी, करियर की योजना, और वेब डेवलपमेंट सीखने के सबसे अच्छे तरीकों के बारे में बताया.
Monika: चलिए, आपकी कहानी से शुरू करते हैं. डेवलपर बनने और डेवलपर की कम्यूनिटी में अहम भूमिका निभाने की प्रेरणा आपको कहां से मिली?
निशु: मैंने कंप्यूटर साइंस में बैचलर डिग्री हासिल की, हमने डेटा स्ट्रक्चर की पढ़ाई की, और यहीं से प्रोग्रामिंग में मेरी दिलचस्पी शुरू हुई. इंजीनियरिंग के तीसरे साल के दौरान, Microsoft Imagine Cup नैशनल्स प्रतियोगिता में मेरी भागीदारी के ज़रिए डेवलपर समुदाय के साथ एक कनेक्शन बनाया गया, जहां हमने कोड के ज़रिए समाधान प्रस्तुत किए. हमने ऐप्लिकेशन का मकसद स्थानीय छात्र-छात्राओं, खास तौर पर लड़कियों को शिक्षा के अवसर देना था. इस सफ़र में, मैं प्रेरणा देने वाले कुछ लोगों से मिली, जिसमें प्रतियोगियों और आयोजकों, दोनों को शामिल किया गया था.
साल 2018 में, मेरा पेशेवर करियर आगे बढ़ा और मैंने Angular के साथ काम करना शुरू किया. Angular मुख्य टेक्नोलॉजी थी, जिसने मुझे GDE प्रोग्राम से जोड़ा. करीब इसी समय, मैंने उस विषय पर ब्लॉग पोस्ट लिखना और कॉन्टेंट बनाना शुरू किया जिस पर मैं काम कर रही थी और सीख रही थी . धनंजय कुमार ने इस सफ़र की शुरुआत करने में मेरी मदद की और मुझे आगे भी बढ़ाया. मेरे पहले लेखों में Angular की बुनियादी बातों पर चर्चा की गई थी. इसके तुरंत बाद मैंने इवेंट में बोलना शुरू किया. पहला, ngनेपाल, नेपाल का ऐंग्युलर कॉन्फ़्रेंस. इससे लोगों को, Angular और वेब टेक्नोलॉजी के बारे में, बोलने के ज़्यादा न्योते मिले.
Monika: टेक्नोलॉजी के हिसाब से आपका पेशेवर अनुभव क्या है?
निशु: यह पहले दो सालों तक Angular और वेब कॉम्पोनेंट के बारे में था. मैं वेब को बनाने के लिए Angular का इस्तेमाल कर रहा था, लेकिन जल्द ही मैंने यह तय किया कि मैं इससे आगे जाकर अन्य अलग-अलग क्षेत्रों में काम करना चाह रहा था. अगर मुझे प्रोजेक्ट स्विच करने पड़ते हैं, तो मैं खुद को सीमित नहीं रखना चाहता था. इस तरह मैंने Angular में वेब कॉम्पोनेंट बनाना शुरू किया, ताकि उन्हें दूसरे फ़्रेमवर्क में इस्तेमाल किया जा सके.
मैंने सबसे पहले, Angular का इस्तेमाल करके वेब कॉम्पोनेंट बनाया. मैंने इसे एनपीएम में पब्लिश किया था और React प्रोजेक्ट में इसे डेमो के तौर पर इस्तेमाल किया था. मैंने बाद में अपनी कुछ बातचीत और प्रज़ेंटेशन के दौरान इस पर चर्चा की. मुझे अगली नौकरी के लिए प्रतिक्रिया और टाइपस्क्रिप्ट का इस्तेमाल करना होगा. मैं React के साथ काम कर रही थी, इसलिए अब मैं सिर्फ़ एक फ़्रेमवर्क का इस्तेमाल नहीं कर रही थी, बल्कि वेब पर भी काम कर रही थी. उस समय मैंने वेब के बारे में, खास तौर पर वेब परफ़ॉर्मेंस के बारे में बहुत कुछ सीखा. इसी समय मुझे सबसे बड़े कॉन्टेनफ़ुल पेंट (एलसीपी) या फ़र्स्ट कॉन्टेंटफ़ुल पेंट (एफ़सीपी) के बारे में सोचना था. इसका मतलब है कि आपके ऐप्लिकेशन को लोड होने में कितना समय लगेगा या पेज को रेंडर होने में ज़्यादा से ज़्यादा कितना समय लगेगा. मैं सबसे सही तरीके चुनने और ऐप्लिकेशन की परफ़ॉर्मेंस को बेहतर बनाने पर काम कर रहा हूं.
वेब परफ़ॉर्मेंस में उनकी दिलचस्पी की वजह से, मैं वेब कैलेंडर से जुड़ पाई और मैंने JavaScript चैप्टर लिखा. वेब कैलेंडर आम तौर पर वेब की स्थिति पर आधारित एक सालाना रिपोर्ट है. इससे हमें पता चलता है कि लोग अलग-अलग सुविधाओं का इस्तेमाल कैसे कर रहे हैं. पिछले साल 86 लाख वेबसाइटों की जांच की गई.इसके बाद, डेटा का विश्लेषण किया गया और उसे रिपोर्ट में पेश किया गया. रिपोर्ट में <script>
एलिमेंट में async
और defer
एट्रिब्यूट के इस्तेमाल जैसे आंकड़े शामिल होते हैं. कितनी वेबसाइटें उनका सही तरीके से इस्तेमाल कर रही हैं, कितनी वेबसाइटों पर उनका बिलकुल भी इस्तेमाल नहीं किया जा रहा है, और 2020 की तुलना में कितनी वेबसाइटों में उनका इस्तेमाल बेहतर हुआ है. पिछली वेब कैलेंडर रिपोर्ट में बताया गया था कि 35% वेबसाइटों ने एक ही स्क्रिप्ट पर दो एट्रिब्यूट का इस्तेमाल किया. ये एट्रिब्यूट, पैटर्न के हिसाब से इस्तेमाल किए गए थे और इनकी वजह से परफ़ॉर्मेंस में गिरावट आई. इस बारे में पिछले साल बताया गया था. इस साल हमने कोशिश की थी कि स्थिति बेहतर हुई है या नहीं. मैंने ngConf और Trusted Dev Summit में भी बातचीत की, जहां मैंने वेब की परफ़ॉर्मेंस पर ध्यान दिया.
Monika: आप भी कम्यूनिटी को सपोर्ट करने में बहुत ज़्यादा योगदान देते हैं. आपने हाल ही में युगांडा के एनजीओ YIYA के साथ स्वयंसेवा की है—यह कैसे शुरू हुआ और इस सहयोग का मुख्य मकसद क्या था?
निशु: इस इवेंट की शुरुआत GDE टीम ने YIYA के साथ वॉलंटियर बनने के अवसर के बारे में की. युगांडा का एनजीओ, ऐसे इंजीनियर ढूंढ रहा था जो कॉन्टेंट तैयार करने या उससे जुड़ी तकनीकी सुविधाओं में उनकी मदद कर सकें. इस प्रोग्राम का मकसद, युगांडा में स्कूल जाने वाली उम्र के बच्चों को सशक्त बनाना है. साथ ही, उन्हें स्थानीय तौर पर उपलब्ध टेक्नोलॉजी की मदद से शिक्षा के अवसर उपलब्ध कराना है. इन टेक्नोलॉजी का इस्तेमाल कंप्यूटर या टेक्स्टबुक के बजाय, बुनियादी कीपैड फ़ोन और रेडियो की मदद से किया जा सकता है. बच्चे एक खास नंबर डायल करेंगे और जानकारी का एक सेट मिलेगा, ज़्यादा जानकारी के लिए दूसरा नंबर डायल करेंगे वगैरह. महामारी के दौरान, यह टेक्नोलॉजी और भी ज़्यादा मददगार हो गई.
मैं हमेशा से समुदाय और पर्यावरण को बेहतर बनाने के लक्ष्यों में शामिल रही हूं. इसलिए, मैंने इन लक्ष्यों को पूरा करने का फ़ैसला लिया. YIYA की टीम के साथ मीटिंग के बाद, मैंने Python स्क्रिप्ट या पोर्टल में आने वाली समस्याओं को हल करने में मेरी मदद की. हमने कुछ समय तक एक साथ काम किया.
Monika: साल 2022 को लेकर आपके क्या प्लान हैं? क्या आपको किसी खास चीज़ पर फ़ोकस करना है?
निशु: मैं नौकरियां बदल रहा हूं और किसी दूसरे देश में जा रहा/रही हूं. मैं सामान्य तौर पर वेब पर, Golang का इस्तेमाल करके, साइट की परफ़ॉर्मेंस को बेहतर बनाऊँगी और बैकएंड पर भी काम करूँगी. मैं वेब परफ़ॉर्मेंस के क्षेत्र में लगातार काम कर रहा हूं, क्योंकि यह काफ़ी दिलचस्प और जटिल है. इसमें समझने और ऑप्टिमाइज़ करने के लिए बहुत सारी चीज़ें हैं. इस काम में अपना काफ़ी समय देने के बाद भी, अब भी बहुत कुछ सीखने को है. उदाहरण के लिए, मुझे यह समझना अच्छा लगेगा कि अपने इमेज रिसॉर्स के लिए सीडीएन का इस्तेमाल करने से, ऐप्लिकेशन को ज़्यादा तेज़ बनाने में कैसे मदद मिलेगी. मैं वेब परफ़ॉर्मेंस का विशेषज्ञ बनना चाहता/चाहती हूं—मैं धीरे-धीरे इस लक्ष्य तक पहुंच रहा/रही हूं, मेरा मानना है कि :)
Monika: आपने बताया है कि जब आप एक्सपर्ट नहीं थे, तब लिखना शुरू किया था, बस वह लिख रहे थे जो आप सीख रहे थे. आने वाले नए डेवलपर को आप क्या सलाह देंगे और यह महसूस करेंगे कि उनके पास शेयर करने के लिए कुछ नहीं है?
निशु: जब मैंने लिखना शुरू किया, तब मुझे ऐसा ही महसूस हुआ था. मुझे लगा कि शायद मुझे यह सब नहीं बताना चाहिए? शायद यह गलत है? मुझे चिंता थी कि मेरा लेखन पाठकों के लिए मददगार नहीं होगा. हालांकि, सबसे ज़रूरी बात यह थी कि मेरे लिखने से मुझे मदद मिल रही थी. मैं कुछ समय बाद बातें भूल जाता हूं और फिर अपनी पिछली लिखी गई बातों को याद करता हूं. चीज़ों को लिख लेना अच्छा विचार है.
इसलिए, मेरी सलाह है कि हर किसी को, किसी भी स्टेज पर लिखें. भले ही आपने किसी कोर्स का सिर्फ़ एक हिस्सा पूरा किया हो, लेकिन उसे पूरा लिख लें. वह जानकारी जो आपको कभी पता हुई है, वह उन लोगों के लिए काम की हो सकती है जिन्हें अभी तक यह पता नहीं है. आपको विशेषज्ञ बनने की ज़रूरत नहीं है. लिखने से आपको मदद मिलेगी. साथ ही, वे अपने करियर के किसी भी पड़ाव पर पहुंच सकते हैं.
Monika: उन लोगों को फ़ॉलो करना सबसे अच्छा होता है जिन्होंने अभी-अभी कुछ सीखा है, क्योंकि उन्हें वे सभी बातें पता हैं जिनके बारे में उन्हें जानना है. एक बार एक्सपर्ट बनने के बाद, यह याद रखना मुश्किल होता है कि जब आप नए थे, तब कैसा अनुभव था. क्या वेब डेवलपमेंट की शुरुआत करने वाले किसी व्यक्ति के लिए कोई सलाह है?
निशु: बहुत से लोग पूछते हैं कि शुरू करने के लिए उन्हें कौनसा फ़्रेमवर्क चुनना चाहिए, लेकिन मुझे लगता है कि यह सही सवाल नहीं है. हम जो कुछ भी सीख रहे हैं वह आने वाले समय में भी काम का होना चाहिए. मेरी सलाह है कि किसी को भी इन सीमाओं को छोड़कर एचटीएमएल या JavaScript का इस्तेमाल करना चाहिए. इससे आने वाले समय में ज़्यादा फ़ायदा मिल सकता है.
और फिर अपने रास्ते में आने वाले किसी भी मौके को आज़माएं. मेरे साथ ऐसा तब हुआ, जब मुझे वेब कैलेंडर के बारे में ऐसी जानकारी मिली जिसमें लेखकों को ढूंढा जा रहा था. मुझे बस यही लगा, "ओह, यह दिलचस्प है, इससे परफ़ॉर्मेंस को बेहतर बनाने में सभी को मदद मिल सकती है". इस तरह मैं JavaScript चैप्टर के लिए कॉन्टेंट लीड बन गई थी और मैंने इसे लिखने में छह महीने का समय लगा दिया. इसलिए, मुझे लगता है कि फ़ायदा सिर्फ़ अवसर ढूंढने और कड़ी मेहनत से काम करने तक है.
Monika: क्या आपके पास वेब टेक्नोलॉजी के भविष्य के बारे में कोई सामान्य अनुमान है? अगला चर्चित विषय क्या होगा? क्या तेज़ी से बढ़ रहा है?
निशु: मुझे यह बात सबसे ज़्यादा पसंद है कि अब हम ब्राउज़र में सर्वर चला सकते हैं. यह एक बहुत बड़ी उपलब्धि है. उदाहरण के लिए, ब्राउज़र से Node.js चलाने की सुविधा हाल ही में शुरू हुई है. इस दौरान, हम अपने सिस्टम में Node.js को इंस्टॉल किए बिना कुछ भी नहीं चला सकते थे. अब हम ब्राउज़र का इस्तेमाल करके कुछ भी कर सकते हैं. यह वेब नेटवर्क में एक बहुत बड़ा कदम है. और ओएमटी—मुख्य थ्रेड से अलग. थ्रेड पर काम करने में भी काफ़ी सुधार होने वाला है. वेब असेंबली बेहतर हो रहा है और डेवलपर को ऐसा करने की सुविधा देता है. मुझे लगता है कि यह वेब नेटवर्क का भविष्य है.