মোজিলার কোডবেস এ অবদান রাখা

  • Revision slug: Introduction
  • Revision title: মোজিলার কোডবেস এ অবদান রাখা
  • Revision id: 479719
  • Created:
  • Creator: badsha_eee
  • Is current revision? না
  • Comment

Revision Content

মোজিলা ডেভেলপার নেটওয়ার্কে আপনাকে স্বাগতম। আপনাকে পেয়ে আমরা সত্যিই আনন্দিত! এই পাতাথেকে আপনি মোজিলায় অবদান রাখার প্রথমিক ধাপগুলো সম্পর্কে জানতে পারবেন।

সাহায্য প্রয়োজন ?

মোজিলা পরিবার সবসময়-ই নতুনদেরকে স্বাগত জানায়। যখনি যেখানে আপনার কোন কিছুর ব্যাপারে যেকোনো সমস্যা হোক না কেন, আপনি irc.mozilla.org এর #introduction চ্যাটরুমে এ জিজ্ঞেস করতে পারেন। তারপরও যদি আপনার সমস্যা সমাধান না হয়, তাহলে আপনি Kyle Huey সাথে khuey@mozilla.com ঠিকানায় যোগাযোগ করুন।

কি কি জানতে হবে ?

মোজিলা একটি বড় প্রকল্প এবং আমরা আলাদা আলাদা দক্ষতা সম্পন্ন অবদানকারীদের নিজেদের সাথে যুক্ত করতে আনন্দ পাই।

  • ধরুন, আপনি C++ জানেন, তাহলে আপনি ফায়ারফক্স, ফায়ারফক্স ওএস এবং অন্যান্য মোজিলা পন্যের মূল স্তরে কাজ করতে পারবেন।
  • যদি আপনি জাভাস্ক্রিপ্ট বা এইচটিএমএল/সিএসএস জানেন, তাহলে আপনি ফায়ারফক্স বা ফায়ারফক্স অপারেটিং সিস্টেমের অ্যাপলিকেশন লেয়ার গাইয়া-এর ডিজাইন (ইউজার ইন্টারফেস ও ইউজার এক্সপেরিয়েন্স) এর কাজ করতে পারেন।
  • যদি আপনি জাভা জানেন, তাহলে আপনি ফায়ারফক্স মোবাইলে অবদান রাখতে পারেন।
  • যদি আপনি পাইথন জানেন, তাহলে আপনি আমাদের ওয়েব সেবায় অবদান রাখতে পারেন; এর মধ্যে রয়েছে ফায়ারফক্স সিনক অথবা পারসোনা।
  • যদি আপনি মেক, শেল, পার্ল বা পাইথন জানেন, তাহলে আপনি আমাদের বিল্ড প্রক্রিয়ায় অবদান রাখতে পারেন।
  • যদি আপনি C জানেন, তাহলে আপনি কিছু নিচু স্তরের এবং তৃতীয় পক্ষের তৈরি লাইব্রেরিতে অবদান রাখতে পারেন, যা আমরা মোজিলা কোডবেসের অংশ হিসেবে ব্যাবহার করি।
  • এবং প্রোগ্রামিং ছাড়াও মোজিলার মিশনে অবদান রাখার আরও অনেক পথ রয়েছে। যদি আপনি ডিজাইন, সহায়তা, অনুবাদ, পরীক্ষণ অথবা অন্য কোন শাখায় অবদান রাখতে চান, তাহলে ভলেন্টিয়ারদের সুযোগ সমূহ পাতাটি দেখুন।

বা এমনও হতে পারে যে, আপনি এখনও প্রোগ্রামিং অতটা ভালো জানেন না, কিন্তু আপনি শিখতে চাচ্ছেন ? এটাও দারুন। আপনার জন্যই আমাদের ওয়েব মেকার প্রোগ্রাম, আর এছাড়াও মোজিলা ডেভেলপার নেটওয়ার্কে আরও কিছু রিসোর্স রয়েছে।

ধাপ ১ - ফায়ারফক্স, ফায়ারফক্স ওএস, থান্ডারবার্ড অথবা অন্য অ্যাপলিকেশন

যদি আপনি ফায়ারফক্স, থান্ডারবার্ড অথবা ফায়ারফক্স ওএস এ অবদান রাখতে চান, তবে আমাদের  ফায়ারফক্স তৈরি করার জন্য সাধারন নির্দেশনা, অথবা থান্ডারবার্ড তৈরি, অথবা ফায়ারফক্স ওএস তৈরির নির্দেশনা দেখতে পারেন। এটা একদম সংক্ষিপ্তভাবে তৈরি করা, তাই ভালোভাবে বুঝে উঠতে একটু সময় লাগতে পারে; তাই যতক্ষণে এগুলো একটু সহজ ও বিস্তারিত ভাবে তৈরি হচ্ছে, আপনি পরের ধাপগুলো দেখতে পারেন। গঠনমূলক কাজের জন্য আরও দিকনির্দেশনা এখানে পাওয়া যাবে ।

তবে অন্যান্য পণ্যের জন্য হয়তো আপনার কোন কিছুই তৈরি করতে হবে না।

ধাপ ২ - মোজিলায় অবদান রাখা যেভাবে কাজ করে

মোজিলা ফায়ারফক্সঃ ডেভেলপমেন্ট প্রক্রিয়া দেখুন। থান্ডারবার্ডও একই প্রক্রিয়ায় কাজ করে।

ধাপ ৩ - কাজ করার জন্য আইডিয়া খোঁজা

পছন্দের কাজটি করুন

আপনি ফায়ারফক্স, থান্ডারবার্ড অথবা পছন্দের অন্য কোনো মোজিলা অ্যাপলিকেশনের যেকোনো ত্রুটি সংশোধনের কাজ শুরু করতে পারেন। এই কাজটি করার জন্য একাধিক পদ্ধতি রয়েছেঃ

  • বাগজিলায় নির্দিষ্ট কিওয়ার্ড অনুসন্ধান।
  • কম্পোনেন্টের তালিকা থেকে আপনার পছন্দের বিষয়টি খুজে বের করুন এবং বাগজিলা কম্পোনেন্ট গুলো থেকে বিষয় সম্পর্কিত বাগগুলো খুজে বের করুন।
  • #introduction অথবা #developers আইআরসি চ্যানেলে জিজ্ঞাসা করুন irc.mozilla.org।

আমাদের চিহ্নিত করা নতুনদের সমাধানের উপযোগী বাগগুলো খুঁজে বের করুন

মোজিলা ডেভলাপারগণ নির্দিষ্ট কিছু বাগ চিহ্নিত করেছেন যেগুলো সমাধনের মাধ্যমে নতুনরা আমাদের কার্যপদ্ধতির সাথে নিজেদের মানিয়ে নিতে পারবেন:

  • মেন্টরড বাগ (বা কম ব্যবহারযোগ্য ইন্টারফেস) সমূহের জন্য একজন করে পরামর্শক থাকেন, যিনি আপনার কাজের প্রত্যেক ধাপে সাহায্য করার জন্য বদ্ধ পরিকর। সাধারণত, বাগ গুলোর মধ্যেই কাজ শুরু করার জন্য যথেষ্ট তথ্য থাকে। যখনই আপনার কোন সাহায্যের প্রয়োজন হবে, তখনই আপনার পরামর্শকের (mentor) সাথে IRC এর মাধ্যমে যোগাযোগ করুন; ওই বাগ সম্পর্কে যে IRC রয়েছে, সেখানে অথবা ই-মেইলের মাধ্যমেও যোগাযোগ করতে পারেন। যখন আপনি বাগটির সমাধান করে ফেলবেন, তারা আপনাকে আপনার কোড জমা দিতে সাহায্য করবে।
  • প্রথম "ভালো" বাগ কিছুটা পানসে মনে হতে পারে, কিন্তু এক পর্যায়ে এসে এগুলো মোজিলায় নতুনদের জন্য প্রথম ভালো ধাপ হিসেবে গন্য হয়। আমরা এসব বাগকে মেন্টরড বাগের মধ্যে আনার জন্য চেষ্টা করে যাচ্ছি। কিন্তু যদি আপনি কোন যথাযথ মেন্টরড বাগ খুঁজে না পান, তবে অতি সম্প্রতি "প্রথম ভালো বাগ" গুলো শুরু করার জন্য ভালো জায়গা।
  • ছাত্রদের জন্য যে প্রকল্প গুলো রয়েছে, সেগুলো তুলনামূলক ভাবে বড়। যেমন একটি ইউনিভার্সিটির ১ ক্রেডিটের সাবজেক্ট। তবে আপনি যদি একজন ছাত্র না হলেও এদের মধ্যে যেকোনো একটি বাগ সমাধান করতে পারেন। আমরা দুইটি তালিকা রয়েছে। একটি বর্তমান কোডবেসের উপর ভিত্তি করে প্রজেক্ট এর জন্য, আরেকটি নতুন অ্যাপলিকেশন বানানোর জন্য

ধাপ ৪ - ত্রুটি সারাই

আমরা এটি আপনার যোগ্য হাতের উপর ছেড়ে দেই। আপনাকে সাহায্য করার জন্য আমাদের কিছু রিসোর্সও রয়েছেঃ

যে বাগটি আপনি ঠিক করছেন, সেটি ঠিক করার পর যদি ডেভেলপার ডকুমেন্টেশন হালনাগাদ করার প্রয়োজন হয়, তবে dev-doc-needed কিওয়ার্ডটি অবশ্যই বাগের মধ্যে যুক্ত করতে হবে (অথবা অন্য কাউকেও করে দেয়ার জন্য অনুরোধ করতে পারেন বা বাগজিলায় বাগ সম্পাদনা করার অনুমতি না দেওয়া থাকলেও বলতে পারেন)। এটি বাগটিকে আমাদের ডকুমেন্টেশন টিমের নজরে আনবে, এবং এটা নিশ্চিত করবে যে বাগটি সফলভাবে ঠিক করা হয়ে গেলে ডকুমেন্টেশন সফলভাবে হালনাগাদ করা হবে। যদি আপনি বাগটিকে চিহ্নিত না করেন, তাহলে আপনার কাজ ডকস দলের নজর এড়িয়ে যেতে পারে! আপনি যেকোনো সময়ে বাগটিকে উপরোক্ত কিওয়ার্ড দ্বারা চিহ্নিত করতে পারেন; আপনাকে এটি ঠিক হওয়া পর্যন্ত অপেক্ষা করতে হবে না।

অবশ্যই, আমাদের ডকুমেন্টেশন একটি উইকি; আপনি নিজেই ডকুমেন্টেশন হালনাগাদ করে আমাদের সাহায্য করতে পারেন। এমনকি আপনি নিজের লেখনী দক্ষতা নিয়ে যদি আপনি নিশ্চিত নাও থাকেন, মনে রাখবেন যে আমাদের সাহায্যকারী ডকুমেন্টেশন gnome সমূহ সবসময় আপনার পেছনে থাকবে এবং আপনার জন্য পরিষ্কার পরিচ্ছন্নতার কাজ করবে।

ধাপ ৫ - বিবেচনার জন্য কোড জমা

একবার যখন আপনি বাগটি ঠিক করে ফেলবেন, বাগটির সাথে একটি প্যাচ যুক্ত করুন এবং পর্যালোচনার জন্য জিজ্ঞেস করুন। এটা করার জন্য আপনার সংযুক্তির (attachments) সাথে থাকা Details লিঙ্কের উপর ক্লিক করতে হবে। তারপর ? চিহ্নে review ফ্ল্যাগটি যুক্ত করতে হবে এবং পর্যালোচনার জন্য পরের ঘরে পর্যালোকের (reviewer) বাগজিলা আইডি দিতে হবে (অথবা ই-মেইল ঠিকানা বা তাদের ইউনিক নামও দিতে পারেন)। মনে রাখবেন, একটি বাগজিলা আইডি অবশ্যই যুক্ত করতে হবে। নইলে আপনার অনুরোধ বাদ পড়ে যেতে পারে।

এখন প্রশ্ন হচ্ছেঃ কিভাবে আপনি পর্যালোচনা করার জন্য সঠিক লোক কোথায় পাবেন ?

  • যদি আপনি মেন্টরড বাগ নিয়ে কাজ করে থাকেন, তবে আপনার মেন্টরকে জিজ্ঞেস করতে পারেন। তারা বুঝতে পারবে অথবা সহজে খুঁজে বের করতে পারবে।
  • hg blame রান করান এবং দেখুন যে কে কে ওইসব ফাংশনে কাজ করেছে, যেগুলোতে আপনি কাজ করেছিলেন - তারাও ভালো প্রতিদ্বন্দ্বী।
  • বাগটির মধ্যেই কোন পরিষ্কার নির্দেশনা থাকতে পারে যে কার কাছে জিজ্ঞেস করলে সবচেয়ে ভালো হবে।
  • এই একই বিষয়ে কি আরও সংশ্লিষ্ট বাগ আছে ? তাহলে ওই বাগ গুলোর পর্যালোকেরা ভালো হতে পারে।
  • আমাদের একটি পুরনো মডিউলের তালিকা আছে, যাতে মডিউলের অধিকারীর তালিকা রয়েছে। এদের মধ্যে কয়েকজন আপনার বাগের জন্য ভালো পর্যালোচক হতে পারে। এতকিছুর পরও যদি আপনি কোন পর্যালোচক ঠিক করতে না পারেন, তাহলে মডিউলের অধিকারীকে পর্যালোচক হিসেবে নির্বাচন করে দিন আর মন্তব্যে জিজ্ঞেস করুন যে টার কাছে যদি সময় না থাকে, তাহলে অন্য কাউকে নির্বাচন করে দিতে।

ধাপ ৫খ - লেগে থাকা

যদি আপনি আগে থেকেই পর্যালোচনার জন্য আবেদন করে থাকেন, কিন্তু পর্যালোচক কয়েকদিনের মধ্যে কোন মন্তব্য করেননি, তাদের সাথে যোগাযোগ করতে ইতস্তত বোধ করবেন না। শুধু বাগের মধ্যে 'review ping?' লিখে মন্তব্য করুন এবং তার পরবর্তী কয়েকদিনের মধ্যেও কোনরুপ প্রতিউত্তর না পেলে আরেকবার একই ভাবে মন্তব্য করুন। কিন্তু তারপরও যদি তারা সাড়া না দেন, তাহলে #introduction অথবা #developers এ সাহায্য চাইতে পারেন।

ধাপ - ৬ বিবেচনার প্রতি সাড়া দেয়া

মাঝে মাঝে পর্যালোচক আপনাকে কিছু পরিবর্তন করতে বলবেন। কখনো ছোট, কখনো বড় যেটাই ঠিক করতে বলুক না কেন, সেভাবেই আপনাকে করতে হবে। যদি আপনি নিশ্চিত না থাকেন, যে কিভাবে করবেন, তাহলে তাকে অবশ্যই জিজ্ঞেস করবেন যে, কিভাবে করবো ! নতুন অংশটুকু আবার বাগের সাথে যুক্ত করুন, এবং আবার সেই একই পর্যালোচককে পর্যালোচনার জন্য অনুরোধ করুন। এবং তারা যদি আপনাকে r+ দেয়, তাহলে বুঝতে হবে যে আপনার বাগ গ্রহণ করা হয়েছে!

ধাপ - ৭ কোডকে যুক্ত করানো

যেহেতু আপনার কোড প্রবেশ করানোর অনুমতি নেই, আপনার কাউকে সাহায্যের জন্য অনুরোধ করতে হবে। যদি আপনার একজন মেন্টর থেকে থাকে, তাকে বলুন। যদি না থাকে, পর্যালোচককে বলুন। যদি পর্যালোচক অনেক বেশি ব্যস্ত থাকেন, তাহলে checkin-needed  কিওয়ার্ড যুক্ত করে দৃষ্টি আকর্ষণ করতে পারেন। কয়েকদিনের মধ্যেই একজন বন্ধুসুলভ ব্যক্তি আপনার কোড রিপজিটরিতে পাঠানোর উদ্যোগ নেবেন এবং বাগটিকে সমাধান করা হয়েছে বলে চিহ্নিত করবেন।

ধাপ ৮ - পুনরাবৃত্তি

Congratulations, you've fixed your first bug. Now go back to step 3 and repeat. Now that you've got your first bug in, you should request level 1 access to the repository so that you can push to rhw tryserver and get automated feedback about your changes on multiple platforms. After fixing a nontrivial number of bugs, you should request level 3 access so that you can push your own code after it has been r+ed.

আরও তথ্য

We're in the process of improving information on this page for newcomers to the project. We'll be integrating some information from these pages soon, but until then you may find them interesting in their current form:

Revision Source

<p>মোজিলা ডেভেলপার নেটওয়ার্কে আপনাকে স্বাগতম। আপনাকে পেয়ে আমরা সত্যিই আনন্দিত! এই পাতাথেকে আপনি মোজিলায় অবদান রাখার প্রথমিক ধাপগুলো সম্পর্কে জানতে পারবেন।</p>
<h2 id=".E0.A6.B8.E0.A6.BE.E0.A6.B9.E0.A6.BE.E0.A6.AF.E0.A7.8D.E0.A6.AF_.E0.A6.AA.E0.A7.8D.E0.A6.B0.E0.A6.AF.E0.A6.BC.E0.A7.8B.E0.A6.9C.E0.A6.A8_.3F">সাহায্য প্রয়োজন ?</h2>
<p>মোজিলা পরিবার সবসময়-ই নতুনদেরকে স্বাগত জানায়। যখনি যেখানে আপনার কোন কিছুর ব্যাপারে যেকোনো সমস্যা হোক না কেন, আপনি <a class="link-https" href="https://chat.mibbit.com/?url=irc%3A%2F%2Firc.mozilla.org%2F%23introduction">irc.mozilla.org এর #introduction চ্যাটরুমে</a> এ জিজ্ঞেস করতে পারেন। তারপরও যদি আপনার সমস্যা সমাধান না হয়, তাহলে আপনি&nbsp;Kyle Huey সাথে <a class="link-mailto" href="mailto:khuey@mozilla.com" rel="freelink">khuey@mozilla.com</a> ঠিকানায় যোগাযোগ করুন।</p>
<h2 id=".E0.A6.95.E0.A6.BF_.E0.A6.95.E0.A6.BF_.E0.A6.9C.E0.A6.BE.E0.A6.A8.E0.A6.A4.E0.A7.87_.E0.A6.B9.E0.A6.AC.E0.A7.87_.3F">কি কি জানতে হবে ?</h2>
<p>মোজিলা একটি বড় প্রকল্প এবং আমরা আলাদা আলাদা দক্ষতা সম্পন্ন অবদানকারীদের নিজেদের সাথে যুক্ত করতে আনন্দ পাই।</p>
<ul>
  <li>ধরুন, আপনি C++ জানেন, তাহলে আপনি ফায়ারফক্স, ফায়ারফক্স ওএস এবং অন্যান্য মোজিলা পন্যের মূল স্তরে কাজ করতে পারবেন।</li>
  <li>যদি আপনি জাভাস্ক্রিপ্ট বা এইচটিএমএল/সিএসএস জানেন, তাহলে আপনি ফায়ারফক্স বা ফায়ারফক্স অপারেটিং সিস্টেমের অ্যাপলিকেশন লেয়ার গাইয়া-এর ডিজাইন (ইউজার ইন্টারফেস ও ইউজার এক্সপেরিয়েন্স) এর কাজ করতে পারেন।</li>
  <li>যদি আপনি জাভা জানেন, তাহলে আপনি ফায়ারফক্স মোবাইলে অবদান রাখতে পারেন।</li>
  <li>যদি আপনি পাইথন জানেন, তাহলে আপনি আমাদের ওয়েব সেবায় অবদান রাখতে পারেন; এর মধ্যে রয়েছে ফায়ারফক্স সিনক অথবা পারসোনা।</li>
  <li>যদি আপনি মেক, শেল, পার্ল বা পাইথন জানেন, তাহলে আপনি আমাদের বিল্ড প্রক্রিয়ায় অবদান রাখতে পারেন।</li>
  <li>যদি আপনি C জানেন, তাহলে আপনি কিছু নিচু স্তরের এবং তৃতীয় পক্ষের তৈরি লাইব্রেরিতে অবদান রাখতে পারেন, যা আমরা মোজিলা কোডবেসের অংশ হিসেবে ব্যাবহার করি।</li>
  <li>এবং প্রোগ্রামিং ছাড়াও মোজিলার মিশনে অবদান রাখার আরও অনেক পথ রয়েছে। যদি আপনি ডিজাইন, সহায়তা, অনুবাদ, পরীক্ষণ অথবা অন্য কোন শাখায় অবদান রাখতে চান, তাহলে&nbsp;<a class="external link-https" href="https://www.mozilla.org/contribute/areas.html" title="https://www.mozilla.org/contribute/areas.html">ভলেন্টিয়ারদের সুযোগ সমূহ</a>&nbsp;পাতাটি দেখুন।</li>
</ul>
<p>বা এমনও হতে পারে যে, আপনি এখনও প্রোগ্রামিং অতটা ভালো জানেন না, কিন্তু আপনি শিখতে চাচ্ছেন ? এটাও দারুন। আপনার জন্যই আমাদের <a href="https://webmaker.org" title="https://webmaker.org">ওয়েব মেকার প্রোগ্রাম</a>, আর এছাড়াও মোজিলা ডেভেলপার নেটওয়ার্কে&nbsp;<a href="https://developer.mozilla.org/en-US/learn" title="/en-US/learn">আরও কিছু রিসোর্স</a>&nbsp;রয়েছে।</p>
<h2 id=".E0.A6.A7.E0.A6.BE.E0.A6.AA_.E0.A7.A7_-_.E0.A6.AB.E0.A6.BE.E0.A6.AF.E0.A6.BC.E0.A6.BE.E0.A6.B0.E0.A6.AB.E0.A6.95.E0.A7.8D.E0.A6.B8.2C_.E0.A6.AB.E0.A6.BE.E0.A6.AF.E0.A6.BC.E0.A6.BE.E0.A6.B0.E0.A6.AB.E0.A6.95.E0.A7.8D.E0.A6.B8_.E0.A6.93.E0.A6.8F.E0.A6.B8.2C_.E0.A6.A5.E0.A6.BE.E0.A6.A8.E0.A7.8D.E0.A6.A1.E0.A6.BE.E0.A6.B0.E0.A6.AC.E0.A6.BE.E0.A6.B0.E0.A7.8D.E0.A6.A1_.E0.A6.85.E0.A6.A5.E0.A6.AC.E0.A6.BE_.E0.A6.85.E0.A6.A8.E0.A7.8D.E0.A6.AF_.E0.A6.85.E0.A7.8D.E0.A6.AF.E0.A6.BE.E0.A6.AA.E0.A6.B2.E0.A6.BF.E0.A6.95.E0.A7.87.E0.A6.B6.E0.A6.A8">ধাপ ১ - ফায়ারফক্স, ফায়ারফক্স ওএস, থান্ডারবার্ড অথবা অন্য অ্যাপলিকেশন</h2>
<p>যদি আপনি ফায়ারফক্স, থান্ডারবার্ড অথবা ফায়ারফক্স ওএস এ অবদান রাখতে চান, তবে আমাদের &nbsp;<a href="/en-US/docs/Simple_Firefox_build" title="Simple Firefox Build">ফায়ারফক্স তৈরি করার জন্য সাধারন নির্দেশনা</a>, অথবা&nbsp;<a href="/en-US/docs/Simple_Thunderbird_build" title="Simple Thunderbird build">থান্ডারবার্ড তৈরি</a>, অথবা&nbsp;<a href="https://developer.mozilla.org/en-US/docs/Mozilla/Boot_to_Gecko/Building_and_installing_Firefox_OS" title="/en-US/docs/">ফায়ারফক্স ওএস তৈরি</a>র নির্দেশনা দেখতে পারেন।&nbsp;এটা একদম সংক্ষিপ্তভাবে তৈরি করা, তাই ভালোভাবে বুঝে উঠতে একটু সময় লাগতে পারে; তাই যতক্ষণে এগুলো একটু সহজ ও বিস্তারিত ভাবে তৈরি হচ্ছে, আপনি পরের ধাপগুলো দেখতে পারেন। গঠনমূলক কাজের জন্য আরও দিকনির্দেশনা&nbsp;<a href="/en-US/docs/Developer_Guide/Build_Instructions" title="Developer_Guide/Build_Instructions">এখানে পাওয়া যাবে</a>&nbsp;।</p>
<p>তবে অন্যান্য পণ্যের জন্য হয়তো আপনার কোন কিছুই তৈরি করতে হবে না।</p>
<h2 id=".E0.A6.A7.E0.A6.BE.E0.A6.AA_.E0.A7.A8_-_.E0.A6.AE.E0.A7.8B.E0.A6.9C.E0.A6.BF.E0.A6.B2.E0.A6.BE.E0.A6.AF.E0.A6.BC_.E0.A6.85.E0.A6.AC.E0.A6.A6.E0.A6.BE.E0.A6.A8_.E0.A6.B0.E0.A6.BE.E0.A6.96.E0.A6.BE_.E0.A6.AF.E0.A7.87.E0.A6.AD.E0.A6.BE.E0.A6.AC.E0.A7.87_.E0.A6.95.E0.A6.BE.E0.A6.9C_.E0.A6.95.E0.A6.B0.E0.A7.87">ধাপ ২ - মোজিলায় অবদান রাখা যেভাবে কাজ করে</h2>
<p><a class="external" href="http://mozilla.github.com/process-releases/draft/development_overview/" title="http://mozilla.github.com/process-releases/draft/development_overview/">মোজিলা ফায়ারফক্সঃ ডেভেলপমেন্ট প্রক্রিয়া</a>&nbsp;দেখুন।&nbsp;থান্ডারবার্ডও <a class="external" href="http://people.mozilla.org/~mbanner2/tbdevspecifics/" title="http://people.mozilla.org/~mbanner2/tbdevspecifics/">একই প্রক্রিয়ায়</a>&nbsp;কাজ করে।</p>
<h2 id=".E0.A6.A7.E0.A6.BE.E0.A6.AA_.E0.A7.A9_-_.E0.A6.95.E0.A6.BE.E0.A6.9C_.E0.A6.95.E0.A6.B0.E0.A6.BE.E0.A6.B0_.E0.A6.9C.E0.A6.A8.E0.A7.8D.E0.A6.AF_.E0.A6.86.E0.A6.87.E0.A6.A1.E0.A6.BF.E0.A6.AF.E0.A6.BC.E0.A6.BE_.E0.A6.96.E0.A7.8B.E0.A6.81.E0.A6.9C.E0.A6.BE">ধাপ ৩ - কাজ করার জন্য আইডিয়া খোঁজা</h2>
<h3 id=".E0.A6.AA.E0.A6.9B.E0.A6.A8.E0.A7.8D.E0.A6.A6.E0.A7.87.E0.A6.B0_.E0.A6.95.E0.A6.BE.E0.A6.9C.E0.A6.9F.E0.A6.BF_.E0.A6.95.E0.A6.B0.E0.A7.81.E0.A6.A8">পছন্দের কাজটি করুন</h3>
<p>আপনি ফায়ারফক্স, থান্ডারবার্ড অথবা পছন্দের অন্য কোনো মোজিলা অ্যাপলিকেশনের যেকোনো ত্রুটি সংশোধনের কাজ শুরু করতে পারেন। এই কাজটি করার জন্য একাধিক পদ্ধতি রয়েছেঃ</p>
<ul>
  <li><a class="link-https" href="https://bugzilla.mozilla.org/query.cgi" title="https://bugzilla.mozilla.org/query.cgi">বাগজিলায়</a> নির্দিষ্ট কিওয়ার্ড অনুসন্ধান।</li>
  <li>কম্পোনেন্টের তালিকা থেকে আপনার পছন্দের বিষয়টি খুজে বের করুন এবং <a class="link-https" href="https://bugzilla.mozilla.org/describecomponents.cgi" title="https://bugzilla.mozilla.org/describecomponents.cgi">বাগজিলা কম্পোনেন্ট</a> গুলো থেকে বিষয় সম্পর্কিত বাগগুলো খুজে বের করুন।</li>
  <li><a class="link-https" href="https://chat.mibbit.com/?url=irc%3A%2F%2Firc.mozilla.org%2F%23introduction">#introduction</a> অথবা <a class="link-https" href="https://chat.mibbit.com/?url=irc%3A%2F%2Firc.mozilla.org%2F%23developers">#developers</a> আইআরসি চ্যানেলে জিজ্ঞাসা করুন irc.mozilla.org।</li>
</ul>
<h3 id=".E0.A6.86.E0.A6.AE.E0.A6.BE.E0.A6.A6.E0.A7.87.E0.A6.B0_.E0.A6.9A.E0.A6.BF.E0.A6.B9.E0.A7.8D.E0.A6.A8.E0.A6.BF.E0.A6.A4_.E0.A6.95.E0.A6.B0.E0.A6.BE_.E0.A6.A8.E0.A6.A4.E0.A7.81.E0.A6.A8.E0.A6.A6.E0.A7.87.E0.A6.B0_.E0.A6.B8.E0.A6.AE.E0.A6.BE.E0.A6.A7.E0.A6.BE.E0.A6.A8.E0.A7.87.E0.A6.B0_.E0.A6.89.E0.A6.AA.E0.A6.AF.E0.A7.8B.E0.A6.97.E0.A7.80_.E0.A6.AC.E0.A6.BE.E0.A6.97.E0.A6.97.E0.A7.81.E0.A6.B2.E0.A7.8B_.E0.A6.96.E0.A7.81.E0.A6.81.E0.A6.9C.E0.A7.87_.E0.A6.AC.E0.A7.87.E0.A6.B0_.E0.A6.95.E0.A6.B0.E0.A7.81.E0.A6.A8">আমাদের চিহ্নিত করা নতুনদের সমাধানের উপযোগী বাগগুলো খুঁজে বের করুন</h3>
<p>মোজিলা ডেভলাপারগণ নির্দিষ্ট কিছু বাগ চিহ্নিত করেছেন যেগুলো সমাধনের মাধ্যমে নতুনরা আমাদের কার্যপদ্ধতির সাথে নিজেদের মানিয়ে নিতে পারবেন:</p>
<ul>
  <li><a class="external" href="http://www.joshmatthews.net/bugsahoy/" title="http://www.joshmatthews.net/bugsahoy/">মেন্টরড বাগ</a>&nbsp;(বা <a class="link-https" href="https://bugzil.la/sw:%5Bmentor=" title="https://bugzil.la/sw:%5Bmentor=">কম ব্যবহারযোগ্য ইন্টারফেস</a>) সমূহের জন্য একজন করে পরামর্শক থাকেন, যিনি আপনার কাজের প্রত্যেক ধাপে সাহায্য করার জন্য বদ্ধ পরিকর। সাধারণত, বাগ গুলোর মধ্যেই কাজ শুরু করার জন্য যথেষ্ট তথ্য থাকে। যখনই আপনার কোন সাহায্যের প্রয়োজন হবে, তখনই আপনার পরামর্শকের (mentor) সাথে IRC এর মাধ্যমে যোগাযোগ করুন; ওই বাগ সম্পর্কে যে IRC রয়েছে, সেখানে অথবা ই-মেইলের মাধ্যমেও যোগাযোগ করতে পারেন। যখন আপনি বাগটির সমাধান করে ফেলবেন, তারা আপনাকে আপনার কোড জমা দিতে সাহায্য করবে।</li>
  <li><a class="link-https" href="https://bugzil.la/sw:%5Bgood%20first%20bug%5D" title="https://bugzil.la/sw:[good first bug]">প্রথম "ভালো" বাগ</a>&nbsp;কিছুটা পানসে মনে হতে পারে, কিন্তু এক পর্যায়ে এসে এগুলো মোজিলায় নতুনদের জন্য প্রথম ভালো ধাপ হিসেবে গন্য হয়। আমরা এসব বাগকে মেন্টরড বাগের মধ্যে আনার জন্য চেষ্টা করে যাচ্ছি। কিন্তু যদি আপনি কোন যথাযথ মেন্টরড বাগ খুঁজে না পান, তবে অতি সম্প্রতি "প্রথম ভালো বাগ" গুলো শুরু করার জন্য ভালো জায়গা।</li>
  <li><a class="link-https" href="https://bugzil.la/kw:student-project" title="https://bugzil.la/kw:student-project">ছাত্রদের জন্য যে প্রকল্প গুলো</a>&nbsp;রয়েছে, সেগুলো তুলনামূলক ভাবে বড়। যেমন একটি ইউনিভার্সিটির ১ ক্রেডিটের সাবজেক্ট। তবে আপনি যদি একজন ছাত্র না হলেও এদের মধ্যে যেকোনো একটি বাগ সমাধান করতে পারেন। আমরা দুইটি তালিকা রয়েছে। একটি&nbsp;<a href="https://bugzil.la/kw:student-project" title="https://bugzil.la/kw:student-project">বর্তমান কোডবেসের উপর ভিত্তি করে</a>&nbsp;প্রজেক্ট এর জন্য, আরেকটি&nbsp;<a href="https://github.com/Yoric/Mozilla-Student-Projects/issues" title="https://github.com/Yoric/Mozilla-Student-Projects/issues">নতুন অ্যাপলিকেশন বানানোর জন্য</a>।</li>
</ul>
<h2 id=".E0.A6.A7.E0.A6.BE.E0.A6.AA_.E0.A7.AA_-_.E0.A6.A4.E0.A7.8D.E0.A6.B0.E0.A7.81.E0.A6.9F.E0.A6.BF_.E0.A6.B8.E0.A6.BE.E0.A6.B0.E0.A6.BE.E0.A6.87">ধাপ ৪ - ত্রুটি সারাই</h2>
<p>আমরা এটি আপনার যোগ্য হাতের উপর ছেড়ে দেই। আপনাকে সাহায্য করার জন্য আমাদের কিছু রিসোর্সও রয়েছেঃ</p>
<ul>
  <li><a href="/en-US/docs/Developer_Guide" title="En/Developer_Guide">https://developer.mozilla.org/En/Developer_Guide</a>&nbsp;দেখুন।</li>
  <li>বাগ এর জন্য মন্তব্য করার মাধ্যমে সাহায্য চান। অথবা <a class="link-https" href="https://chat.mibbit.com/?url=irc%3A%2F%2Firc.mozilla.org%2F%23introduction">#introduction</a>&nbsp;বা&nbsp;<a class="link-https" href="https://chat.mibbit.com/?url=irc%3A%2F%2Firc.mozilla.org%2F%23developers">#developers</a>&nbsp;এর IRC তেও সাহায্য চাইতে পারেন।</li>
</ul>
<p>যে বাগটি আপনি ঠিক করছেন, সেটি ঠিক করার পর যদি ডেভেলপার ডকুমেন্টেশন হালনাগাদ করার প্রয়োজন হয়, তবে <code>dev-doc-needed</code>&nbsp;কিওয়ার্ডটি অবশ্যই বাগের মধ্যে যুক্ত করতে হবে (অথবা অন্য কাউকেও করে দেয়ার জন্য অনুরোধ করতে পারেন বা বাগজিলায় বাগ সম্পাদনা করার অনুমতি না দেওয়া থাকলেও বলতে পারেন)। এটি বাগটিকে আমাদের ডকুমেন্টেশন টিমের নজরে আনবে, এবং এটা নিশ্চিত করবে যে বাগটি সফলভাবে ঠিক করা হয়ে গেলে ডকুমেন্টেশন সফলভাবে হালনাগাদ করা হবে। যদি আপনি বাগটিকে চিহ্নিত না করেন, তাহলে আপনার কাজ ডকস দলের নজর এড়িয়ে যেতে পারে! আপনি যেকোনো সময়ে বাগটিকে উপরোক্ত কিওয়ার্ড দ্বারা চিহ্নিত করতে পারেন; আপনাকে এটি ঠিক হওয়া পর্যন্ত অপেক্ষা করতে হবে না।</p>
<p>অবশ্যই, আমাদের ডকুমেন্টেশন একটি উইকি; আপনি নিজেই ডকুমেন্টেশন হালনাগাদ করে আমাদের সাহায্য করতে পারেন। এমনকি আপনি নিজের লেখনী দক্ষতা নিয়ে যদি আপনি নিশ্চিত নাও থাকেন, মনে রাখবেন যে আমাদের সাহায্যকারী ডকুমেন্টেশন gnome সমূহ সবসময় আপনার পেছনে থাকবে এবং আপনার জন্য পরিষ্কার পরিচ্ছন্নতার কাজ করবে।</p>
<h2 id=".E0.A6.A7.E0.A6.BE.E0.A6.AA_.E0.A7.AB_-_.E0.A6.AC.E0.A6.BF.E0.A6.AC.E0.A7.87.E0.A6.9A.E0.A6.A8.E0.A6.BE.E0.A6.B0_.E0.A6.9C.E0.A6.A8.E0.A7.8D.E0.A6.AF_.E0.A6.95.E0.A7.8B.E0.A6.A1_.E0.A6.9C.E0.A6.AE.E0.A6.BE">ধাপ ৫ - বিবেচনার জন্য কোড জমা</h2>
<p>একবার যখন আপনি বাগটি ঠিক করে ফেলবেন,&nbsp;<a href="/en-US/docs/Developer_Guide/How_to_Submit_a_Patch" title="How to Submit a Patch">বাগটির সাথে একটি প্যাচ যুক্ত করুন</a>&nbsp;এবং পর্যালোচনার জন্য জিজ্ঞেস করুন। এটা করার জন্য আপনার সংযুক্তির (attachments) সাথে থাকা&nbsp;<strong>Details</strong>&nbsp;লিঙ্কের উপর ক্লিক করতে হবে। তারপর&nbsp;<strong>? </strong>চিহ্নে<span style="line-height: inherit;">&nbsp;</span><strong style="line-height: inherit;">review </strong>ফ্ল্যাগটি যুক্ত করতে হবে এবং পর্যালোচনার জন্য পরের ঘরে পর্যালোকের<span style="line-height: inherit;">&nbsp;(reviewer) বাগজিলা আইডি দিতে হবে (অথবা ই-মেইল ঠিকানা বা তাদের ইউনিক নামও দিতে পারেন)। মনে রাখবেন, একটি বাগজিলা আইডি অবশ্যই যুক্ত করতে হবে। নইলে আপনার অনুরোধ বাদ পড়ে যেতে পারে।</span></p>
<p><span style="line-height: inherit;">এখন প্রশ্ন হচ্ছেঃ কিভাবে আপনি পর্যালোচনা করার জন্য সঠিক লোক কোথায় পাবেন ?</span></p>
<ul>
  <li>যদি আপনি মেন্টরড বাগ নিয়ে কাজ করে থাকেন, তবে আপনার মেন্টরকে জিজ্ঞেস করতে পারেন। তারা বুঝতে পারবে অথবা সহজে খুঁজে বের করতে পারবে।</li>
  <li><code>hg blame</code> রান করান এবং দেখুন যে কে কে ওইসব ফাংশনে কাজ করেছে, যেগুলোতে আপনি কাজ করেছিলেন - তারাও ভালো প্রতিদ্বন্দ্বী।</li>
  <li>বাগটির মধ্যেই কোন পরিষ্কার নির্দেশনা থাকতে পারে যে কার কাছে জিজ্ঞেস করলে সবচেয়ে ভালো হবে।</li>
  <li>এই একই বিষয়ে কি আরও সংশ্লিষ্ট বাগ আছে ? তাহলে ওই বাগ গুলোর পর্যালোকেরা ভালো হতে পারে।</li>
  <li>আমাদের একটি পুরনো&nbsp;<a class="link-https" href="https://wiki.mozilla.org/Modules">মডিউলের তালিকা</a>&nbsp;আছে, যাতে&nbsp;মডিউলের অধিকারীর তালিকা রয়েছে। এদের মধ্যে কয়েকজন আপনার বাগের জন্য ভালো পর্যালোচক হতে পারে। এতকিছুর পরও যদি আপনি কোন পর্যালোচক ঠিক করতে না পারেন, তাহলে মডিউলের অধিকারীকে পর্যালোচক হিসেবে নির্বাচন করে দিন আর মন্তব্যে জিজ্ঞেস করুন যে টার কাছে যদি সময় না থাকে, তাহলে অন্য কাউকে নির্বাচন করে দিতে।</li>
</ul>
<h3 id=".E0.A6.A7.E0.A6.BE.E0.A6.AA_.E0.A7.AB.E0.A6.96_-_.E0.A6.B2.E0.A7.87.E0.A6.97.E0.A7.87_.E0.A6.A5.E0.A6.BE.E0.A6.95.E0.A6.BE">ধাপ ৫খ - লেগে থাকা</h3>
<p>যদি আপনি আগে থেকেই পর্যালোচনার জন্য আবেদন করে থাকেন, কিন্তু পর্যালোচক কয়েকদিনের মধ্যে কোন মন্তব্য করেননি, তাদের সাথে যোগাযোগ করতে ইতস্তত বোধ করবেন না। শুধু বাগের মধ্যে 'review ping?' লিখে মন্তব্য করুন এবং তার পরবর্তী কয়েকদিনের মধ্যেও কোনরুপ প্রতিউত্তর না পেলে আরেকবার একই ভাবে মন্তব্য করুন। কিন্তু তারপরও যদি তারা সাড়া না দেন, তাহলে&nbsp;<a class="link-https" href="https://chat.mibbit.com/?url=irc%3A%2F%2Firc.mozilla.org%2F%23introduction">#introduction</a>&nbsp;অথবা&nbsp;<a class="link-https" href="https://chat.mibbit.com/?url=irc%3A%2F%2Firc.mozilla.org%2F%23developers">#developers</a>&nbsp;এ সাহায্য চাইতে পারেন।</p>
<h2 id=".E0.A6.A7.E0.A6.BE.E0.A6.AA_-_.E0.A7.AC_.E0.A6.AC.E0.A6.BF.E0.A6.AC.E0.A7.87.E0.A6.9A.E0.A6.A8.E0.A6.BE.E0.A6.B0_.E0.A6.AA.E0.A7.8D.E0.A6.B0.E0.A6.A4.E0.A6.BF_.E0.A6.B8.E0.A6.BE.E0.A6.A1.E0.A6.BC.E0.A6.BE_.E0.A6.A6.E0.A7.87.E0.A6.AF.E0.A6.BC.E0.A6.BE">ধাপ - ৬ বিবেচনার প্রতি সাড়া দেয়া</h2>
<p>মাঝে মাঝে পর্যালোচক আপনাকে কিছু পরিবর্তন করতে বলবেন। কখনো ছোট, কখনো বড় যেটাই ঠিক করতে বলুক না কেন, সেভাবেই আপনাকে করতে হবে। যদি আপনি নিশ্চিত না থাকেন, যে কিভাবে করবেন, তাহলে তাকে অবশ্যই জিজ্ঞেস করবেন যে, কিভাবে করবো ! নতুন অংশটুকু আবার বাগের সাথে যুক্ত করুন, এবং আবার সেই একই পর্যালোচককে পর্যালোচনার জন্য অনুরোধ করুন। এবং তারা যদি আপনাকে&nbsp;<strong>r+</strong>&nbsp;দেয়, তাহলে বুঝতে হবে যে আপনার বাগ গ্রহণ করা হয়েছে!</p>
<h2 id=".E0.A6.A7.E0.A6.BE.E0.A6.AA_-_.E0.A7.AD_.E0.A6.95.E0.A7.8B.E0.A6.A1.E0.A6.95.E0.A7.87_.E0.A6.AF.E0.A7.81.E0.A6.95.E0.A7.8D.E0.A6.A4_.E0.A6.95.E0.A6.B0.E0.A6.BE.E0.A6.A8.E0.A7.8B">ধাপ - ৭ কোডকে যুক্ত করানো</h2>
<p>যেহেতু আপনার কোড প্রবেশ করানোর অনুমতি নেই, আপনার কাউকে সাহায্যের জন্য অনুরোধ করতে হবে। যদি আপনার একজন মেন্টর থেকে থাকে, তাকে বলুন। যদি না থাকে, পর্যালোচককে বলুন। যদি পর্যালোচক অনেক বেশি ব্যস্ত থাকেন, তাহলে <em>checkin-needed</em>&nbsp; কিওয়ার্ড যুক্ত করে দৃষ্টি আকর্ষণ করতে পারেন। কয়েকদিনের মধ্যেই একজন বন্ধুসুলভ ব্যক্তি আপনার কোড রিপজিটরিতে পাঠানোর উদ্যোগ নেবেন এবং বাগটিকে সমাধান করা হয়েছে বলে চিহ্নিত করবেন।</p>
<h2 id=".E0.A6.A7.E0.A6.BE.E0.A6.AA_.E0.A7.AE_-_.E0.A6.AA.E0.A7.81.E0.A6.A8.E0.A6.B0.E0.A6.BE.E0.A6.AC.E0.A7.83.E0.A6.A4.E0.A7.8D.E0.A6.A4.E0.A6.BF">ধাপ ৮ - পুনরাবৃত্তি</h2>
<p>Congratulations, you've fixed your first bug. Now go back to step 3 and repeat. Now that you've got your first bug in, you should request level 1 access to the repository so that you can push to rhw tryserver and get automated feedback about your changes on multiple platforms. After fixing a nontrivial number of bugs, you should request level 3 access so that you can push your own code after it has been <strong>r+</strong>ed.</p>
<h2 id=".E0.A6.86.E0.A6.B0.E0.A6.93_.E0.A6.A4.E0.A6.A5.E0.A7.8D.E0.A6.AF">আরও তথ্য</h2>
<p>We're in the process of improving information on this page for newcomers to the project. We'll be integrating some information from these pages soon, but until then you may find them interesting in their current form:</p>
<ul>
  <li><a class="external" href="http://www.joshmatthews.net/blog/2010/03/getting-involve-with-mozilla/">A guide to learning the mozilla codebase</a>.</li>
  <li><a class="link-https" href="https://wiki.mozilla.org/JavaScript:New_to_SpiderMonkey">A beginner's guide to SpiderMonkey, Mozilla's Javascript engine.</a></li>
  <li><a class="external" href="http://www.brianbondy.com/mozilla/cheatsheet/" title="http://www.brianbondy.com/mozilla/cheatsheet/">Mozilla platform development cheatsheet.</a></li>
</ul>
Revert to this revision