एक कला के रूप में ओलंपियाड प्रोग्रामिंग

"आजकल, यह सार्वभौमिक रूप से मान्यता प्राप्त माना जाता है,
सब कुछ एक तरह से या कला से संबंधित एक और,
कुछ भी सार्वभौमिक रूप से मान्यता प्राप्त नहीं माना जा सकता है ”
थियोडोर एडोर्नो

यह सब एक व्यक्ति के साथ शुरू हुआ जो प्रतियोगिता की समस्या का हल निकालने की कोशिश कर रहा था जो इस समय हो रहा था। कार्य बहुत सरल था, यह सभी के लिए स्पष्ट था कि यह व्यक्ति एक अच्छी जगह नहीं लेगा, टी-शर्ट प्राप्त नहीं करेगा, आदि। फिर भी, 5000+ समुदाय के सदस्यों में से किसी ने भी एक संकेत नहीं दिया (अच्छी तरह से, या कम से कम 30+ लोगों ने इसे देखा और उत्तर जानते थे)। यह परिणाम मुझे लंबे समय के लिए तर्कसंगत लगता है और मैंने इसे संक्षेप में समझाने की कोशिश की। अब मैं थोड़ा और विस्तार से कोशिश करूंगा। मैं उन लोगों से पहले ही माफी मांगता हूं जो इस अवधारणा में निवेश नहीं कर रहे हैं कि मैं हूं। मैं सिर्फ अपनी राय बताना चाहता था।

सबसे पहले, विकिपीडिया से थोड़ा सा सिद्धांत: प्रोग्रामिंग , प्रोग्रामिंग ओलंपियाड , कला । कृपया ध्यान दें कि अंतिम लेख में कहा गया है "कला की अवधारणा अत्यंत व्यापक है - यह एक विशेष क्षेत्र में एक अत्यंत विकसित कौशल के रूप में खुद को प्रकट कर सकती है।"

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

कोई यह तर्क नहीं देगा कि कविता कला है। लेकिन कविता क्या है? कविता अपने विचारों को लय और तुकबंदी, शैली और शब्दावली के स्पष्ट ढाँचे में ढालने की क्षमता है। कई प्रतिबंध हैं जो आपको केवल यह बताने से रोकते हैं कि आप क्या चाहते हैं। वे क्यों हैं? यह कविता में सुंदरता और अनुग्रह जोड़ता है, यह दर्शाता है कि लेखक ने इस तरह से अपने विचारों को व्यक्त करने का प्रयास किया, तदनुसार, इन विचारों को लेखक ने ध्यान से माना, पूर्ण किया और एक कविता के रूप में एक भौतिक रूप प्राप्त किया। इसके अलावा, विचारों की भाषा दुनिया की लगभग सभी भाषाओं से बहुत अलग है, चाहे वह शब्दों की भाषा हो, छवियों की भाषा हो, ध्वनियों की भाषा हो या वास्तुकला की भाषा हो।

इसी तरह, स्थिति प्रोग्रामिंग के साथ है। यदि लेखक एक कविता लिखना चाहता है, तो उसे एक विचार प्रस्तुत करना होगा, और फिर इस विचार को व्यक्त करते हुए एक कविता तैयार करनी होगी। किसी समस्या को हल करने के लिए, आपको पहले एक समाधान के साथ आना होगा, और फिर बाद में इसे एक एल्गोरिथ्म में, फिर एक प्रोग्रामिंग भाषा में एक कार्यक्रम में बदलना होगा। लेकिन प्रोग्रामिंग भाषा विचारों की भाषा के साथ अच्छी तरह से फिट नहीं होती है, इसलिए, हमें इस भाषा के माध्यम से अपने विचारों को व्यक्त करने का एक तरीका खोजना होगा। और हम कला के अधिक से अधिक सही कार्यों का निर्माण करके इस कौशल वर्ष को बेहतर बना रहे हैं।

यहां आपको रचनात्मकता के एक शहर के घर में एक बोर्ड दिखाई देता है। बच्चों के चित्र की प्रदर्शनी ऊपर के ब्लैकबोर्ड पर भी अक्षरों में लिखी गई है, और शिलालेख के तहत बच्चों के जीवन के विभिन्न प्रकरणों को समान रूप से चित्रित नहीं किया गया है। जवाब देने की कोशिश करें - क्या यह कला है? मेरा जवाब है हां, बिल्कुल। इन बच्चों ने अपने विचारों को दिखाने के लिए, दुनिया के साथ संवाद करने का अपना तरीका ढूंढ लिया। उन्हें बहुत आदिम और मोटे तौर पर चित्रित किया जाता है (हालांकि यह अलग-अलग तरीकों से होता है, कुछ बच्चे मास्टरपीस में सक्षम होते हैं जो वयस्क कलाकारों ने कभी सपना नहीं देखा है), लेकिन यह कला है। शायद किसी दिन, इन बच्चों में से एक पौराणिक चित्रों को चित्रित करेगा, और दुनिया भर के लोग उन्हें देखने आएंगे। यह सब छोटा शुरू होता है।

मैं Topcoder या Codeforces जैसी साइटों को कुछ प्रकार की प्रोग्रामिंग आर्ट क्लब (जैसे कि अतीत के लोग ) होना चाहूंगा , जिसमें लोग संवाद करते हैं, रहस्य साझा करते हैं, एक साथ बनाते हैं, नए लोगों की मदद करते हैं, लेकिन कभी भी अन्य लोगों के विचारों को अपना नहीं मानते हैं।

Source: https://habr.com/ru/post/In120763/


All Articles