'দেখতে ঠিকঠাক' বাগ: আপনার AI দিয়ে বানানো app-এ নীরব ব্যর্থতা কীভাবে ধরবেন
আপনার AI app builder একটা কন্ট্যাক্ট ফর্ম বানিয়ে দিল। আপনি আপনার নাম টাইপ করলেন, সাবমিট চাপলেন, বন্ধুত্বপূর্ণ সাকসেস মেসেজটা দেখলেন, আর পরের কাজে চলে গেলেন। এক সপ্তাহ পরে আপনি এক বন্ধুর কাছে পেজটার কথা তুললেন, আর সে জিজ্ঞেস করল কেউ এটা পূরণ করেছে কি না। আপনি দেখতে গেলেন। তিনটে সাবমিশন কোনো একধরনের পেন্ডিং অবস্থায় পড়ে আছে। এর একটাও কখনো আপনার ইনবক্সে পৌঁছায়নি।
এটা একটি AI দিয়ে বানানো app-এর সবচেয়ে প্রচলিত ব্যর্থতার ধরন, আর বেশিরভাগ মানুষ যেটা নিয়ে দুশ্চিন্তা করে এটা সেটা নয়। যেসব বাগ একটা লাল এরর মেসেজ ছোড়ে সেগুলো খুঁজে পাওয়া সহজ — আপনার AI builder সেগুলো দুই মিনিটে ঠিক করে দেবে। বিপজ্জনক বাগগুলো হলো সেগুলো যেখানে স্ক্রিন দেখতে ঠিকঠাক, ইউজার ভাবে তার কাজ হয়ে গেছে, আর আপনি এক মাস ধরে টেরও পান না।
এই লেখাটা সেগুলো ধরার একটা চেকলিস্ট। “একজন QA ইঞ্জিনিয়ারের মতো কীভাবে পরীক্ষা করবেন” নয় — শুধু সেই পাঁচটা জায়গা, যেখানে কাজ করে বলে মনে হওয়া একটি AI দিয়ে বানানো app-এ আসল ইউজাররা পুড়ে যায়।
১. কিছু একটা সাবমিট করুন আর দেখুন সেটা সত্যিই কোথাও গেল কি না
আপনার AI builder যখন একটা ফর্ম বানায়, একটা প্রশ্ন করুন: ডেটাটা কোথায় যায়? বিমূর্তভাবে নয় — আক্ষরিক অর্থে, সাবমিট করার পরে আপনি কোথায় গিয়ে সেটা দেখতে পারেন?
চমকপ্রদ পরিমাণে এসব ফর্ম এমন একটা হ্যান্ডলারে পোস্ট করে যা “ধন্যবাদ!” ফিরিয়ে দেয় অথচ ইমেইলটা কখনো পাঠায় না, কোনো ডেটাবেসে সেভ করে না, কাউকে জানায়ও না। ফর্মটা একটা ভদ্র মুখোশ। তাই:
- “ZZZ TEST”-এর মতো একটা নকল কিন্তু স্পষ্ট নাম দিয়ে একটা টেস্ট এন্ট্রি সাবমিট করুন।
- dashboard, ডেটাবেস, ইনবক্স, স্প্রেডশিট খুলুন — সাবমিশনগুলো যেখানে পৌঁছানোর কথা।
- আপনার “ZZZ TEST” এন্ট্রিটা ঠিক টাইমস্ট্যাম্পসহ ওখানে খুঁজে বের করুন।
এক মিনিটের কমে এটা খুঁজে না পেলে আপনার ফর্ম ভাঙা, যদিও এটা আপনাকে সাবমিট করার জন্য অভিনন্দন জানিয়েছে। আমি একটা পেইড ল্যান্ডিং পেজে একটা “কন্ট্যাক্ট আস” ফর্ম তিন সপ্তাহ ধরে শূন্য লিড সংগ্রহ করতে দেখেছি, কারণ ইমেইল ধাপটা কখনো জোড়াই দেওয়া হয়নি। পেজটা দেখতে নিখুঁত ছিল।
২. যে পথে আপনি কখনো যেতেন না, সেটা চেষ্টা করুন
আপনার app কী করে আপনি জানেন কারণ আপনি এটা বানাতে দেখেছেন। আপনি প্রতিবার একই ক্রমে বোতামে ক্লিক করেন। আসল ইউজাররা করবে না।
যে পথটা সবচেয়ে অদ্ভুত মনে হয় সেটা বেছে নিন:
- পরপর দুবার দ্রুত সাবমিট ক্লিক করুন।
- কিছু একটা করার মাঝখানে পেজটা রিফ্রেশ করুন।
- কোনো লগইন ছাড়া একটা প্রাইভেট উইন্ডোতে এটা খুলুন।
- অ্যাপোস্ট্রফিসহ একটা নাম টাইপ করুন (O’Brien হলো ক্লাসিক ধ্বংসকারী)।
- সংখ্যা চায় এমন একটা ফিল্ডে একটা সংখ্যা টাইপ করুন, তবে সেটা ঋণাত্মক বা শূন্য করুন।
কিছু যদি দৃশ্যমানভাবে ভেঙে পড়ে, সেটা একটা আসল বাগ — কিন্তু অন্তত এটা একটা সরব বাগ। “দেখতে ঠিকঠাক” ভার্সনটা তখন, যখন দ্বিতীয় ক্লিকটা একটা ডুপ্লিকেট রেকর্ড বানিয়ে ফেলল আর স্ক্রিন থেকে সেটা বোঝার কোনো উপায় নেই। ডেটাবেসে গিয়ে দেখুন আর দুই সেকেন্ড ব্যবধানের টাইমস্ট্যাম্পসহ দুটো “ZZZ TEST” সারি খুঁজুন। সেগুলো পেলে ফর্মে একটা ডুপ্লিকেট গার্ড দরকার।
৩. একদিন অপেক্ষা করুন, তারপর ফিরে আসুন
অনেক AI-জেনারেট করা কোড অস্থায়ী মেমরি ব্যবহার করে, যা app রিডিপ্লয় বা রিবুট হলে রিসেট হয়ে যায়। app আপনার ডেটা এমন কিছুতে ধরে রাখে যাকে একজন ডেভেলপার বলবেন “ইন-মেমরি স্টেট” — একটা ডেমোর জন্য ঠিক আছে, আসল কিছুর জন্য জঘন্য।
পরীক্ষাটা নির্মম আর সহজ: কিছু ডেটা ঢোকান, ট্যাবটা বন্ধ করুন, চব্বিশ ঘণ্টা অপেক্ষা করুন, ফিরে আসুন। আপনার ডেটা যদি উধাও বা এলোমেলো হয়ে যায়, তাহলে স্টোরেজটা আসল নয়। আপনার AI builder-কে সম্ভবত সহজ ভাষায় বলতে হবে: “এই ডেটাকে একটা সার্ভার রিস্টার্টের পরও টিকে থাকতে হবে।” বললে বেশিরভাগ builder একটা ডেটাবেসে চলে যাবে; কিছু না জিজ্ঞেস করলে যাবে না।
আপনি এই পরীক্ষার একটা দ্রুত ভার্সন চালাতে পারেন আপনার builder-কে চ্যাটে জিজ্ঞেস করে, “এই ফর্মের ডেটা কোথায় স্টোর করা হচ্ছে, আর এটা কি একটা রিডিপ্লয়ের পরও টিকে থাকবে?” উত্তরে যদি “ইন মেমরি”, “সেশন”, বা “এই রানের জন্য” থাকে, তাহলে কোনো ইউজার ছোঁয়ার আগেই আপনি বাগটা খুঁজে পেয়েছেন।
৪. আপনি ছাড়া অন্য একজনকে এটা দেখান
আপনার app-এর মানে কী আপনি জানেন। আপনি এটা ডিজাইন করেছেন। আপনি বোতামগুলোর নাম দিয়েছেন। লেবেলগুলো আপনার কাছে স্পষ্ট কারণ আপনিই লিখেছেন।
কিছু না বুঝিয়ে এটা এক বন্ধুকে দেখান। বলুন, “X করার চেষ্টা করো।” তাকে লক্ষ করুন। সাহায্য করবেন না। তিনটে জিনিস ঘটবে:
- সে এমন কোথাও ক্লিক করবে যা আপনি আশা করেননি, আর app চমকপ্রদ কিছু করবে।
- লেখার সময় যে লেবেলটা স্পষ্ট মনে হয়েছিল, সেটায় সে আটকে যাবে।
- আপনি যা করাতে চেয়েছিলেন সে সেটাই করবে, কিন্তু আপনি যা ভেবেছিলেন তার অর্ধেক ধাপে, আর একটা স্ক্রিন পুরোপুরি এড়িয়ে যাবে — কখনো এমন একটা স্ক্রিন যেটা পূরণের ওপর app নির্ভর করছিল।
এর প্রতিটাই একটা আসল বাগ। কোনোটাই একটা এরর ছোড়ে না। বন্ধুটা বলবে, “ওহ, কিউট তো,” আর ল্যাপটপটা ফিরিয়ে দেবে। তার মুখ দেখে আপনি বুঝবেন, যে জায়গায় কোনো জোড়ার দাগ আছে বলে আপনি ভাবেননি, সেখানেই সে ত্রিশ সেকেন্ড হারিয়ে ছিল।
৫. এটা যে ইমেইল পাঠায়, সেটা একটা ফোনে পড়ুন
আপনার app যদি ইমেইল পাঠায় — কনফার্মেশন, পাসওয়ার্ড রিসেট, ইনভয়েস — একটা ফোনে একটা খুলুন, আর আপনি সাধারণত যেটা ব্যবহার করেন তার চেয়ে আলাদা একটা ইমেইল ক্লায়েন্টে আরেকটা খুলুন। AI দিয়ে বানানো app-গুলো এমন ইমেইল জেনারেট করে যেগুলো ডেস্কটপে Gmail-এ দারুণ দেখায় আর Android-এ Outlook-এ স্ট্যাটিকের মতো দেখায়।
একই যুক্তি প্রযোজ্য PDF রসিদ, ডাউনলোডযোগ্য এক্সপোর্ট আর “এই লিংকটা শেয়ার করুন” বোতামের ক্ষেত্রে। যে জিনিসটা আপনার app-এর বাইরে, আসল দুনিয়ায় যায়, সেটাই একটা AI বিল্ডের সবচেয়ে কম-পরীক্ষিত অংশ। আবার এটাই সেই অংশ যা আপনার ইউজাররা সবচেয়ে বেশি দেখে। আমার পরিচিত একজন ফাউন্ডার একটা সুন্দর চেকআউট ফ্লো শিপ করেছিলেন, যার রসিদ PDF iPhone-এ ছিল একটা নিরেট কালো চারকোনা। কেউ অভিযোগ করল না — তারা স্রেফ কেনা বন্ধ করে দিল।
“এটা কাজ করে” সম্পর্কে অস্বস্তিকর সত্যি
আপনি যখন একটি AI app builder দিয়ে বানান, “এটা কাজ করে” মানে “এটা আমার মেশিনে, আমার ব্রাউজারে, আমার ঠিক ক্লিকগুলো দিয়ে, যেদিন বানিয়েছিলাম সেদিন চলেছিল।” যতটা শোনায়, এটা তার চেয়ে অনেক ছোট একটা দাবি।
আসল app কাজ করে যখন:
- ভিন্ন একজন মানুষ এগুলো ব্যবহার করে।
- ডেটা ডেমোর চেয়ে বেশি সময় টিকে থাকে।
- app-এর ভেতর দিয়ে পথটা এমন একটা যা আপনি অনুমান করেননি।
- আউটপুটটা এমন একটা ডিভাইসে পড়া হয় যেটায় আপনি পরীক্ষা করেননি।
ভালো কিছু শিপ করতে আপনাকে একজন সফটওয়্যার টেস্টার হয়ে উঠতে হবে না। আপনাকে শুধু কাউকে app-এর অস্তিত্বের কথা বলার আগের দিন একবার এই পাঁচটা পরীক্ষা করতে হবে। এতে মোটামুটি বিশ মিনিট লাগে। আর নইলে যেসব নীরব বাগ একজন পেইং ইউজারের কাছে পৌঁছে যেত, তার দশটার মধ্যে নয়টা এগুলো ধরে ফেলবে।
আপনার যদি শুধু একটার সময় থাকে, প্রথমটা করুন। কিছু একটা সাবমিট করুন। অন্য পাশে গিয়ে সেটা খুঁজে বের করুন। বেশিরভাগ AI দিয়ে বানানো app দেখতে ঠিকঠাক। কৌশলটা হলো নিশ্চিত করা যে এগুলো সত্যিই ঠিক আছে।
এতে যদি কিছু মিলে যায়, তাহলে পরের কাজটা মূল্যবান — একটা কাগজ নিয়ে বসে আপনার app-এর তিনটে জিনিস লিখে ফেলুন যেগুলোতে এটার কখনো নীরবে ব্যর্থ হওয়া চলবে না — ফর্ম, ইমেইল, পেমেন্ট, আপনারটা যা-ই হোক — আর ওপরের পরীক্ষাগুলো দিয়ে সেগুলোর প্রতিটা ঘুরে দেখুন। এখনকার বিশ মিনিট আপনাকে পরে অনেক রাতের ঘুম কিনে দেয়।