2024-10-03
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
बब् उत्तरं ददातिप्रोग्रामरस्य “३५ वर्षीयः संकटः”: १.
चिन्तयतुप्रोग्रामिंग् केवलं युवानां कृते एव इति विचारः वस्तुतः भ्रमः एव, किन्तु अतीव प्रभावशालिनी भ्रमः खलु । एषः भ्रमः अस्ति यतोहि विगत ७० वर्षेषु प्रोग्रामरस्य माङ्गलिका रॉकेट इव उच्छ्रितवती अस्ति ।
वस्तुतः वयं "पुराणप्रोग्रामर" अद्यापि तत्र स्मः, परन्तु संख्या तावत् स्पष्टा नास्ति ।
लेखक |
द्वारा उत्पादित |नूतनः प्रोग्रामरः》सम्पादकीय विभाग
कल्पयतु यदि भवान् स्वजीवने पञ्चाशत् वर्षाणाम् अधिकं कालम् कोडं लिखितवान् आसीत् तथापि भवान् ७१ वर्षाणि यावत् प्रोग्रामिंग् करोति स्म तर्हि वर्तमानकाले विस्फोटक-ए.आइ.
रोबर्ट् सी. मार्टिन् विश्वप्रसिद्धः प्रोग्रामिंगगुरुः इति प्रसिद्धः अयं पुरुषः " इति ।बब मामावृद्धः (अंकल बॉब) चपलविकासस्य डिजाइनप्रतिमानस्य च अग्रणी अस्ति सः १९७० तमे वर्षात् सॉफ्टवेयरव्यावसायिककार्यं कुर्वन् अस्ति तथा च ५० वर्षाणाम् अधिकं कालात् सम्बन्धितकार्यं कुर्वन् अस्ति प्रसिद्धाः "solid five principles" इति पञ्च design principles in the field of object-oriented programming , came from his handiwork.अद्यतनः एआइ केवलं अर्धमस्तिष्कं युक्तः कनिष्ठः प्रोग्रामरः अस्ति, तथा च वास्तवतः कदापि न वर्धते।", यतः ए.आइ.यावत् वयं भविष्ये कदाचित् मनुष्यवत् चिन्तयितुं शक्नुवन्ति यन्त्राणि निर्मामः तावत् प्रोग्रामिंग् कौशलं अप्रचलितं भविष्यति ।”
विश्वप्रसिद्धः सॉफ्टवेयरविकासगुरुरूपेण अंकलबॉबस्य कृतिः "स्वच्छसङ्केतः" एकदा "स्वच्छसङ्केतः" किम् इति परिभाषितवती, प्रभावीसञ्चालनप्रथानां श्रृङ्खलां च वर्णितवान्
अद्यैव, अंकल बॉबस्य नवीनतमस्य पुस्तकस्य चीनीयसंस्करणं "functional design: principles, patterns and practices" इति प्रकाशितम् अस्ति, बहवः जनाः चिन्तयन्ति यत् वस्तु-उन्मुख-प्रोग्रामिंगस्य अयं नेता "शत्रु-शिबिरं" प्रति "द्रोहं" कृतवान्, तथा च अंकल-बॉबः सः अपि प्रदर्शितवान् तस्य नित्यं ऋजुं चरित्रं प्रत्यक्षं च "खण्डितं": "अन्तिमेषु वर्षेषु केषुचित् लेखेषु कार्यात्मकप्रोग्रामिंग् वस्तु-उन्मुख-प्रोग्रामिङ्गस्य विरोधः अस्ति, वस्तु-उन्मुख-प्रोग्रामिंग्-इत्येतत् पुरातनम् इति दावितं मया एतत् मतं असहमतं कृत्वा एतत् पुस्तकं लिखितुं निश्चितम्।”
कार्यात्मकं प्रोग्रामिंग् केवलं "कार्यैः सह प्रोग्रामिंग्" इत्यस्मात् अधिकम् अस्ति । कार्यात्मकं प्रोग्रामिंग् असाइनमेण्ट् स्टेट्मेण्ट् विना प्रोग्रामिंग् अस्ति ।
एकदा भवन्तः असाइनमेण्ट् स्टेट्मेण्ट् विना प्रोग्रामिंग् इत्यस्य प्रयासं कुर्वन्ति तदा कार्यात्मकप्रोग्रामिंग् इत्यस्य अन्ये सर्वे विशेषताः स्थाने पतन्ति । यदि भवान् फंक्शन्स् इत्यनेन सह व्यवहारं कर्तुम् इच्छति तर्हि एतानि सर्वाणि वस्तूनि स्वाभाविकतया तस्मिन् क्षणे आगच्छन्ति यदा भवान् मूल्यानि न नियुक्तुं निश्चयति । अतः, तत् एव कार्यात्मकप्रोग्रामिंग् इति ।
——"कार्यात्मक डिजाइन", रॉबर्ट सी. मार्टिन
उपर्युक्तानि टिप्पण्यानि सर्वाणि csdn "new programmer" इत्यनेन uncle bob इत्यनेन सह साक्षात्कारस्य सन्ति। अस्माभिः अस्मिन् "चपलविकासस्य जीवितजीवाश्म" इत्यनेन सह गहनः आदानप्रदानः कृतः, तस्य व्यक्तिगतं विवरणं च श्रुतं यत् सः कथं १७ सॉफ्टवेयर-उद्योगस्य नेतारणाम् एकः इति नाम्ना २३ वर्षपूर्वं (२००१) "चपल-घोषणापत्रम्" सह-प्रकाशनं कृतवान्ऐतिहासिकविवरणम्.ऐतिहासिक छाप. निम्नलिखितलेखः १९७० तमे वर्षे बब्-मातुलस्य स्मृतिभिः आरभ्यते, पाठकान् "प्रोग्रामर-प्राचीनयुगं" प्रति नेष्यति यदा वर्ल्ड-वाइड्-जालस्य अपि जन्म अद्यापि न जातम् आसीत्
"नव प्रोग्रामरः" ।: साक्षात्कारस्य आरम्भात् पूर्वं संक्षिप्तं आत्मपरिचयं दातुं शक्नुवन्ति वा ?
बब मामा:ठीकम्, मम नाम बॉब मार्टिन् अस्ति अहं बहुकालात् प्रोग्रामरः अस्मि।पञ्चाशत् वर्षाणाम् अधिकम्.यदा प्रथमवारं प्रोग्रामिंग् आरब्धवान् तदा सङ्गणकाः विशालं कक्षं पूरयितुं पर्याप्तं विशालाः आसन्, महत् च आसीत्, कोटि-कोटि-रूप्यकाणि यावत् धावन्ति स्म ।
अहं विविधैः प्रोग्रामिंगभाषाभिः सह कार्यं कृतवान्, यथा...विधानसभा भाषा, cobol, fortran, pl / i, c, c ++, pascal, जावा, c #प्रतीक्षतु। वर्षेषु अहं वित्तीयप्रणालीतः आरभ्य एम्बेडेड् वास्तविकसमयप्रणालीपर्यन्तं प्रक्रियानियन्त्रणप्रणालीपर्यन्तं विविधप्रणाल्याः विकासे संलग्नः अस्मि अतः भवान् वक्तुं शक्नोति यत् अस्मिन् उद्योगे मम विस्तृतः अनुभवः अस्ति।
तदतिरिक्तं मया अनेकानि पुस्तकानि रचितानि, यथा clean code (स्वच्छ कोड), "वास्तुकला स्वच्छतायाः मार्गः" (स्वच्छ वास्तुकला), अद्य वयं यस्य पुस्तकस्य चर्चां कुर्मः तस्य नाम " " इति ।कार्यात्मक डिजाइन》(कार्यात्मक डिजाइन)。
"नव प्रोग्रामरः" ।:पुस्तकलेखनस्य अतिरिक्तं भवन्तः अवकाशसमये किं कुर्वन्ति ? वैसे, अहं प्रायः भवतः ट्विट्टर् पठितवान् तदा अहं पश्यामि यत् भवतः प्रायः ५०% ट्वीट् अमेरिकीनिर्वाचनस्य ट्रम्पस्य च विषये सामाजिकवार्ताः सन्ति, अन्ये ५०% च तकनीकीसामग्री, प्रोग्रामिंग्, कोडविषये भवतः दृष्टिकोणाः च सन्ति।
बब मामा:नूनम्। अनिर्वाचनवर्षेषु मम ९०% ट्वीट् सॉफ्टवेयरविषये भवति । परन्तु यतः एतत् निर्वाचनवर्षम् अस्ति, अतः अन्यविषयान् आच्छादयन् अधिका सामग्री अस्ति । यदा अहं पुस्तकानि वा प्रोग्रामिंग् वा न लिखामि तदा अहं बहु कार्यं करोमि। अहं द्विचक्रिकायाः सवारीं कर्तुं बहु परिभ्रमणं च रोचये। अहम् अपि विमानचालकः अस्मि, स्वस्य विमानेन परितः उड्डीय बहु मज्जति। मम विशालः परिवारः अस्ति यस्य सहचत्वारः बालकाः दश पौत्राः च।, अहं प्रायः तान् यथाशक्ति गच्छामि, अतः मम समयः अतीव पूर्णतया व्यवस्थापितः अस्ति ।
"नव प्रोग्रामरः" ।: कृपया अस्मान् पुनः स्वस्य प्रोग्रामिंग-वृत्तेः आरम्भबिन्दुं प्रति नेतुम्, १९७० तमे वर्षे भवान् कदा प्रोग्रामररूपेण कार्यं आरब्धवान् इति कथां कथयतु। तदा भवतः आयुः १८ वर्षीयः आसीत्, प्रथमानि भाषाः भवता ज्ञातानि विधानसभा, cobol इति प्रथमवारं आरब्धस्य अनुभवस्य विषये वक्तुं शक्नुवन्ति वा?
बब मामा: अस्तु, तस्मिन् समये महाविद्यालयस्य पाठ्यक्रमाः बहु नासीत्। तदा मम विद्यालये रुचिः नासीत् । तस्मिन् समये वियतनामयुद्धं प्रचलति स्म, परिसरे बहु दङ्गाः अशान्तिः च आसीत् । तथा,अहं सङ्गणकप्रोग्रामिंग् विषये बहु किमपि ज्ञातवान्, cobol तथा fortran इत्येतयोः विषये अपि ज्ञातवान्, अपि च अनेकाः सङ्गणकसङ्घटनभाषाः अपि ज्ञातवन्तः । अतः, अहं मन्ये महाविद्यालयं गन्तुं किमपि आवश्यकता नास्ति。
मम प्रोग्रामिंग्-वृत्तिः कुतः आरब्धा इति विषये सर्वं तदा आरब्धम् यदा मम माता १२ वर्षीयः आसम् तदा किञ्चित् प्लास्टिक-सङ्गणकं क्रीतवत्यः । तस्मिन् क्रीडनकस्य त्रीणि फ्लिप्-फ्लॉप्स् षट् and गेट्स् च सन्ति, तस्य संचालनार्थं भवद्भिः लघु लीवरं परिवर्तयितुं आवश्यकम् अस्ति यत् अन्तः केचन रबर-पट्टिकाः लीवराः च भागान् चालयन्ति, येन सः सरलगणनाः कर्तुं शक्नोति, यथा 0 तः 7 पर्यन्तं गणना, अथवा 7 तः 7 पर्यन्तं गणयन् गणना 0 यावत् आगच्छति। तदतिरिक्तं, भवान् तम् अपि प्रोग्राम् कर्तुं शक्नोति यत् एकं समबिट् अपि च एकं कैरी बिट् जनयितुं द्वौ बिट् योजयितुं शक्नोति मया तस्मिन् बहु रोचकाः प्रोग्राम् अपि लिखिताः - प्रोग्रामिंग् प्रक्रिया एकं लघु ट्यूबं योजयितुं inserted onto the latch, these tubes block इति भवति दण्डस्य स्लॉट्-प्रवेशात्, तस्मात् शूलस्य स्थितिः परिवर्तते ।
अतः, अहं कतिपयानि सप्ताहाणि तत् क्रीडनकसङ्गणकं कथं कार्यं कर्तव्यमिति ज्ञात्वा व्यतीतवान्, तया प्रक्रियायाः माध्यमेन च अहं प्रोग्रामरः अभवम् ।तदा आरभ्य अहं प्रोग्रामरः अस्मि。
सः एव मम आरम्भबिन्दुः आसीत्, ततः मम पिता यथाशक्ति सूचनां दातुं सङ्गणकस्य प्रोग्रामिंगभाषायाः च विषये बहु पुस्तकानि क्रीतवन् । ततः १६ वर्षे मया हनीवेल् २०० कृते कार्यक्रमलेखनस्य प्रोग्रामिंग्-कार्यं प्राप्तम् । कार्यं सप्ताहद्वयं वा त्रयः वा आसीत्, यदा अहं...अद्यापि केवलं बालकः एव, अहं ग्रीष्मकालीनावकाशे एव कृतवान् तथा च एतावत् मजेयम् आसीत्।
प्रायः वर्षद्वयानन्तरं यदा अहं १८ वर्षीयः आसम् तदा अहं ibm 360 इत्यस्य कृते assembly language, cobol इति लेखनस्य पूर्णकालिकं कार्यं प्राप्तवान् । ततः शीघ्रमेव अहं अनेके सूक्ष्मसङ्गणकाः असेंबलीभाषायां प्रोग्रामं कर्तुं आरब्धवान् । यस्मिन् समये एतानि सङ्गणकानि वैरियन् निगमेन निर्मिताः आसन्, तस्मिन् समये बहवः कम्पनयः सूक्ष्मसङ्गणकानां निर्माणं कुर्वन्ति स्म, परन्तु अल्पाः एव सफलाः अभवन्, तथा च डिजिटल उपकरणनिगमः (dec) एव अस्मिन् क्षेत्रे आधिपत्यं धारयति स्म ततः अहं १९७० तमे वर्षे आरम्भे निर्मितानाम् उपकरणानां pdp 8 तथा pdp 11 इत्येतयोः प्रोग्रामिंग् इत्यत्र अतीव कुशलः अभवम् ।
"नव प्रोग्रामरः" ।: १९७० तमे दशके वास्तविकरूपेण रोचकः समयः आसीत् the world wide web इत्यस्य आविष्कारः अद्यापि न कृतः आसीत्, usenet इत्यस्य च अधुना एवउत्प्लवते। भवान् विश्वस्य प्रथमेषु usenet उपयोक्तृषु अन्यतमः अस्ति, अपि च अहं ज्ञातवान् यत् "uncle bob" इति उपनाम मूलतः भवतः कृते कम्पनीयाः सहकारिणा दत्तम् आसीत् । पश्चात्, भवान् एतत् उपनाम usenet इत्यत्र हस्ताक्षररूपेण भूलवशं प्रयुक्तवान्, अन्ते च नाम सफलतया उपनामतः भवतः वास्तविकनामपर्यन्तं परिवर्तितम् । कथां साझां कर्तुं शक्नुवन्ति वा ?
बब मामा: अहं clear communication इति स्टार्टअप-संस्थायां कार्यं कुर्वन् आसीत्, यत् मम करियरस्य आरम्भः आसीत्चतुर्थः विरामः, १९८७ तमे वर्षे १९८९ तमे वर्षे च कदाचित् । तत्र एकः सहकर्मी सर्वेभ्यः उपनामम् अयच्छत्, मम "अंकल् बब्" इति आसीत् । प्रथमं किञ्चित् कष्टप्रदम् आसीत् यतोहि सः सर्वदा मां एतेन उपनामेन आह्वयति स्म: "बब-माका, एतत् किम्?"
अहं तत् कम्पनीं त्यक्त्वा सल्लाहकारः अभवम्, इतः परं कोऽपि मां “अंकल् बब्” इति न आह्वयति स्म । निष्पद्यते, अहं किञ्चित् शीर्षकं चूकितवान्, अतः अहं मम ईमेलहस्ताक्षरे योजयितुं त्रुटिं कृतवान्।
अहं तस्मिन् समये usenet इत्यत्र अतीव सक्रियः आसम्, प्रायः comp.object तथा comp.lang.c++ इत्यादिषु समाचारसमूहेषु लेखाः प्रकाशयन् आसीत्, मम हस्ताक्षरे जनाः "uncle bob" इति लक्षयितुम् आरब्धवन्तः अहं एकदा c++ सम्मेलने आसम्, सम्भवतः १९९० तमे वर्षे, तदा कश्चन हॉलस्य पारतः मां दर्शयित्वा अवदत्, "पश्यतु, सः चाचा बॉबः अस्ति!" signature.- परन्तु तदा अहं अवगच्छामि यत् "अंकल् बॉब" वस्तुतः उत्तमः ब्राण्ड् भविष्यति, अतः अहं तत् स्थापितवान्।
"नव प्रोग्रामरः" ।: usenet इति प्रथमं सामाजिकमाध्यमम् इति गणयितुं शक्यते यस्मिन् भवन्तः भागं गृह्णन्ति। अनेकेषां पौराणिकविकासकानाम् इव भवन्तः अपि भिन्नसमुदायेषु अथवा मञ्चेषु भागं ग्रहीतुं रोचन्ते, एकदा अहं भवन्तं hash note इत्यत्र पोस्ट् कुर्वन्तः दृष्टवान्: "अहं robert martin. भवन्तः मां प्रश्नान् पृच्छितुं शक्नुवन्ति तस्मिन् समये बहवः विकासकाः सक्रियरूपेण भवन्तं प्रश्नं पृच्छन्तु, सम्मिलितुं च पृष्टवन्तः संभाषणम् । अधुना सः संचारः मुख्यतया ट्विट्टर् इत्यत्र भवति इव दृश्यते।
बब मामा:दक्षिणः,ट्विटरअधुना मम मुख्यं सामाजिकमाध्यमम्। अहं फेसबुकस्य अपि उपयोगं करोमि, परन्तु मुख्यतया परिवारेण मित्रैः च सम्पर्कं स्थापयितुं।
"नव प्रोग्रामरः" ।: प्रारम्भे भवान् c तथा c++ इत्येतयोः प्रति आकृष्टः आसीत्, परन्तु भवता इदमपि उक्तं यत् भवता रुचितः snobol, focal, alcom, basic इत्यादीनां भाषाणां प्रयोगः कृतः। अन्याः काः प्रोग्रामिंग् भाषाः "रोचकाः" इति वक्तुं शक्यन्ते इति भवन्तः मन्यन्ते? विशेषतः अन्तिमेषु वर्षेषु ये नूतनाः प्रोग्रामिंगभाषाः उद्भूताः तेषु काः भवद्भ्यः रोचकाः दृश्यन्ते?
बब मामा: अस्मिन् क्षणे मम सर्वाधिकं रोचकं भाषा अस्तिक्लोजुरे, एषा भाषा यस्याः शिक्षणार्थं मया बहुकालं निवेशितः। एतेन अहं आश्चर्यचकितः अभवम् यतोहि क्लोजुर् वस्तुतः अस्तिलिस्पलिस्पस्य एकः बोली यस्याः विषये अहं कदापि न चिन्तितवान् यत् अहं शिक्षिष्यामि इति।
मम कार्यक्षेत्रस्य प्रथमत्रिंशत् वर्षाणि यावत् अहं कदापि लिस्प्-भाषां शिक्षितुं न विचारितवान् यतोहि मया एषा भयंकरः भाषा इति चिन्तितम्-यतोहि, अवश्यं, अहं तां सर्वथा न अवगच्छामि स्म। एकदिनपर्यन्तं "the structure and interpretation of computer programs" इति पुस्तकं पठितवान् यत् पुस्तके प्रयुक्ता भाषा लिस्प इति आसीत्, यत् तत्क्षणमेव मम आकर्षणं कृतवती। सहसा अहं लिस्पस्य बृहत् प्रशंसकः अभवम्। अहं अन्वेष्टुम् इच्छामि कदैनन्दिनजीवने लिस्प् इत्यस्य उपयोगस्य उपायाः, अतः अहं क्लोजुर् इत्यनेन सह मिलितवान्।
क्लोजुरे समतुल्यएकः lisp बोली यः jvm (java virtual machine) इत्यत्र चालयितुं शक्नोति ।, मम कृते परिपूर्णम् आसीत्, अतः अहं clojure इति कोडं शिक्षितुं आरब्धवान् तथा च तत् कृत्वा मज्जितवान्, मम कृते महत् लीला आसीत्।
तदतिरिक्तं अन्याः रोचकाः भाषाः सन्ति यथा...अग्रे, postfix expressions इत्यस्य आधारेण एकः stack language या मया प्रयुक्ता कस्यापि भाषायाः भिन्ना अस्ति तथा च अतीव रोचकम् ।प्रस्तावनाअतीव रोचकभाषा अपि भवद्भिः यन्त्राय प्रत्यक्षतया किं सम्यक् इति वक्तुं आवश्यकता नास्ति, परन्तु यन्त्रं तस्य समाधानं कृत्वा सम्यक् परिणामं प्राप्नुयात् । समग्रतया एताः अतीव रोचकाः भाषाः सन्ति येषां अवलोकनं सर्वेषां कृते करणीयम् यतः ते अतीव अद्वितीयाः सन्ति।एकदा भवन्तः बहु भिन्नां भाषां ज्ञात्वा, तत् भवतः सम्पूर्णं कोड्-दृष्टिकोणं परिवर्तयति。
"नव प्रोग्रामरः" ।: एआइ कोड् विषये भवतः पूर्वं कृतानि कानिचन टिप्पण्यानि अहं अवगच्छामि। भवतः मते बृहत् भाषाप्रतिमानाः कदाचित् उत्तमाः कदाचित् मूर्खाः च भवन्ति। यद्यपि एआइ इत्यस्य कोडव्याख्यानेन किञ्चित् साहाय्यं कृतम् तथापि भवता उक्तं यत् अन्धरूपेण विश्वासः न कर्तव्यः इति ।
बब मामा: आम्, प्रोग्रामरcopilot इत्यादिषु साधनेषु अतिशयेन निर्भरः भूत्वा तेषां उत्पद्यमानं कोडं असमालोचनेन स्वीकुर्वितुं सुलभं भवति, तत् च खतरनाकम् । भवन्तः समीक्षात्मकाः भवितुम् अर्हन्ति, तथा च यद्यपि अस्य कोडस्य किञ्चित् ठीकम् अस्ति तथापि अधिकांशतः भवन्तः ai-जनितसङ्केतेन सह अतीव सावधानाः भवितुम् अर्हन्ति । अतः मम सुझावः अस्ति यत्,सावधानाः भवन्तु, तस्य उपयोगं साधनवत् कुर्वन्तु, सर्वदा स्मर्यतां यत् उपकरणानां अशुद्धप्रयोगेन भवतः हानिः भवितुम् अर्हति ।
"नव प्रोग्रामरः" ।: अतः, ये प्रोग्रामर्-जनाः अधुना एव शिक्षितुं आरभन्ते, तेषां कृते वर्धनाय ai-इत्यस्य उपयोगः कथं करणीयः ? साक्षात्कारेषु मया द्वौ सर्वथा भिन्नौ मतौ श्रुतौ यत् नवीनप्रोग्रामरः ai पूर्णतया आलिंगनीयः यतः एतेषां जनानां ai कोडस्य गुणवत्तायाः न्यायं कर्तुं क्षमता नास्ति
बब मामा: यथा कनिष्ठविमानचालकैः ऑटोपायलट् इत्यस्य उपयोगः न कर्तव्यः।कृपया प्रथमं विमानं कथं चालयितुं शक्यते इति ज्ञातव्यम्, ततः यदा विवरणेषु ध्यानं दातुं आवश्यकता नास्ति तदा ऑटोपायलट् इत्यस्य उपयोगं कुर्वन्तु । एआइ इत्यस्य अपि तथैव भवति ।कनिष्ठप्रोग्रामर-जनाः आरम्भे एआइ-इत्यस्य उपरि अवलम्बनं न कुर्वन्तु यतोहि ते अद्यापि आउटपुट्-सङ्केतस्य गुणवत्तायाः न्यायं कर्तुं न जानन्ति । बहुवारं, सः कोडः न केवलं दुष्टः भवति, केवलं गलतः अस्ति तथा च सर्वथा कार्यं न करोति।
अहं यत् चिन्तितः अस्मि तत् यदा कनिष्ठप्रोग्रामर-जनानाम् एकं कार्यं दत्तं भवति तथा च ते तत् कार्यान्वितुं ai इत्यस्य उपयोगं कर्तुं चयनं कुर्वन्ति। एआइ इत्यनेन कोड् दत्तस्य अनन्तरं एते नवीनाः सर्वदा चिन्तयिष्यन्ति यत् "अच्छा, एतत् एआइ इत्यनेन दत्तम्, एतत् अवश्यमेव सुष्ठु अस्ति", ततः स्वकार्यं नष्टं भवति । अतः मम सुझावः अस्ति यत्,भवता स्वस्य कार्यक्षेत्रस्य प्रथमेषु कतिपयेषु वर्षेषु एआइ-उपयोगः अपि क्षीणः कर्तव्यः。
"नव प्रोग्रामरः" ।: अधुना भिन्न-भिन्न-प्रकल्पेषु अधिकाधिक-ai-जनित-सङ्केतानां उपयोगः भवति । भवन्तः कोडगुणवत्तायाः, जनरेशनदक्षतायाः च सन्तुलनं कथं कुर्वन्ति?
बब मामा: मम संतुलनस्य मार्गः अस्तिप्रथमं कोड् जनयितुं ai इत्यस्य उपयोगं कुर्वन्तु, ततः तत् स्वच्छं कुर्वन्तु. अहं तत् परियोजनायां दुष्टसङ्केतं न स्थापयिष्यामि। अतः, यदि ai द्वारा उत्पन्नः कोडः कार्यं करोति, मम परीक्षणं च उत्तीर्णं करोति, तर्हि अहं पुनः गत्वा पुनः घटकं करिष्यामि, स्वच्छं करिष्यामि, अविचलतया सुधारयिष्यामि च । यथा नामकरणं परिवर्तयितुं, केचन कार्याणि निष्कासयितुं, संरचनायाः समायोजनं च इत्यादयः ।
यतः अहं न अपेक्षयामि यत् ai महत् कोडं जनयिष्यति। अतः अहं तत् स्वच्छं कृत्वा स्वस्य कोड् मध्ये परिणमयिष्यामि। एवं प्रकारेण मम परियोजना मया लिखितः कोडः च ।
"नव प्रोग्रामरः" ।: प्रायः पञ्चवर्षपूर्वं कश्चन भवन्तं पृष्टवान् "सॉफ्टवेयर-इञ्जिनीयरिङ्गस्य काः प्रवृत्तयः अतिमूल्याङ्किताः सन्ति?"पञ्चवर्षेभ्यः परं किं अन्याः प्रवृत्तयः सन्ति येषां अतिमूल्याङ्कनं भवति ?
बब मामा:अधुना अतिमूल्याङ्कितः प्रवृत्तिः अवश्यमेव जननात्मकः एआइ अस्ति, तत्र कोऽपि संदेहः नास्ति. इदं नवीनं, किमपि नूतनं च अतिमूल्याङ्कितम्। पञ्चवर्षेभ्यः परं सर्वे पश्चात् पश्यन्ति, "वयं सम्भवतः अतिप्रमाणं कृतवन्तः" इति ।
"नव प्रोग्रामरः" ।: भवतः पुरातनः परिचितः केन्ट् बेक् यदा एआइ तरङ्गः वर्धमानः आसीत् तदा किमपि अवदत्। सः अवदत् यत् सः अनिच्छया chatgpt इत्यस्य उपयोगं करोति, तस्य ९०% कौशलं इदानीं व्यर्थम् इति ज्ञातवान्, शेषस्य १०% इत्यस्य मूल्यं सहस्रगुणं वर्धितम् इति। जननात्मकः एआइ कियत् सहायकः भवितुम् अर्हति ?
बब मामा: सत्यं वक्तुं शक्यते यत् एआइ विशेषतया उपयोगी नास्ति इति अहं मन्ये। सरलतमेषु सन्दर्भेषु किञ्चित् सहायकं भवितुम् अर्हति । यथा, यदा अहं किञ्चित् अत्यन्तं मूलभूतं कोडिंग् कार्यं करोमि स्म तदा ai मम किञ्चित् कोडं ददाति स्म, अहं तत् अवलोक्य तत् कुशलम् इति चिन्तयामि स्म, अतः अहं तस्मिन् कार्यं निरन्तरं करोमि स्म । ततः, एआइ प्रायः सन्दर्भानुसारं कार्यं कुर्वन् भविष्यति, यावत् एकदा विषयाः रोचकाः न भवन्ति तदा एआइ अधिकाधिकं अविश्वसनीयः न भवति——किमपि यत्किमपि जटिलं भवति तथा तत् न्यूनतया सहायकं भवति。
एआइ लघुवस्तूनि सम्भालितुं शक्नोति, परन्तु सर्वथा न यदि अहं इच्छामि यत् एतत् पुनः कारकं कृत्वा डिजाइनं सुधारयितुम् इच्छामि। अपि च, परीक्षणलेखनस्य विषये ai बहु साहाय्यं कर्तुं न शक्नोति ।
"नव प्रोग्रामरः" ।: भवता पूर्वं उक्तं यत् कोडिंग् विद्यालयाः अप्रचलिताः भवितुं बहुकालः भविष्यति। किं तस्य क्षणस्य परिचयं कुर्वन् कालस्य विशिष्टः बिन्दुः भविष्यति ? प्रौद्योगिक्याः अन्तः अस्ति वा ?
बब मामा: एषः रोचकः प्रश्नः, परन्तु अहं विज्ञानकथादृष्ट्या चिन्तयिष्यामि।यावत् वयं भविष्ये कदाचित् मनुष्यवत् चिन्तयितुं शक्नुवन्ति यन्त्राणि निर्मामः तावत् प्रोग्रामिंग् कौशलं अप्रचलितं भविष्यति । परन्तु सत्यं वदामः तदा एव सर्वाणि कौशल्यं अप्रचलितं भवति ।अतः अहं न निश्चितः यत् तत् किमपि प्रतीक्षितव्यम् अस्ति। यदि भविष्यति तर्हि भविष्ये अतीव अतीव दूरम् इति मन्ये। भवन्तः जानन्ति, मानवमस्तिष्कं सम्पूर्णस्य अन्तर्जालस्य अपेक्षया बहु जटिलं भवति।
"नव प्रोग्रामरः" ।: ननु एतेन स्मर्यते यत् भवता अपि उक्तं यत् सर्वे असिमोवस्य गृहं प्रति आगच्छेयुः इतिरोबोटिक्सस्य त्रयः नियमाः, यद्यपि "रोबोटिकदासानाम्" जातिः सृजति स्म । दार्शनिकदृष्ट्या कृत्रिमसामान्यबुद्धिः (agi) कथं अवगच्छति ?
बब मामा: आम्, यद्यपि अल्पकालीनरूपेण एतत् प्राप्तुं असम्भाव्यम् इति मन्ये तथापि अस्माकं समीपे आनुवंशिकप्रौद्योगिकी पूर्वमेव अस्ति। यदि वयं कदापि स्वस्य अस्तित्वस्य कृते चेतनयन्त्राणि निर्मामः तर्हि असिमोवस्य त्रयः नियमाः इव किमपि सर्वथा आवश्यकं भविष्यति इति मन्ये।
"नव प्रोग्रामरः" ।: अस्य आधारेण एआइ भवितुमर्हतिमुक्तस्रोतएतत् परिहरितुं ? मनुष्याणां कृते मुक्त-एआइ-इत्यस्य आवश्यकता अस्ति वा बन्द-एआइ-इत्यस्य आवश्यकता अस्ति वा ?
बब मामा: भिन्नाः कम्पनयः अवश्यमेव स्वस्य रहस्यं स्थापयितुम् इच्छन्ति, तस्मिन् स्वयमेव किमपि दोषः नास्ति इति अहं मन्ये।एआइ इत्यस्य वास्तविकसमस्या ऊर्जायाः उपभोगः एव ।एतत् बहु ऊर्जां उपभोगयति, यथा यथा प्रौद्योगिकी अधिका परिष्कृता भवति तथा तथा वर्धते एव। अनेन तस्य व्ययः अत्यन्तं अधिकः भवति । अतः अस्माभिः द्रष्टव्यं यत् अद्यत्वे ai कियत् दूरं विकसितुं शक्नोति, एते बृहत् भाषाप्रतिमानाः कियत् उत्तमं कर्तुं शक्नुवन्ति इति च द्रष्टव्यम् । परन्तु ते परमाणुविद्युत्संस्थानानां इव बहु ऊर्जां उपभोगयन्ति ।
"नव प्रोग्रामरः" ।: एआइ-तः दूरं गत्वा मानव-मानव-विषयेषु चर्चां कुर्मः |
एकदा कश्चन पृष्टवान् "जीवने भवतः मार्गदर्शकः कः?", ततः भवतः उत्तरम् आसीत् "पुस्तकानि मम मार्गदर्शकाः सन्ति" इति । अतः, यथा तत् वर्षम्एजिल् मेनिफेस्टो इत्यस्य निर्माणं कृतवन्तः १७ जनानां मध्ये एकः, भवतः सम्बन्धः कीदृशः अस्ति इति भवन्तः प्रकाशयितुं शक्नुवन्ति वा ?
बब मामा: पूर्वं अस्माकं प्रायः सॉफ्टवेयर-सम्बद्धाः बहवः समागमाः आसन्, परन्तु अधुना एतादृशाः समागमाः बहु न्यूनाः सन्ति । अहं विविधप्रकारस्य सम्मेलनेषु भागं गृह्णामि, यथा c भाषासम्मेलनानि, डिजाइनप्रतिमानसम्मेलनानि, केषुचित् सामान्यसॉफ्टवेयरविकाससम्मेलनेषु च । एतेषां क्रियाकलापानाम् माध्यमेन अहं बहवः जनान् मिलितवान् ।
यथा, अहं डिजाइन-पैटर्न्स्-सम्मेलने मिलितवान्केन्ट् बेक्, प्रारम्भिके extreme programming सम्मेलने मिलितवन्तःमार्टिन् फाउलरः. एतेषां अधिकांशजनानां साक्षात्कारः अभवत् ते मम सहभागिनः अपि च मम मार्गदर्शकाः आसन् तेभ्यः अहं बहु किमपि ज्ञातवान्। ते मम सहपाठिनः अपि सन्ति, वयं मिलित्वा शिक्षेम, प्रगतिशीलाः च। मया यत् किमपि ज्ञातं तस्य बहुभागः १९६०-१९७० तमे दशके प्रोग्रामिंग् पुस्तकेभ्यः प्राप्तः, यथा डोनाल्ड क्नुथस्य द आर्ट् आफ् कम्प्यूटर् प्रोग्रामिंग् इति पुस्तकं, तस्य युगस्य पुस्तकानि च मम कृते अतीव महत्त्वपूर्णानि सूचनास्रोतानि आसन्
अतः, यदा अहं मम कार्यक्षेत्रस्य प्रायः ३० वर्षाणि यावत् आसम्, तदा अहं सम्मेलनेषु गन्तुं, जनानां साक्षात्कारं कर्तुं च आरब्धवान्, अस्मिन् एव वातावरणे वयं स्थापितवन्तःचपल सभा. अधिकांशः जनाः ये agile सम्मेलनेषु उपस्थिताः आसन्, येषां मया पूर्वं ज्ञातं, पत्राचारद्वारा वा सम्मेलनेषु मिलित्वा वा।
"नव प्रोग्रामरः" ।: वयं प्रायः एकं दृष्टिकोणं द्रष्टुं शक्नुमः अर्थात् "किं चपलविकासः वास्तवतः प्रयोज्यः अस्ति?"
पूर्वं एकः कालः आसीत् यदा बहवः विकासकाः द्रुतवितरणस्य अनुसरणं कुर्वन्ति स्म, सॉफ्टवेयरस्य गुणवत्तां च उपेक्षन्ते स्म ।
बब मामा: एषः खलु चपलस्य दुर्बोधः। चपलः द्रुततरः न भवति, अपितु भवन्तः कुत्र सन्ति इति अवगन्तुं भवति। भवन्तः चपलविकासं कुर्वन्ति येन भवन्तः सम्यक् जानन्ति यत् भवन्तः कियत् प्रगतिम् कुर्वन्ति, कियत् शीघ्रं कुर्वन्ति, भवन्तः स्वसमयसीमाः पूरयन्ति वा इति। अन्येषु शब्देषु, agile इति एकः उत्तमः उपायः यत् भवन्तः कियत् कष्टे सन्ति इति अवगन्तुं शक्नुवन्ति। एतत् सुनिश्चितं करोति यत् यदा समयसीमा स्खलति तदा भवन्तः आश्चर्यचकिताः न भवन्ति, तथा च सर्वेभ्यः प्रगतेः स्पष्टं विचारं ददाति यतोहि वयं यथा चिन्तितवन्तः तथा द्रुताः न भवेयुः
बहवः जनाः चपलः द्रुतविधिः इति भ्रान्त्या मन्यन्ते, केचन जनाः द्रुतविधिः इति अपि विपणनं कुर्वन्ति, परन्तु एषः सर्वदा दुर्बोधः एवचपलता भवन्तं द्रुततरं कर्तुं न भवति, अपितु भवन्तः कियत् द्रुतं भवन्ति इति ज्ञापयितुं मार्गः अस्ति।अतः, एजिल् अप्रचलितं न भवति; यदि भवान् स्वस्य परियोजनायाः वास्तविकं प्रगतिम्, समाप्तिदिनाङ्कं च ज्ञातुम् इच्छति तर्हि agile इति तत् कर्तुं महान् उपायः अस्ति ।
"नव प्रोग्रामरः" ।: भवतः एकं ट्वीट् मम मनसि अतीव गभीरं आहतवान्, अर्थात् “agility was originally founded by...विकासकःदीक्षितः, किन्तुपरियोजना प्रबन्धकचपल-आन्दोलनस्य आरम्भिकपदेषु हस्तक्षेपेण मूलसहकारिसम्बन्धः नष्टः अभवत् । ” कथां वक्तुं शक्नोषि वा ?
बब मामा: ननु चपलं आन्दोलनं मूलतः एकेन समूहेन आरब्धम् आसीत्प्रोग्रामरःदीक्षितः । सप्तदश प्रतिभागिनः स्नोबर्ड् रिसोर्ट् इत्यत्र मिलित्वा एजिल् मेनिफेस्टो इत्यस्य निर्माणं कृतवन्तः । वयं सर्वे प्रोग्रामरः स्मः, अथवा न्यूनातिन्यूनं दृढतांत्रिकपृष्ठभूमिः अस्ति । एतत् आन्दोलनं परियोजनाप्रबन्धनदृष्ट्या न आरब्धम्, परन्तु संस्थापकानाम् एकः केन् श्वाबरः प्रमाणीकरणनामकं पाठ्यक्रमं आरभ्यत इति निश्चयं कृतवान्स्क्रम् मास्टर(scrum master)" course. एषः पाठ्यक्रमः scrum masters भवितुम् इच्छन्तीनां जनानां प्रशिक्षणार्थं निर्मितः अस्ति तथा च तेभ्यः शिक्षितुं यत् दलस्य उपयोगे कथं सहायतां कर्तव्यम् इतिस्क्रम् विधि——एतत् चपलविकासस्य प्रतिरूपम् अस्ति ।
परियोजनाप्रबन्धकाः तीव्ररुचिं दर्शितवन्तः, एतादृशपाठ्यक्रमेषु पञ्जीकरणं च कृतवन्तः । यतः अधिकांशः प्रतिभागिनः प्रोग्रामरस्य अपेक्षया परियोजनाप्रबन्धकाः आसन्, अतः एतस्य परिणामः मूलं प्राप्तम्विकासकैः आरब्धं आन्दोलनं क्रमेण परियोजनाप्रबन्धकानां नेतृत्वे आन्दोलने परिणतम् ।प्रोग्रामर-जनाः असन्तुष्टाः आसन् यतः तेषां मनसि आसीत् यत् ते अस्मात् उपक्रमात् बहिष्कृताः सन्ति ।
एतस्याः समस्यायाः समाधानार्थं अस्माकं समूहः आरब्धवान्सॉफ्टवेयर शिल्पकला आन्दोलन(software craftsmanship) इति कृत्वा परियोजनाप्रबन्धकान् विकासकान् च पुनः संयोजयितुं प्रयत्नरूपेण craftsmanship manifesto इति पत्रिकां प्रकाशितवती । परन्तु एतेन महत्त्वपूर्णं परिणामं न प्राप्तम् ।
अन्ततः, वयं परियोजनाप्रबन्धनस्य परितः केन्द्रितं "आधिकारिकं agile आन्दोलनं" पृथक् कृतवन्तः, तथा च वास्तविकं विकासक-नेतृत्वेन agile आन्दोलनं पृथक् कृतवन्तः । उत्तरार्द्धः अद्यापि संक्षिप्तरूपेण व्यवस्थितरूपेण च कार्यं कर्तुं स्वस्य स्थितिं विकासदिशां च स्पष्टीकर्तुं प्रतिबद्धः अस्ति।
"नव प्रोग्रामरः" ।: अतः, स्क्रम् मास्टर भूमिकायाः महत्त्वं किम् ? केषु प्रकारेषु एषा भूमिका महत्त्वपूर्णा अस्ति ? वयं कथं उत्तमं स्क्रम् मास्टरं संवर्धयामः?
बब मामा: स्क्रम मास्टर मूलतः स्क्रम अथवा एजिल् पद्धतीनां उपयोगे कृतानां प्रतिबद्धतानां विषये अन्यसदस्यानां स्मरणार्थं उत्तरदायी दलस्य सदस्यत्वेन डिजाइनं कृतम् आसीत् उत्तरदायित्वेषु दलस्य प्रगतेः साप्ताहिकपरीक्षा भवति, यथा परीक्षणसङ्केतः योजनानुसारं लिखितः इति पुष्टिः, पूर्वनिर्धारित-अनुमान-विधयः अनुसृताः इति च एषा भूमिका दलस्य अन्तः परिभ्रमति, प्रायः भिन्नसदस्यानां मध्ये । परिपक्वदलेषु कतिपयेषु सप्ताहेषु अभ्यासस्य अनन्तरं पर्यवेक्षणार्थं समर्पितस्य स्क्रम् मास्टरस्य आवश्यकता नास्ति यतोहि दलस्य सदस्याः पूर्वमेव स्थापितां प्रक्रियां सचेतनतया निष्पादयितुं समर्थाः भवन्तिपरन्तु परियोजनाप्रबन्धकस्य सहभागितायाः कारणात् एषा भूमिका क्रमेण परियोजनाप्रबन्धनकार्यरूपेण विकसिता, यत् स्क्रम्मास्टरस्य मूल अभिप्रायात् दूरम् अस्तिफलतः अद्यत्वे स्क्रम् मास्टरस्य भूमिकायां महत्त्वपूर्णः परिवर्तनः अभवत् ।
"नव प्रोग्रामरः" ।: भवान् अधुना एव सॉफ्टवेयर-शिल्पस्य कथां उक्तवान्, यत् मम स्मरणं कृतवान् यत् ट्विट्टर्-मध्ये भवतः हस्ताक्षरे अपि "शिल्पकला" (शिल्पकर्म), एषः अतीव पुरातनः शब्दः, अद्य तस्य अनुवादः कर्तव्यः " " इति ।शिल्पी भावना”。
कथमिदं वचनं ज्ञेयम् ? अद्यतनस्य द्रुतगत्या वर्धमानस्य उद्योगे किं वास्तवमेव गुणवत्तायाः विषये ध्यानं दातुं समयः नास्ति ? यथा यथा एआइ उन्नतिं करोति तथा तथा सॉफ्टवेयर-वितरणं द्रुततरं भवति इति दृश्यते । अहं मन्ये एआइ साहाय्यं करिष्यति, किं तत् सम्यक् ?
बब मामा: एते बृहत् भाषाप्रतिमानाः वास्तवतः रोचकाः साधनानि सन्ति तथा च प्रोग्रामर-जनानाम् कृते ते सहायकाः भविष्यन्ति इति मन्ये। परन्तु ते प्रोग्रामर्-इत्यस्य स्थाने न भविष्यन्ति, अपि च ते सर्वाणि कोडिंग्-कार्यं न करिष्यन्ति । ते कोडलेखने कुशलाः न सन्ति, परन्तु ते केचन रोचकाः सुझावाः आगन्तुं शक्नुवन्ति। अतः अहं मन्येते उपयोगिनो भविष्यन्ति, परन्तु अस्माकं प्रोग्रामरस्य आवश्यकता नास्ति इति न पर्याप्ताः ।
शिल्पस्य विषये तु वृत्तिः, कार्यप्रति वृत्तिः। तस्य व्याख्यानस्य सर्वोत्तमः उपायः अस्ति यत् यदा भवन्तः कार्ये दीर्घदिनात् गृहं गत्वा दर्पणं पश्यन्ति तदा भवन्तः स्वयमेव वक्तुं शक्नुवन्ति यत् "अद्य अहं महत् कार्यं कृतवान् अहं च मम कार्ये गर्वितः अस्मिशिल्पिनः यथा वर्तते।शिल्पिनः स्वकार्यस्य गुणवत्तायाः विषये सन्तुष्टाः भवन्ति ते उच्चगुणवत्तायुक्तं कार्यं उत्पादयितुं परिश्रमिणः अनुशासिताः च भवन्ति ।
अवश्यं वयं अनेकानां प्रौद्योगिकीनां पद्धतीनां च चर्चां कर्तुं शक्नुमः, यथा परीक्षण-सञ्चालित-विकासः (tdd), सरल-निर्माणं, solid-सिद्धान्ताः इत्यादयः अनेकानि प्रौद्योगिकयः अवधारणाः च सन्ति परन्तु मौलिकः विचारः अस्ति यत् प्रत्येकस्य दिवसस्य अन्ते भवान् स्वयमेव वक्तुं शक्नोति यत् "अद्य मया महत् कार्यं कृतम्" इति यतः ते दुष्टदिनं कृतवन्तः इव अनुभवन्ति। ते केवलं समयसीमायाः पूर्तये दुष्टसङ्केतस्य समूहं लिखितवन्तः, तेषां तानि दुष्टभावनानि प्रक्षालितव्यानि। तदेव शिल्पकला - भवता उत्तमं कार्यं कृतम् इति ज्ञात्वा गृहं गमनम्, स्वकार्यस्य विषये गर्वः च।
"नव प्रोग्रामरः" ।: भवतः पुस्तकं "संहिता स्वच्छतायाः मार्गः" (स्वच्छ कोड) शिल्पशास्त्रस्य सिद्धान्तमपि प्रतिबिम्बयति । किं स्वच्छसङ्केतस्य तथाकथितं "ताओ" प्रणालीप्रोग्रामिङ्गस्य अपेक्षया व्यावसायिकतर्कस्य कार्यान्वयनस्य विषये अधिकं केन्द्रीक्रियते? अथवा तयोः भेदः नास्ति?
बब मामा:स्वच्छः कोडः अवधारणानां तकनीकानां च समुच्चयः अस्ति यः भवन्तं शिल्पकारवत् कार्यं कर्तुं साहाय्यं करोति येन भवन्तः स्वकार्यस्य गर्वं अनुभवन् गृहं गन्तुं शक्नुवन्ति।भवान् व्यावसायिकतर्कं कार्यान्वयति वा सिस्टम् प्रोग्रामिंग् करोति वा इति महत्त्वं नास्ति। इदं केवलं तकनीकानां अवधारणानां च समुच्चयः अस्ति यत् भवतः कार्यं सम्यक् कर्तुं साहाय्यं करोति तथा च भवतः सन्तुष्टिः अनुभवति।
"नव प्रोग्रामरः" ।: मया ततः पूर्वं आविष्कृतम्, चीनदेशस्य विकासकसमुदायः वा अमेरिकादेशे वा, बहवः जनाः मन्यन्ते यत् स्वच्छसङ्केतस्य अर्थः बहु...मूर्त. अतः वयं कथं अतिशयेन डिजाइनं कृत्वा अतिशयेन अमूर्तं कोडं लिखितुं परिहरामः?
बब मामा: आम्, एषा अतीव विचित्रघटना, यतः मम पुस्तकमेव अतिशयेन अमूर्ततायाः अनुशंसा न करोति, न च बहु अमूर्ततायाः वकालतम् करोति। पुस्तके यत् सूचितं तत् अस्ति यत्,अमूर्तानाम् उपयोगं अल्पतया समुचिततया च कुर्वन्तु, परन्तु अति-निर्माणं न अनुशंसितम्. प्रतीयते यत् केचन प्रोग्रामर्-जनाः सन्ति ये मन्यन्ते यत् किमपि रूपं...अप्रत्यक्षम्सर्वे दुष्टाः सन्ति, ते मन्यन्ते यत् उत्तमं कोडं लिखितुं एकमात्रः उपायः अस्ति यत् प्रयासः करणीयःसाक्षात्. अहम् अस्य मतस्य सहमतः नास्मि, अहं मन्ये मध्यममात्रायां अप्रत्यक्षता अमूर्तता च सहायकं भवितुम् अर्हति, परन्तु भवद्भिः अतीव सावधानता भवितुमर्हति यतोहि अमूर्तता मूल्येन आगच्छति। अतः, यदा समस्यायाः समाधानं कर्तुं साहाय्यं करोति तदा अमूर्ततायाः उपयोगं कुर्वन्तु, परन्तु तस्य व्ययस्य विषये अवगताः भवन्तु, तस्य उपयोगं च अल्पतया कुर्वन्तु ।
"नव प्रोग्रामरः" ।: अनुमानतः एतत् कारणं यत् भवान् किञ्चित्कालपूर्वं उक्तवान् यत् भवान् "code cleanliness" इत्यस्य नूतनं संस्करणं प्रारभते। परन्तु यतः भवता पुस्तकस्य सम्पूर्णतया पुनर्निर्माणं पुनर्लेखनं च कर्तुं निश्चयः कृतः, तस्मात् किमर्थं न नूतनं नाम दत्तम्?
बब मामा: पुस्तकस्य शीर्षकं प्रकाशकेन निर्धारितम् आसीत् अहं मुख्यतया "स्वच्छसंहिता" इत्यस्य मूलसंकल्पनाम् पुनः वक्तुम् इच्छामि स्म, परन्तु भिन्नभिन्नव्यञ्जनानां प्रयोगं कृत्वा विषयस्य विषये विभिन्नकोणात् विस्तारं कृतवान्।
तस्मिन् समये प्रेक्षकाणां कृते मूलपुस्तकं १६ वा १७ वर्षपूर्वं लिखितम् आसीत् । अधुना च अद्यतनपाठकानां कृते एतत् पुस्तकं लिखामि। प्रयासं करिष्यतिअद्य अधिकसामान्यसमस्यानां समाधानं कुरुत. अहं भिन्नां भाषां प्रयुञ्जामि, भिन्नानि दृष्टिकोणानि च गृह्णामि, येन सा न्यूननिर्देशात्मकं, अधिकं सूचनाप्रदं च भवति, एकमेव विषयं भिन्नभिन्नरूपेण प्रसारयितुं प्रयतमानोऽस्मि । सन्देशः समानः, केवलं भिन्नरूपेण व्यक्तः। अहं मन्ये एतौ पुस्तकौ अन्ते पूरकौ भविष्यतः, पाठकाः ताभ्यां पठितव्याः।
"नव प्रोग्रामरः" ।: भवतः नूतनं पुस्तकं “functional design” इति विषये वदामः ।. सर्वप्रथमं भवता किमर्थम् एतत् पुस्तकं लिखितुम् इच्छितम् ?
बब मामा:विगतदशके कार्यात्मकप्रोग्रामिंगस्य महत्त्वं वर्धितम् अस्ति । यद्यपि जनाः २००५ तमे वर्षे कार्यात्मकप्रोग्रामिंगविषये ध्यानं दातुं आरब्धवन्तः तथापि वस्तुतः एषा प्राचीना अवधारणा अस्ति, १९३६ तमे वर्षात् गणितीयभाषारूपेण अस्तित्वं प्राप्तवती, प्रारम्भिकप्रोग्रामिंगभाषासु एकः कार्यात्मका आसीत्
प्रारम्भिककाले कार्यात्मकभाषाणां निष्पादनार्थं महत्, मन्दं, बहुमात्रायां स्मृतेः आवश्यकता च आसीत् । परन्तु अधुना कम्प्यूटिङ्ग्-शक्तेः स्मृति-संसाधनस्य च उन्नतिः कार्यात्मक-प्रोग्रामिंग्-व्ययः प्रायः नगण्यः अभवत् । एतेन कार्यात्मकप्रोग्रामिङ्गस्य लाभः प्राप्यते, विशेषतः यदा बहु-धागायुक्तप्रोग्रामिङ्गस्य विषयः आगच्छति । कार्यात्मकप्रोग्रामिंग् इत्यनेन जातिस्थितीनां वा समवर्ती-अद्यतनस्य वा चिन्ता विना बहु-थ्रेडेड्-सङ्केतं लिखितुं शक्यते यतोहि कार्यात्मक-प्रोग्रामिंग्-मध्ये असाइनमेण्ट्-कथनानि नास्ति तथा च चरानाम् स्थितिं न परिवर्तयति
यदा अहं clojure शिक्षमाणः आसम्, तदा अहं कोडिंगस्य समस्यानां समाधानस्य च मजेदारः उपायः इति ज्ञातवान् । अहं मन्ये यत् इदं अन्यैः साधनैः सह यथा वस्तु-उन्मुख-प्रोग्रामिंग्, संरचित-प्रोग्रामिंग् च सह संयोजितव्यम् ।परन्तु अन्तिमेषु वर्षेषु केषुचित् लेखेषु कार्यात्मकप्रोग्रामिंग् वस्तु-उन्मुख-प्रोग्रामिङ्गस्य विरोधः अस्ति तथा च वस्तु-उन्मुख-प्रोग्रामिंग् जीर्णः इति दावान् कृतः मया एतत् मतं असहमतं कृत्वा एतत् पुस्तकं लिखितुं निश्चितम्।
"कार्यात्मक डिजाइनः सिद्धान्ताः, प्रतिमानाः, अभ्यासः च" इत्यस्य पुस्तकस्य आवरणम्।
अस्मिन् पुस्तके कार्यात्मकप्रोग्रामिंग्, वस्तु-उन्मुखप्रोग्रामिंग्, संरचितप्रोग्रामिंग् च कथं मिलित्वा उत्तमप्रणालीनां निर्माणार्थं कार्यं कुर्वन्ति इति चर्चा कृता अस्ति । इदं मूलभूतसंकल्पनैः आरभ्य क्रमेण डिजाइनसिद्धान्तान् प्रतिमानान् च निर्माति, अन्ते च तान् सम्पूर्णतया लघुअनुप्रयोगे संयोजयति । आशासे पाठकाः अवगच्छन्तिकार्यात्मकं प्रोग्रामिंग् एकान्ते न विद्यते, यत् विगत ५० वर्षेषु वयं यत् किमपि ज्ञातवन्तः तत् सर्वं सह कार्यं करोति।
"नव प्रोग्रामरः" ।: मया csdn विकासकसमुदायात् नूतनपुस्तकस्य विषये बहु प्रश्नाः अपि संगृहीताः, अधिकांशजनानां कृते भवान् किमर्थं चयनं कृतवान् इति विषये सर्वाधिकं जिज्ञासुः अस्तिक्लोजुरेपुस्तके कोडं लिखितुं scala इत्यस्य स्थाने? किं भवन्तः अधिककार्यात्मकभाषायाः उपयोगं कर्तुम् इच्छन्ति या वर्गान् उत्तराधिकारं च न समर्थयति, यत् भवतः solid सिद्धान्ताः कार्यात्मकनिर्माणे अपि प्रवर्तन्ते इति सिद्धयितुं?
बब मामा: कारणस्य भागःनूनम्। यद्यपि clojure "शुद्ध" कार्यात्मकभाषा नास्ति तथापि कार्यात्मककार्यक्रमलेखनार्थं अतीव अनुकूला अस्ति । तथापि अन्यत्, सम्भवतः अधिकं महत्त्वपूर्णं कारणं अस्ति यत् मया क्लोजुर् इत्यस्य चयनं कृतम्, तत् चक्लोजुर् अतीव सरलम् अस्ति。
अस्मिन् पुस्तके अहं यत् बोधयितुम् इच्छामि तत् कार्यात्मकप्रोग्रामिंगस्य विचारः, न तु जटिलं कार्यात्मकं प्रोग्रामिंगभाषां पाठयितुम्। अहं विशेषतया जटिलव्याकरणयुक्तां भाषां पाठयितुम् न इच्छामि। क्लोजुरस्य वाक्यविन्यासः अतीव सरलः अस्ति, तस्य प्रायः जटिलवाक्यविन्यासः नास्ति । clojure इति शिक्षणं सुलभम् अस्ति, clojure कोड् पठित्वा भवान् तस्मिन् निपुणतां प्राप्तुं शक्नोति ।
अतः यदा अहं पुस्तके कोडं दर्शयामि तदा अहं clojure कथं कार्यं करोति इति विषये विस्तरेण न गच्छामि तस्य स्थाने अहं काश्चन मूलभूतसंकल्पनाः व्याख्यास्यामि तथा च पाठकं शेषं अधिकांशं चिन्तयितुं ददामि। इच्छुकपाठकानां कृते अन्ये केचन दस्तावेजाः अपि सन्दर्भयितुं अनुशंसयामि। परन्तु समग्रतया क्लोजुर् अतीव सुलभतया अवगन्तुं शक्यते, अतःये पाठकाः clojure अथवा functional programming इत्यस्य विषये बहु न जानन्ति तेषां कृते ते भाषायाः एव कष्टं न प्राप्य functional programming इत्यस्य अवधारणायां अधिकं ध्यानं दातुं शक्नुवन्ति।
"नव प्रोग्रामरः" ।: मम स्मरणं यत् भवान् एकदा ट्विट्टरे उक्तवान् यत् यदि कोऽपि भवतः अग्रिमे पुस्तके उल्लेखं कर्तुम् इच्छति तर्हि सः एकं कोडखण्डं प्रस्तूय कर्तुं शक्नोति यत् ते मन्यन्ते यत् सर्वाधिकं सुव्यवस्थितम् अस्ति। किं बहुधा एतत् भवति ? सामान्यतया कति जनाः कोडं प्रस्तौति ? चीनदेशस्य विकासकाः अपि प्रस्तुतुं शक्नुवन्ति वा ?
बब मामा:आम्, अहं तत् ट्वीट् कृतवान् अपि च बहु प्रतिक्रियाः प्राप्ताः। केचन जनाः github लिङ्क् मार्गेण अथवा प्रत्यक्षतया कोडस्निपेट् प्रेषयन्ति । अहं सम्भवतः आगामिपुस्तके अस्य कोडस्य किञ्चित् उपयोगं करिष्यामि ।यदि चीनीयविकासकाः अतीव सुव्यवस्थितं मन्यन्ते इति कोडं प्रस्तूयन्ते तर्हि अहं तस्य विषये विचारं कर्तुं प्रसन्नः भविष्यामि।परन्तु सर्वेषां कोडस्य उपयोगं कर्तुं प्रतिज्ञातुं न शक्नोमि, यतः पुस्तकस्य दीर्घता सीमितं भवति, सर्वेषां कोडं तस्मिन् स्थापयितुं न शक्नोमि।
"नव प्रोग्रामरः" ।: डिजिटलपाठ्यपुस्तकानां, ऑनलाइन-शिक्षण-मञ्चानां च कृते भवतः किमपि नवीनविचाराः सन्ति वा ? अद्यकाले जनाः कागदपुस्तकानि पठितुं न्यूनाः इव दृश्यन्ते। एते नूतनाः प्रारूपाः प्रोग्रामिंग्-शिक्षणस्य, शिक्षणस्य च मार्गे कथं क्रान्तिं करिष्यन्ति? अग्रिम-पीढीं प्रति प्रोग्रामिंग्-शिक्षणं कथं कर्तुं योजनां करोति ?
बब मामा:नूनम्,वयम् अधुना अङ्कीययुगे स्मः, यत्र ध्यानस्य अवधिः २० निमेषाभ्यः न्यूनं यावत् संकुचितः अस्ति । परन्तु यदि भवान् यथार्थतया किमपि ज्ञातुम् इच्छति तर्हि मन्दं कृत्वा अध्ययनं प्रति ध्यानं दातव्यम्। मम अद्यतनपुस्तकानि कतिपयानि सह आगतानि सन्तिविडिओसामग्री, पाठकाः पुस्तके url इत्यस्य माध्यमेन प्रोग्रामिंग् सत्रस्य लाइव् प्रदर्शनं द्रष्टुं शक्नुवन्ति । पाठस्य, भिडियोस्य च एषः संयोजनः अतीव प्रभावी अस्ति ।
तदतिरिक्तं अतीव रोचकः मार्गः अस्ति अस्तिऑनलाइन व्याख्यान. यथा, मुद्रितं सामग्रीं पठित्वा पुस्तकं भवन्तं प्रासंगिकं व्याख्यानं द्रष्टुं विशिष्टं url गन्तुं प्रेरयिष्यति । एते पद्धतयः अतीव उपयोगिनो इति मन्ये।
कागदपुस्तकानां दिवसाः न समाप्ताः इति मन्ये । ते ई-पुस्तकेषु, पीडीएफ-संस्करणेषु, अथवा ऑनलाइन-पाठकसंस्करणेषु परिवर्तिताः भवितुम् अर्हन्ति, परन्तु पाठ्यपुस्तकानि न अन्तर्धानं भविष्यन्ति । पाठः अतीव उच्चसूचनाघनत्वं युक्तं माध्यमम् अस्ति, यत् भिडियो-व्याख्यान-अपेक्षया अधिकं सघनम् अस्ति, अपि च शिक्षण-प्रगतेः नियन्त्रणं अधिकं सुलभं भवति अतः अहं मन्ये विविधशिक्षणस्वरूपानाम् संयोजनं अधिकं प्रभावी भवितुम् अर्हति, पाठस्य, भिडियो च द्वयोः उपयोगेन।
"नव प्रोग्रामरः" ।: भवतः पुस्तकं आरम्भकात् अनुभविनां व्यावसायिकानां यावत् सर्वेषां स्तरस्य विशेषज्ञतायाः पाठकानां कृते उद्दिष्टम् अस्ति। एतेन अवश्यमेव सामग्रीयाः गभीरतायाः विस्तारस्य च सन्तुलनस्य विषये भिन्नानि आव्हानानि उपस्थाप्यन्ते ।
बब मामा: मम पुस्तकं वस्तुतः नूतनानां व्यावसायिकानां च प्रोग्रामर-जनानाम् विविधसमूहस्य उद्देश्यं वर्तते। एकस्य पचनं अतिकठिनं न कृत्वा अन्यस्य वा अतिसरलीकरणं न कृत्वा उभयप्रकारस्य पाठकानां मूल्यं प्रदातुं मुख्यम् अस्ति ।
अध्यापनं लेखनं च कुर्वन् अहं कल्पयामि यत् मम श्रोतारः पाठकाः वा मम इव स्मार्टाः सन्ति, मम सामग्रीं अवगन्तुं शक्नुवन्ति च। तेषां किञ्चित् परिश्रमः भवितुं शक्नोति, परन्तु ते अवगमिष्यन्ति इति मम विश्वासः अस्ति। पाठकस्य सामर्थ्यस्य मम निर्णयस्य आधारेण सामग्रीं न समायोजयामि। अहं केवलं प्रत्यक्षतया मम सन्देशं प्रसारयामि, सहपाठिना सह वदन् इव।
भवतु नाम मम अधिकः अनुभवः अस्ति, भवतु मया अधिकं माध्यमेन गत्वा अधिकानि त्रुटयः कृताः। अतः अहं मम अनुभवान् कथाश्च साझां कर्तुं शक्नोमि। परन्तु अहं तस्य मन्दीकरणं अतिसरलीकरणं वा न करिष्यामि ।
"नव प्रोग्रामरः" ।: वर्षेषु भवता प्रोग्रामिंग्-शिक्षणस्य मार्गः कथं परिवर्तितः ? विकसितप्रौद्योगिक्याः परिदृश्यस्य तालमेलं स्थापयितुं भवता के नूतनाः उपायाः पाठाः च स्वीकृताः?
बब मामा: प्रारम्भिकेषु दिनेषु अहं प्रायः प्रयुञ्जामि स्मपारदर्शिताः, तथा च पाठ्यक्रमस्य सामग्रीं प्रोजेक्टरद्वारा प्रदर्शयति, प्रायः सामग्रीपृष्ठे पृष्ठे प्रदर्शयितुं चलच्चित्रस्य विशालं ढेरं सज्जीकरोति । कालान्तरे अधुना अहं उपयुञ्जामिipadप्रस्तुतिः कृत्वा, प्रोजेक्टर् इत्यनेन सह हुक् कृत्वा एप्पल् पेन्सिल इत्यनेन ipad-पर्दे आकर्षितुं बहु मजा भवति, सर्वं च वास्तविकसमये बृहत्-पर्दे प्रदर्शितं भविष्यति।
कोविड-१९ महामारी-काले वयं दूरस्थ-प्रशिक्षण-उपकरणैः जूम-इत्यनेन पाठयितुं आरब्धाः । अधुना मम अधिकांशं शिक्षणं दूरस्थरूपेण क्रियते। अहम् अद्यापि स्लाइड् प्रेजेण्ट्स्, स्क्रीन ड्राइंग् च उपयुञ्जामि, ताः पद्धतयः अद्यापि कार्यं कुर्वन्ति । केवलं भेदः अस्ति यत् दूरस्थशिक्षणे अहं प्रत्यक्षतया प्रेक्षकाणां प्रतिक्रियां न पश्यामि, यत् अनुभवः न्यूनः अस्तिअर्धं मजा。
"नव प्रोग्रामरः" ।: महामारीयाः अन्यः परिवर्तनः अस्ति यत् अनेके प्रोग्रामर्-जनाः एआइ-इत्यनेन प्रतिस्थापयितुं चिन्तिताः सन्ति । मया पूर्वं एकं वचनं दृष्टं यत् कार्यात्मकं डिजाइनं शिक्षणं तेषां कार्यं स्थापयितुं साहाय्यं कर्तुं शक्नोति, किं भवन्तः तस्य विषये विस्तरेण वक्तुं शक्नुवन्ति?
बब मामा: कार्यात्मकं डिजाइनं कार्यात्मकं डिजाइनं पुस्तकेषु च अवधारणाः वस्तुतः भवन्तं अधिकं परिपक्वं प्रोग्रामरं भवितुं सहायतार्थं डिजाइनं कृतम् अस्ति।स्वस्य “उपकरणपेटिकायां” नूतनानि साधनानि योजयन्तु ।. कार्यात्मकं प्रोग्रामिंग् उत्तमं साधनं, वस्तु-उन्मुखं प्रोग्रामिंग् उत्तमं साधनं, संरचित-प्रोग्रामिंग् अपि उत्तमं साधनम् अस्ति एते भवतः साधनपेटिकायां भवेयुः । परीक्षण-सञ्चालितः विकासः महत् साधनम् अस्ति, तस्य हस्ते भवितुं सर्वोत्तमम् । solid सिद्धान्ताः अपि उत्तमाः सन्ति, भवतः साधनपेटिकायां अवश्यमेव भवेयुः । अतः अस्य पुस्तकस्य उद्देश्यं विकासकस्य साधनपेटिकायाः विस्तारः अस्ति, यत् निश्चितरूपेण भवतः कार्यं स्थापयितुं साहाय्यं करिष्यति ।परन्तु अहं न मन्ये यत् भवता ए.आइ. मम भावना अस्ति यत् वयं मानवस्तरीयबुद्धिक्षमतायुक्तानि यन्त्राणि न पश्यामः ।
"नव प्रोग्रामरः" ।: कार्यात्मक-निर्माणस्य, वस्तु-उन्मुख-प्रोग्रामिङ्गस्य च विषये मम विश्वासः अस्ति यत् बहवः जनाः भवन्तं अवश्यमेव पृष्टवन्तः यत् कः श्रेष्ठः इति। परन्तु अहं यत् पृच्छितुम् इच्छामि तत् अस्ति, किं भवन्तः मन्यन्तेवर्तमान एआइ कस्मिन् श्रेष्ठः अस्ति ?यथा, किं ai कोडजननार्थं कार्यात्मकं प्रोग्रामिंग् अधिकं उपयुक्तम् अस्ति ? अस्य स्थितिः नास्ति, उपयोगे एकं फंक्शन् जनयितुं शक्यते, प्रत्येकं फंक्शन् स्वयमेव एआइ द्वारा उत्पन्नं सत्यापितं च कर्तुं शक्यते । अतः यदि ai कार्यात्मकनिर्माणे श्रेष्ठः अस्ति तर्हि केवलं कार्यात्मकप्रोग्रामिंगं जानन्तः प्रोग्रामर्-जनाः अधिकसंकटस्य सामनां करिष्यन्ति वा?
बब मामा:तस्य महत्त्वं नास्ति, यतः एआइ किमपि कर्तुं न शक्नोति, तथा च वस्तु-उन्मुखस्य अथवा संरचित-सङ्केतस्य अपेक्षया कार्यात्मक-सङ्केतं जनयितुं इदं श्रेष्ठं नास्ति ।भवन्तः एआइ इत्यस्य विषये क...अर्धमस्तिष्कं युक्ताः कनिष्ठप्रोग्रामरः तथा च कदापि वास्तवतः न वर्धन्ते. एतत् भवद्भ्यः केचन सुझावः दास्यति, येषु अधिकांशः अतीव उत्तमः नास्ति, तेषु कतिचन कुशलाः भवितुम् अर्हन्ति, परन्तु तेषु परिवर्तनस्य आवश्यकता वर्तते, यतः ai द्वारा लिखितः कोडः सर्वदा अव्यवस्थितः भवति
एआइ यत् अस्ति तत् एव, तथा च इदं सहायकं भवितुम् अर्हति, परन्तु एआइ-अनुकूलतायै भवता स्वस्य करियर-दिशां समायोजितुं न अर्हति । एआइ एकं साधनम् अस्ति, तस्य उपयोगः कथं कर्तव्यः इति ज्ञातुं शक्नुवन्ति, परन्तु केवलं कस्यचित् एआइ-उपकरणस्य कृते भवन्तः स्वस्य करियर-योजनानि परिवर्तयितुं न अर्हन्ति ।
"नव प्रोग्रामरः" ।: यदि कश्चन नूतनः व्यक्तिः भवतः समीपम् आगत्य पृच्छति यत् "मम प्रथमा प्रोग्रामिंगभाषायाः रूपेण मया का भाषा चिन्वितव्या?"
बब मामा: अस्तु, भवन्तः जावा इति चिन्वितुं शक्नुवन्ति। तत् उक्त्वा c# अपि अतीव उत्तमः भाषा अस्ति । क्लोजुर् अपि उत्तमम् अस्ति। ग भाषा अपि उपलभ्यते। c++ किञ्चित् कठिनं जटिलं च अस्ति, परन्तु विकल्पः अपि अस्ति । गो भाषा अपि अतीव उत्तमम् अस्ति, सा उत्तमभाषा अस्ति...
वस्तुतः भवन्तः कस्य चयनं कुर्वन्ति तत् तावत् महत्त्वपूर्णं नास्ति। प्रोग्रामिंग् प्रोग्रामिंग् अस्ति, भवन्तः कस्याः भाषायाः आरम्भं कुर्वन्ति इति महत्त्वं नास्ति। सर्वाधिक महत्त्वपूर्णं यत् भवद्भिः अग्रिमभाषा शिक्षितव्या। एकस्मिन् भाषायां मा स्थगयतु।एकं शिक्षन्तु, कतिपयान् मासान् यावत् किञ्चित् प्रवीणाः न भवन्ति तावत् यावत् व्यतीतयन्तु, ततः अन्यं शिक्षन्तु इत्यादि, प्रतिवर्षं नूतनां भाषां शिक्षन्तु। भाषां शिक्षितुं मजेयम् इति चिन्तयतु, अद्यापि न शिक्षितां भाषां अन्वेष्टुम् । भवन्तः कार्ये कदापि तस्य उपयोगं न कुर्वन्ति, पुनः कदापि न उपयुञ्जते, परन्तु प्रतिवर्षं वा द्वौ वा नूतनां भाषां शिक्षितुं आदतं कुर्वन्तु ।कुतः आरभ्यते इति महत्त्वं नास्ति, महत्त्वपूर्णं यत् भवन्तः शिक्षन्ते एव ।
"नव प्रोग्रामरः" ।: किं भवन्तः कनिष्ठप्रोग्रामरान् मुक्तस्रोतपरियोजनासु भागं ग्रहीतुं अनुशंसन्ति? भवान् स्वयमेव केषु प्रभावशालिनः मुक्तस्रोतप्रकल्पेषु संलग्नः अस्ति, कथां च साझां कर्तुं शक्नोति वा?
बब मामा: मम पुत्रः च अहं च २० वर्षपूर्वं एकं परियोजनां आरब्धवन्तौ अद्यापि च प्रचलति तथा च एषा महान् परियोजना। यद्यपि अहम् अधुना प्रवृत्तः नास्मि तथापि अन्ये बहवः निरन्तरं प्रवर्तन्ते ।
यदि भवान् कनिष्ठः प्रोग्रामरः अथवा युवा प्रोग्रामरः अस्ति तथा च केचन नूतनाः विचाराः ज्ञातुम् इच्छति तर्हि अहं मुक्तस्रोतप्रकल्पे सम्मिलितुं अनुशंसयामि। केचन पुल-अनुरोधाः प्रस्तूय प्रयतध्वं, यत् शक्नुवन्ति तत् योगदानं कुर्वन्तु । एषः प्रथमं अन्येषां साहाय्यस्य महान् उपायः द्वितीयं च महान् शिक्षणस्य अवसरः। तथापि भवान् सम्यक् वदति, अहं जनान् मुक्तस्रोतप्रकल्पेषु सम्मिलितुं बहु अनुशंसयामि, भवतः करियरस्य विस्तारस्य उत्तमः उपायः अस्ति।
"नव प्रोग्रामरः" ।: “३५ संकटस्य” विषये भवन्तः जानन्ति वा ? अनेकाः प्रोग्रामरः एकवारं निश्चितवयोः प्राप्ते मार्गद्वयस्य सामनां कुर्वन्ति : प्रबन्धनं प्रति स्विच् कुर्वन्ति वा निवृत्ताः भवन्ति वा ।
बब मामा: टेक् उद्योगस्य युवानां प्राधान्यं दृष्ट्वा एषा वास्तविकसमस्या अस्ति। वस्तुतः एकः विकासकः मां अपि तथैव प्रश्नं पृष्टवान्, अहं च तत् स्पष्टतया स्मरामि । तस्य सटीकं वचनं आसीत् यत् "बब-मामा, भवान् अद्यापि ७० वर्षीयः किमर्थं प्रोग्रामिंगं करोति?"
प्रोग्रामिंग् केवलं युवानां कृते एव इति एषः विचारः वस्तुतः भ्रमः एव, परन्तु खलु अतीव प्रभावशाली भ्रमः अस्ति । एषः भ्रमः अस्ति यतोहि विगत ७० वर्षेषु प्रोग्रामरस्य माङ्गलिका रॉकेट इव उच्छ्रितवती अस्ति ।
एवं चिन्तयन्तु यत् प्रत्येकं पञ्चवर्षेषु विश्वे प्रोग्रामर-सङ्ख्या द्विगुणा भवति । अस्य अर्थः अस्ति यत् अस्माभिः प्रत्येकं पञ्चवर्षेषु प्रोग्रामर्-सङ्ख्यां दुगुणं कर्तव्यं भवति, यस्य अर्थः अस्ति यत् विश्वस्य प्रोग्रामर्-जनानाम् आर्धेभ्यः पञ्चवर्षेभ्यः न्यूनः अनुभवः अस्ति, प्रोग्रामर-जनानाम् चतुर्थांशत्रयस्य दशवर्षेभ्यः न्यूनः अनुभवः च अस्ति अन्येषु शब्देषु विश्वस्य चतुर्थांशत्रयस्य प्रोग्रामरस्य वयः ३५ वर्षाणाम् अधः अस्ति । अतः यदा भवन्तः परितः पश्यन्ति तदा भवन्तः केवलं युवानः एव पश्यन्ति। भवान् पृच्छतु, ते सर्वे पुराणाः प्रोग्रामर्-जनाः कुत्र सन्ति ?वस्तुतः वयं सर्वे अद्यापि तत्र स्मः, केवलं संख्यायां न तावत् स्पष्टाः।
एतेन प्रोग्रामिंग् केवलं युवानां कृते एव उपयुक्तम् इति भ्रमः उत्पद्यते, परन्तु वस्तुतः एतत् सर्वथा गलतम् अस्ति । यथार्थतः शक्तिशाली प्रोग्रामरः भवितुम् अस्य सञ्चयः बहुकालं भवति । केचन वरिष्ठाः प्रोग्रामरः स्युः ये दशवर्षीयः अनुभवः भवितुं महत् इति मन्यन्ते, परन्तु अन्येषु पञ्चवर्षेषु सः उत्तमः प्रोग्रामरः भवितुम् अर्हति ।
अतः, यदि भवन्तः कोडलेखनं यथार्थतया रोचन्ते, एतत् भवतः प्रियं मन्यन्ते, तथा च एतत् कुर्वन् एव स्थापयितुम् इच्छन्ति, तर्हि त्यजन्तु । भवता प्रबन्धकः भवितुम् आवश्यकं नास्ति यदि प्रबन्धने कुशलाः जनाः सन्ति तर्हि ते तत् कुर्वन्तु । यदि भवान् कोडं लिखितुम् इच्छति तर्हि तस्मिन् एव तिष्ठतु। भवद्भिः करियरं परिवर्तयितुं वा शीघ्रं निवृत्तं कर्तुं वा न प्रयोजनम्। ३६ वर्षाणि यावत् भवतः मस्तिष्कं सम्यक् कार्यं न करिष्यति इति तस्य अर्थः न भवति। ननु अधुना एतावन्तः नूतनाः जनाः अस्मिन् उद्योगे प्रवहन्ति, न केवलं युवानः, अपितु सर्वेषां युगस्य जनाः प्रोग्रामिंग् शिक्षन्ते |तस्य अर्थः न भवति यत् भवतः अवसरः नास्ति।
"नव प्रोग्रामरः" ।: एतेन मम स्मरणं भवति यत् इदानीं बहवः प्रोग्रामर्-जनाः ai-सम्मुखीभवने आत्मसंशयं अनुभवन्ति । परन्तु वस्तुतः आत्मसंशयः किमपि नवीनं नास्ति, पूर्वयुगेषु अपि बहवः पुरातनप्रोग्रामर-जनाः एतादृशी एव समस्यां प्राप्नुयुः । किं भवतः पूर्वं कदापि आत्मसंशयस्य भावाः अभवन् ?
बब मामा: यदा अहं प्रथमवारं प्रोग्रामिंग् आरब्धवान् तदा अहं बालकः एव आसम् तदा अहं सर्वदा अनुभूतवान् यत् अहं स्वस्य नामकरणं कर्तुं शक्नोमि। अस्मिन् समये मम कदापि आत्मसंशयः नासीत् ।
अपि तु अहं त्रुटिं कर्तुं, निष्कासितः, अन्ये विघ्नाः च अनुभवितुं आरब्धवान् । अस्मिन् समये आत्मसंशयः वस्तुतः साधु वस्तु अस्ति।मध्यमः आत्मसंशयः वस्तुतः अत्यन्तं स्वस्थः भवति । यतः किञ्चित्कालानन्तरं भवन्तः तस्य सामना कर्तुं शिक्षन्ति।भवन्तः चिन्तयन्ति यत् "ठीकम्, अहं जानामि यत् एताः त्रुटयः कथं परिहरितव्याः। अहं जानामि यत् अहं सिद्धः नास्मि, परन्तु यावत् अहं ध्यानं ददामि, सावधानः भवेयम्, अन्यैः सह वार्तालापं करोमि तावत् अहं शनैः शनैः एताः समस्याः निवारयितुं शक्नोमि will तान् आत्मसंशयान् अतिक्रमयिष्यति। वस्तुतः आत्मसंशयस्य अवधिं गमनम् अवश्यमेव दुष्टं न भवति । एतेन भवन्तः वर्धन्ते, बलवन्तः च भवन्ति ।
"नव प्रोग्रामरः" ।:अन्ततः वर्तमानविकासकानाम् किञ्चित् सल्लाहं दातुं शक्नुवन्ति वा? विशेषतः ये प्रोग्रामर्-जनाः भ्रमिताः अनुभवन्ति, अथवा ये एआइ-प्रोग्रामिंग्-विषये हानिम् अनुभवन्ति ।
बब मामा:यदि भवान् ai प्रोग्रामिंग् इत्यस्य सम्मुखे किं कर्तव्यमिति न जानाति तर्हि ai निष्क्रियं कुर्वन्तु । केवलं तस्य अवहेलनां कुर्वन्तु।अन्यं मासं स्वयमेव कोडं लिखित्वा व्यतीतयन्तु, ततः ai चालू कुर्वन्तु । कदाचित् तदा भवतः कोडं दृष्ट्वा भवतः किं कर्तुम् इच्छति इति पश्यति, ततः उत्तमाः सुझावः दातुं शक्नोति ।
यथा, कल्पयतु यत् भवान् वाहनचालनं शिक्षमाणः नवीनः अस्ति। भवता कदापि सुगतिचक्रं न स्पृष्टं, आरम्भमात्रेण स्वचालितवाहनस्य उपयोगं कर्तुम् इच्छति । यथा एव भवन्तः ऑटोपायलट् नुदन्ति तथा एव भवन्तः मृत्युपर्यन्तं भीताः भवेयुः, "मया प्रथमं एतत् वस्तु निष्क्रियं कर्तव्यम्। यावत् भवन्तः वाहनचालनं न शिक्षन्ति तावत् मम किञ्चित् अनुभवः भवतु।" चिन्तयतु, "अहो, इदानीं अहं अवगच्छामि यत् एतत् वस्तु कथं कार्यं करोति तदा भवन्तः तस्य उत्तमं उपयोगं कर्तुं शक्नुवन्ति।"एआइ इत्यस्य कृते अपि तथैव भवति, परन्तु यथा यथा भवन्तः गच्छन्ति तथा तथा भवन्तः अधिकाधिकं प्रवीणाः भविष्यन्ति।