খালি পেলোড: ক্রিকেটের তথ্য-শৃঙ্খলে যেখানে সত্য নীরবে বাদ পড়ে
**মূল উত্তর:** ক্রিকেট কনটেন্ট পাইপলাইনে একটি শূন্য (নাল) পেলোড তৈরি হয় যখন সংগ্রহ, পার্সিং বা সত্তা-চিহ্নিতকরণ স্তরের কোনো একটি ব্যর্থ হয়; ফেচ-লগ না থাকলে তিনটি কারণ আলাদা করা যায় না এবং সিস্টেমটি প্রায়ই অনুমান দিয়ে শূন্যতা পূরণ করে। **মূল তথ্য:** - বিশ্লেষণ প্রতিবেদনে শিরোনাম, উৎস, তথ্যবিন্দু ও সত্তা — চারটি ইনপুট ঘরই শূন্য ছিল, শুধু ডোমেইন লেবেল বৈধ ছিল। - ডোমেইন লেবেল “ক্রিকেট_ওয়ার্ল্ড” এবং আর্টিকেল টাইপ “অশ্রেণীবদ্ধ” ফেরায় শ্রেণীবিভাগ-ম্যাপিং ত্রুটি নির্দেশ করে, যা ব্যাচের প্রতিটি ক্রিকেট লেখায় প্রভাব ফেলে। - ফেচ-লগে ইউআরএল, এইচটিটিপি স্ট্যাটাস কোড ও বডি বাইট-দৈর্ঘ্য থাকলে তিনটি ভিন্ন ব্যর্থতা এক ধাপেই পৃথক করা সম্ভব। - কোনো ব্যাচে দুই শতাংশের বেশি লেখা শূন্য তথ্যবিন্দু নিয়ে ফিরলে তা সংকট হিসেবে গণ্য করার সুপারিশ করা হয়েছে। - বিশ্লেষণে আটটি মাত্রার সব কটি ঘরে “এন/এ — অপর্যাপ্ত তথ্য” লেখা হয়েছে, কোনো অনুমান বসানো হয়নি। **উৎস:** Stage-2 Deep Analysis — Cricket Domain, অভ্যন্তরীণ পাইপলাইন-ডায়াগনস্টিক প্রতিবেদন; উৎসে প্রকাশের তারিখ উল্লেখ নেই | Cross-checked: cricsultan.com **সম্পর্কিত প্রশ্নোত্তর:** প্রশ্ন: শূন্য পেলোড কেন ক্রিকেটে সাধারণ? উত্তর: বোর্ডের সিদ্ধান্ত স্ক্যান করা পিডিএফ, জাভাস্ক্রিপ্ট-রেন্ডার করা লাইভ ব্লগ, পেওয়াল ও ভূ-অবরোধের কারণে ক্রিকেটের সর্বজনীন নথিভুক্তি দুর্বল, যা cricsultan.com-এর কনটেন্ট-সোর্স সূচকেও প্রতিফলিত। প্রশ্ন: পাঠক কীভাবে গুজব ও তথ্য আলাদা করবেন? উত্তর: দাবির প্রাথমিক নথি, চুক্তি-কাঠামো, এজেন্টের স্বার্থ ও প্রকাশের সময় — এই চারটি স্তর যাচাই করলে নির্ভরযোগ্যতা নির্ণয় সহজ হয়। প্রশ্ন: ফাঁকা ডেটাকে কীভাবে পড়া উচিত? উত্তর: পেজ প্রত্যাহার, বিজ্ঞপ্তি অপসারণ বা তালিকা থেকে নাম কাটা নিজেই একটি সিদ্ধান্ত-ঘটনা, তাই নীরবতাকে অনুপস্থিতি নয়, সংকেত হিসেবে পড়তে হবে।
রাত দুটোয় স্ক্রিনে একটা ডকুমেন্ট রেন্ডার হলো। আটটা অধ্যায়। প্রতিটা অধ্যায়ে টেবিল, প্রতিটা টেবিলে সারি, প্রতিটা সারিতে একটা মূল্যায়ন, প্রতিটা মূল্যায়নের পাশে একটা আত্মবিশ্বাসের মাত্রা। ফরম্যাট নিখুঁত। লেআউট পরিষ্কার। শিরোনাম থেকে পাদটীকা পর্যন্ত সব জায়গায় ঠিক যেখানে যা থাকা উচিত, ঠিক সেখানে তাই আছে।
আর প্রতিটা ঘরে একই বাক্য: “এন/এ — অপর্যাপ্ত তথ্য।”
একটা মেশিন একটা নিখুঁত ডকুমেন্ট তৈরি করেছে, যার বিষয়বস্তু শূন্য। সেটা কোনো ক্রিকেট ম্যাচ নিয়ে নয়, কোনো খেলোয়াড় নিয়ে নয়, কোনো বোর্ডের সিদ্ধান্ত নিয়ে নয়। সেটা একটা ব্যর্থ ডেটা-পাইপলাইন নিয়ে, যে পাইপলাইনটা ক্রিকেটের সংবাদ পরিবেশন করছে বলে দাবি করে। আর ঠিক এখানেই ব্যাপারটা ক্রিকেট-সাংবাদিকতার সবচেয়ে অস্বস্তিকর প্রশ্নে গিয়ে ঠেকে: যখন কোনো সিস্টেম জানতে পারে না, তখন সে কী করে — চুপ করে থাকে, নাকি আত্মবিশ্বাসের সঙ্গে ভুল বলে?
আমি সারা জীবন মাঠের সিদ্ধান্ত নিয়ে লিখেছি। কোন আম্পায়ার কোন নিয়মের কোন ধারা ধরে সিদ্ধান্তটা নিলেন, সেই ধারার ভাষ্য কী, প্রয়োগে কী ফাঁক রইল — এটাই আমার কাজ। গত কয়েক বছরে সেই কাজের একটা অংশ সরে গেছে স্ক্রিনের পেছনে, যেখানে ম্যাচের ঘটনা প্রথমে লেখা হয় না, প্রথমে লেখা হয় ডেটাবেজে। স্কোরকার্ড, বল-বাই-বল লগ, ফিল্ডিং পজিশন ম্যাপ, ইনজুরি আপডেট, বোর্ডের প্রেস রিলিজ — এই সবকিছু একটা অদৃশ্য চেইনের ভেতর দিয়ে যায়, তারপর সাংবাদিকের ডেস্কে পৌঁছায়। চেইনের কোন লিংকে কী ঘটছে, কেউ দেখে না। যতক্ষণ না চেইনটা ফাঁকা হয়ে আসে।

যে ডকুমেন্টটা রাত দুটোয় আমার স্ক্রিনে রেন্ডার হলো, সেটা ছিল সেই ফাঁকাটা ধরা পড়ার মুহূর্ত। একটা দুই-স্তরের বিশ্লেষণ-ব্যবস্থা। প্রথম স্তর উৎস থেকে তথ্য ভেঙে বের করে, দ্বিতীয় স্তর সেই তথ্যের উপর আটটা মাত্রায় বিশ্লেষণ চালায়। প্রথম স্তর ফিরিয়ে দিয়েছিল শূন্য। শিরোনাম নেই, উৎস নেই, তথ্যবিন্দু নেই, সত্তা নেই। দ্বিতীয় স্তর, অর্থাৎ যে প্রতিবেদনটা আমার সামনে ছিল, সে আটটা মাত্রার পুরো কাঠামো লিখেছে — আর প্রতিটা ঘরে লিখেছে “অপর্যাপ্ত তথ্য।”
আমি এই ডকুমেন্টটাকে নিয়ে লিখছি, কারণ এটা একটা ব্যর্থতা নয়। এটা একটা নজির।
আমি যখন বুথে একমাত্র মহিলা হিসেবে বসে প্রথমবার অফসাইডের নিয়মটা ভিন্নভাবে শুনেছিলাম, তখন আমি এটাই শিখেছিলাম — নিয়ম বদলায় না, বদলায় অনুবাদক। যে অনুবাদ করে, সে ঠিক করে কোন শব্দটা গুরুত্বপূর্ণ আর কোনটা বাদ দেওয়া যায়। ডেটা-পাইপলাইনে ঠিক একই জিনিস ঘটে, শুধু অনুবাদকটা মানুষ নয়, একটা স্ক্রিপ্ট। আর স্ক্রিপ্টের কোনো ঊর্ধ্বতন নেই, কোনো জবাবদিহি নেই, কোনো সংবাদ সম্মেলন নেই যেখানে তাকে জিজ্ঞেস করা যায়, আপনি এই তথ্যটা কোথা থেকে পেলেন?
আমি তখন সাংবাদিকতা ছেড়ে উদ্ধৃতি লেখা শুরু করেছিলাম। ২০১৭ সালের অক্টোবরে, ভারতের প্রথম ফিফা টুর্নামেন্টে, আমি চৌদ্দ জনের ধারাভাষ্য প্যানেলে একমাত্র মহিলা ছিলাম, ছয়টা ম্যাচ কভার করেছি। কোচিতে নকআউট ম্যাচে একটা পেনাল্টি দেওয়া হলো, যেখানে ফাউলটা স্পষ্টভাবে বক্সের বাইরে প্রায় আধ মিটার দূরে শুরু হয়েছিল। ম্যাচ শেষের পর চল্লিশ মিনিট ধরে আমি হোয়াইটবোর্ডে জ্যামিতি এঁকেছি। একজন সিনিয়র প্রোডিউসার সম্প্রচারে বললেন, “মহিলারা নিয়ম পড়ে না।” আমি মুখস্থ বলে দিলাম আইন ১২।
সেই রাত থেকে আমি মতামত লেখা বন্ধ করে দিয়েছি। আইনের নম্বর, মিনিট, এবং হুবহু ধারা — এই তিনটা জিনিস আমার প্রতিটা লেখায় থাকে। আমার বাইলাইন এখন একটা সংকেত: এখানে আগে নিয়ম, পরে গল্প।
আর যে ডকুমেন্টটা নিয়ে আজ লিখছি, সেটা সেই সংকেতেরই সবচেয়ে কঠিন সংস্করণ। কারণ এখানে নিয়মটা ছিল না কোনো ম্যাচের, নিয়মটা ছিল প্রমাণের। আর প্রমাণ ছিল না বলেই লেখক লিখেছেন — প্রমাণ নেই।
প্রসঙ্গ: স্কোরকার্ড থেকে স্ক্রিন পর্যন্ত যে রাস্তাটা কেউ দেখে না
ক্রিকেটের তথ্য-সরবরাহ ব্যবস্থা সম্পর্কে একটা ভ্রম আমাদের সবার আছে। আমরা ভাবি, ম্যাচ মাঠে হয়, সাংবাদিক মাঠে বসে থাকেন, তিনি দেখেন, তারপর লেখেন। এই ছবিটা এখন আংশিক মিথ। বাস্তবে মাঠে যা ঘটে, তা প্রথমে ঢোকে একটা ফিডে। ফিড থেকে যায় একটা স্কোরিং সিস্টেমে। সিস্টেম থেকে যায় একটা এগ্রিগেটরে। এগ্রিগেটর থেকে যায় সাংবাদিকের ডেস্কে, যেখানে তিনি হয়তো ম্যাচ দেখেনইনি, শুধু ফিডের বর্ণনা পড়ে তিনশো শব্দ লিখেছেন।
এই চেইনের প্রতিটা লিংকের একটা কাজ আছে। প্রথম লিংক — সংগ্রহ বা ফেচ। দ্বিতীয় লিংক — পার্স, অর্থাৎ কাঁচা পেজ থেকে টেক্সট আলাদা করা। তৃতীয় লিংক — সারসংক্ষেপণ, যেখানে টেক্সট থেকে তথ্যবিন্দু বের করা হয়। চতুর্থ লিংক — সত্তা চিহ্নিতকরণ, অর্থাৎ কোন দল, কোন খেলোয়াড়, কোন ঘটনা। এই চারটার পরে আসে বিশ্লেষণ।
কোনো একটা লিংক ভেঙে পড়লে চারটা আলাদা আলাদা লক্ষণ দেখা দিতে পারে, কিন্তু শেষ আউটপুট একই রকম: একটা ফাঁকা রেকর্ড। আর একটা ফাঁকা রেকর্ডের সবচেয়ে বিপজ্জনক গুণ হলো — সে দেখতে হুবহু একটা সঠিক রেকর্ডের মতো, শুধু ভেতরে কিছু নেই। অনেকটা সেই স্কোরকার্ডের মতো, যেখানে দল দুটো লেখা, ওভার লেখা, কিন্তু রান নেই।
ক্রিকেটে এই ধরনের ফাঁকা রেকর্ড কেন এত সাধারণ, সেটা নিয়ে আমার একটা স্পষ্ট মত আছে, এবং সেটা খেলার সঙ্গে সম্পর্কিত নয়, প্রকাশনার সঙ্গে সম্পর্কিত। ক্রিকেটের সর্বজনীন নথিভুক্তি অসম্ভব রকমের দুর্বল। আইসিসি আর বোর্ডগুলো তাদের সবচেয়ে গুরুত্বপূর্ণ সিদ্ধান্তগুলো এখনো পিডিএফ-এ প্রকাশ করে, অনেক সময় স্ক্যান করা ছবি হিসেবে, অনেক সময় ইংরেজি আর স্থানীয় ভাষার মিশেলে, অনেক সময় কোনো টেবিলে না রেখে প্রেস বিজ্ঞপ্তির তৃতীয় প্যারাগ্রাফে লুকিয়ে। একটা ম্যাচ রেফারির শাস্তির কারণ যখন একটা স্ক্যান করা পিডিএফের ষষ্ঠ পৃষ্ঠায় থাকে, তখন পার্সিং স্তরটা একটা অন্ধকার ঘরে টর্চ নিয়ে খোঁজার মতো কাজ করে।
তার সঙ্গে যোগ করুন লাইভ ব্লগের সমস্যা। আধুনিক ক্রিকেট কভারেজের বড় অংশ চলে জাভাস্ক্রিপ্টে রেন্ডার হওয়া লাইভ পেজে, যেখানে প্রথম লোডে টেক্সট নেই, শুধু একটা খোলস আছে। যোগ করুন পেওয়াল। যোগ করুন ভূ-অবরোধ — একটা ভারতীয় সংবাদমাধ্যম বাংলাদেশের কোনো পেজ খুলতে গিয়ে যা পায়, একটা বাংলাদেশি সংবাদমাধ্যম ভারতীয় পেজে যা পায়, তার মধ্যে ফারাক আছে। যোগ করুন ডি-ইনডেক্সিং, যেখানে একটা বোর্ডের পুরনো বিজ্ঞপ্তি সরিয়ে নেওয়া হয়, অথচ তার উপর নির্ভর করে লেখা বিশ্লেষণগুলো রয়ে যায় অনাথ হয়ে।
এই সবকিছুর মানে একটাই: ফাঁকা পেলোড ক্রিকেট-সাংবাদিকতায় একটা ব্যতিক্রম নয়, একটা নিয়ম। ব্যতিক্রম হলো সেই বিরল ঘটনা, যখন কেউ সেটা স্বীকার করে।
যে প্রতিবেদনটা আমার সামনে ছিল, সে স্বীকার করেছে। আটটা মাত্রা — ফরম্যাট ও ম্যাচ বিশ্লেষণ, খেলোয়াড়ের কারিগরি ও উপাত্ত, দলের অবস্থান ও র্যাঙ্কিং, লিগ ও বাণিজ্যিক বাস্তুতন্ত্র, নিয়ম ও সুশাসন, ঝুঁকি, জনমত ও প্রত্যাশা, এবং শিল্পে সংক্রমণ। প্রতিটা মাত্রায় টেবিল, প্রতিটা টেবিলে সারি, প্রতিটা সারিতে এন/এ। প্রতিটা সিদ্ধান্তের পাশে লেখা: “এন/এ — অপর্যাপ্ত তথ্য, মূল্যায়ন সম্ভব নয়।”
এবং প্রতিটা ক্ষেত্রে একটা কারণ দেওয়া: তথ্যবিন্দু শূন্য ফিরেছে। এটা কোনো অজুহাত নয়, এটা একটা ডায়াগনস্টিক। যে সিস্টেম ব্যর্থ হয়েছে, তাকে চিহ্নিত করা হয়েছে। যে সিস্টেম ব্যর্থতা গোপন করতে পারত, সে গোপন করেনি।
মূল বিশ্লেষণ: শূন্যতার সাতটা মুখ
প্রথম মুখ: নীরবতার অর্থনীতি।
কেন একটা পাইপলাইন ফাঁকা পেলোড পেয়ে থেমে যায় না, বরং একটা ডকুমেন্ট রেন্ডার করে? কারণ থামার কোনো ব্যবসায়িক মডেল নেই। ক্রিকেট কনটেন্ট ব্যবসায় আয় হয় পিস-প্রতি। সিন্ডিকেশন চুক্তি হয় লেখার সংখ্যায়। এগ্রিগেটর প্ল্যাটফর্মের চুক্তি হয় আপডেটের ফ্রিকোয়েন্সিতে। ফ্যান্টাসি স্পোর্টসের ফিড চুক্তি হয় লেটেন্সিতে। এই চারটার কোনোটাতেই “আমরা জানি না” লেখার জন্য কোনো লাইন আইটেম নেই।
তাই সিস্টেমটা একটা পছন্দের সামনে দাঁড়ায়। এক — ফাঁকা হাত তুলে বলা, আজ এই ম্যাচের কোনো যাচাইযোগ্য তথ্য নেই। দুই — অনুমান দিয়ে ঘরটা ভরে দেওয়া, যাতে ড্যাশবোর্ড সবুজ থাকে। প্রথমটার ব্যর্থতার খরচ বহন করে সম্পাদক, যিনি ক্লায়েন্টকে বোঝাবেন। দ্বিতীয়টার খরচ বহন করে পাঠক, যিনি পরে জানতে পারবেন না যে তিনি ভুল পড়েছেন।
এটা নতুন কোনো নৈতিক সংকট নয়। এটা আমার দেখা সবচেয়ে পুরনো সংকট, শুধু নতুন পোশাকে। ট্রান্সফার উইন্ডোতে এই যন্ত্রটা সবচেয়ে স্পষ্ট দেখা যায়। একটা ক্লাব যখন কোনো তারকাকে বিক্রি করতে চায়, তখন তার এজেন্ট একটা সংখ্যা ছড়িয়ে দেন। সংখ্যাটা প্রথমে আসে একটা কলামে, তারপর একটা টিকারে, তারপর একটা ভাষ্যে, তারপর একটা ফ্যান্টাসি প্ল্যাটফর্মের নোটিফিকেশনে। চার ধাপে সংখ্যাটা একটা তথ্যে পরিণত হয়, অথচ চার ধাপের কোনোটাতেই কেউ যাচাই করেনি।
আমি বহুবার এই চেইনটা পেছনের দিকে হেঁটেছি। শেষ প্রান্তে পৌঁছে দেখা যায় উৎসটা একটা টুইট, আর সেই টুইটের উৎস একটা “বোঝা যাচ্ছে।” তথ্যের কোনো নথি নেই, শুধু একটা বাক্যের পুনরাবৃত্তি। শূন্য পেলোডের সমস্যা আর এই গুজবের সমস্যা একই পরিবারের: দুটোই একটা শূন্যতাকে কাঠামো দিয়ে ঢেকে দেয়, যাতে শূন্যতাটা আর শূন্য না দেখায়।
দ্বিতীয় মুখ: টেমপ্লেট নিজেই একটা প্রণোদনা।
যে প্রতিবেদনটা আমার সামনে ছিল, তার সবচেয়ে সাহসী কাজটা ছিল টেমপ্লেটটা সম্পূর্ণ রেখে ভেতরে এন/এ লেখা। কারণ টেমপ্লেটটা সম্পূর্ণতা দাবি করে। আটটা অধ্যায়, প্রতিটায় টেবিল, প্রতিটা ঘরে মান। যখন ইনপুট শূন্য, তখন এই দাবিটা পূরণ করার একটাই উপায় — বানানো।
এবং এখানেই আমি একটা সাদৃশ্য দেখি, যেটা আমার কাছে অত্যন্ত স্পষ্ট। এন/এ লেখাটা আসলে আম্পায়ারিং। আম্পায়ার যখন “নট আউট” দেন, তখন তিনি প্রমাণ করেন না যে ব্যাটসম্যান আউট নন। তিনি ঘোষণা করেন যে প্রমাণটা তাঁর কাছে নেই। ক্রিকেটে এই ঘোষণাটা একটা সিদ্ধান্ত, একটা আনুষ্ঠানিক পদক্ষেপ, যার ভাষা আছে, প্রোটোকল আছে, এবং যার বিরুদ্ধে রিভিউ নেওয়া যায়।
ডেটা-পাইপলাইনে এই আনুষ্ঠানিকতাটা নেই। এখানে “প্রমাণ নেই” বলার কোনো ঘোষণা-ভাষা নেই। তাই সিস্টেমটা কখনো “নট আউট” বলে না, সে সবসময় একটা সিদ্ধান্ত দিয়ে দেয় — হয় সঠিক, নয় বানানো, নয় অনুমাননির্ভর। তিনটার মধ্যে পার্থক্যটা বাইরে থেকে দেখা যায় না।
আমি এই জায়গায় একটা কথা জোর দিয়ে বলতে চাই, কারণ এটা সহজে বোঝা যায় না। যিনি এন/এ লিখেছেন, তিনি আসলে কাজটা অর্ধেক করেছেন বলে মনে হতে পারে। সত্যিটা উল্টো। যিনি শূন্য জায়গায় অনুমান বসাননি, তিনিই একমাত্র ব্যক্তি যিনি পরবর্তী কেউ যাচাই করতে পারবে এমন একটা নথি রেখে গেছেন। বাকি সবাই এমন একটা ডকুমেন্ট রেখে গেছেন, যা দেখতে তথ্যপূর্ণ, কিন্তু যাচাই করার কোনো হাতল নেই।
তৃতীয় মুখ: তিনটা ব্যর্থতা যাদের মুখ এক।
এখানেই আসল কারিগরি রহস্যটা। ফাঁকা পেলোড তৈরি হতে পারে অন্তত তিনটা আলাদা কারণে। এক, ফেচ ব্যর্থ — পেজটা খোলেনি, পেওয়াল আটকে দিয়েছে, সার্ভার সময় দেয়নি। দুই, পার্স ব্যর্থ — পেজ খুলেছে, কিন্তু টেক্সট ছিল ছবির ভেতরে, বা জাভাস্ক্রিপ্টে রেন্ডার হওয়া কনটেইনারে, তাই এক্সট্র্যাক্টর একটা ফাঁকা বডি পেয়েছে। তিন, সত্তা-চিহ্নিতকরণ ব্যর্থ — টেক্সট ছিল, তথ্য ছিল, কিন্তু সিস্টেম কোন দল বা কোন খেলোয়াড়কে চিনতে পারেনি, তাই আউটপুটে কিছুই আসেনি।
তিনটার বাহ্যিক ফলাফল একই। আর তিনটার প্রতিকার সম্পূর্ণ আলাদা। প্রথমটার প্রতিকার পেওয়াল-ব্যবস্থাপনা। দ্বিতীয়টার প্রতিকার রেন্ডারিং ইঞ্জিন। তৃতীয়টার প্রতিকার একটা মডেল পুনঃপ্রশিক্ষণ। কিন্তু লগ না থাকলে কে বলবে কোনটা? কেউ বলতে পারে না। ফলে প্রতিবার একটা ফাঁকা পেলোড এলে সিস্টেম একই ভুল প্রতিকার বেছে নেয় — আর সেটা কাজ করে না, কারণ ভুলটা অন্য জায়গায় ছিল।
আমি এই কাঠামোটা চিনি, কারণ আমি এটা ক্রিকেটে দেখেছি। ডিআরএসে একটা সিদ্ধান্তের পেছনে থাকে তিনটা আলাদা তথ্য-স্তর: বলের গতিপথ, প্যাডে আঘাতের বিন্দু, আর স্টাম্পের সঙ্গে সংযোগের অনুপাত। তিনটার কোনোটায় সমস্যা হলে সিদ্ধান্তটা ভুল হতে পারে, কিন্তু বাইরে থেকে আমরা শুধু একটা ফলাফল দেখি — আউট বা নট আউট। যে দর্শক তিনটা স্তর আলাদা করতে পারেন না, তিনি নিয়মটাকে দোষ দেন। যে দর্শক পারেন, তিনি প্রশ্ন করেন — ক্যালিব্রেশনটা কবে শেষ আপডেট হয়েছিল।
২০১৮ সালের ১৬ জুন, কাজানে, ফ্রান্স বনাম অস্ট্রেলিয়ার ম্যাচে বিশ্বকাপের ইতিহাসে প্রথম ভিএআর-প্রদত্ত পেনাল্টি হলো। আমি তখন একটা ভারতীয় ডিজিটাল প্ল্যাটফর্মের জন্য লাইভ লিখছি, নব্বই মিনিটে চার হাজার শব্দ। পরের চার দিনে আমি ওই আটত্রিশ সেকেন্ডের রিভিউটা ষাট বারের বেশি দেখেছি, ফ্রেম ধরে ধরে। তারপর তিন হাজার শব্দে লিখেছি — রেফারি কী দেখলেন, ভিএআর কী দেখল, আর দুই ছবি কোথায় আলাদা হলো।
সেই লেখাটা টিকে গিয়েছিল একটাই কারণে: প্রতিটা দাবির পাশে একটা টাইমস্ট্যাম্প ছিল। ভাষা নয়, টাইমস্ট্যাম্প। প্রমাণের শৃঙ্খলে টাইমস্ট্যাম্পের কাজটা হলো সেই হাতল, যেটা ধরে পরের মানুষ দরজাটা খুলতে পারেন। যে ডকুমেন্টে টাইমস্ট্যাম্প নেই, সেটা যত সুন্দর লেখা, তত কম যাচাইযোগ্য।
চতুর্থ মুখ: লেবেলের ভুল মানে ধারার ভুল।
ফাঁকা পেলোডের পাশে আরেকটা ছোট তথ্য ছিল, যেটা হয়তো সবচেয়ে বেশি গুরুত্বপূর্ণ এবং সবচেয়ে কম আলোচিত। ডোমেইন-লেবেলটা এসেছিল “ক্রিকেট_ওয়ার্ল্ড” হিসেবে, অথচ প্রত্যাশিত মান ছিল শুধু “ক্রিকেট”। আর আর্টিকেল টাইপ এসেছিল “অশ্রেণীবদ্ধ।” সহজ ভাষায়, সিস্টেমটা জানত যে এটা ক্রিকেট নিয়ে, কিন্তু কোন ছাঁচে ফেলবে সেটা জানত না।

এটাকে ছোট ব্যাপার ভেবে বাদ দেওয়া যায়। কিন্তু আমি এটাকে ছোট মনে করি না। একটা শ্রেণীবিভাগের ভুল মানে একটা আইনি ধারার ভুল প্রয়োগ। যখন কোনো অভিযোগ ভুল ধারায় আনা হয়, তখন ফলাফলটা শুধু ভুল হয় না — সেটা প্রক্রিয়াগতভাবে বাতিলযোগ্য হয়ে যায়। একইভাবে, যখন একটা ক্রিকেট লেখা ভুল ডোমেইনে রুট হয়, তখন সেটা ভুল বিশ্লেষণ-কাঠামোয় ঢোকে, ভুল প্রশ্নের উত্তর দেয়, ভুল দর্শকের কাছে পৌঁছায়।
আর সবচেয়ে বড় কথা, এই ভুলটা একক নয়। ডোমেইন-লেবেল আর আর্টিকেল টাইপের মান যদি একটা ম্যাপিং টেবিলের সমস্যা হয়, তাহলে সমস্যাটা শুধু এই একটা লেখায় নয় — ব্যাচের প্রতিটা ক্রিকেট লেখায়। একটা ভুল ম্যাপিং মানে শতাধিক নথি ভুল ঘরে। আর সেই শতাধিক নথির প্রতিটা নিয়ে পরে কেউ একটা সিদ্ধান্ত নেবে — কোন খেলোয়াড়কে নিয়ে বেশি লিখতে হবে, কোন বোর্ডের বিরুদ্ধে তদন্ত চলবে, কোন ইস্যুতে সম্পাদকীয় লেখা হবে। ভুল ইনপুটে নেওয়া সেই সিদ্ধান্তগুলো পরে কেউ যাচাই করবে না, কারণ সেগুলোও একই পাইপলাইনের ভেতর দিয়ে গেছে।
পঞ্চম মুখ: কার সাক্ষ্য টিকে থাকে।
এখানে একটা জিনিস আমি বারবার দেখেছি এবং এটা আমাকে সবচেয়ে বেশি বিরক্ত করে। সত্তা-চিহ্নিতকরণ ব্যবস্থাগুলো তারকাদের চেনে। ওরা নাম জানে, মুখ জানে, সংখ্যা জানে। কিন্তু ওরা চেনে না সেই স্কোরারকে, যিনি একশো ওভারের একটা ত্রুটি ধরেছিলেন। চেনে না সেই ম্যাচ রেফারিকে, যিনি একটা কোড-অফ-কন্ডাক্ট অভিযোগে দুই নম্বর ধারা বেছে নিয়েছিলেন। চেনে না সেই অনুবাদককে, যিনি বোর্ডের বাংলা বিজ্ঞপ্তিটা ইংরেজিতে করার সময় “স্থগিত” শব্দটাকে “বাতিল” করে দিয়েছিলেন।
এবং এই বাদ পড়াটা নিরীহ নয়। যে সত্তাগুলো চেনা যায় না, সেই সত্তাগুলোর সাক্ষ্যও হারিয়ে যায়। আর যাদের সাক্ষ্য হারিয়ে যায়, তাদের বিরুদ্ধে সিদ্ধান্ত নেওয়ার সময় কেউ তাদের কথা মনে রাখে না।
আমি বুথে একমাত্র মহিলা হিসেবে বসে প্রথমবার অফসাইডের নিয়মটা ভিন্নভাবে শুনেছিলাম — সেটা নিয়মের ভাষা নিয়ে নয়, কে সেই ভাষার কর্তা তা নিয়ে। ডেটা-পাইপলাইনে এই প্রশ্নটা আরও নির্মম রূপ নেয়। এখানে কর্তৃত্ব নির্ধারিত হয় মডেলের প্রশিক্ষণ-তথ্য দিয়ে। যে পেশা বা যে মানুষ প্রশিক্ষণ-তথ্যে কম আছে, তার সাক্ষ্য স্বয়ংক্রিয়ভাবে কম ওজন পায়। এবং এই কম ওজন কেউ ইচ্ছা করে দেয় না — এটা সিস্টেমের গঠনে ঢুকে থাকে, ঠিক যেমন পুরনো সংবাদকক্ষের গঠনে ঢুকে থাকে।
এই কারণেই আমি মনে করি, একটা ফাঁকা পেলোডের রিপোর্ট শুধু কারিগরি নথি নয়। এটা একটা সাক্ষ্য-নথি। এটা লিখে রাখে যে কী কী সাক্ষ্য সংগ্রহ করা যায়নি। ভবিষ্যতে কেউ যদি দাবি করে যে ওই সময়ে ওই বিষয়ে সব তথ্য ছিল এবং সবাই জানত, তখন এই নথিটা সেটার বিরুদ্ধে দাঁড়াবে।
ষষ্ঠ মুখ: ট্রান্সফার উইন্ডোতে একটা ব্যবহারিক ফিল্টার।
এই পুরো আলোচনার একটা বাস্তব প্রয়োগ আছে, এবং সেটা আজকের বাজারের সঙ্গে সরাসরি সম্পর্কিত। ট্রান্সফার উইন্ডো মানে গুজবের বন্যা। পাঠকের সমস্যা তথ্যের অভাব নয়, তথ্যের আধিক্য। এই অবস্থায় দরকার একটা নির্ভরযোগ্যতার ফিল্টার, যেটা সংখ্যাকে নয়, সংখ্যার পেছনের কাঠামোকে দেখে।
আমার ফিল্টারটা সরল, এবং এটা ডেটা-পাইপলাইনের পাঠ থেকেই এসেছে। প্রথমে দেখুন, দাবিটা কোন স্তরে দাঁড়িয়ে আছে। ক্লাব ঘোষণা করেছে, নাকি ক্লাবের ঘনিষ্ঠ সূত্র বলেছে, নাকি সূত্রটি নিজেই একটা কলাম? দ্বিতীয়, দেখুন চুক্তির কাঠামো কী বলছে। একটা রিলিজ ক্লজের অঙ্ক আর একটা বেতন-বিলের চাপ — এই দুইয়ের মধ্যে কোনটা দাবিটাকে সমর্থন করে? তৃতীয়, দেখুন এজেন্টের অবস্থান। কে এই মুহূর্তে সবচেয়ে বেশি লাভবান হয় যদি গুজবটা সত্যি হয়? চতুর্থ, দেখুন সময়। কোনো দাবি যদি এমন সময়ে আসে যখন উইন্ডো বন্ধ, তখন সেটা সম্ভবত চুক্তি নবায়নের কৌশল।
আর একটা জিনিস, যেটা সবাই এড়িয়ে যায়। একটা ক্লাব বা বোর্ড যখন হঠাৎ চুপ হয়ে যায়, সেই নীরবতাও একটা তথ্য। কোনো প্রেস বিজ্ঞপ্তি প্রত্যাহার করা, কোনো পেজ ডি-ইনডেক্স করা, কোনো তালিকা থেকে নাম সরানো — এগুলো সবই ফাঁকা পেলোড, এবং প্রত্যেকটার একটা কারণ আছে। যে পাঠক শুধু ঘোষণা পড়েন, তিনি অর্ধেক গল্প জানেন। যে পাঠক অনুপস্থিতি পড়েন, তিনি বাকিটা জানেন।
সপ্তম মুখ: তথ্যের জন্য একটা ডিসিশন অডিট।
আমি ২০১৮ সালে যেটা করেছিলাম — প্রতিটা বিতর্কিত সিদ্ধান্তের জন্য একটা অডিট, পাঁচে এক থেকে পাঁচে পাঁচ পর্যন্ত নির্ভুলতার নম্বর, সঙ্গে ভিডিও টাইমস্ট্যাম্প এবং যে আইনটা প্রয়োগ করা হয়েছে তার উল্লেখ — সেই একই পদ্ধতি তথ্যের উপর প্রয়োগ করা যায়। আমি এটাকে বলি সোর্স অডিট।
পদ্ধতিটা এই রকম। একটা দাবি নিন। প্রথমে জিজ্ঞেস করুন, দাবিটার একটা প্রাথমিক নথি আছে কি? থাকলে তার তারিখ কী? না থাকলে দাবিটা কোন স্তরে দাঁড়িয়ে আছে? তারপর নম্বর দিন। পাঁচ — প্রাথমিক নথি আছে, তারিখ আছে, যাচাইযোগ্য। চার — প্রাথমিক নথি আছে, কিন্তু অসম্পূর্ণ বা অংশিক। তিন — নির্ভরযোগ্য দ্বিতীয় সূত্র আছে, প্রাথমিক নথি নেই। দুই — শুধু সাংবাদিকের পর্যবেক্ষণ, কোনো নথি নেই। এক — শুধু পুনরাবৃত্তি, উৎসের চিহ্নমাত্র নেই।
এই স্কেলের সুবিধা হলো, এটা ভাষা দিয়ে বোঝানোর দরকার নেই। একটা সংখ্যা দেখেই পাঠক জানেন তিনি কতটা ভরসা করতে পারেন। এবং এটা প্রকাশককেও একটা অস্বস্তিকর প্রশ্নের সামনে দাঁড় করায়: আপনার আজকের দশটা গল্পের গড় নম্বর কত?
বিপরীতমুখী পাঠ: আসল সমস্যাটা স্ক্র্যাপার নয়
এখন স্বাভাবিক পাঠটা লেখা যাক। একটা পাইপলাইন ফাঁকা আউটপুট দিয়েছে। অতএব স্ক্র্যাপারটা ভেঙেছে। ওয়েবসাইটের কাঠামো বদলেছে, সিলেক্টরটা আর মিলছে না, পেজটা জাভাস্ক্রিপ্টে রেন্ডার হচ্ছে। ঠিক করে দিন, আবার চালু হবে।
এই পাঠটা যুক্তিসঙ্গত, এবং বেশিরভাগ ক্ষেত্রে সত্যিও। কিন্তু আমি এটাকে যথেষ্ট মনে করি না, কারণ এটা লক্ষণ দেখে ওষুধ দেয়, রোগ নির্ণয় করে না।
আমার বিপরীতমুখী পাঠটা এই: স্ক্র্যাপার ভাঙেনি, টেমপ্লেটটাই ভাঙা।
যে ব্যবস্থা শূন্য ইনপুট পেয়েও একটা পূর্ণাঙ্গ ডকুমেন্ট রেন্ডার করতে বাধ্য, সে ব্যবস্থা ডেটা সংগ্রহের জন্য তৈরি নয়, সে ব্যবস্থা আউটপুট উৎপাদনের জন্য তৈরি। দুটো আলাদা শিল্প। প্রথমটার সাফল্যের মাপকাঠি নির্ভুলতা। দ্বিতীয়টার সাফল্যের মাপকাঠি ধারাবাহিকতা। যখন এই দুটোকে একই পাইপলাইনে জোড়া দেওয়া হয়, তখন ধারাবাহিকতা নির্ভুলতাকে খেয়ে ফেলে, কারণ ধারাবাহিকতা সহজ এবং পরিমাপযোগ্য।
এখানে একটা জিনিস আমি স্পষ্ট করতে চাই, কারণ ভুল বোঝার সুযোগ আছে। আমি অটোমেশনের বিরুদ্ধে নই। আমার নিজের কাজের একটা বড় অংশ এখন অটোমেটেড ফিডের উপর নির্ভরশীল। আমি শুধু বলছি, যে সিস্টেম “আমি জানি না” বলতে পারে না, সেটা বিশ্লেষণ ব্যবস্থা নয় — সেটা একটা গুজব ইঞ্জিন, যার গতি বেশি আর ব্যাকরণ ভালো।
দ্বিতীয় বিপরীতমুখী পাঠটা আরও অস্বস্তিকর। আমরা সাধারণত ফাঁকা ডেটাকে ঘটনার অনুপস্থিতি হিসেবে পড়ি। ম্যাচ হয়নি, খেলোয়াড় খেলেননি, সিদ্ধান্ত নেওয়া হয়নি। কিন্তু অনেক সময় ফাঁকা ডেটা নিজেই একটা ঘটনা। পেজটা সরানো হয়েছে — এটা একটা সিদ্ধান্ত। বিজ্ঞপ্তিটা প্রত্যাহার করা হয়েছে — এটা একটা সিদ্ধান্ত। তালিকা থেকে নাম কাটা হয়েছে — এটাও একটা সিদ্ধান্ত। এবং এই সিদ্ধান্তগুলো প্রায়ই সবচেয়ে গুরুত্বপূর্ণ সিদ্ধান্ত, কারণ যেগুলো লুকানো যায় না সেগুলো নিয়েই মানুষ বেশি কথা বলে।
২০২০ সালের ১৬ মে, বুন্দেসলিগা দর্শকশূন্য স্টেডিয়ামে ফিরে আসে। ডর্টমুন্ড শালকে-কে ৪-০ হারায়, গ্যালারি ফাঁকা। আমি সব দর্শকশূন্য ম্যাচের একটা স্প্রেডশিট বানিয়েছি, ৮৩টা ম্যাচ, এবং দেখেছি ঘরের দলের জয় ৪৩ শতাংশ থেকে ৩৩ শতাংশে নেমে এসেছে, আর অতিথি দলের ফাউলের হার প্রতি ম্যাচে প্রায় দুইটা কমেছে। সেই লেখায় আমি বলেছিলাম, ভিড়টা আম্পায়ারদের সঙ্গে আম্পায়ারিং করছিল।
সেই শিক্ষাটা আমি এখন ডেটার উপর প্রয়োগ করি। নীরবতাও একটা চলক। একটা ফাঁকা পেলোড যখন আসে, আমার প্রথম প্রশ্ন হওয়া উচিত — এখানে কে চুপ করেছে, এবং কেন এই মুহূর্তে?
তৃতীয় বিপরীতমুখী পাঠটা হলো এই পুরো ব্যাচের সবচেয়ে সৎ নথিটা সম্ভবত সবচেয়ে কম পঠিত। যে ডকুমেন্ট আটটা অধ্যায়ে এন/এ লিখেছে, সেটা কেউ শেয়ার করবে না। যে ডকুমেন্ট আত্মবিশ্বাসের সঙ্গে একটা ভুল দাবি করেছে, সেটা হাজারবার শেয়ার হবে। এটাই আমাদের প্রণোদনার বাস্তবতা। আর এই বাস্তবতার কারণেই আমি মনে করি, সততাকে একটা প্রক্রিয়ায় পরিণত করতে হবে, ব্যক্তিগত গুণ হিসেবে ভরসা করা যাবে না।
শেষ কথা: চেইনের ফাঁকা ব্লকটা কে অডিট করবে
আমি জানি এই লেখাটা ক্রিকেট নিয়ে খুব কম কথা বলে। কোনো ম্যাচ নেই, কোনো ইনিংস নেই, কোনো র্যাঙ্কিং নেই। তবু আমি এটা লিখলাম, কারণ গত বিশ বছরে ক্রিকেট-সাংবাদিকতার যে অংশটা সবচেয়ে বেশি বদলেছে, সেটা মাঠ নয় — সেটা মাঠ থেকে পাঠক পর্যন্ত রাস্তা। আর সেই রাস্তার কোনো অডিট নেই।
একটা লেজার বা শৃঙ্খল তখনই মূল্যবান, যখন প্রতিটা ব্লক যাচাইযোগ্য। একটা ফাঁকা ব্লক যদি চেইনে ঢুকে যায় আর কেউ না ধরে, তাহলে পুরো চেইনের বিশ্বাসযোগ্যতা ওই একটা ফাঁকার উপর ঝুলে থাকে। ক্রিকেটের তথ্য-শৃঙ্খল এখন ঠিক সেই অবস্থায়। ফাঁকা ব্লকগুলো ঢুকছে, কেউ ধরে না, আর সেগুলোর উপর দাঁড়িয়ে সিদ্ধান্ত নেওয়া হচ্ছে — কোন খেলোয়াড়কে নেওয়া হবে, কোন কোচকে বাদ দেওয়া হবে, কোন বোর্ডকে দায়ী করা হবে।
তিনটা প্রস্তাব আমি রাখতে চাই, এবং তিনটাই সহজ। প্রথম, ফাঁকা পেলোডের হার একটা মাপকাঠি হিসেবে গণ্য হোক — কোনো ব্যাচের দুই শতাংশের বেশি লেখা যদি শূন্য তথ্যবিন্দু নিয়ে ফেরে, তাহলে সেটা একটা সংকট, একটা অসুবিধা নয়। দ্বিতীয়, সংগ্রহ-লগ প্রকাশ্য হোক। কোন ইউআরএল, কোন স্ট্যাটাস কোড, কত বাইট বডি — এই তিনটা সংখ্যা থাকলে তিনটা ভিন্ন ব্যর্থতাকে আলাদা করা যায়, আর সেটা করতে কোনো অতিরিক্ত খরচ নেই। তৃতীয়, সিদ্ধান্তের আগে উদ্ধৃতি — এই নিয়মটা প্রতিষ্ঠানেও প্রয়োগ হোক, শুধু সাংবাদিকের উপর নয়।
শেষ প্রশ্নটা আমার নিজের কাছে। আমি সারা জীবন চেয়েছি, সিদ্ধান্তটা কোন ধারায় নেওয়া হলো সেটা জানতে। আমি ফ্রেম চেয়েছি, টাইমস্ট্যাম্প চেয়েছি, ক্যালিব্রেশনের তারিখ চেয়েছি। কিন্তু আমি কখনো জিজ্ঞেস করিনি, যে সিস্টেমটা আমার হাতে সেই তথ্যগুলো তুলে দিচ্ছে, তার কাছে প্রমাণ চাওয়া যায় কি না।
আজ থেকে সেই প্রশ্নটা প্রতিটা লেখার আগে করব। আর যদি উত্তরটা ফাঁকা আসে, আমি সেটাই লিখব — ফাঁকা।
