टॉप वेब डेवलपर से जुड़ी समस्याओं के बारे में ज़्यादा जानें

डेवलपर की समस्याओं के बारे में अहम जानकारी का कलेक्शन. यह जानकारी, डेवलपर के साथ की गई कई एक-एक बातचीत से इकट्ठा की गई है.

कुछ महीने पहले, पॉल किनल ने साल 2021 में डेवलपर की सबसे बड़ी समस्याओं के बारे में पोस्ट किया था. इसलिए, इस लेख की शुरुआत पिछली दो तिमाहियों के अपडेट से करना सही होगा. संख्याओं में थोड़ा बदलाव हुआ है, लेकिन रैंकिंग में कोई बदलाव नहीं हुआ है.

चुनौती साल 2021 की पहली तिमाही साल 2021 की दूसरी तिमाही साल 2021 की तीसरी तिमाही साल 2021 की चौथी तिमाही
वेब प्लैटफ़ॉर्म या वेब स्टैंडर्ड में होने वाले बदलावों के साथ तालमेल रखना. 27% 26% 27% 22%
कई नए और मौजूदा टूल या फ़्रेमवर्क के साथ अप-टू-डेट रहना. 26% 26% 25% 21%
किसी डिज़ाइन या अनुभव को सभी ब्राउज़र पर एक जैसा काम करने के लिए. 26% 28% 24% 21%
सभी ब्राउज़र पर टेस्ट करना. 23% 24% 20% 20%
सुरक्षा के उपायों को समझना और लागू करना. 23% 25% 20% 19%

जैसा कि पॉल की ब्लॉग पोस्ट में बताया गया है, हमें इन समस्याओं को हल करना होगा. इस काम के लिए, मैंने और मेरे सहयोगी कदिर तोपाल ने 18 से ज़्यादा डेवलपर से इंटरव्यू लिए हैं. हमारा मकसद, डेवलपर की सबसे बड़ी समस्याओं को ठीक करने के लिए, उन समस्याओं की जांच करना और उनसे जुड़े समाधानों को समझना है.

डेवलपर के लिए चर्चाएं

डिसक्लेमर: यह अहम जानकारी, डेवलपर के साथ हुई कुछ बातचीत के आधार पर दी गई है. "सभी" या "कुछ" का इस्तेमाल करने पर, इसका मतलब उन डेवलपर से है जिनका इंटरव्यू लिया गया है, न कि पूरी कम्यूनिटी से. इन अहम जानकारी को ज़्यादा बड़े पैमाने पर लागू करने के लिए, ज़्यादा रिसर्च की ज़रूरत है.

इन बातचीत से हमें यह याद दिलाया गया कि वेब डेवलपर कम्यूनिटी कितनी शानदार और अलग-अलग है. हम उन सभी डेवलपर का धन्यवाद करना चाहते हैं जिन्होंने हमसे बातचीत की. कुछ डेवलपर को 25 साल से ज़्यादा समय से डेवलपर के तौर पर काम करने का अनुभव था, जबकि कुछ ने 2020 में ही डेवलपर के तौर पर काम करना शुरू किया था. कुछ डेवलपर ने कंप्यूटर साइंस की डिग्री लेकर अपना करियर शुरू किया, जबकि कुछ ने बिना डिग्री के ही अपना करियर शुरू किया. कुछ डेवलपर, ब्राउज़र के रिलीज़ नोट पढ़कर, नई चीज़ों के बारे में जानने की कोशिश करते हैं. वहीं, कुछ डेवलपर अपने साथ काम करने वाले लोगों और दोस्तों से नई चीज़ों के बारे में सीखते हैं. कुछ लोगों को लगता है कि मुश्किल काम करना, नौकरी का हिस्सा है और उन्हें चुनौतियों का आनंद आता है. वहीं, कुछ लोग सिर्फ़ अपना काम पूरा करना चाहते हैं. इन समस्याओं को हल करने के बारे में सोचते समय, इस विविधता को ध्यान में रखना ज़रूरी है!

सभी डेवलपर के बीच एक आम बात यह है कि वे सभी अपने काम के लिए, किसी कॉन्टेंट मैनेजमेंट सिस्टम या फ़्रेमवर्क का इस्तेमाल करते हैं. इसमें WordPress, React, Bootstrap, Angular, और Tailwind का इस्तेमाल करने वाले डेवलपर शामिल थे. इनमें से कोई भी डेवलपर, प्रोडक्शन में वेनिला वेब प्लैटफ़ॉर्म का इस्तेमाल नहीं कर रहा था. प्रोजेक्ट शुरू करते समय फ़्रेमवर्क चुनना एक चुनौती होती है. डेवलपर अक्सर ग़ैर-तकनीकी ज़रूरतों को ध्यान में रखते हैं. उदाहरण के लिए, क्या उस फ़्रेमवर्क के साथ काम करने के लिए, डेवलपर को आसानी से हायर किया जा सकता है. अगर समाधान में फ़्रेमवर्क और सीएमएस शामिल नहीं हैं, तो हम डेवलपर की समस्याओं को हल नहीं कर सकते.

वेब प्लैटफ़ॉर्म के बारे में बात करते समय, ज़्यादातर डेवलपर इस प्लैटफ़ॉर्म को उस चीज़ के तौर पर समझते हैं जिस पर वे डेवलप कर रहे हैं. इसमें वेब प्लैटफ़ॉर्म की क्लासिक परिभाषा के साथ-साथ, सीएमएस, फ़्रेमवर्क, टूल, और पॉलीफ़िल भी शामिल हैं. कई मामलों में, इनके बारे में अप-टू-डेट रहना सबसे मुश्किल होता है. इससे, उस सवाल के बारे में हमारी समझ बदल गई है. अब हमें अपने सर्वे को अपडेट करना होगा, ताकि उसे अलग-अलग हिस्सों में बांटा जा सके और उसमें कम से कम भ्रम हो.

वेब स्टैंडर्ड की परिभाषा भी एक ऐसा क्षेत्र है जिसमें थोड़ी-बहुत गड़बड़ी हो सकती है. जब उनसे पूछा गया कि स्टैंडर्ड के मुताबिक रहने के उदाहरण क्या हैं, तो कई डेवलपर ने सबसे सही तरीकों के मुताबिक रहने में आने वाली समस्याओं के बारे में बताया. हमें सर्वे में इस बारे में भी साफ़ तौर पर बताना होगा.

डेवलपर, खास इस्तेमाल के उदाहरणों और पैटर्न को लागू करते समय सबसे सही तरीके खोजते हैं. ब्लॉग पोस्ट और StackOverflow को सबसे सही तरीकों के सोर्स के तौर पर बताया जाता है. हालांकि, डेवलपर अक्सर यह सोचते हैं कि क्या वे जो जानकारी पढ़ रहे हैं वह वाकई सबसे सही तरीका है और क्या वह नई सुविधाओं और एपीआई के साथ अप-टू-डेट है. वे इन खबरों को पढ़ने के लिए, किसी आधिकारिक सोर्स का इस्तेमाल करना चाहेंगे.

नई सुविधाओं और एपीआई के साथ अप-टू-डेट रहना, नई सुविधाओं के इस्तेमाल के उदाहरणों को चालू करने में मदद करता है. डेवलपर को सुविधाओं, एपीआई, और प्लैटफ़ॉर्म में होने वाले बदलावों से ज़्यादा परेशानी होती है. इन बदलावों की वजह से, सबसे सही तरीकों में भी बदलाव होता है.

ज़्यादातर डेवलपर इस बात से सहमत हैं कि डिवाइसों के साथ काम करना, सबसे बड़ी चुनौतियों में से एक है. Compat 2021 और Interop 2022 जैसी पहलों की मदद से, इस समस्या में सुधार हो रहा है. हालांकि, यह साफ़ तौर पर पता चलता है कि डेवलपर अब भी इसे हल की गई समस्या नहीं मानते.

ज़्यादातर डेवलपर, किसी न किसी तरीके से पॉलीफ़िल का इस्तेमाल करते हैं. हालांकि, कई मामलों में डेवलपर को पॉलीफ़िल के इस्तेमाल के बारे में पता होता है. ऐसा इसलिए होता है, क्योंकि Babel या फ़्रेमवर्क जैसे टूल से पॉलीफ़िल अपने-आप जुड़ सकता है. जो लोग खुद ही अपने पॉलीफ़िल मैनेज कर रहे हैं उनके लिए यह पता लगाना मुश्किल हो सकता है कि कोई पॉलीफ़िल "अच्छा" है या नहीं. डेवलपर ने NPM पर इंस्टॉल की संख्या और पॉलीफ़िल बनाने वाले व्यक्ति को सिग्नल के तौर पर इस्तेमाल करने का सुझाव दिया. कुछ डेवलपर ने बताया कि वे ऐसे पॉलीफ़िल हटाने पर काम कर रहे हैं जो IE 11 के लिए सहायता बंद होने की वजह से अब ज़रूरी नहीं हैं.

फ़्रेमवर्क की वजह से, अलग-अलग प्लैटफ़ॉर्म के लिए अलग-अलग ऐप्लिकेशन बनाने की ज़रूरत पड़ती है. हमें ऐसी रिपोर्ट मिली हैं जिनमें बताया गया है कि डेवलपर किसी फ़्रेमवर्क के पुराने वर्शन में "फंस" गए थे. इस वजह से, वे कुछ सुविधाओं का इस्तेमाल नहीं कर पा रहे थे. हालांकि, उसी फ़्रेमवर्क के नए वर्शन पर माइग्रेट करना महंगा और मुश्किल हो सकता है.

नतीजा

आधुनिक वेब डेवलपमेंट में कई चीज़ें शामिल हैं. जैसे, स्टैंडर्ड, ब्राउज़र, लाइब्रेरी, पॉलीफ़िल, सीएमएस, फ़्रेमवर्क, सबसे सही तरीके, और टूल. वेब की सबसे अच्छी बातों में से एक है, इसकी अलग-अलग सुविधाएं. हालांकि, फ़िलहाल यह हर डेवलपर के ऊपर है कि वह इन सुविधाओं को समझे और यह भी जाने कि वे एक-दूसरे के साथ कैसे काम करती हैं.

मुझे आश्चर्य है कि क्या डेवलपर को यह बताने का कोई तरीका है कि सब कुछ एक साथ कैसे जुड़ता है और सभी हिस्सों के बीच ज़्यादा अलाइनमेंट कैसे किया जाता है. ऐसा, विविधता पर समझौता किए बिना किया जा सकता है. यह एक बड़ी और जटिल समस्या है. इसे एक साथ हल करना मुश्किल है. लेकिन कहां से शुरू करें?

अगर आपके पास कोई राय या सुझाव है, तो उसे शेयर करें. मुझे भी आपसे बात करके खुशी होगी. हम सीधे बातचीत बुक करने का तरीका सेट अप करेंगे. हालांकि, इस दौरान Twitter पर मेरे डीएम खुले रहेंगे. हमसे संपर्क करें, ताकि हम आपसे चैट कर सकें!