वेब प्रोग्रामिंग (Web Programming) डेस्कटॉप एप्लीकेशन प्रोग्रामिंग लाइब्रेरी / प्लेटफॉर्म / फ्रेमवर्क / कोर प्रोग्रामिंग डिसट्रीब्यूटेड एप्लीकेशन प्रोग्रामिंग
वेब एप्लीकेशन्स सॉफ्टवेयर कॉम्पोनेंट्स वो हैं जो इंटरनेट आर्किटेक्चर के टॉप पर काम करने के लिए डिजाइन किए गए हैं। इसका मतलब है कि एप्लीकेशन्स वेब ब्राउज़र सॉफ्टवेयर जैसे मोजिला फायरफॉक्स या इंटरनेट एक्सप्लोरर के माध्यम से एक्सेस किए जाते हैं। इंटरनेट आर्किटेक्चर के टॉप पर बने होने की वजह से एक एक्टिव इंटरनेट कनेक्शन की आवश्यकता जरूरी नहीं होती है। इसका मतलब है वेब एप्लीकेशन्स स्टैंडर्ड वेब टैकनोलजी के टॉप पर बने हैं जैसे कि:  एचटीटीपी (HTTP) एफटीपी (FTP) पीओपी3 (POP3) एसएमटीपी (SMTP) टीसीपी (TCP) प्रोटोकॉल्स एचटीएमएल (HTML) एक्सएमएल (XML) कॉल्डफ्यूजन एएसपी (ASP) जेएसपी (JSP) पीएचपी (PHP) एएसपी.नेट (ASP.NET) (राइट क्लिक करें, फिर सोर्स पर क्लिक करें या F12 प्रेस करें) वेबसाइट के प्रकारों/सामग्री में विविधता देखें, वेबसाइटों की मात्रा का दौरा नहीं करें। आम तौर पर, आपको वेबसाइटों के निम्नलिखित प्रकारों में से प्रत्येक को कम से कम एक बार देखने की आवश्यकता होगी:  कॉर्पोरेट उपस्थित साइट्स (वाणिज्यिक निगम, लाभ कॉर्पोरेट/संगठनों, सरकारी संगठनों के लिए नहीं) वेब इंडेक्सिंग इंजन (सर्च इंजन, मेटा सर्च साइट, विशेष सर्च इंजन, डाईरेक्ट्रीज) डाटा माइनिंग साइट्स पर्सनल साइट्स इंफोर्मेशनल/एन्साइक्लोपीडिक पेजेस (ब्लॉग्स और जर्नल्स, समाचार और समाचार एजेंसियां साइट, येलो पेजेस, मैनुअल लिस्टिंग, विकी, डाटाशीट, आदि)। शोसल साइट्स (शोसल पोर्टल्स, बुकमार्किंग साइट्स, नोट-टोकिंग साइट्स) कॉलाबोरेटिव साइट्स (इनमें ऊपर बताई गई अन्य उपरोक्त श्रेणियां भी शामिल हैं, जैसे कि विकी और ब्लोग्स) उदाहरण के लिए: बुद्धिशीलता चित्र और एमएस विजिओ। यह कन्सेप्चुअल वेब डायग्राम, साइट-मैप्स, और नेविगेशन संरचनाएँ बनाना है। कम से कम एक ग्राफिक्स एडिटिंग/ मेनिप्यूलेशन सॉफ्टवेयर पैकेज (वैकल्पिक, लेकिन दृढ़ता से सिफारिश करते हैं) जानने की कोशिश करें। बुनियादी विचार जानने में शामिल हैं:   बेस वेब सर्विस प्रोटोकॉल्स (HTTP, FTP, SMTP, और POP3 या IMAP4) वेब सर्वर सॉफ्टवेयर (विशेषतः, उस प्लेटफॉर्म के लिए जिस पर आप ज्यादातर पर काम करेंगे) वेब ब्राउज़िंग सॉफ्टवेयर। ईमेल सर्वर और क्लाइंट सॉफ्टवेयर। शायद आप HTML एडिटिंग के लिए WYSIWYG सॉफ्टवेयर पैकेज पाना चाहेंगे। जैसे XSL और XPath (वैकल्पिक लेकिन अनुशंसित)।  अधिकांश यूजर्स जावास्क्रिप्ट को सीखते हैं। कुछ VBScript सीखते हैं, लेकिन यह सभी ब्राउज़रों के साथ संगत नहीं है। केवल उस लेन्गवेज का उपयोग कर अपने क्षमता तक पहुँचने की कोशिश करें। जब तक आप कम से कम अपने क्लाइंट साइड स्क्रिप्टिंग लेन्गवेज से परिचित ना हो जाएं, उसके बाद ही अगले कदम के लिए जाएँ। आप एक सर्वर सॉफ्टवेयर तक खुद को सीमित करने के लिए चुनते हैं, तो उस सॉफ्टवेयर के द्वारा समर्थित प्रोग्रामिंग लेन्गवेजेस में से एक सीखें। यदि नहीं, तो प्रत्येक सर्वर सॉफ्टवेयर की कम से कम एक प्रोग्रामिंग लेन्गवेज सीखें।   अधिकांश डेस्कटॉप प्रोग्रामर व्यापार के समाधान के लिए कोड लिखते हैं, तो कारोबार के बारे में एक विचार पाना, उनके संगठनात्मक और वित्तीय संरचना का एक बड़ा समय बचा पाएंगे। एक प्रारंभिक स्तर कोर्स डिजिटल सर्किट डिजाइल में और दूसरा कंप्यूटर आर्किटेक्चर में उपयोगी है; हालांकि, कुछ इसे एक स्टार्टिंग पॉइंट पर आगे बढ़ने जैसा देखते हैं, तो दो या तीन ट्यूटोरियल लेख पढ़ें (जैसे कि ये और ये) पर्याप्त हो सकता है। आप अपनी पहली प्रोग्रामिंग लेन्गवेज सीखने के बाद, वापस इस कदम के लिए जा सकते हैं। शर्माएँ नहीं, सिर्फ इसलिए कि इस तरह की एक लेन्गवेज सीखने के लिए आपको एक "बच्चा" कहा जा रहा है। इन प्रोग्रामिंग लेन्गवेजेस का एक उदाहरण स्क्रैच हो सकता है। ये प्रोग्रामिंग लेन्गवेजेस पहले प्रोग्रामिंग लेन्गवेज सीखने के दर्द को काफी कम कर सकती हैं। हालांकि, यह कदम वैकल्पिक है। यह पिछले चरण से पहले भी किया जा सकता है। प्रोसीजरल, ऑब्जेक्ट ऑरिएंटेड, फन्सनल, प्रोग्रामिंग पैराडिग्म। कोई फर्क नहीं पड़ता आप अपनी पसंद की लेन्गवेज के रूप में बाद में क्या लेन्गवेज चुनते हैं, बस किसी भी स्तर की प्रोसीजरल प्रोग्रामिंग होनी चाहिए। इसके अलावा, प्रोसीजरल प्रोग्रामिंग एक प्रारंभिक बिंदु के रूप में प्रोग्रामिंग के विचार प्राप्त करने में उपयोगी होने में सबसे आसान होने के लिए ज्यादातर प्रोग्रामर्स द्वारा मानी गई है।  आप प्रोग्रामिंग लेन्गवेजेस की पुस्तकों में आम छोटे अभ्यास का उपयोग कर सकते हैं। इस के लिए, आप जिस प्रोग्रामिंग लेन्गवेज में लिख रहे हैं, उसमें प्रोग्राम लिखने के लिए एक टूल का चयन करें। आप अच्छी तरह से निम्नलिखित कॉन्सेप्ट्स को समझना और आगे जाने से पहले रिलेटिव केस में आसानी से उन्हें लागू करना सुनिश्चित करें:  एक प्रोग्राम के यूजर्स के लिए इनपुटिंग और आउटपुटिंग इंफोर्मेशन। प्रोसीजरल लेन्गवेजेस में प्रोग्राम्स के लॉजिकल फ्लो और एक्जीक्यूशल फ्लो। वेरीयेवल्स को डिक्लेयर, असाइन और कम्पेयर करना। ब्रांचिंग प्रोग्रामिंग if..then..else और select/switch..case से बनी होती है। लूपिंग while..do, do..while/until, for..next से बनी होती है। आपकी प्रोग्रामिंग लेन्गवेज सिंटेक्स, फंक्शन्स बनाने और कॉल करने के लिए। डेटा टाइप्स और उन्हें मेनीपुलेट करना। यूजर डिफाइन्ड डेटा टाइप्स (रिकॉर्ड्स/स्ट्रक्ट्स /यूनिट्स) और उनके उपयोग। यदि आपकी लेन्गवेज समर्थन करती है तो ओवरलोडिंग फंक्शन्स को समझें। अपनी पसंद की लेन्गवेज को एक्सेस करने के तरीकें (पोइंटर्स, पीकिंग, आदि) यदि आपकी लेन्गवेज समर्थन करती है तो ऑपरेटर ओवरलोडिंग समझें। यदि आपकी लेन्गवेज समर्थन करती है तो डेलीगेट्स/फंक्शन्स पोइंटर्स समझें। ऑब्जेक्ट-ओरिएंटेड पैराडिग्म प्रत्येक प्रोग्रामिंग पैराडिग्म में एक प्रोग्रामिंग लेन्गवेज सीखें, सबसे एडवांस्ड प्रोग्रामर यह करते हैं, हालांकि, आप आमतौर पर एक के साथ शुरू करें, अपने ज्ञान को लागू करने के लिए आप पहले एक से ही शुरू करें, और आपको प्रोग्रामिंग में असल-जिंदगी के अनुभव बाद में अन्य लेन्गवेज सीखें। निम्नलिखित लेन्गवेज क्षेत्रों में से एक का प्रयास करें:  लॉजिक प्रोग्रामिंग पैराडिग्म फंक्शन्सनल प्रोग्रामिंग पैराडिग्म हर एक की शक्तियों और कमजोरियों का मूल्यांकन करें। आम तौर पर यह इस के द्वारा किया जाता है:  पहली प्रोग्रामिंग लेन्गवेज में अपने प्रारंभिक काम के सिम्पल नमूने लें और दूसरी प्रोग्रामिंग लेन्गवेज का उपयोग कर इसे फिर से लिखें। एक नया प्रोजेक्ट बनाएँ और दोनों लेन्गवेजेस का उपयोग कर इसे बनाने की कोशिश करें। कभी कभी, प्रोजेक्ट और लेन्गवेजेस की पसंद पर निर्भर करते हुए, आप दोनों लेन्गवेजेस में से एक में इस प्रोजेक्ट को लागू करने में सक्षम नहीं हो सकते! प्रत्येक लेन्गवेज के यूनिक फीचरर्स और दोनों लेन्गवेजेस के सिमिलर कंस्ट्रक्ट्स के बीच एक चीट-शीट या समरी-टेबल में तुलनाएँ लिखें। अन्य लेन्गवेज का प्रयोग करके दोनों लेन्गवेजेस में से यूनिक फीचरर्स की नकल करने के लिए तरीके खोजने की कोशिश करें। लगभग सभी प्रोग्रामिंग लेन्गवेजेस में वर्जन्स/लाइब्रेरी होती है जो विजुअल प्रोग्रामिंग और दूसरें कन्सोल या कन्सोल की तरह प्रोग्रामिंग का समर्थन करते हैं। यह इसके द्वारा पूरा किया जा सकता है:  इवेंट ड्रिवन प्रोग्रामिंग से परिचय करें। अधिकांश विजुअल प्रोग्रामिंग इवेंट और इवेंट हेंडलिंग पर कुछ स्तर तक निर्भर करती हैं (आपकी चुनी हुई प्रोग्रामिंग लेन्गवेज का उपयोग करके)। आप जितना ज्यादा कर सकते हैं डेस्कटॉप सॉफ्टवेयर को प्रयोग करने की कोशिश करें और सॉफ्टवेयर क्या करता है समझें। ज्यादातर सॉफ्टवेयर विकास कंपनियां सॉफ्टवेयर का परीक्षण करने के लिए बीटा परीक्षण वर्जन के उत्पादों की पेशकश करती हैं, जो आप उपयोग कर सकते हैं। ऑन यूजर इंटरफेस एडवांसमेंट अप-टू-डेट रखें। ग्राफिकल यूजर इंटरफेस पर कुछ लेख या ट्यूटोरियल पढ़ें। आप अपने दिन-प्रतिदिन के जीवन में समस्याओं पर अपने प्रोग्रामिंग विशेषज्ञता को लागू करने की कोशिश करें। उदाहरण के लिए, फ़ाइलों का नाम बदलने का प्रोग्राम लिखें, विजुअली टेक्स्ट फ़ाइल को कम्पेयर करें, एक डायरेक्ट्री में फ़ाइलों के नाम कॉपी करें, और इस तरह की अन्य चीजें करें। यह पहली बार में सिम्पल रखें। अब तक सीखी हुई विजुअल प्रोग्रामिंग की टेक्नीक्स को लागू करके, इसे पूरा करें। ऑनलाइन रिसोर्सेस से अतिरिक्त ज्ञान लें और अपने फ्रेमवर्क के लिए और अधिक सुझाव और चालें सीखें।  यह उन प्रोग्रामर्स के लिए बहुत उपयोगी होगा, जो यूजर इंटरफ़ेस तत्वों को लिखना चाहते हैं। गेम प्रोग्रामिंग, डेस्कटॉप प्रोग्रामिंग के अधिकांश भागों में माना जाता है। अगर आप एक गेम प्रोग्रामर बनना चाहते हैं, तो आपको इन चरणों को पूरा करने के बाद गेम प्रोग्रामिंग के बारे में अधिक जानने की जरूरत होगी। एक ग्राफिक्स कोर्स गेम प्रोग्रामर के लिए बहुत जरूरी है और पिछले चरणों में चुनाव की दूसरी लेन्गवेज एक लॉजिक/ फंक्शनल प्रोग्रामिंग लेन्गवेज (अधिमानतः प्रोलोग या लिस्प) होनी चाहिए। कोर प्रोग्रामर केवल वो एडवांस्ड प्रोग्रामर हैं, जो अन्य प्रोग्रामर द्वारा इस्तेमाल किया जाने वाले प्रोग्रामिंग एप्लीकेशन्स का प्रोग्रामिंग कोड यूनिट्स में स्थानांतरण करते हैं।  अधिकांश लाइब्रेरी डेवलपर्स उनमें से एक या दोनों का उपयोग करते हैं।  जितने ज्यादा अधिक आप प्रोग्रामिंग पैराडिग्म और लेन्गवेजेस को कवर करेंगे, उतने अधिक आप एक लाइब्रेरी/पैकेज प्रोग्रामर के रूप में सफल होंगे।   जब भी संभव हो स्टैंडर्ड कोड का उपयोग करने के लिए प्रयास करें। यह एक लाइब्रेरी/पैकेज प्रोग्रामर बनने के प्रारंभिक चरणों के दौरान उपयोगी है। साधारण पैकेज के साथ शुरू करें, जैसे कि यूनिट कनवर्जन और मध्यवर्ती वैज्ञानिक गणना पैकेज। अगर आप एक कॉलेज के छात्र रहे हैं, तो आप गैर प्रोग्रामिंग कोर्सेस का इस्तेमाल करें, उनके समीकरण और वैज्ञानिक कोर लाइब्रेरीस को लागू करने की कोशिश के द्वारा। पहले बायनेरिज़/ पैकेज के एक्जेक्यूटेबल्स डाउनलोड करें। इसका इस्तेमाल करने की और इसके मजबूत और कमजोर अंक खोजने की कोशिश करें। इसे करने के बाद, सोर्स डाउनलोड करें और इसे कैसे किया गया था यह पता लगाने की कोशिश करें। उन लाइब्रेरीस या उसके भागों को रिक्रियेट करने का प्रयास करें। सबसे पहले, उन कोड को देखने के बाद और फिर कोड को देखने से पहले करें। बाद के चरणों में, उन लाइब्रेरीस को सुधारने का प्रयास करें। आमतौर पर, लाइब्रेरी / पैकेज प्रोग्रामर प्रस्तुत सभी समस्याओं को रिकर्सिवली और/या इटरेटिवली सोचते हैं: प्रत्येक समस्या को छोटी समस्याओं के एक संग्रह (सिम्पल कार्यों का एक सीक्वेंस) के रूप में या छोटे क्षेत्र की समस्या की गुंजाइश को कम करने के लिए एक दोहराने वाली प्रक्रिया की तरह और फिर एक दूसरे पर उन क्षेत्रों को जमा करने के रूप में सोचने की कोशिश करें। लाइब्रेरी/पैकेज प्रोग्रामर जनरलाइजेशन करते हैं। जब एक साधारण विशिष्ट समस्या प्रस्तुत की जाती है, वे आम तौर पर एक अधिक सामान्य समस्या के बारे में सोचते हैं और सामान्य समस्या को हल करने की कोशिश करते है, जो स्वचालित रूप से छोटी समस्या का समाधान कर देगी। डिसट्रीब्यूटेड एप्लीकेशन प्रोग्रामिंग सबसे मुश्किल होने के लिए जाना जाता है और इसके लिए कंप्यूटर और कम्यूनिकेशन टेक्नोलॉजीस में विविध ज्ञान की आवश्यकता है। यह कदम वैकल्पिक है। हालांकि, यह नेटवर्क टोपोलॉजी समझने में बहुत उपयोगी है।  आपको डिसट्रीब्यूटेड एप्लीकेशन प्रोग्रामिंग शुरू करने से पहले ओपन सिस्टम इंटरकनेक्शन (ओएसआई) मॉडल, ईथरनेट, आईपी, टीसीपी, यूडीपी और एचटीटीपी की अच्छी समझ की जरूरत है।  विंडोज बेस्ड प्रोग्रामिंग के लिए, कोई भी स्क्रिप्ट होगा जो कि विंडोज स्क्रिप्टिंग होस्ट के साथ काम करता हो। लिनक्स बेस्ड प्रोग्रामिंग के लिए, बाश स्क्रिप्ट और पर्ल पर्याप्त होगा। जावास्क्रिप्ट की दृढ़ता से दोनों प्लेटफार्मों के लिए निम्नलिखित कारणों से सिफारिश की जाती है:  यह किसी भी ऑपरेटिंग सिस्टम में लगभग किसी भी स्क्रिप्टिंग होस्ट द्वारा समर्थन किया जाता है (विंडोज स्क्रिप्टिंग होस्ट डिफ़ॉल्ट रूप से जावास्क्रिप्ट का समर्थन करता है, लगभग सब लिनक्स डिसट्रीब्यूशन्स के पास जावास्क्रिप्ट स्क्रिप्टिंग कंसोल समर्थन के लिए एक पैकेज होता है)। यह कई डेवलपर्स द्वारा जानने में आसान माना जाता है। इसमें एक ALGOL द्वारा निकाली गया सिंटेक्स है, जो अगर आपको एक दूसरी प्रोग्रामिंग लेन्गवेज का चयन करने की आवश्यकता होती है, तब अन्य प्रोग्रामिंग लेन्गवेजेस के साथ आपका परिचय कराती हैं, C, C++, C#, जावा, J#, सभी ALGOL सिंटैक्स द्वारा निकाली गयी हैं। जावास्क्रिप्ट सीख कर, आप वेब पृष्ठों की क्लाइंट साइड स्क्रिप्टिंग के साथ खुद को परिचित करके एक बोनस पक्ष पाते है! बाद में, आप अपनी स्क्रिप्टिंग लेन्गवेज और यह किसका समर्थन करता है, के अनुसार और अधिक एडवांस्ड प्रोग्रामिंग टेक्नीक्स और पैराडिग्म का उपयोग कर सकते हैं। सभी स्क्रिप्टिंग लेन्गवेजेस में किसी ना किसी स्तर पर कुछ प्रोसीजरल प्रोग्रामिंग पहलू हैं। जानें यह करने के लिए क्या आवश्यक है। सिम्पल कम्यूनिकेशन पर्याप्त होगा। अधिमानतः, एक मल्टी-पैराडिग्म लेन्गवेज जैसे कि पायथन। उस दूसरी लेन्गवेज का एक सिम्पल परिचय लें। जावा कई प्रोग्रामर द्वारा कई कारणों से पसंद की लेन्गवेज मानी जाती है। हालांकि, C # इस क्षेत्र में तेजी से गति प्राप्त कर रहा है। जावा और C # निम्नलिखित कारणों के लिए पसंद किए जाते हैं:  वे इस प्रकार हैं, ऑब्जेक्ट ओरिएंटेड प्रोग्रामिंग लेन्गवेजेस, जो प्रोग्रामर को इंप्लीमेंटेशन की बड़ी टीमों में ढालता हैं, वे दोनों कोड के कॉम्पोनेंट्स का समर्थन करते हैं। वे कुछ स्तर पर इवेंट-ड्रिवन प्रोग्रामिंग, साथ ही OO और प्रोसीजरल प्रोग्रामिंग का समर्थन करते हैं। फ्रेमवर्क जिस पर लेन्गवेज बनी होती है नेचर द्वारा डिसट्रीब्यूटेड किया जाता है(जावा के मामले में)। कई तैयार किये गए पैकेजेस की उपलब्धता जो नेटवर्किंग से डील करते हैं, दोनों ओपन-सोर्स कोड और ढांचे में निर्मित पैकेज हैं; यह प्रोग्रामर्स को दूसरों के काम पर निर्माण करना आसान बनाते हैं। यूजर इंटरफ़ेस तत्वों जैसे आउटपुटिंग, विंडो डिजाइन और टेक्नीक और यूजर इंटरफ़ेस तत्वों पर कम ध्यान दें। यह किताबों, ऑनलाइन ट्यूटोरियल या अकादमिक कोर्सेस का उपयोग करके किया जा सकता है। हालांकि, डिसट्रीब्यूटेड एप्लीकेशन्स के आर्किटेक्चर और उनके कॉन्सेप्ट को समझना आवश्यक है।  कम से कम उन सभी से परिचय प्राप्त करने की कोशिश करें: अधिकांश डिसट्रीब्यूटेड एप्लीकेशन प्रोग्रामर्स एक या दो प्रोग्रामिंग लेन्गवेजेस पर रूकते नहीं है, बल्कि प्रत्येक ऑपरेटिंग सिस्टम पर कम से कम एक प्रोग्रामिंग लेन्गवेज सीखते हैं। इसका मतलब अगर आप अपने एप्लीकेशन को "डिसट्रीब्यूटेड" करना चाहते हैं, तो आप कम से कम एक प्रमुख ऑपरेटिंग सिस्टम पर इसका एक वर्जन प्रदान करें।  कॉमन ऑब्जेक्ट रिक्वेस्ट ब्रोकर आर्किटेक्चर (CORBA) सिम्पल ऑब्जेक्ट एक्सेस प्रोटोकॉल (SOAP) असिन्क्रोनस जावास्क्रिप्ट और XML (AJAX) डिसट्रीब्यूटेड कॉम्पोनेंट ऑब्जेक्ट मॉडल (DCOM) .NET रिमोटिंग XML वेब सर्विसेस
जानें वेब प्रोग्रामिंग किस जरूरत पर जोर देता है: कई विभिन्न वेबसाइटें आम तौर पर कैसी दिखती हैं जानने के लिए उन्हें ब्राउज करें: कम से कम एक बुद्धिशीलता की टेक्नीक/विधि और उस विधि को लागू करने के लिए प्रयोग किया जाने वाला सॉफ्टवेयर सीखें: वेबसाइट संरचना से परिचय करें: ग्राफिक्स डिजाइन पर एक क्रैश कोर्स लें: इंटरनेट के बुनियादी ढांचे की मूल बातें जानें: एचटीएमएल और सीएसएस लेन्गवेजेस जानें: एक्सएमएल और एक्सएमएल से संबंधित टेक्नोलॉजीस जानें: जब तक आप HTML से परिचित ना हो जाएँ, तब तक सिम्पल स्थैतिक वेबसाइट बनाएँ: एक क्लाइंट-साइड स्क्रिप्टिंग लेन्गवेज सीखें: आप सीखी हुई क्लाइंट साइड स्क्रिप्टिंग लेन्गवेज के साथ परिचय करें: कम से कम एक सर्वर साइड प्रोग्रामिंग लेन्गवेज सीखें: आप सर्वर साइड प्रोग्रामिंग लेन्गवेज सीखने के बाद खुद के लिए एक पायलट प्रोजेक्ट बनाएँ।
 अपनी खुद की वेबसाइट बनाएँ और अपने स्वयं के पेज के भीतर ऑनलाइन प्रयोग शुरू करें।
 जानें आप डेस्कटॉप एप्लीकेशन प्रोग्रामिंग के साथ क्या करते हैं: विभिन्न कंप्यूटर हार्डवेयर आर्किटेक्चर्स के बारे में जानें: एक प्रवेश स्तर (बच्चों के') प्रोग्रामिंग लेन्गवेज सीखें: इनसे परिचय करे: प्रोसीजरल प्रोग्रामिंग लेन्गवेजेस में से एक में एक प्रारंभिक कोर्स लें: कम से कम एक एडवांस्ड मॉडलिंग टेक्नीक जानें जैसे कि UML या ORM के रूप में ।
 कुछ छोटे कंसोल या कंसोल की तरह एप्लीकेशन्स का लेखन शुरू करें: आपकी चुनी हुई प्रोग्रामिंग लेन्गवेज में एक और अधिक एडवांस्ड कोर्स लें: आपकी सीखी हुईं एडवांस्ड टेक्नीक्स को लागू करें ।
 एक और प्रोग्रामिंग पैराडिग्म में कम से कम एक प्रोग्रामिंग लेन्गवेज का एक प्रारंभिक कोर्स लें: आपने अब तक सीखी हुई दो प्रोग्रामिंग लेन्गवेजेस की तुलना करने की कोशिश करें: सीखी हुई लेन्गवेजेस में से एक का उपयोग कर विजुअल प्रोग्रामिंग कन्सेप्ट जानें: आपके डिजाइन किए हुए छोटे से सॉफ्टवेयर प्रोजेक्ट्स पर अपने ज्ञान को लागू करने की शुरुआत करें: एक वर्चुअली  स्नातक प्रोजेक्ट बनाएं: एडवांस्ड कोर्स लेकर सीखें हुए विजुअल फ्रेमवर्क/ लाइब्रेरी / पैकेज को विस्तार से समझें: अपने प्रोग्रामिंग लेन्गवेजेस के लिए विजुअल तत्वों के अन्य पैकेज / लाइब्रेरी के लिए खोज करें और उन्हें जानें।
 ग्राफिक्स में एक कोर्स लें( ग्राफिक्स डिजाइन में नहीं): एक गेम प्रोग्रामर (वैकल्पिक) बनें: कोर प्रोग्रामिंग क्या है जानें: अगर आपने पहले ऐसा नहीं किया है, तो एक प्रोग्रामिंग लेन्गवेज सीखें जो रियूजेवल कॉम्पोनेंट्स/पैकेजेस के निर्माण का समर्थन करती है।
 UML और ORM में एक एडवांस्ड कोर्स लें: सॉफ्टवेयर इंजीनियरिंग में एक कोर्स लें।
 कम से कम मॉड्यूलर, कॉम्पोनेंट-बेस्ड, ऑब्जेक्ट ओरिएंटेड, और इवेंट ड्रिवन प्रोग्रामिंग टेक्नीक और कन्सेप्ट्स जानें: ऑपरेटिंग सिस्टम के बारे में और इन ऑपरेटिंग सिस्टम के द्वारा समर्थित प्रोग्रामिंग फ्रेमवर्क बारे में और अधिक जानें।
 प्लेटफार्म इंडिपेंडेंट फ्रेमवर्क, प्रोग्रामिंग लेन्गवेजेस और टेक्नोलॉजीस को सीखने के प्रयासों पर ध्यान केंद्रित करें।
 यदि आपकी अब तक सीखी हुई प्रोग्रामिंग लेन्गवेजेस में ANSI/ ISO / IEEE / W3C स्टैंडर्ड वर्जन है, तो उनमें मास्टरी कीजिए: पहले से ही स्थापित सिम्पल लाइब्रेरीस की नकल करने की कोशिश करें, विशेष रूप से ऑपन सोर्स वाली: अपने प्रोग्रामिंग के क्षेत्र में ओपन सोर्स पैकेज की खोज और प्रयास करें: प्रोग्रामर के कॉम्पोनेंट्स को डिसट्रीब्यूटेड करने और तैनात करने के लिए प्रयोग किया जाने वाले अलग अलग दृष्टिकोण जानें।
 डिसट्रीब्यूटेड एप्लीकेशन्स प्रोग्रामिंग से निपटें: टेलीफोनी सिस्टम्स और उनके हार्डवेयर का एक गति में परिचय लें: नेटवर्किंग हार्डवेयर आर्किटेक्चर और उनके टूल जैसे हब, स्विच और राउटर के साथ परिचय करें।
 प्रोटोकॉल और एसेन्सियल नेटवर्किंग में एक कोर्स लें: एक्सएमएल लेन्गवेज सीखें और इसके साथ खुद को परिचित करें।
 एक शेल स्क्रिप्टिंग लेन्गवेज सीखने के द्वारा शुरू करें: पहली बार में अपनी पसंद की स्क्रिप्टिंग लेन्गवेज का प्रयोग करके केवल प्रोसीजरल प्रोग्रामिंग लागू करें: आप मशीनों के बीच कम्यूनिकेशन करने के लिए स्क्रिप्टिंग लिखने के लिए सीखी हुई स्क्रिप्टिंग लेन्गवेज का प्रयोग करें: एक डेस्कटॉप स्क्रिप्टिंग/प्रोग्रामिंग लेन्गवेज के लिए एक ट्रांसफर सुनिश्चित करें: लेन्गवेज की मूल सुविधाओं, विशेष रूप से जो नेटवर्किंग का समर्थन करती हैं, उन पर अधिक ध्यान केंद्रित करें: डिसट्रीब्यूटेड एप्लीकेशन्स के डिजाइन और आर्किटेक्चर पर एक कोर्स लें: अपनी पसंद के प्रोग्रामिंग लेन्गवेज के उपयोग से सर्विस कॉम्पोनेंट के निर्माण और सर्विसेस के बारे में जानें।
 निम्नलिखित टेक्नीक्स में से एक या एक से अधिक टेक्नीक्स को जानें:
https://www.wikihow.com/Become-a-Programmer https://www.wikihow.com/Become-a-Programmer https://www.wikihow.com/Become-a-Programmer https://www.wikihow.com/Become-a-Programmer
Web Programming Desktop Application Programming Library/Platform/Framework/Core Programming Distributed Applications Programming