JavaRush /جاوا بلاگ /Random-UR /اوپن سورس پروجیکٹس: یہ کیا ہے اور آپ کو اوپن سورس کمیونٹی...

اوپن سورس پروجیکٹس: یہ کیا ہے اور آپ کو اوپن سورس کمیونٹی کا حصہ کیوں بننا چاہیے۔

گروپ میں شائع ہوا۔
ہم آپ کی توجہ میں یو ایس اے کے ایک ڈویلپر جوناتھن بیک مین کے ایک مضمون کی موافقت لاتے ہیں ، جس نے اوپن سورس پروجیکٹ میں حصہ لینے کے اپنے ذاتی تجربے کو بیان کیا۔ اوپن سورس پروجیکٹس: یہ کیا ہے اور آپ کو اوپن سورس کمیونٹی کا حصہ کیوں بننا چاہیے - 1اس مواد سے آپ سیکھیں گے:
  • اوپن سورس پروجیکٹس کیا ہیں؛
  • آپ کس طرح حصہ ڈال سکتے ہیں؛
  • منصوبوں اور کاموں کو کہاں تلاش کرنا ہے۔

اوپن سورس پروجیکٹس کو لینا کیوں قابل قدر ہے؟

سب سے پہلے، یہ مفت پروگرامنگ پریکٹس ہے۔ آپ اپنے ریزیومے میں ایسے پروجیکٹس بھی شامل کر سکتے ہیں، اور، مجھ پر یقین کریں، اگر آپ عام مقصد کے لیے اپنی شراکت کی وضاحت کر سکتے ہیں، تو "جونیئر" کا مقام حاصل کرنا "صرف کورسز مکمل کرنے" کی صورت میں بہت آسان ہوگا۔

اپنی انگلیوں پر اوپن سورس پروجیکٹ

کیا آپ پارک میں چہل قدمی کرنا پسند کرتے ہیں؟ شاید ابھی نہیں، کیونکہ یہ پہلے ہی نومبر ہے، جیسا کہ وہ کہتے ہیں "موسم سرما آ رہا ہے!" مجھے یقین ہے کہ اچھے موسم میں آپ درختوں کے درمیان اچھی طرح سے تیار گلیوں میں گھومنے کا لطف اٹھائیں گے۔ لیکن کیا ہوگا اگر آپ کے پسندیدہ پارک کو میونسپل سروسز نے ترک کردیا؟ یہ تیزی سے ایک گندگی بن جائے گا. کچرا ہر طرف بکھرا ہوگا، کتے کے فضلے کے ساتھ ملا ہوا ہوگا، بے چینی سے انتظار کیا جائے گا کہ آخر کوئی ان میں قدم رکھے۔ اس بات کا امکان نہیں ہے کہ آپ سیر کے لیے وہاں جاتے رہیں گے۔
اوپن سورس پروجیکٹس: یہ کیا ہے اور آپ کو اوپن سورس کمیونٹی کا حصہ کیوں بننا چاہیے - 2
اب ایک خوش کن تصویر کا تصور کریں: رضاکاروں کے ایک گروپ نے اپنے پسندیدہ پارک کو برقرار رکھنے کی ذمہ داری لی ہے۔ وہ باقاعدگی سے فنڈز مختص کرتی ہے تاکہ کسی ناقص اور نظر انداز چیز کو بہت خوبصورت اور دوسرے لوگوں کے لیے مفید میں تبدیل کیا جا سکے۔ اور وہ یہ کام نہ صرف ذاتی خوشی کے لیے کرتا ہے بلکہ عوام کی خوشی کے لیے بھی کرتا ہے۔ غالباً، آپ کے پسندیدہ پارک کو ہمارے ٹیکسوں سے تعاون حاصل ہے، لیکن عمومی طور پر اوپر کی صورتحال یہ بتاتی ہے کہ اوپن سورس پروجیکٹس کیسے کام کرتے ہیں۔
مفت اور اوپن سورس سافٹ ویئر ایسی ایپلی کیشنز ہیں جن کا کوڈ ہر کسی کے لیے دستیاب ہے۔ انہیں ڈاؤن لوڈ اور/یا کسی بھی تعداد میں آلات پر استعمال کیا جا سکتا ہے۔ آپ پروگرام کوڈ لینے اور اس کے ساتھ جو چاہیں کرنے کے لیے آزاد ہیں، اور پھر اسے اپنے دوستوں میں تقسیم کر سکتے ہیں۔ اس کی وجہ یہ ہے کہ ایسے پروگرام مفت لائسنس کے تحت تقسیم کیے جاتے ہیں، جیسے MIT لائسنس۔
جب کہ تمام سافٹ ویئر بنیادی طور پر آخری صارف کے لیے ڈیزائن کیے گئے ہیں، ایک ڈویلپر کے طور پر آپ اوپن سورس پروجیکٹ میں حصہ ڈال سکتے ہیں اور نئے سافٹ ویئر کی دستیابی کے ساتھ دنیا کو ایک بہتر جگہ بنا سکتے ہیں۔ اگر آپ اوپن سورس پروجیکٹ میں حصہ لینا چاہتے ہیں، تو آپ کو یہ سمجھنا ہوگا کہ اس کا انچارج کون ہے اور ان لوگوں کے ساتھ تعامل قائم کرنے کی کوشش کریں۔ میرا مطلب یہ نہیں ہے کہ انہیں سوالات کے ذریعے آدھی موت تک عذاب کریں اور کام کے دوران جامع نگرانی کی توقع کریں۔ آپ ایک آزاد بالغ ہیں (یہاں تک کہ اگر آپ ابھی تک بالغ نہیں ہیں، خود مختار ہونا ایک اچھا خیال ہے!) مجھے امید ہے کہ اب آپ کو ہاتھ سے رہنمائی کرنے اور ہر قدم کو بیان کرنے کی ضرورت نہیں ہے۔ میں اس کے ساتھ آپ کی کوئی مدد نہیں کر رہا ہوں۔ لیکن میں آپ کو کچھ اچھا مشورہ دے سکتا ہوں جو آپ کی مدد کرے گا جب آپ اپنا پہلا حصہ ڈالنے کی کوشش کریں گے اور ممکنہ طور پر اوپن سورس پروجیکٹ میں اپنے کوڈ کے ٹکڑے کو شامل کریں گے۔

ایک پروجیکٹ تلاش کریں۔

اگر آپ کسی اوپن سورس پروجیکٹ کی تلاش کر رہے ہیں جس میں شامل ہونے کے لیے، تو ایسا ڈھونڈیں جس میں واقعی آپ کی دلچسپی ہو۔ یہ ضروری ہے کہ بہت سارے کام ہیں جن میں سے آپ انتخاب کرسکتے ہیں۔ آپ کے سامنے آنے والے پہلے پروجیکٹ کے لئے طے نہ کریں۔ اس طرح، آپ زیادہ حوصلہ افزائی کریں گے اور کاموں کو سنجیدگی سے لینے کے قابل ہوں گے۔

اوپن سورس پروجیکٹس کہاں تلاش کریں۔

وہ عوامی GitHub ذخیروں میں مل سکتے ہیں۔ دراصل، یہ وہ جگہ ہے جہاں ہر کوئی ان کی تلاش میں ہے۔ وہاں بہت سی دلچسپ چیزیں ہیں ۔

ایک اچھا پہلا مسئلہ تلاش کرنا

ایک اچھی پہلی اسائنمنٹ تلاش کرنا کامیابی کی کلید ہے۔ جتنا آپ سنبھال سکتے ہیں اس سے زیادہ نہ لیں۔ اپنے تمام علم کو ایک ساتھ دکھانے کی کوشش نہ کریں: آسان ترین مسئلہ تلاش کریں۔ یہ سمجھنے کا بہترین طریقہ ہے کہ آپ اور پروجیکٹ کیوریٹرز کے درمیان بات چیت کیسے کام کرتی ہے۔ کچھ پروجیکٹس میں، کاموں کو خاص لیبل کے ساتھ نشان زد کیا جاتا ہے جو مشکل کی سطح کو ظاہر کرتا ہے اگر کیوریٹر انہیں نوسکھئیے ڈویلپرز کے لیے موزوں سمجھتے ہیں۔ جب آپ اپنے منتخب منصوبے کے مقاصد کو دیکھتے ہیں تو اس طرح کی چیز تلاش کریں۔
اوپن سورس پروجیکٹس: یہ کیا ہے اور آپ کو اوپن سورس کمیونٹی کا حصہ کیوں بننا چاہیے - 3
جب آپ کو کوئی مناسب کام مل جائے تو پروجیکٹ کیوریٹرز کو ایک تبصرہ لکھیں کہ آپ اس پر کام کرنا چاہیں گے۔ اکثر وہ آپ کو آگے بڑھنے کی اجازت دیں گے، لیکن شاید کسی وجہ سے وہ آپ سے کوئی دوسرا آپشن منتخب کرنے کو کہیں گے۔ ایسا محسوس نہ کریں کہ آپ جواب آنے سے پہلے شروع نہیں کر سکتے، لیکن اگر آپ کو رکنے اور کچھ اور کرنے کو کہا جائے تو لچکدار رہیں۔ اپنی پہلی اسائنمنٹ کے لیے، میں نے ایسی چیز کا انتخاب کیا جہاں سی ایس ایس کو تھوڑا سا موافقت کرنا ضروری تھا۔ مجھے ایسا لگتا تھا کہ میں اسے نافذ کر سکتا ہوں اور اس نے مجھے افسردہ نہیں کیا۔

آغاز اور تعارف

کسی پروجیکٹ کو شروع کرنا دھوکہ دہی سے آسان لگتا ہے، لیکن اس میں بہت سے نقصانات ہیں۔ ایک بار جب آپ حل کرنے کے لیے کوئی مسئلہ منتخب کر لیتے ہیں، تو آپ کو اپنی مشین پر پروجیکٹ کو تعینات کرنے کی ضرورت ہوتی ہے۔ زیادہ تر امکان ہے کہ، پراجیکٹ کے ذرائع "بھاری" ہوں گے (حالانکہ یہ پروجیکٹ پر منحصر ہے)۔ پروجیکٹ کو چلانے کے لیے آپ کو بڑی تعداد میں انحصار انسٹال کرنا پڑ سکتا ہے۔
اوپن سورس پروجیکٹس: یہ کیا ہے اور آپ کو اوپن سورس کمیونٹی کا حصہ کیوں بننا چاہیے - 4
میں جس پروجیکٹ میں شامل تھا، اس میں چند ایسے لمحات تھے، لیکن اس کا مطلب یہ نہیں کہ یہ آسان تھا۔ مثال کے طور پر، ہمیں روبی کے مخصوص ورژن اور Rails، PostgreSQL، Phantom JS اور Gemfile کے مخصوص ورژن انسٹال کرنے کے لیے جواہرات کی فہرست کے ساتھ انسٹال کرنا تھا۔ یہ بہت زیادہ ضرورت کی طرح نہیں لگتا تھا، لیکن مجھے روبی کے مخصوص ورژن کو تلاش کرنے میں ایک بڑا مسئلہ تھا جو اس پروجیکٹ کو تیار کرنے کے لیے درکار تھا جو میرے کمپیوٹر پر کام کرے گا۔ آخر میں، میں نے ورژن کو تبدیل کرنے کے لیے RVM کا استعمال کیا: یہ ایک اور چیز ہے جو میں نے سیکھی، صرف پروجیکٹ کو انسٹال کرنے اور اسے کمپیوٹر پر کام کرنے کے لیے۔ جب میں نے پروجیکٹ لانچ کیا تو میں نے دیکھا کہ یہ انگولر اور کافی اسکرپٹ میں لکھا گیا تھا، بیک اینڈ سے آنے والے ڈیٹا کے ساتھ بات چیت کرنے کے لیے ایکٹو ریکارڈ کا استعمال کرتے ہوئے۔ یہ ہمارے لیے نئی چیزیں تھیں، اور ہمیں پروجیکٹ پر کام شروع کرنے سے پہلے خود ہی ان کا پتہ لگانا تھا۔

دوسرے کاموں کی تلاش کریں۔

ہو سکتا ہے کہ آپ کو ابھی اس کی ضرورت نہ ہو، یا مستقبل قریب میں بھی اس کی ضرورت ہو، لیکن میں فوراً ہی اس میں داخل ہو گیا۔ یہ بہت خوش قسمتی ہے کہ فوری طور پر یہ محسوس کیا جائے کہ پروجیکٹ میں کچھ صحیح طریقے سے کام نہیں کر رہا ہے۔ اگر آپ کو ایسا کوئی بگ ملتا ہے، تو ورکنگ سائٹ پر جائیں اور دیکھیں کہ آیا یہ وہاں ہے۔ حمایت کے لیے لکھنے میں جلدی نہ کریں، شاید سب کچھ کام کر رہا ہے۔ عام طور پر کیوریٹر صورتحال کو کنٹرول کرتے ہیں اور اس میں کوئی اہم غلطی نہیں ہونی چاہیے۔ لیکن اگر آپ کو کوئی ایسی چیز ملتی ہے جس پر توجہ دینے کی ضرورت ہوتی ہے، تو پہلے سے موجود کاموں میں سے تلاش کریں اور چیک کریں۔ زیادہ امکان ہے، مشکل کام پہلے ہی لکھا جا چکا ہے اور زیادہ امکان ہے کہ آپ کو کچھ کرنے کی ضرورت نہیں ہے۔ اگرچہ آپ جس چیز پر کام کر رہے ہیں اسے مکمل کر لینے کے بعد اسے خود ہی حل کرنے کے قابل ہو سکتا ہے۔
اوپن سورس پروجیکٹس: یہ کیا ہے اور آپ کو اوپن سورس کمیونٹی کا حصہ کیوں بننا چاہیے - 5
جب آپ کسی نئے کام کو ڈیزائن اور لکھتے ہیں، تو یقینی بنائیں کہ آپ اسے زیادہ سے زیادہ تفصیل سے بیان کرتے ہیں۔ آپ جو کچھ کہنا چاہ رہے ہیں اسے واضح طور پر واضح کرنے کے لیے اسکرین شاٹس کا استعمال کریں اور سائٹ پر نظر رکھنے والے ہر فرد کے لیے اس مسئلے کو سمجھنے کے لیے اسے ہر ممکن حد تک آسان بنائیں جو آپ بیان کر رہے ہیں۔ میرے معاملے میں، میں نے جو کام تفویض کیا گیا تھا اس سے آگے میں نے دو اضافی کاموں کا اضافہ کیا۔ میں پل کی درخواست بھی نہیں کر سکتا تھا (یہ سیکیورٹی پابندیوں کی وجہ سے تھا)۔ ایسا محسوس ہوا کہ میں نے پروجیکٹ کے لیے دو قدم پیچھے ہٹا دیا ہے، لیکن حقیقت میں، کاموں کو بیان کرنا اور ترتیب دینا اب بھی پروجیکٹ کو آگے بڑھاتا ہے۔ پل کی درخواست بنانا (PR)
پل کی درخواست - ریپوزٹری (پروجیکٹ کوڈ ریپوزٹری) میں کوڈ کو تبدیل کرنے کی تجویز۔ اگر آپ کسی اوپن پراجیکٹ پر کام کر رہے ہیں، تو آپ کو ہمیشہ اپنی برانچ بنانی چاہیے، اور یہ مشورہ دیا جاتا ہے کہ مین کوڈ (ماسٹر) میں تبدیلیاں اس وقت کریں جب پراجیکٹ کیورٹرز کی طرف سے پل کی درخواستیں منظور ہو جائیں۔
آپ نے آپ کو تفویض کردہ مسئلہ حل کر دیا ہے۔ پیش رفت کی رپورٹ لکھنے سے پہلے، کسی ایسے شخص کو حل دکھائیں جو اس کا جائزہ لے سکے۔ پیش نظارہ کرنا ہمیشہ ایک بہترین خیال ہوتا ہے، لیکن اوپن سورس پروجیکٹ میں آپ کی پہلی شراکت کے لیے، یہ ضروری ہے ۔ آپ کوڈ کے نامکمل یا غلط طریقے سے کام کرنے والے ٹکڑے کی وجہ سے شرمانا نہیں چاہتے ہیں؟ اسی وجہ سے، پراجیکٹ کیوریٹر آپ سے پل کی درخواست جمع کرانے سے پہلے تمام ضروری ٹیسٹ پاس کرنے کو کہیں گے۔ اس لیے، اپنے کام پر اعتماد کرنے کے لیے وقت سے پہلے خود کو چیک کریں اور کیوریٹرز سے تصدیق حاصل کرنے سے پہلے اگر ضروری ہو تو اسے درست کریں۔ اس بات کو یقینی بنائیں کہ آپ ان ناموں یا طرز پر عمل پیرا ہیں جو پروجیکٹ کیورٹرز کے ذریعہ قبول کیے گئے ہیں۔ آپ CONTRIBUTING.md فائل میں معلومات حاصل کر سکتے ہیں ، زیادہ تر پروجیکٹس میں یہ موجود ہے۔ اس کے علاوہ وہاں آپ واضح کر سکتے ہیں کہ آپ کو کس شکل میں کمٹ میسج بنانا چاہیے، آپ کی پل کی درخواست کی تفصیل کیسی ہونی چاہیے اور نیا کام کیسے بنانا ہے۔

کام چھوڑ دو

کبھی کبھی آپ کو احساس ہوتا ہے کہ آپ کام پر نہیں ہیں۔ یا آپ نے سوچا کہ آپ کے پاس کسی پروجیکٹ کے لیے وقت ہے، لیکن حقیقت میں آپ نے ایسا نہیں کیا، فوری کام آپ کے پاس آیا اور آپ کو اس کے ساتھ آگے بڑھنے کی ضرورت ہے۔ یہ عام بات ہے۔ اہم بات یہ ہے کہ ٹاسک سے ان سبسکرائب کریں اور کیوریٹرز کو پیغام دیں تاکہ وہ جان لیں کہ آپ پروجیکٹ پر کام جاری نہیں رکھ سکیں گے۔ لیکن کسی بھی حالت میں کیوریٹرز کو بتائے بغیر اور اس کی رکنیت ختم کیے بغیر کسی کام کو ترک نہ کریں۔
اوپن سورس پروجیکٹس: یہ کیا ہے اور آپ کو اوپن سورس کمیونٹی کا حصہ کیوں بننا چاہیے - 6

نتیجہ

مجھے یقین ہے کہ اوپن سورس پروجیکٹ کی ترقی میں حصہ لینا ایک بہت بڑا فائدہ ہے۔ آپ مشق کر رہے ہیں اور ایک ہی وقت میں دوسرے لوگوں کے لیے مفید کام کر رہے ہیں۔ دوسری طرف، یہ پروجیکٹ آپ کے تجربے کی فہرست میں ایک اور نقطہ بن سکتا ہے اور مطلوبہ پوزیشن کے لیے لڑتے وقت اضافی فوائد فراہم کر سکتا ہے۔ ابھی پچھلے جمعہ کو میں نے ایک پروگرامر سے بات کی جس کو اوپن سورس پروجیکٹس پر اس کے کام کی بدولت اس کی نوکری مل گئی (ایک بہت ہی عمدہ اور دلچسپ، وہ جو دنیا کو بہتر سے بدل سکتا ہے، اور میں واقعی مذاق نہیں کر رہا ہوں)۔
تبصرے
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION