নীরব ব্যর্থতা: ফুটবল ডেটা পাইপলাইনের খালি স্কিমা এবং প্রমাণের শৃঙ্খল
**মূল উত্তর (≤৬০ শব্দ):** ২০২৬ সালের একটি ফুটবল ডেটা বিশ্লেষণে Stage-1 ইনপুট সম্পূর্ণ খালি এসেছিল — শুধু 'ডোমেইন: ফুটবল' ছাড়া কোনো তথ্য ছিল না। ফলে কোনো দল, খেলোয়াড় বা ম্যাচ নিয়ে সিদ্ধান্ত সম্ভব হয়নি। একমাত্র সত্য সিদ্ধান্তটি প্রক্রিয়াগত: পাইপলাইনে নীরব ব্যর্থতা ঘটেছে, যা বিশ্লেষণের আগে সারাতে হবে। **মূল তথ্য:** - Stage-1 স্কিমার সব ঘর খালি ছিল, শুধু ডোমেইন লেবেল 'ফুটবল' ভরা ছিল। - কোনো দল, খেলোয়াড়, কোচ, ম্যাচ, ট্রান্সফার ফি বা তারিখ কোথাও উল্লেখ ছিল না। - নয়টি বিশ্লেষণী দিকই 'তথ্য অপর্যাপ্ত' হিসেবে চিহ্নিত হয়েছে। - মূল ঝুঁকি ফুটবল নয়, বরং খালি ইনপুট থেকে গল্প বানানোর প্রবণতা (কনফাবুলেশন)। - নীরব পাইপলাইন ব্যর্থতা ধরতে null-rate মনিটরিং ও গার্ড ক্লজ প্রয়োজন। **সোর্স অ্যাট্রিবিউশন:** Stage-2 Deep Professional Analysis — Football Domain; মূল সোর্স: N/A (অজ্ঞাত), প্রাপ্তি: ২০২৬। **সম্ভাব্য ফলো-আপ প্রশ্নোত্তর:** প্রশ্ন: খালি ইনপুট মানে কি কোনো প্রভাব নেই? উত্তর: না — খালি মানে 'অজানা', 'প্রভাব নেই' নয়। প্রশ্ন: সমস্যাটি আসলে কোথায়? উত্তর: সম্ভবত Stage-1 এক্সট্রাকশন বা ইনপুট রাউটিং স্তরে একটি নীরব ব্যর্থতা। প্রশ্ন: সমাধান কী? উত্তর: null-input guard clause ও ডেটা প্রোভেন্যান্স মনিটরিং চালু করা।
নীরব ব্যর্থতা: ফুটবল ডেটা পাইপলাইনের খালি স্কিমা এবং প্রমাণের শৃঙ্খল
অলিভার জোন্স | ম্যানচেস্টার
রাত তখন সাড়ে এগারোটা। ম্যানচেস্টারের বৃষ্টি জানালায় অনবরত টোকা দিয়ে যাচ্ছে, আর আমি ডেস্কে বসে একটা ডেটা ফাইল খুললাম — যে ফাইলে একটা সম্পূর্ণ ম্যাচ-বিশ্লেষণ থাকার কথা ছিল। ফাইলটা দেখতে নিখুঁত। শিরোনামের ঘর, সোর্সের ঘর, লেখার ধরন, ডোমেইন লেবেল, ইনফরমেশন পয়েন্ট, জড়িত এনটিটিজ, সময়-সংবেদনশীলতা — সব ঘর ঠিকঠাক তৈরি। অথচ প্রতিটা ঘর খালি। মাত্র একটা ঘর ভরা: ডোমেইন: ফুটবল। এর বাইরে একটাও নাম নেই, একটাও সংখ্যা নেই, একটাও ম্যাচ নেই, একটাও তারিখ নেই।
আমি অভ্যাসবশত নোটবুক আর কলম বের করলাম — আমি ল্যাপটপ নিয়ে বসতে অভ্যস্ত নই, হাতে লেখা সংখ্যা আমাকে সত্যের কাছে ধরে রাখে। তারপর ফাইলটা প্রথম থেকে শেষ পর্যন্ত পড়লাম। দুবার। তিনবার। প্রতিবার একই উত্তর। এতে কোনো ম্যাচের বিবরণ নেই, কোনো ট্রান্সফারের নাম নেই, কোনো মতামতের ছাপ নেই। এটা একটা নীরব ব্যর্থতা — এমন এক ব্যর্থতা যা চিৎকার করে না, বরং ভদ্রভাবে একটা ফাঁকা পাতা এগিয়ে দেয় আর বলে, নিন, বিশ্লেষণ করে ফেলুন।
সেই মুহূর্তে মনে হলো, আজকের সবচেয়ে গুরুত্বপূর্ণ ফুটবল-সত্য কোনো ফর্মেশন বা ট্রান্সফার ফি নিয়ে নয়। এটা নিয়ে যে, আমরা খেলাটাকে এতটাই ডেটার উপর নির্ভরশীল করে ফেলেছি যে ডেটা চুপ করে গেলে আমরা প্রায়ই নিজেরাই গল্প বানিয়ে ফেলি। আর সেটাই সবচেয়ে বড় বিপদ। এই লেখাটা সেই খালি পাতা থেকে শুরু।
প্রেক্ষাপট: ফুটবল যখন ডেটার মহাসাগর
ফুটবল আজ পৃথিবীর সবচেয়ে বেশি মাপা খেলা। একটা প্রিমিয়ার লিগ ম্যাচে এখন প্রতি সেকেন্ডে কয়েকশো ডেটা পয়েন্ট তৈরি হয় — পাস, প্রেসিং ট্রিগার, পজিশনাল ফ্রেম, শারীরিক লোড, স্প্রিন্ট-কাউন্ট, বল-দখলের সময়কাল। একটা ক্লাবের অ্যানালাইসিস ডিপার্টমেন্ট প্রতিদিন হাজারো সারি ডেটা প্রসেস করে। কিন্তু সেই ডেটা সরাসরি কোথাও থেকে আসে না। সোর্স থেকে বিশ্লেষকের ডেস্ক পর্যন্ত পৌঁছাতে তাকে একাধিক স্তর পেরোতে হয়: স্টেডিয়ামের ট্র্যাকিং সিস্টেম, ভিডিও স্কাউটের টাইমকোড, ট্রান্সফার ডেটাবেসের রেকর্ড, ক্লাবের ফিন্যান্সিয়াল ফাইলিং, এবং সবশেষে লেখকের নিজের চোখ। প্রতিটা স্তর একে অপরের উপর নির্ভরশীল, আর প্রতিটা স্তরই ব্যর্থ হতে পারে।
এই স্তরগুলোর সমষ্টিকেই আমরা বলি পাইপলাইন। পাইপলাইনের কাজ হলো একটা কাঁচা সংকেতকে (রাতের খেলা, ক্যামেরার ফ্রেম, ফাইলের লাইন) ব্যবহারযোগ্য অর্থে বদলে দেওয়া। কিন্তু পাইপলাইনের একটা বড় দুর্বলতা আছে: সে প্রায়ই নীরবে ব্যর্থ হয়। কোনো এলার্ম বাজে না। কোনো এরর মেসেজ আসে না। বরং সে একটা সুগঠিত কিন্তু খালি কাঠামো ফেরায় — ঠিক একটা খালি বোতলের মতো, যার গায়ে লেবেল সাঁটা আছে কিন্তু ভেতরে কিছু নেই।
আমি এই নীরব ব্যর্থতাগুলো নিয়ে সচেতন হয়ে উঠেছিলাম ২০১৯ থেকে ২০২০ সালের মধ্যে। জানুয়ারি ২০১৯-এ আমি একটা চ্যাম্পিয়নশিপ ক্লাবের অ্যানালাইসিস ডিপার্টমেন্টের সঙ্গে সাত মাস কাজ করেছিলাম, একটা বইয়ের জন্য। জানুয়ারি ২০২০-এ যে ম্যানেজার আমাকে ঢুকতে দিয়েছিলেন তিনি চাকরি হারালেন, ক্লাব সহযোগিতা তুলে নিল, পাণ্ডুলিপিটা মরে গেল, আর অ্যাডভান্স ফেরত দিতে হলো। সেই ধাক্কার পর আমি নতুন অ্যাক্সেস খোঁজার বদলে ফিল্মের ভেতরে ঢুকে পড়লাম। ১৬ মে ২০২০-তে বুন্দেসলিগা ফেরার পর আমি ইউরোপের শীর্ষ পাঁচ লিগের বাকি ৬১২টি ম্যাচ বন্ধ স্টেডিয়ামে দেখলাম, আর খেয়াল করলাম ঘরের মাঠে জয়ের হার প্রায় চার শতাংশ পয়েন্ট কমে গেছে। সেই সময়টাই আমাকে শিখিয়েছিল, ডেটা আর কাঠামো একসঙ্গে পড়তে হয় — একটা ছাড়া অন্যটা অন্ধ।
এখন এই খালি ফাইলটা ফেরত আসার পর আমি বুঝলাম, সমস্যাটা ফুটবলের নয়, সিস্টেমের। আর ফুটবল-জগৎ এটা নিয়ে খুব একটা কথা বলে না, কারণ ফুটবল-জগৎ পূর্ণ সংখ্যা পছন্দ করে — গোল, পয়েন্ট, ট্রান্সফার ফি, xG। খালি ঘর নিয়ে কেউ হেডলাইন বানায় না। অথচ এই খালি ঘরগুলোই আমাদের সবচেয়ে বেশি ভয় পাওয়া উচিত, কারণ এখান থেকেই সবচেয়ে বড় মিথ্যাগুলো জন্ম নেয়।
মূল বিশ্লেষণ: নয়টি দিক, নয়টি খালি ঘর
প্রশ্নটা সহজ: একটা ফাইল শুধু ডোমেইন লেবেল নিয়ে এলে সেটা দিয়ে কী বিশ্লেষণ করা যায়? উত্তর: প্রায় কিছুই না। কিন্তু 'প্রায় কিছুই না' শুনতে দুর্বল লাগে, তাই আমাকে দেখাতে হবে কেন প্রতিটা দিক আলাদা করে ভেঙে পড়ে। নিচে নয়টি দিক, আর প্রতিটা দিক কেন একটা নাম বা একটা তারিখ ছাড়া অচল — সেটাই আসল শিক্ষা।
প্রথমেই ট্যাকটিক্যাল দিক। একটা ফর্মেশন, একটা প্রেসিং স্কিম, একটা বিল্ড-আপ প্যাটার্ন — এগুলো ছাড়া ট্যাকটিক্যাল বিশ্লেষণ সম্ভব নয়। ডেটার ভাষায় বললে, আমাদের দরকার xG (প্রত্যাশিত গোল), PPDA (প্রতি ডিফেন্সিভ অ্যাকশনে অনুমোদিত পাস), দখল, পাস-নির্ভুলতা। এই সংখ্যাগুলোর একটাও খালি স্কিমায় নেই। শুধু ডোমেইন লেবেল 'ফুটবল' থাকলে তুমি জানো এটা ফুটবল নিয়ে, কিন্তু কোন দল, কোন কোচ, কোন ফর্মেশন — কিছুই জানো না। আমি একটা উদাহরণ দিই। ১ জুলাই ২০১৮-তে লুঝনিকিতে স্পেন রাশিয়ার বিরুদ্ধে ১০০৬টি পাস করেছিল, রাশিয়া করেছিল ২০২টি, দখল ছিল ৭৯ শতাংশ, শট ছিল ২৫টি — তারপরও স্পেন পেনাল্টিতে হেরে গিয়েছিল। কিন্তু সেই বিশ্লেষণটা করতে হলে আমার দরকার ছিল ম্যাচের নাম, দল দুটোর নাম, পাসের সংখ্যা, দখলের শতাংশ। একটা খালি স্কিমায় এসবের একটাও নেই। তাই খালি স্কিমায় ট্যাকটিক্যাল বিশ্লেষণ লেখার চেষ্টা করলে যা বেরোবে তা ফুটবল নয়, কল্পকাহিনি।

দ্বিতীয় দিক, ক্লাব ফিন্যান্স আর ট্রান্সফার মার্কেট। এখানে বিশ্লেষণ করতে দরকার একটা ক্লাবের নাম, একটা ফির অঙ্ক, একটা মজুরির কাঠামো, একটা চুক্তির দৈর্ঘ্য, আর সবশেষে একটা কমপ্লায়েন্স রেফারেন্স (FFP বা PSR)। খালি ফাইলে কোনো ক্লাব নেই, কোনো ফি নেই, কোনো চুক্তি নেই। এর মানে হলো, খেলোয়াড়ের বয়স-বক্ররেখা, অবচয় (amortization), রিসেল-ভ্যালু — কোনো কিছুই হিসাব করা যাবে না। একটা উদাহরণ দিই, যেটা ফুটবল-জগতে সুপরিচিত: ম্যানচেস্টার সিটি ১১৫টি অভিযোগের মুখোমুখি, এভারটন ও নটিংহ্যাম ফরেস্ট পয়েন্ট কাটার শাস্তি পেয়েছে। এই রেফারেন্সগুলো দরকারি, কারণ ফিন্যান্সিয়াল বিশ্লেষণ কখনো তারিখ-নিরপেক্ষ নয়। ট্রান্সফার উইন্ডো সময়-সীমাবদ্ধ, PSR-এর মূল্যায়ন সময়সীমাবদ্ধ। কিন্তু খালি ফাইলে কোনো তারিখই নেই। তাই এখানেও বিশ্লেষণ অচল।
তৃতীয় দিক, স্পোর্টিং ফলাফল আর জনমতের চক্র। এখানে দরকার একটা লিগের নাম, একটা পয়েন্ট-টেবিলের অবস্থান, একটা ফর্ম-স্ট্রিং, আর একটা স্যাক-প্রেশার সূচক। খালি ফাইলে কোনো লিগ নেই, কোনো অবস্থান নেই, কোনো ফর্ম নেই। আর একটা বড় সমস্যা হলো, জনমতের বিশ্লেষণ মৌলিকভাবে তারিখ-নির্ভর — চাপ তখনই তৈরি হয় যখন ফলাফলের একটা ক্রম থাকে। আমার হাতে শূন্য ম্যাচ, তাই ফর্ম-স্ট্রিং শূন্য দৈর্ঘ্যের। ফিক্সচার-কনজেশন বা আন্তর্জাতিক বিরতির (যাকে কেউ কেউ 'ফিফা ভাইরাস' বলেন) প্রভাবও কোনো ক্যালেন্ডার ছাড়া হিসাব করা অসম্ভব।
চতুর্থ দিক, লিগ ল্যান্ডস্কেপ আর দলের অবস্থান। এখানে দরকার কোন লিগ, কোন স্তর (শিরোপা দৌড়, ইউরোপীয় স্পট, মাঝ-টেবিল, অবনমন অঞ্চল), আর মালিকানার ধরন। খালি ফাইলে কোনো লিগ নেই, তাই একটা দল কোন স্তরে আছে সেটাই অজানা। শিরোপা দৌড় থেকে অবনমন — এই চারটি স্তর আঁকতে গেলে অন্তত একটা ক্লাবের নাম দরকার। মাল্টি-ক্লাব নেটওয়ার্ক (সিটি ফুটবল গ্রুপ, রেড বুল, ঈগল ফুটবল) বিশ্লেষণ করতে গেলেও একটা ক্লাব-এনটিটি লাগে। এখানে একটা গভীর শিক্ষা আছে: 'জড়িত এনটিটিজ' ঘরটা আসলে একটা আহরিত (derived) ঘর — উপরের ইনফরমেশন পয়েন্ট থেকে এনটিটি বের করতে বলা হয়েছে। কিন্তু ইনফরমেশন পয়েন্ট খালি হলে আহরণের নির্দেশটা আপনাতেই অসম্পূর্ণ হয়ে পড়ে। অর্থাৎ এই দিকটা অসতর্কতায় নয়, গঠনগত কারণেই ভেঙে পড়ে।
পঞ্চম দিক, নিয়ম আর গভর্নেন্স। এখানে দরকার একটা নিয়ন্ত্রক সংস্থা (ফিফা, উয়েফা, জাতীয় ফেডারেশন), একটা অভিযুক্ত পক্ষ, আর একটা বর্ণিত অভিযোগ। খালি ফাইলে কোনো নিয়ন্ত্রক সংস্থা নেই, কোনো অভিযোগ নেই, তাই শাস্তির পরিস্থিতি মডেল করা অসম্ভব। ট্যাপিং-আপ, TPO (থার্ড-পার্টি ওনারশিপ), এজেন্ট কমিশন, ফিফা অনুচ্ছেদ ১৯ (অপ্রাপ্তবয়স্ক ট্রান্সফার) — এই সব পরীক্ষার জন্য একটা চিহ্নিত লেনদেন দরকার। একটা লেনদেন ছাড়া নিয়ম বিশ্লেষণ হলো খালি ঘরে ছায়া মারার মতো।
ষষ্ঠ দিক, ম্যানেজমেন্ট আর ড্রেসিং-রুম। এই দিকটা সবচেয়ে বেশি ব্যক্তি-নির্ভর, আর তাই এনটিটি-নিষ্কাশন ব্যর্থ হলে সবচেয়ে আগে এটাই ভেঙে পড়ে। খালি ফাইলে কোনো মালিক নেই, স্পোর্টিং ডিরেক্টর নেই, প্রধান কোচ নেই, ক্যাপ্টেন নেই। 'ম্যানেজার বনাম হেড কোচ' ক্ষমতা-মডেলের পার্থক্য বুঝতে গেলে একটা নাম আর একটা গভর্নেন্স কাঠামো লাগে। ড্রেসিং-রুমের পরিবেশ শান্ত নাকি অশান্ত — এ নিয়ে খালি ডেটা থেকে কোনো সিদ্ধান্তে আসা যায় না, আর আসা উচিতও না। একটা খালি তথ্যসেট থেকে 'ড্রেসিং-রুমে শান্তি আছে' এমন সিদ্ধান্ত নেওয়া হলো সবচেয়ে বড় বোকামি, কারণ সেটা ডেটার অনুপস্থিতিকে সাক্ষ্য হিসেবে ব্যবহার করে।
সপ্তম দিক, ঝুঁকি প্রোফাইল। এখানে ছয়টি ঝুঁকির শ্রেণি আছে — স্পোর্টিং, ফিন্যান্সিয়াল, পার্সোনেল, নিয়ম, জনমত, সিস্টেমিক। প্রথম পাঁচটি খালি ইনপুটে শূন্য হয়ে যায়, কারণ কোনো ফুটবল-সত্তা চিহ্নিত হয়নি। কিন্তু ষষ্ঠটি, সিস্টেমিক ঝুঁকি, উঁচু থাকে — আর সেটাই এই পুরো লেখার আসল বিষয়। এখানে আসল ঝুঁকিটা কোনো দল বা খেলোয়াড়ের নয়, বরং পাইপলাইনের নিজের। একটা খালি ইনপুট বিশ্লেষণের স্তরে ঢুকে পড়েছে, আর সেটা ইতিমধ্যেই ঘটে গেছে। এই ঝুঁকিটা সম্ভাব্য নয়, বাস্তবায়িত।

অষ্টম দিক, মিডিয়া ন্যারেটিভ আর প্রত্যাশা। এখানে দরকার একটা ন্যারেটিভ লেবেল (মুকুট-ধারণ, রাজবংশ, প্রতিশোধের গল্প, অর্থের সমালোচনা), একটা প্রকাশের তারিখ, আর একটা মিডিয়া-কাভারেজের ভিত্তিরেখা। খালি ফাইলে কোনো ন্যারেটিভ নেই, তারিখ নেই, সোর্স-স্তরও নেই। সোর্স কোয়ালিটি ঘরটা বলে, সোর্স ফিল্ড থেকে বিচার করুন — কিন্তু ইনফরমেশন পয়েন্টে কোনো সোর্স ফিল্ডই নেই। নির্দেশটা নিজের মধ্যেই অসঙ্গত। এখানে একটা জরুরি কথা: একটা ন্যারেটিভের অনুপস্থিতি প্রমাণ করে না যে মূল (অজানা) লেখাটা ভারসাম্যপূর্ণ ছিল। অনুপস্থিতি মানে অজানা — কিছুই না।
নবম দিক, ফুটবল শিল্পের সংক্রমণ। এই দিকটা সবচেয়ে বেশি এনটিটি-নির্ভর। আপস্ট্রিম (একাডেমি, প্রতিভা সরবরাহ), মিডস্ট্রিম (ক্লাব, প্রতিযোগিতা), ডাউনস্ট্রিম (ব্রডকাস্টিং, বাণিজ্যিক, ডেরিভেটিভ মার্কেট) — এই শৃঙ্খলের কোনো নোডই খালি ইনপুটে নেই। কোনো এজেন্ট নেই, কোনো ব্রডকাস্টার নেই, কোনো স্পনসর নেই, কোনো জাতীয় দল নেই। তাই শৃঙ্খলের কোনো সংক্রমণ আঁকা যায় না। এখানেই একটা বড় সতর্কবার্তা: একটা খালি আউটপুটকে সবসময় 'অজানা' হিসেবে ধরে নিতে হবে, কখনো 'কোনো প্রভাব নেই' হিসেবে নয়। এই পার্থক্যটাই পরিশীলিত বিশ্লেষণ আর আবর্জনা বিশ্লেষণের মধ্যে সীমারেখা।
নয়টা দিক শেষ করে যখন হিসাব মেলালাম, দেখলাম একটাই বাস্তব সিদ্ধান্ত বেরিয়েছে — সেটা ফুটবলের নয়, প্রক্রিয়ার। Stage-1 পাইপলাইন একটা সুগঠিত অথচ খালি স্কিমা ফিরিয়েছে, যা নির্দেশ করে উপরের দিকে কোনো এক্সট্রাকশন বা রাউটিং ব্যর্থতা ঘটেছে। এই ব্যর্থতার তিনটি সম্ভাব্য কারণ আমি খুঁজে পেয়েছি। প্রথমটি, পাইপলাইন এক্সট্রাকশন ব্যর্থতা — লেখাটা ছিল, আনা হয়েছিল, কিন্তু পার্সার খালি স্কিমা ফিরিয়েছে (যেমন DOM-সিলেক্টর মিসম্যাচ, পেওয়াল ট্রাঙ্কেশন, এনকোডিং সমস্যা)। এই ক্ষেত্রে লেখাটা সম্ভবত উদ্ধারযোগ্য। দ্বিতীয়টি, ইনপুট রাউটিং ভুল — কোনো অ-লেখা (ছবি, ভিডিও, PDF, খালি ফাইল) ভুল করে টেক্সট ডিকনস্ট্রাকশন স্তরে পাঠানো হয়েছে। তৃতীয়টি, সত্যিই তথ্যশূন্য সোর্স — সোর্স ফিল্ড নিজেই N/A ছিল, তাই উদ্ধারের কোনো পথ নেই। এই তিনটির মধ্যে প্রথম আর দ্বিতীয়কে আলাদা করা সবচেয়ে মূল্যবান কাজ, কারণ প্রথমটি উদ্ধারযোগ্য প্রযুক্তিগত ত্রুটি, আর দ্বিতীয়টি সিস্টেমিক ইনজেশন ত্রুটি, যা ভবিষ্যতের প্রতিটি লেখায় ফিরে আসবে।
আর একটা প্রযুক্তিগত সূত্র আমি পেয়েছি: 'ডোমেইন লেবেল: ফুটবল' টিকে থেকেছে, অথচ বাকি সব ঘর খালি। এর মানে হলো, ক্লাসিফায়ার আর এক্সট্রাক্টর সম্ভবত দুটো আলাদা সার্ভিস। অর্থাৎ একটা কাজ করেছে, আরেকটা নীরবে ব্যর্থ হয়েছে — কোনো এরর ছড়ায়নি। এই তথ্যটা সোনার মতো মূল্যবান, কারণ এটা ইঞ্জিনিয়ারিং দলকে সমস্যাটা কোথায় খুঁজতে হবে তা বলে দেয়: এনটিটি-নিষ্কাশনের স্তরে, আর তার সঙ্গে নাল-রেট মনিটরিংয়ে।
বিপরীতমুখী কোণ: খালি ইনপুট কখনো 'শূন্য প্রভাব' নয়
এবার আসি সেই জায়গায় যেখানে আমি সবচেয়ে বেশি অস্বস্তি বোধ করি। এই বিশ্লেষণের কাঠামোটা নিজেই একটা বিপদ তৈরি করে। কারণ ফ্রেমওয়ার্কটা প্রতিটা দিকে ন্যূনতম বিষয়বস্তু চায় — কমপক্ষে তিনটি সিদ্ধান্ত, প্রতিটা দিকে কমপক্ষে দুটি গোপন-তথ্য। খালি ইনপুটে এই ন্যূনতম-বিষয়বস্তুর নিয়মটা বিশুদ্ধ চাপ তৈরি করে: হয় স্বীকার করো তথ্য নেই, নয়তো বানাও।
আর এখানেই আমি আমার নিজের একটা পুরনো অভ্যাসের কথা মনে করি। আমি বারো সেকেন্ডের একটা ছোট সিকোয়েন্স বারবার রিওয়াইন্ড করি — যতক্ষণ না আকৃতিটা স্বীকার করে নেয়। কিন্তু সেই অভ্যাসের একটা সীমা থাকা দরকার। ম্যানুয়াল ভেরিফিকেশনের পুরস্কার হলো সূক্ষ্মতা, আর শাস্তি হলো গর্তে পড়ে থাকা। একটা ফ্রেমে যা নেই, সেটা বারবার দেখলেও থাকবে না। খালি ডেটার ক্ষেত্রেও একই কথা: তুমি যতবার খালি পাতা উল্টাবে, ততবার সেটা খালি থাকবে। আর যদি তুমি জোর করে তার ভেতরে একটা আকার দেখতে শুরু করো, তবে সেটা ফুটবল নয়, তোমার নিজের মনের ছায়া।
আসল বিপরীত সত্যটা হলো এই: খালি মানে 'কিছুই না' নয়, খালি মানে 'অজানা'। আর এই দুটোর মধ্যে পার্থক্য না করলে বিশ্লেষক নিজেই একদিন গল্পকার হয়ে যায়। ফুটবল-সাংবাদিকতার ইতিহাসে সবচেয়ে বড় ভুলগুলো প্রায়ই তথ্যের অভাব থেকে নয়, তথ্যের বাড়তি আত্মবিশ্বাস থেকে জন্মেছে। একটা দল ৭০ শতাংশ দখল রেখে হেরে গেলে আমরা বলি 'মানসিক দুর্বলতা', 'বলতে চায় না'। কিন্তু ২০১৮-র সেই স্পেন-রাশিয়া ম্যাচে আমি আসলে কী দেখেছিলাম? আমি দেখেছিলাম স্পেন ১২০ মিনিটে মাত্র সাতটি লাইন-ব্রেকিং পাস করতে পেরেছিল। এটা মানসিক দুর্বলতা নয়, এটা জ্যামিতির সমস্যা — আকৃতির সমস্যা। বন্ধ্যা অবরোধ (Sterile Siege) কোনো উদ্দেশ্যের ব্যর্থতা ছিল না, ছিল জ্যামিতির ব্যর্থতা।
কিন্তু এই সূক্ষ্ম পার্থক্যটা ধরতে গেলে আমার দরকার ছিল সেই সাতটি পাস, সেই ১০০৬টি পাস, সেই ২৫টি শট। যদি আমার হাতে শুধু একটা খালি স্কিমা আর 'ডোমেইন: ফুটবল' থাকত, আর আমি সেটা দিয়েই স্পেনের ব্যর্থতার ব্যাখ্যা লিখতে বসতাম, তাহলে আমি সত্যের সেবা করতাম না, করতাম আমার নিজের গল্পের সেবা। আর এটাই সেই ফাঁদ, যেখানে নীরব ব্যর্থতা শব্দে পরিণত হয়। প্রমাণের শৃঙ্খলে একটা খালি লিংক থাকলে পুরো শৃঙ্খলটা ভেঙে যায়, কিন্তু ভাঙা শৃঙ্খল দেখতে প্রায় অটুট লাগে — যতক্ষণ না কেউ টান দেয়।
শেষ কথা: প্রমাণের শৃঙ্খল তৈরি করতে হবে
তাহলে এই খালি ফাইলটা আমার কী দিল? এটা আমাকে একটা শিক্ষা দিল, যা ফুটবলের চেয়েও বড়। আমরা ফুটবলকে এতটাই ডেটার উপর দাঁড় করিয়েছি যে এখন আমাদের ডেটার নিজের সততার নিয়ম লাগবে — ঠিক যেমন একটা প্রমাণের শৃঙ্খল (chain of proof) দরকার হয়, যেখানে প্রতিটা লিংক সত্যায়িত, আর যেখানে একটা ফাঁকা লিংক নিজেই একটা এলার্ম।
আগামী দিনে যে অ্যানালাইসিস পাইপলাইনে ডেটা সারি থেকে সারি, স্তর থেকে স্তর চলে, সেখানে 'নাল-ইনপুট গার্ড ক্লজ' একটা বাধ্যতামূলক চেকপয়েন্ট হওয়া উচিত — খালি ইনপুট এলে বিশ্লেষণ এগোবে না, বরং থেমে গিয়ে বলবে, তথ্য অপর্যাপ্ত। এর সঙ্গে দরকার নাল-রেট মনিটরিং, এনটিটি-নিষ্কাশনের আলাদা এলার্ম, আর প্রকাশের তারিখ ধরা না পড়লে সেটার জন্য আলাদা সতর্কবার্তা। কারণ তারিখ ছাড়া কোনো জনমত বা ন্যারেটিভ বিশ্লেষণ কখনো বৈধ হয় না।
আমি ফাইলটা বন্ধ করে নোটবুকে লিখে রাখলাম: আজকের সবচেয়ে সৎ বিশ্লেষণটা হলো এই স্বীকারোক্তি যে কোনো বিশ্লেষণই সম্ভব নয়। পরের ম্যাচে আমি ফের টেপ রিওয়াইন্ড করব, সংখ্যা গুনব, আকৃতিকে স্বীকার করতে বাধ্য করব। কিন্তু আমি সেটা করব শুধু সেখানে, যেখানে প্রমাণের শৃঙ্খল অটুট। যে পাইপলাইন খালি পাতা ফেরায়, তাকে আমি সাজাতে বসব না — আমি বরং জিজ্ঞেস করব, শৃঙ্খলের কোন লিংকটা নীরবে ভেঙে গেল।
