کارکردگی کا راز کوالٹی کوڈ ہے، موثر مینیجر نہیں۔

بیوقوفوں سے بھرے پیشوں میں سے ایک مینیجرز ہیں جو پروگرامرز کا انتظام کرتے ہیں۔ سبھی نہیں بلکہ وہ لوگ جو خود پروگرامر نہیں تھے۔ وہ لوگ جو یہ سمجھتے ہیں کہ کتابوں کے طریقوں کا استعمال کرتے ہوئے کارکردگی کو "بڑھانا" (یا "افادیت" بڑھانا ممکن ہے؟) انہی کتابوں کو پڑھنے کی زحمت کے بغیر، ویڈیو ایک خانہ بدوش ہے۔

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

جن کی اکثریت ہے۔

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

وہ بالکل ایک وجہ سے پروگرامرز کے انتظام میں دوڑتے ہوئے آئے تھے: وہاں hype، پیسہ، مارکیٹ اور ایک ہی احمقوں کا ایک گروپ ہے۔ کھو جانے کی جگہ ہے۔

اگر مکینیکل اسمبلی کی پیداوار میں hype تھا، تو ہم وہاں چلیں گے. اسٹیشن ویگنیں چوس رہی ہیں۔ مجھے حیرت نہیں ہوگی کہ دسمبر میں ہمارے پڑوس میں کرسمس کے درخت فروخت کرنے والا لڑکا چھٹی پر آئی ٹی مینیجر ہے۔

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

ٹھیک ہے، مینیجرز کے بارے میں کافی ہے۔ اب بات کی طرف، پروگرامرز کے لیے۔ اعلیٰ معیار کا کوڈ لکھنا سیکھ کر ترقیاتی کارکردگی کو کیسے بڑھایا جائے۔

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

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

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

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

یہ وقت کا دوہرا ضیاع ثابت ہوتا ہے۔ جواب کے ساتھ آنے میں وقت لگتا ہے۔ اس جواب کو تیار کرنے میں بھی وقت لگتا ہے - اور اتنا کم نہیں۔

اگر اعلیٰ درجے کا کوڈ لکھنے کا ہنر موجود ہو تو ترجمہ پر اضافی وقت صرف کیے بغیر فوراً جواب تیار کیا جا سکتا ہے۔

اعلیٰ معیار کا کوڈ لکھنے کا ہنر فن تعمیر کو ڈیزائن کرتے وقت مدد کرتا ہے۔ آپ اپنے سر میں غلط، ناقابلِ حقیقت یا ہینڈ می ڈاؤن آپشنز پر غور نہیں کریں گے۔

خلاصہ کرنے کے لیے: اعلیٰ معیار کا کوڈ لکھنے کا ہنر نمایاں طور پر مسئلے کے حل کو تیز کرتا ہے۔

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

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

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

لیکن یہ اندرونی محرک کارکردگی اور پیداواری صلاحیت کے منصوبوں اور تقاضوں سے متصادم ہے۔ یہ تضاد واضح طور پر اعلیٰ معیار کے ضابطے کے حق میں حل نہیں ہوا ہے، کیونکہ لوگ لوگوں پر گستاخانہ کوڈ کے لیے تنقید بھی نہیں کرتے۔ اور منصوبہ کو پورا کرنے میں ناکامی کے لئے - یہاں تک کہ.

میں کیا کروں؟ میں دو راستے دیکھتا ہوں اور تجویز کرتا ہوں جنہیں ملایا جا سکتا ہے۔

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

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

اگر کام ابھی تک پہنچایا نہیں گیا ہے، یا ابھی شروع ہوا ہے، تو کوڈ (یا اس کے منصوبے، خیال) پر گندگی ڈالنا کافی عملی معنی رکھتا ہے - وہ شخص اسے عام طور پر کرے گا۔

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

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

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

سچ ہے، اس کے لیے آپ کو ذاتی وقت گزارنے کی ضرورت ہوگی۔ بالکل کسی دوسری ترقی کی طرح۔ اسے لاگت کے طور پر نہیں بلکہ ایک سرمایہ کاری کے طور پر دیکھیں – اپنے آپ میں۔

ماخذ: www.habr.com

نیا تبصرہ شامل کریں