যদি স্বয়ংক্রিয়ভাবে বন্ধ হয়ে যাওয়া কোনো Issue/PR থেকে আপনাকে এখানে পাঠানো হয়ে থাকে, তাহলে দয়া করে আতঙ্কিত হবেন না বা নিজেকে প্রত্যাখ্যাত মনে করবেন না। বেশিরভাগ ক্ষেত্রেই আপনার করা যেকোনো কাজ একসময় Exercism-এ মার্জ হবে, নয়তো আপনার সমস্যার সমাধান হয়ে যাবে। আমরা কন্ট্রিবিউশনকে স্বাগত জানাই ও উৎসাহ দিই, তবে GitHub-এ কোডে ঝাঁপ দেওয়ার আগে আমাদের ফোরামে বিষয়গুলো নিয়ে আলোচনা করতে পছন্দ করি। একটি ফোরাম থ্রেড খুললে বিষয়টি এগিয়ে যাবে।
গত এক বছর ধরে আমরা নন-মেইনটেইনারদের কন্ট্রিবিউশন সীমিত করার পরীক্ষা-নিরীক্ষা চালিয়ে আসছি, যাতে আমাদের কোর কন্ট্রিবিউটরদের সময় মুক্ত হয় এবং তাঁরা ট্র্যাকগুলোতে আরও গুরুত্বপূর্ণ উন্নতি করতে পারেন। এটি বেশ ভালোই কাজ করেছে। ২০২২-এর তুলনায় ২০২৩ সালে আমরা নতুন অনুশীলনী যোগ হওয়ার পরিমাণ দ্বিগুণ এবং তৈরি হওয়া সিলেবাসের পরিমাণ তিন গুণ দেখেছি। পদ্ধতির এই পরিবর্তন আমাদের কোর কন্ট্রিবিউটরদের জন্য অনেক বড় কন্ট্রিবিউশন, কম হতাশা এবং কম বিভ্রান্তির পথ খুলে দিয়েছে।
তবে আমি এটাও জানি যে, এটি এমন নতুন কন্ট্রিবিউটরদের জন্য হতাশা তৈরি করেছে যাঁরা সাহায্য করতে প্রতিশ্রুতিবদ্ধ, কিন্তু আমাদের কন্ট্রিবিউশন প্রক্রিয়ার কারণে নিজেদের আটকে পড়া মনে করেন। তাই আজ আমি কিছু নতুন (বা স্পষ্ট করা) নির্দেশিকা তুলে ধরতে চাই, যা অনুযায়ী আমরা আগামী কয়েক মাসে কন্ট্রিবিউশন নিয়ে এগিয়ে যাব।
যে মৌলিক নিয়মটি বুঝে নেওয়া জরুরি, তা হলো আমরা ধারণা, বাগ এবং সমস্যা নিয়ে আমাদের ফোরামে আলোচনা করি, আর কোডে যে পরিবর্তনগুলো আসে সেগুলো GitHub-এ (PR রিভিউতে) আলোচনা করি। দ্বিতীয় নিয়মটি হলো (স্বায়ত্তশাসিত মেইনটেইনারদের বাদ দিয়ে) আমরা কিছু করার আগে সেটি নিয়ে আলোচনা করি। আমাদের ফোরাম বিভিন্ন ট্র্যাকের কন্ট্রিবিউটর ও মেইনটেইনারদের ভাষা ও ধারণার বিস্তৃত পরিসর নিয়ে জ্ঞান ও প্রজ্ঞা ভাগ করে নেওয়ার সুযোগ দেয়, GitHub-এ ৩০০টি আলাদা রিপোজিটরি সাবস্ক্রাইব করে নিজেদের নোটিফিকেশনে চাপ ফেলার দরকার ছাড়াই।
হালনাগাদ নির্দেশিকা
সহায়তা পাওয়া
- কোনো অনুশীলনী সমাধান করার আগে যদি কোথাও আটকে যান (যেমন CLI ইনস্টল করা, টেস্ট রান করা, অনুশীলনীর লজিক/শর্তাবলিতে আটকে যাওয়া), তাহলে আমাদের সহায়তার জায়গা হলো ফোরামের “Exercism Support” ক্যাটাগরি এবং আমাদের Discord সার্ভারের #get-help চ্যানেল।
- সহায়তার অনুরোধের জন্য আমরা GitHub বা ইমেইল ব্যবহার করি না।
- কোনো অনুশীলনী সমাধান করার পরেও যদি সেটি নিয়ে প্রশ্ন থাকে, তাহলে Exercism-এর মধ্যেই মেন্টরিংয়ের অনুরোধ করুন।
বাগ/সমস্যা রিপোর্ট করা
- সব বাগ/সমস্যা আমাদের ফোরামে জানানো উচিত, যেখানে অনেকেই সমস্যাটি বুঝতে ও সমাধান করতে সাহায্য করতে পারেন।
- সমস্যাটি যদি কোনো ভাষা সম্পর্কিত হয়, তাহলে সংশ্লিষ্ট Programming/xxx ক্যাটাগরি ব্যবহার করুন।
- এটি যদি ওয়েবসাইটের বাগ হয়, তাহলে “Bugs & Feature Requests” ক্যাটাগরি ব্যবহার করুন।
- GitHub ইস্যু সাধারণত স্বয়ংক্রিয়ভাবে বন্ধ হয়ে যাবে এবং পোস্টকারীকে ফোরামে পাঠিয়ে দেওয়া হবে (এখন যেভাবে হয়, সেভাবেই নিজের ইস্যু কপি/পেস্ট করার এক-ক্লিকের লিংক-সহ)।
- ট্র্যাক মেইনটেইনাররা চাইলে অটো ইস্যু-ক্লোজার বন্ধ করে দিতে পারেন, তবে অফিসিয়াল পথ এখনও ফোরামই।
পুল রিকোয়েস্ট খোলা
- কাজ করার আগে পুল রিকোয়েস্ট নিয়ে ফোরামে আলোচনা করা উচিত।
- অর্গের বাইরের সদস্যদের পুল রিকোয়েস্ট আগের মতোই স্বয়ংক্রিয়ভাবে বন্ধ হয়ে যাবে, তবে ফোরামে কাজটি নিয়ে আলোচনা হয়ে গেলে প্রায়ই সেগুলো আবার খুলে দেওয়া হবে। যদি কোনো PR-এর পেছনের ধারণা আগেই অনুমোদিত হয়ে থাকে, তাহলে সংশ্লিষ্ট ফোরাম থ্রেডে শুধু PR-এর লিংক যোগ করুন, আমরা সেটি আবার খুলে দেব।
- ট্র্যাক মেইনটেইনাররা চাইলে অটো PR-ক্লোজার বন্ধ করে দিতে পারেন, তবে আমরা এখনও সুপারিশ করি যে সব PR প্রথমে ফোরামে আলোচনা করা হোক।
সারসংক্ষেপ
আমাদের প্রথম অগ্রাধিকার এখনও আমাদের কোর কন্ট্রিবিউটরদের সময় ও মানসিক সামর্থ্য রক্ষা করা, যাঁরা ছাড়া Exercism চলতে পারে না। তবে আমরা এটাও নিশ্চিত করতে চাই যে Exercism এমন একটি জায়গা হয়ে থাকে যেখানে নতুন মানুষ অতিরিক্ত বাধা ছাড়াই যুক্ত হতে পারে, এবং যেখানে আমরা তাদের উৎসাহ ও সমর্থন দিয়ে তাদের নিজেদেরও কোর কন্ট্রিবিউটর হয়ে ওঠার পথে এগিয়ে নিতে পারি!
আগামী কয়েক মাসে এই পরিবর্তনগুলো আমাদের দেখা কন্ট্রিবিউশনে কী প্রভাব ফেলে, তা দেখতে আমি উৎসাহী। ২০২৪-এর মাঝামাঝি আমরা আবার সবকিছু পর্যালোচনা করব।