وائب کوڈنگ، سہاگ رات کے بعد
· 7 min read · Filippo Spinella · AI, Coding, Agents, Developer Tools
وائب کوڈنگ ان تاثرات میں سے ایک ہے جو نفرت کے لیے پیدا ہوتے ہیں اور پھر آہستہ آہستہ مفید ہو جاتے ہیں۔
پہلے تو ایسا لگتا ہے: مجھے نہیں لگتا، میں AI سے پوچھتا ہوں، جو سامنے آتا ہے اسے قبول کرتا ہوں، جاری رکھیں۔ موسیقی کے پس منظر کے ساتھ تکنیکی قرض پیدا کرنے کا ایک خوشگوار طریقہ۔
لیکن اسے اس طرح مسترد کرنا بہت آسان ہوگا۔ سچ یہ ہے کہ وائب کوڈنگ نے ایک حقیقی چیز کو روکا ہے: ماڈل کے ساتھ پروگرامنگ آئیڈیا اور پروٹو ٹائپ کے درمیان تعلق کو بدل دیتی ہے۔
پہلے آپ نے سوچا اور پھر ایک لمبی چڑھائی۔ اب اکثر آپ کو خیال آتا ہے اور آدھے گھنٹے بعد سکرین پر کچھ حرکت کرتا ہے۔ اس کے بہکاوے میں نہ آنا مشکل ہے۔
دلچسپ سوال، 2026 میں، یہ نہیں ہے کہ کیا وائب کوڈنگ درست ہے۔ یہ ہے. سوال یہ ہے کہ سہاگ رات کے بعد کیا ہوتا ہے؟
پروٹوٹائپ اقتصادی ہو گیا ہے
یہ سب سے اہم حصہ ہے۔
AI ٹولز نے شروع کرنے کی جذباتی لاگت کو کم کر دیا ہے۔ اس سے پہلے، اگر آپ کوئی آئیڈیا آزمانا چاہتے ہیں، تو آپ کو پہلے سے ہی کام کرنا پڑتا تھا: اسٹیک کا انتخاب کریں، پروجیکٹ بنائیں، بوائلر پلیٹ یاد رکھیں، لے آؤٹ لکھیں، APIs کو جوڑیں، بورنگ تفصیلات کے ساتھ جھگڑا کریں۔
اب آپ کہہ سکتے ہیں: مجھے پہلا ورژن دیں۔
اور پہلا ورژن آتا ہے۔
ہمیشہ خوبصورت نہیں ہوتا۔ ہمیشہ درست نہیں ہوتا۔ اکثر نازک۔ لیکن یہ آتا ہے۔ اور جب وہ آتا ہے تو بات چیت بدل دیتا ہے۔ اب آپ خلا میں بحث نہیں کر رہے ہیں۔ آپ کسی چیز کو چھو رہے ہیں۔
یہ ڈیزائنرز، بانیوں، پروڈکٹ مینیجرز، سہاروں کو دوبارہ لکھنے سے تھک چکے سینئر ڈویلپرز، متجسس لوگوں کے لیے بہت طاقتور ہے جنہوں نے پہلے ایڈیٹر نہیں کھولا ہوگا۔
وائب کوڈنگ ایک ہجوم ہے کیونکہ یہ زیادہ سے زیادہ لوگوں کو سافٹ ویئر بنائے جانے کا جسمانی احساس دیتا ہے۔
مسئلہ یہ ہے کہ سافٹ ویئر چلتا رہتا ہے۔
وہ حصہ جو میم کم سے کم بتاتا ہے وہ دن کے بعد ہے۔
پروٹو ٹائپ ضرور پڑھنا چاہیے۔ درست۔ تجربہ کیا. تعینات محفوظ کسی اور سے ملا ہے۔ حقیقی ڈیٹا سے منسلک۔ قابل رسائی بنایا۔ جب انحصار تبدیل ہوتا ہے تو برقرار رکھا جاتا ہے۔
یہاں خالص وائب کوڈنگ دیوار سے ٹکراتی ہے۔
ایک ماڈل بہت سارے کوڈ کو تیزی سے تیار کر سکتا ہے، لیکن کوڈ اپنے آپ میں قدر نہیں ہے۔ یہ رویے کا وعدہ ہے۔ اور وعدے کی تصدیق ہونی چاہیے۔
وائب کوڈنگ کا خطرہ بدصورت کوڈ نہیں لکھ رہا ہے۔ ہم نے ہمیشہ AI کے بغیر بھی یہ کیا ہے۔ خطرہ ملکیت کا احساس کھو رہا ہے: "ماڈل نے یہ کیا" کافی نہ سمجھنے کا بہانہ بن جاتا ہے۔
لیکن رن ٹائم بہانے قبول نہیں کرتا ہے۔ اگر کوڈ پروڈکشن میں چلتا ہے تو یہ آپ کا ہے۔
وائب کوڈنگ سے ایجنٹ انجینئرنگ تک
وائب کوڈنگ کا پختہ ورژن ایجنٹوں کا استعمال بند کرنا نہیں ہے۔ یہ ان کو زیادہ سنگین سائیکل کے ساتھ استعمال کرنا ہے.
نہیں: یہ سب کچھ پیدا کرتا ہے اور ہمیں امید ہے۔
لیکن:
- نیت بیان کرنا۔
- ایک مسودہ تیار کرنے دیں۔
- ایجنٹ سے پلان کی وضاحت کرنے کو کہیں۔
- چھوٹے فرق بنائیں؛
- لانچ ٹیسٹ؛
- جائزے کریں؛
- درست
- تب ہی شامل ہوں۔
یہ چیز مختلف نام کی مستحق ہے۔ مجھے ایجنٹ انجینئرنگ پسند ہے، چاہے یہ قدرے سنجیدہ کیوں نہ ہو۔ اس کا مطلب ہے ایجنٹوں کا استعمال سلاٹ مشینوں کے طور پر نہیں، بلکہ انجینئرنگ کے عمل میں بطور تعاون کار۔
نقطہ یہ نہیں ہے کہ وائب کوڈنگ سے توانائی کو دور کیا جائے۔ یہ اسے ٹریک دے رہا ہے۔
جہاں یہ بہت اچھا کام کرتا ہے۔
وائب کوڈنگ اس وقت کام کرتی ہے جب غلطی کی قیمت کم ہو اور ایکسپلوریشن کی قدر زیادہ ہو۔
مثالیں:
- انٹرفیس پروٹو ٹائپس؛
- ذاتی اوزار؛
- اندرونی ڈیش بورڈز؛
- چھوٹے کھیل؛
- ایک وقتی اسکرپٹ؛
- API اسکین؛
- تصور کا ثبوت؛
- اچھے ٹیسٹ کے ساتھ مکینیکل ریفیکٹر؛
- تکنیکی مواد کو ڈیمو میں تبدیل کیا جائے۔
ان صورتوں میں رفتار نقطہ ہے۔ آپ دیکھنا چاہتے ہیں کہ آیا اس خیال کی ٹانگیں ہیں۔ آپ یہ جاننا چاہتے ہیں کہ آپ کو کیا سمجھ نہیں آئی۔ آپ ایک ٹھوس گفتگو کرنا چاہتے ہیں۔
وائب کوڈنگ فارم کو ابھرنے کے لیے بہترین ہے۔
جہاں یہ خطرناک ہو جاتا ہے۔
یہ خطرناک ہو جاتا ہے جب نظام کے نتائج ہوں اور کوئی سست نہ ہو۔
ادائیگیاں، ذاتی ڈیٹا، تصدیق، اجازتیں، بنیادی ڈھانچہ، ڈیٹا بیس کی منتقلی، حساس میراثی کوڈ، تعمیل، پیداوار۔ یہاں وائب کافی نہیں ہے۔ ہمیں سختی کی ضرورت ہے۔
اس کا مطلب یہ نہیں ہے کہ AI مدد نہیں کر سکتا۔ اصل میں، یہ بہت مدد کر سکتا ہے. لیکن اسے تنگ حدود میں کام کرنا چاہیے: برانچ، سینڈ باکس، ٹیسٹ، لنٹ، ریویو، فیچر فلیگ، رول بیک۔
مانیٹر پر ٹیٹو کرنے کا جملہ آسان ہے: ایجنٹ جتنا تیز ہوگا، عمل اتنا ہی زیادہ پڑھنے کے قابل ہونا چاہیے۔
اگر آپ اس بات کی وضاحت نہیں کر سکتے کہ کیا بدلا ہے، تو آپ نے تیز نہیں کیا ہے۔ آپ نے صرف وقت سے قرض کو سمجھ کر منتقل کیا۔
ڈویلپر کا نیا کردار
سب سے دلچسپ بات یہ ہے کہ ڈویلپر کا کام غائب نہیں ہوتا ہے۔ کثافت کو تبدیل کریں۔
بوائلر پلیٹ پر کم وقت۔ نیت پر زیادہ وقت، گلنا، جائزہ لینا، انضمام، جانچ، حدود۔
ڈویلپر ایک قسم کا تکنیکی ایڈیٹر بن جاتا ہے۔ "پروف ریڈز" کے لنگڑے معنی میں نہیں۔ مضبوط معنوں میں: یہ فیصلہ کرتا ہے کہ کیا ہونا چاہیے، کیا کاٹنا چاہیے، کیا نظام سے مطابقت رکھتا ہے، کیا اعتماد کا مستحق ہے۔
ایک اچھا ایڈیٹر ہر وہ چیز نہیں لیتا جو انہیں ملتا ہے۔ وہ فخر سے یہ سب دوبارہ نہیں لکھتا۔ اچھے مواد کو پہچانتا ہے، اسے شکل میں لاتا ہے، قاری کی حفاظت کرتا ہے۔
ایجنٹوں کے ساتھ، قارئین مستقبل کی دیکھ بھال کرنے والا بھی ہوتا ہے۔ اکثر یہ تین ہفتوں میں آپ ہوتے ہیں۔
جو نمونہ میں ابھرتا ہوا دیکھ رہا ہوں۔
صحت مند ترین نمونہ یہ ہے:
- انسان: ارادہ، پابندیاں، ذوق، ذمہ داری؛
- ایجنٹ: متغیرات، سہاروں، تلاش، مقامی ترمیم، بار بار ٹیسٹ؛
- بنیادی ڈھانچہ: سینڈ باکس، سی آئی، ٹریس، اجازت، تعیناتی؛
- ٹیم: جائزہ، ملکیت، معیارات۔
جب ان میں سے ایک ٹکڑا غائب ہو تو کچھ بگڑ جاتا ہے۔
صرف انسان: سست، اکثر دہرائے جانے والے کام سے پھنس جاتا ہے۔
صرف ایجنٹ: تیز، لیکن بغیر کسی فیصلے کے۔
صرف بنیادی ڈھانچہ: بیکار چیزیں پیدا کرنے کے لیے خوبصورت عمل۔
صرف ٹیم: ایک پروٹو ٹائپ کے ارد گرد انتہائی منظم میٹنگز جو کبھی نہیں پہنچتی ہیں۔
بہترین تب ہوتا ہے جب ٹکڑے ایک دوسرے سے بات کرتے ہیں۔
ایک چھوٹی سی چیک لسٹ
وائب کوڈڈ پروٹو ٹائپ کو بڑھنے دینے سے پہلے، میں اپنے آپ سے یہ سوالات پوچھوں گا:
- کیا میں کوڈ کی ساخت کو سمجھتا ہوں؟
- کیا تنقیدی رویے کے لیے ٹیسٹ ہیں؟
- کیا میں جانتا ہوں کہ ایجنٹ نے کن فائلوں کو چھوا؟
- کیا میں نے تیار کردہ کوڈ کو ہٹا دیا ہے لیکن استعمال نہیں کیا؟
- کیا کوئی راز، ٹوکن یا جعلی ڈیٹا غلط جگہ پر ختم ہوا ہے؟
- کیا کم از کم رسائی کا احترام کیا جاتا ہے؟
- کیا تعیناتی کا رول بیک ہے؟
- کیا میرے علاوہ کوئی اسے رکھ سکتا ہے؟
اگر بہت سارے سوالات کا جواب نفی میں ہے تو یہ ناکامی نہیں ہے۔ یہ صرف ایک پروٹو ٹائپ ہے جسے تھوڑی دیر تک پروٹو ٹائپ رہنے کی ضرورت ہے۔
میرا پڑھنا
وائب کوڈنگ ایک نرم چیز کے لیے ایک بلند آواز کا لفظ ہے: کسی خیال کو خوف سے روکنے سے پہلے اسے شکل اختیار کرتے ہوئے دیکھ کر خوشی ہوتی ہے۔
میں اسے پھینکنا نہیں چاہتا۔ یہ snobbish ہو جائے گا. بہت سی اچھی چیزیں اس طرح پیدا ہوتی ہیں، آدھی ٹیڑھی اور زندہ۔
لیکن باقی سافٹ ویئر کو مزید کی ضرورت ہے۔ اسے سمجھ، جانچ، ملکیت، بنیادی ڈھانچہ، حدود کی ضرورت ہے۔ اسے کسی کے کہنے کی ضرورت ہے: اچھا، اب آئیے اسے حقیقی بنائیں۔
شاید مستقبل "سنجیدگی سے" پروگرامنگ اور "وائب" پروگرامنگ کے درمیان انتخاب کرنے کے بارے میں نہیں ہے۔ شاید یہ گیئر تبدیل کرنا سیکھ رہا ہے: ہلکے سے دریافت کریں، پھر احترام کے ساتھ مضبوط کریں۔
انسانی حصہ وہاں ہے۔ جانیں کہ کب دوڑنا ہے اور کب بیٹھ کر فرق پڑھنا ہے۔