AI-Coding আর প্রোডাক্টিভিটি এর ফাঁদ - ডাটা যা বলে
AI ব্যবহার করে প্রোডাক্টিভিটি দুমদাম বেড়ে যাচ্ছে সবখানে শনৈশনৈ করে - এহেন দাবি নিয়ে শুরু থেকেই সন্দিহান ছিলাম। কারণ তেমন কিছু না - বছর দশেক (বা বিশেক, বা ত্রিশেক) আগে বার হওয়া সফটওয়্যার ইঞ্জিনিয়ারিং এর সাথে জড়িত কয়েকটা পেপারের মূল বক্তব্যগুলো মনে ছিলো।
১) সফটওয়্যার ইঞ্জিনিয়ারিং এ দৈনন্দিন কাজের সবচেয়ে বেশি সময় যায় কী করতে গিয়ে? কোডিং এ কী লেখা হয়েছে, সেটা হোক নিজের লেখা বা টীম মেম্বারের, সেটা বুঝতে গিয়ে যায় প্রায় ৭০% সময়! মাত্র ৫-১৫% সময় লাগে কোড লিখতে। পেপারটা ২০১৫ এর।
২) গ্লোবাল সফটওয়্যার ইঞ্জিনিয়ারিং - মানে মাল্টি ন্যাশনাল টীম গুলোর ক্ষেত্রে সবচেয়ে বেশি সময় যায় কীসে? অন্য দেশের টীম মেম্বারের রেসপন্স পেতে। কিন্তু কিসের জন্য রেসপন্স? অন্যেরা কোডে কে কী করেছে সেটা বুঝতে! এই বিষয়ের পেপারটা ২০০৮ এর।
৩) এবারে আসি একদম ক্লাসিক লিটারেচার এ। ফ্রেডি ব্রুকস তার মিথিকাল ম্যান মান্থ এ লিখেছিলেন সেই ১৯৭৫ এর দিকে - প্রোগ্রামিং সহজে স্কেল আপ করা যায় না, কারণ ঐ কে কী লিখেছে সেটা বুঝা বড়ই কঠিন। আর যখন কেউ টীমে ঢুকে, তখন তার সময় চলে যায় এটা বুঝতে বুঝতেই যে কই কোড আছে, কেন আছে, কই পাল্টাচ্ছে, আর কেন পাল্টাচ্ছে। দুমদাম করে নতুন কাউকে ঢুকালে সে পুরো ব্যাপারটা না বুঝেই কোডে হাত লাগাবে এটাও মোটামুটি নিশ্চিত, আর তার পরে পুরানো যারা আগে যা বুঝতো - সেটাতেও গ্যাঞ্জাম লেগে যাবে। তা এইগুলোর কারণে AI/Vibe-Coding এর কারণে কোডের লাইনের সংখ্যা বাড়বে। কিন্তু সফটওয়্যার ইঞ্জিনিয়ারিং এ সবচেয়ে বেশি সময় লাগে মেইনটেনেন্স-এ, মানে যে কোড ইতিমধ্যেই আছে সেটার পরিবর্তন এ, আর তার সাথে নতুন কোড লেখাতে। কিন্তু জেনারেট করা কোড যদি না বুঝি আমরা, সময়ের সাথে সাথে ঐ না বুঝার পরিমাণটাও বাড়বে। এটার একটা গালভরা নামও হয়ে গেছে ইন্ডাস্ট্রিতে - Comprehension Debt।
এসব মিলিয়েই আমি ঐ প্রোডাক্টিভিটি বাড়ছে দাবি বিষয়ে সন্দিহান ছিলাম - শুরু থেকেই।