ChatGPT, GitHub Copilot, Cursor এবং তাদের সমগোত্রীয় টুলগুলো এখন আপনি প্রম্পট লেখা শেষ করার আগেই একটি React component তৈরি করে দিতে পারে। একটি Next.js route-কে Supabase-এর সাথে যুক্ত করতে চান? কয়েক সেকেন্ডের মধ্যেই হয়ে যাবে। সেই জট পাকানো TypeScript utility-টি রিফ্যাক্টর করতে চান? এখানে টাইপ গার্ডসহ (type guards) তিনটি বিকল্প দেওয়া হলো। আধুনিক ওয়েব স্ট্যাক নিয়ে যারা কাজ করেন, তাদের কাছে এই অভিজ্ঞতা প্রায় জাদুকরী মনে হতে পারে।

আমি প্রতিদিন এই টুলগুলো ব্যবহার করি। আমার স্ট্যাক হলো Next.js, TypeScript এবং Supabase; আর AI আমার এডিটরেই বসে থাকে, যা কাস্টম হুক (custom hooks) তৈরি করতে, ডাটাবেস কুয়েরি জেনারেট করতে বা অগোছালো কন্ডিশনাল লজিক পরিষ্কার করতে প্রস্তুত। ছোটখাটো কাজের ক্ষেত্রে এটি একজন অত্যন্ত দ্রুতগতির জুনিয়র ডেভেলপারের মতো কাজ করে। এটি সিনট্যাক্স খুব ভালোভাবেই জানে। যেসব API surface area আমাকে গুগল করতে হয়, এটি সেগুলো মনে রাখে। বয়েলারপ্লেট (boilerplate) লিখতে লিখতে এটি ক্লান্ত হয় না।

কিন্তু সফটওয়্যার ক্রমাগত ভেঙে পড়ছে। অ্যাপগুলো আগের চেয়ে ধীরগতির মনে হচ্ছে। কাস্টমার ড্যাশবোর্ডগুলোতে ল্যাগ করছে। এজ কেসগুলোর (edge cases) কারণে ফর্ম ক্র্যাশ করছে। AI যদি কোডিং এত সহজ করে দেয়, তবে কয়েক বছর আগের তুলনায় সফটওয়্যার ব্যবহার করা এখন কেন আরও খারাপ মনে হচ্ছে?

এর উত্তর হলো—সিনট্যাক্স জেনারেট করা এবং সফটওয়্যার তৈরি করা এক জিনিস নয়।

সিনট্যাক্স মানেই আর্কিটেকচার নয়

AI টোকেনগুলো চমৎকারভাবে হ্যান্ডেল করতে পারে। এটিকে একটি useEffect হুক লিখতে বললে যা একটি Supabase রিয়েল-টাইম চ্যানেলে নজর রাখবে, আপনি এমন কিছু

সফটওয়্যার আরও স্থূল মনে হচ্ছে কারণ টিমের সামলানোর ক্ষমতার চেয়ে জটিলতা দ্রুত বাড়ছে। আমরা ছোট ছোট দল নিয়ে বড় বড় অ্যাপ্লিকেশন তৈরি করছি, এমন সব টুলস ব্যবহার করে যা আমাদের অপরাজেয় হওয়ার অনুভূতি দেয়। যখন একজন ডেভেলপার একটি বিকেলেই একটি সম্পূর্ণ ড্যাশবোর্ডের কাঠামো (scaffold) তৈরি করে ফেলতে পারেন, তখন সংস্থা আশা করে বুধবারের মধ্যে তিনটি ড্যাশবোর্ড তৈরি হয়ে যাবে। অসাবধানতার সাথে স্কেল করা ভঙ্গুর সিস্টেম তৈরি করে। স্টেট (State) ফুলে ফেঁপে ওঠে। বান্ডেল সাইজ (Bundle size) বাড়তে থাকে। রেস কন্ডিশন (Race conditions) বহুগুণ বেড়ে যায়। ইন্টারফেসটি দেখতে আধুনিক মনে হতে পারে, কিন্তু ব্যবহারকারী ব্যাক বাটন চাপলে এটি রিসেট হয়ে যায়, অথবা এটি হাইড্রেট (hydrate) হতে চার সেকেন্ড সময় নেয় কারণ AI-জেনারেটেড ডেটা ফেচিং-এর সেই জলপ্রপাতের মতো প্রবাহটি প্রোফাইল করার সময় কারো ছিল না।

মেশিনের সাথে কাজ করুন, মেশিনের জন্য নয়

এর মানে এই নয় যে আপনার এডিটর থেকে AI সরিয়ে ফেলতে হবে। এর মানে হলো আপনার কিছু সীমানা প্রয়োজন।

এটি যে কাজে দক্ষ সেই কাজে ব্যবহার করুন। একঘেয়ে কাজগুলো একে দিয়ে করান: পুনরাবৃত্তিমূলক TypeScript ইন্টারফেস, বয়েলারপ্লেট (boilerplate) Supabase কুয়েরি, Jest সেটআপ।