আমরা আবারও Dreamweaver-এর সেই ভুলটি করছি
AI কোডের ওপর ডিজাইনের নিয়ন্ত্রণ ফিরিয়ে দিচ্ছে।
বিশ বছর ধরে ইন্ডাস্ট্রি ডিজাইন এবং কোডকে আলাদা রাখার চেষ্টা করেছে। ডিজাইনাররা ডিজাইন করতেন। ডেভেলপাররা তা তৈরি করতেন। একজন মানুষ এই দুটির মধ্যে অনুবাদকের কাজ করতেন।
এখন, পরিস্থিতির পরিবর্তন ঘটছে। AI একটি ডিজাইন ফাইল নেয় এবং সরাসরি কোড লিখে ফেলে। এটি শুনতে দ্রুত মনে হয়। এটি দক্ষ মনে হয়। কিন্তু এটি একটি বিশাল ঝুঁকি তৈরি করে।
পুরনো Dreamweaver-এর দিনগুলোতে, একজন মানুষ মাঝখানে থাকতেন। সেই ব্যক্তি কোডের মান নিশ্চিত করতেন। AI-এর ক্ষেত্রে, ডিজাইন সরাসরি কোডে চলে যায় এবং নিয়ন্ত্রণের দায়িত্বে কেউ থাকে না।
এটি ডিজাইনারদের কোনো সমস্যা নয়। ডিজাইনাররা চমৎকার কাজ করেন। একটি ডিজাইন ফাইল বিচার করা হয় সেটি দেখতে কেমন তার ওপর ভিত্তি করে। কিন্তু একটি ডিজাইন সিস্টেম বিচার করা হয় সেটি কীভাবে কাজ করে, কীভাবে এটি স্কেল করা যায় এবং এটি কতটা টেকসই তার ওপর ভিত্তি করে।
AI এই সীমারেখাটি অস্পষ্ট করে দিচ্ছে। এটি একটি স্থির ডিজাইন স্ন্যাপশটকে একটি স্থায়ী ভিত্তি হিসেবে বিবেচনা করে।
এটি ব্যর্থ হওয়ার দুটি প্রধান উপায় নিচে দেওয়া হলো:
- নামকরণে ভুল: টিমগুলো Figma-তে ডিজাইনারদের দেওয়া নামের ওপর ভিত্তি করে কোড পাইপলাইন তৈরি করে। যদি একজন ডিজাইনার একটি ভেরিয়েবলের নাম পরিবর্তন করেন, তবে পুরো কোড পাইপলাইনটি ভেঙে যায়। AI একটি ভিজ্যুয়াল ভ্যালু (visual value) এবং একটি ফাংশনাল ইনটেন্টের (functional intent) মধ্যে পার্থক্য করতে পারে না।
- প্রেক্ষাপটের অভাব: একটি ডিজাইন ফাইল একটি স্ক্রিনের একটি নির্দিষ্ট অবস্থা (state) দেখায়। এটি এরর স্টেট (error states), লোডিং স্টেট (loading states) বা একটি ডাটাবেস কীভাবে UI-তে ডেটা সরবরাহ করে তা দেখায় না। সেই লজিক কোডের মধ্যে থাকে, ডিজাইন ফাইলের মধ্যে নয়।
ইন্ডাস্ট্রি এটি ঠিক করার চেষ্টা করছে। AI-কে আরও কাঠামোবদ্ধ করতে Google তাদের DESIGN.md ওপেন-সোর্স করেছে। Fixel-এর মতো টুলগুলো টেস্টিংয়ের সময় Figma-র সাথে কোড মিলিয়ে দেখে "design drift" ধরতে সাহায্য করে।
কিন্তু এই টুলগুলো থাকা সত্ত্বেও একটি ব্যবধান রয়ে গেছে।
ডিজাইন কোনো ভিত্তি নয়। এটি একটি স্ন্যাপশট মাত্র।
আসল সমাধান ডিজাইনারদের ইঞ্জিনিয়ার বানিয়ে দেওয়া নয়। আসল সমাধান হলো UX ইঞ্জিনিয়ারকে সেই "মাঝখানের অংশটি" (middle) সামলানোর ক্ষমতা দেওয়া।
এই মাঝখানের অংশটি হলো একটি সেতু যেখানে:
- ডিজাইন টোকেনগুলো (Design tokens) সার্বজনীন স্ট্যান্ডার্ডের সাথে মানানসই হয়।
- AI বিদ্যমান সিস্টেমের ওপর ভিত্তি করে কোড প্রস্তাব করে।
- মানুষ চূড়ান্ত আর্কিটেকচারাল সিদ্ধান্ত গ্রহণ করে।
AI স্ন্যাপশট লেভেলে দারুণ কাজ করে। এটি আপনাকে দ্রুত প্রজেক্ট শেষ করতে সাহায্য করে। কিন্তু প্রকৃত মূল্যের জন্য একটি মজবুত ভিত্তি প্রয়োজন।
কোনো মানুষের তত্ত্বাবধান ছাড়া ডিজাইনকে কোড নিয়ন্ত্রণ করতে দেবেন না। ইঞ্জিনিয়ারের ভূমিকা পরিবর্তিত হচ্ছে। আপনি এখন আর কেবল অনুবাদ করছেন না। আপনি ভিশন এবং সিস্টেমের মধ্যে একটি চুক্তির (contract) ব্যবস্থাপনা করছেন।
আপনি কীভাবে সিদ্ধান্ত নেবেন যে কোন কাজটি আপনার হাতে থাকবে এবং কোন কাজটি আপনি AI-কে দেবেন?
Source: https://dev.to/slafleche/were-making-the-dreamweaver-mistake-again-on-purpose-this-time-ema
Optional learning community: https://t.me/GyaanSetuAi
