প্রতিদিনের টাইপিং অনুশীলন সবচেয়ে ভালো কাজ করে যখন দৈনিক ন্যূনতম শর্তটি ছোট হয়। এই সাইটে স্ট্রিকের জন্য প্রতি UTC দিনে একটি যাচাই করা টেস্ট লাগে, আর 30 সেকেন্ডের টেস্ট এক ঘণ্টার সমানই গোনা হয়। আমরা এভাবে বানিয়েছি কারণ টাইপিং অনুশীলনের স্ট্রিকের কাজ আপনাকে বারবার ফিরিয়ে আনা, এমন কোনো বোঝা হয়ে ওঠা নয় যাকে আপনি অপছন্দ করতে শুরু করবেন।
যে ফিচার নিয়ে আমরা সবচেয়ে বেশি সময় তর্ক করেছি তা রেস ট্র্যাক বা অ্যান্টি-চিট নয়। সেটি স্ট্রিক।
স্ট্রিক কাজ করে। যে কেউ কোনো ভাষা শেখার অ্যাপ ব্যবহার করেছেন, তিনি এই অনুভূতিটাও চেনেন: রাত 11:50-এ অ্যাপ খুলে একটি বাক্য টাইপ করা, যাতে সংখ্যাটা শূন্যে না ফেরে। আমরা প্রথমটা চেয়েছিলাম, দ্বিতীয়টা ছাড়া। এখানে সিদ্ধান্তগুলো সংখ্যাসহ দিলাম, যাতে আপনি বিচার করতে পারেন আমরা ঠিক করেছি কি না।
টাইপিং স্ট্রিকে কী গোনা হয়?
স্ট্রিক হলো পরপর কত দিন অন্তত একটি যাচাই করা টেস্ট হয়েছে তার সংখ্যা। একটি। চার মিনিটের একটি সেশন এক ঘণ্টার সমানই স্ট্রিক বাড়ায়, আর দিনের পরে আপনি যা-ই করুন তাতে এটি বদলায় না। জেন মোড গোনা হয় না, কারণ জেনের ফল কখনো আপলোড হয় না, আর আমরা চাইনি যে মোডে কোনো মাপ নেই সেটি একটি অভ্যাসের মেট্রিক বহন করুক।
দিন মানে UTC দিন, আর আমরা আশা করি এই সিদ্ধান্ত নিয়েই সবচেয়ে বেশি প্রশ্ন আসবে। কারণগুলো আর তার দাম আরও নিচে আছে।
মনে করিয়ে দেওয়া, আর যা এটি করে না
যখন আপনার শেষ গোনা দিনটি গতকাল আর আজ আপনি টাইপ করেননি, তখন স্ট্রিক "ঝুঁকিতে", আর হোম পেজে স্ট্রিকের চিপটি তা-ই বলে। মনে করিয়ে দেওয়া বলতে এটুকুই। কোনো নোটিফিকেশন নেই, ইমেল নেই, কোনো আইকনে লাল ব্যাজ নেই, যদি না আপনি সাপ্তাহিক ডাইজেস্টে নিজে থেকে সম্মতি দেন, যা সপ্তাহে একবার সাধারণ লেখার একটি লাইনে আপনার স্ট্রিকের কথা জানায়।
এটি ইচ্ছাকৃত, আর সম্ভবত এর জন্য আমরা কিছু ফিরে আসা ভিজিটর হারাই। অভ্যাস তৈরির অ্যাপে স্ট্রিক হারানোর পুশ নোটিফিকেশন ব্যবহারকারীদের ফিরিয়ে আনার একটি প্রচলিত হাতিয়ার, আর আমাদের অভিজ্ঞতায় সবচেয়ে অপছন্দের একটিও। আমাদের পরিকল্পনায় লেখা ছিল "সম্মতি ছাড়া কোনো স্ট্রিক-হারানোর নোটিফিকেশন নয়", আর আমরা সেটিই মেনেছি।
যদি কোনো ফল আপনার শেষ গোনা দিনের আগের তারিখ নিয়ে আসে (ল্যাপটপের ঘড়ি ভুল, অফলাইনের কোনো ফল দেরিতে সিঙ্ক হলো), আমরা টেস্টটি গুনি আর স্ট্রিকে হাত দিই না। ঘড়ির গোলমালে কারও একশো দিন হারানো উচিত নয়।
XP আর লেভেল কীভাবে হিসাব হয়
XP হলো অনুশীলনের সময়ের মুদ্রা। এটি ইচ্ছাকৃতভাবেই র্যাংকিং নয়, যার কারণ পরে আসছে।
প্রতিটি যাচাই করা, জেন-বহির্ভূত টেস্টের জন্য:
- মূল XP হলো সক্রিয় টাইপিংয়ের প্রতি সেকেন্ডে 2, নির্ভুলতা অনুযায়ী মাপা। 95%-এ ত্রিশ সেকেন্ড মানে 57 XP। "সক্রিয়" মানে গোনা সময় থেকে কিবোর্ড থেকে দূরে থাকার সেকেন্ডগুলো বাদ দিয়ে, তাই ট্যাব খোলা রেখে দিলে কিছুই মেলে না।
- প্রতি টেস্টে সর্বোচ্চ 600 সেকেন্ড গোনা হয়, তাই ত্রিশ মিনিটের টেস্ট দশ মিনিটেরটির সমান মূল XP পায় আর ম্যারাথনগুলো আধিপত্য করতে পারে না।
- গুণকগুলো একসঙ্গে যোগ হয়: 100% নির্ভুলতায় +50%, উক্তির টেস্টে +50%, যতিচিহ্ন চালু থাকলে +40%, সংখ্যা চালু থাকলে +10%। যতিচিহ্নসহ একটি নিখুঁত উক্তি চলে 2.4×-এ।
- নির্দিষ্ট বোনাস: UTC দিনের প্রথম টেস্টে +50, দৈনিক চ্যালেঞ্জের চেষ্টায় +50, রেসে +25 আর জিতলে আরও +25, ব্যক্তিগত সেরায় +20।
লেভেলগুলো একটি মৃদু বক্ররেখা মেনে চলে: লেভেল L থেকে L+1-এ যেতে XP লাগে 100 × L^1.3। যোগ করলে লেভেল 2 আসে 100 XP-র পর, লেভেল 5 প্রায় 1,370-এর পর, লেভেল 10 প্রায় 7,700-এর পর, লেভেল 20 প্রায় 40,300-এর পর আর লেভেল 50 প্রায় 343,000-এর পর।
লেভেল 50-কে অনুশীলনের হিসাবে বললে: একটি নিখুঁত 30 সেকেন্ডের টেস্ট বোনাসের আগে 90 XP দেয় (60 মূল, সঙ্গে নিখুঁত নির্ভুলতার জন্য 50%), তাই এমন প্রায় 3,800টি লাগবে। 95% নির্ভুলতায় দিনে পনেরো মিনিট প্রথম-টেস্টের বোনাসসহ প্রায় 1,760 XP দেয়, যাতে লেভেল 50-এ পৌঁছাতে লাগে মোটামুটি ছয় থেকে সাত মাস। লেভেল 100-এর জন্য লাগে প্রায় 1.7 মিলিয়ন XP। লেভেলের নামগুলো নবাগত থেকে শুরু হয়ে টাইপিস্ট, কি-কারিগর আর শব্দশিল্পী পেরিয়ে 50-এ কিংবদন্তি আর 100-এ অমর পর্যন্ত যায়, আর হ্যাঁ, তালিকার ওপরের দিকটা ইচ্ছে করেই একটু হাস্যকর।
অতিথি হিসেবে আপনার ব্রাউজার একটি লোকাল কপিতে একই নিয়ম প্রয়োগ করে। সাইন ইন করলেই স্ট্রিক আর দৈনিক র্যাংকিং একটি অ্যাকাউন্টে থাকে, আর নতুন অ্যাকাউন্টে সাইন ইন করলে লোকাল অগ্রগতি একবার যুক্ত হয়, সর্বোচ্চ 5,000 XP, 500টি টেস্ট আর 30 দিনের স্ট্রিক পর্যন্ত। এই সীমা আছে যাতে যুক্ত করার সুবিধা দিয়ে কেউ রেকর্ড বানাতে না পারে; আর এজন্যই 100 দিনের ব্যাজ পাওয়ার একমাত্র পথ সাইন-ইন করা অ্যাকাউন্ট।
স্ট্রিকের মাইলফলক 3, 7, 14, 30, 60, 100, 180 আর 365 দিনে, আর ব্যাজ 3, 7, 30, 100 আর 365-এ। 365-এর ব্যাজটি প্রায় কেউই পাবেন না বলে আমরা আশা করি, আর সেটাই এর উদ্দেশ্য।
স্ট্রিক কেন এভাবে বানানো
পাঁচটি নিয়ম স্ট্রিককে রূপ দেয়। প্রতিটি এসেছে এই প্রশ্ন থেকে যে একটি অভ্যাসের মেট্রিক কীসের পুরস্কার দেওয়া উচিত।
র্যাংকিংয়ে পরিমাণের পয়েন্ট নেই
XP খরচ করা সময় মাপে, তাই এটি পরিমাণের পুরস্কার দেয়। দুজন টাইপিস্টের কথা ধরুন। একজন 60 WPM-এ টাইপ করেন আর দিনে 98% নির্ভুলতায় একটিমাত্র 30 সেকেন্ডের টেস্ট দেন, যা দেয় প্রায় 59 XP, সঙ্গে 50 প্রথম-টেস্ট বোনাস, তাই দিনে মোটামুটি 110। অন্যজন 45 WPM-এ টাইপ করেন আর দিনে পনেরো মিনিট 95%-এ অনুশীলন করেন, যা দেয় প্রায় 1,760। ধীর টাইপিস্ট পান ষোলো গুণ বেশি।
অনুশীলনের মুদ্রার জন্য এটাই ঠিক উত্তর, কারণ অনুশীলনের যা দরকার তা হলো কি-র ওপর সময়। কিন্তু র্যাংকিংয়ের জন্য এটা ভুল উত্তর, কারণ র্যাংকিং বলবে কে সবচেয়ে দ্রুত আর সবচেয়ে পরিষ্কার টাইপ করেন। XP-র একটি বোর্ড দ্বিতীয় টাইপিস্টকে প্রথমে রাখত, আর তাতে ওপরে ওঠার উপায় হতো মিনিট যোগ করা।
তাই XP কখনো কারও র্যাংক ঠিক করে না। লিডারবোর্ড র্যাংক করে গতি দিয়ে, নির্ভুলতার একটি সীমাসহ; XP দেখা যায় আপনার ফলাফলে আর প্রোফাইলে, কোনো বোর্ডে কখনো নয়। একই যুক্তিতে রেস-এর ফলাফলের স্ক্রিন সাজানো: আগে আসে অবস্থান, WPM আর নির্ভুলতা, আর XP-র লাইনটি ছোট আর নিচে।
কেনার কিছু নেই
খরচ করার কোনো মুদ্রা নেই, কোনো দোকান নেই, কোনো সাজসজ্জার আপগ্রেড নেই, আর লগ ইন না করলে ক্ষয়ে যায় এমন কিছুও নেই। স্ট্রিক হলো আপনি যে দিনগুলো অনুশীলন করেছেন তার রেকর্ড। এর কোনো অংশ কেনা গেলেই সংখ্যাটির মানে দাঁড়ায় "অনুশীলন করেছেন, অথবা টাকা দিয়েছেন", আর তখন এটি আপনাকে আর কিছুই বলে না। একটি দোকান থাকলে সাইটেরও কারণ তৈরি হয় আপনাকে অগ্রগতি হারানো নিয়ে উদ্বিগ্ন করার, কারণ উদ্বেগই সুরক্ষা বিক্রি করে। আমরা কোডে সেই প্রণোদনা চাইনি।
ইতিহাস টাকার দেয়ালের আড়ালে নয়
আপনার ইতিহাস সীমাহীন আর বিনামূল্যে, আর স্ট্রিক কখনো এমন কিছুর ওপর নির্ভর করে না যার জন্য টাকা দিতে হয়। স্ট্রিকের অস্তিত্ব আপনার ইতিহাসের পাতায় 90 দিনের প্রবণতা তৈরির জন্য, আর অভ্যাসটি কাজ করছে কি না তার একমাত্র সৎ পরীক্ষা ওই চার্ট। পুরোনো ফল তালাবন্ধ করলে ঠিক সেই স্থবিরতা লুকিয়ে যেত যা আপনার সবচেয়ে বেশি দেখা দরকার।
হারানোর কোনো স্ক্রিন নেই
যখন স্ট্রিক ভাঙে, আর তা ভাঙবেই, চিপে দেখায় 1 আর আপনার সেরা-স্ট্রিকের সংখ্যাটি থেকে যায়। এটি ফিরিয়ে আনার কোনো অফার নেই।
অভ্যাস নিয়ে গবেষণা এখানে নরম থাকার পক্ষে। Phillippa Lally-র নেতৃত্বে University College London-এর একটি গবেষণায়, যে অংশগ্রহণকারীদের গবেষকরা মডেল করতে পেরেছিলেন তাঁদের নতুন অভ্যাস গড়তে গড়ে 66 দিন লেগেছিল, আর একটি সুযোগ হাতছাড়া হওয়া "অভ্যাস গঠনের প্রক্রিয়ায় উল্লেখযোগ্য প্রভাব ফেলেনি"। একটি বাদ পড়া দিনকে বিপর্যয় হিসেবে দেখালে মানুষ শেখে যে অভ্যাসটি ভঙ্গুর, আর কেউ কেউ আবার 1 থেকে শুরু করার বদলে ছেড়েই দেন।
ভাষা শেখার অ্যাপগুলো যেমন বিক্রি করে, তেমন একটি "স্ট্রিক ফ্রিজ"-এর কথা আমরা ভেবেছিলাম, আর সিদ্ধান্ত নিয়েছিলাম যে হারানো স্ট্রিককে একটি না-কেনা জিনিসের মতো অনুভব করানোই ঠিক সেটা, যা আমরা বানাতে চাইনি।
UTC দিন
দিনের সীমানা সবার জন্য এক হতে হবে, নইলে লিডারবোর্ড আর দৈনিক চ্যালেঞ্জ তা ভাগ করে নিতে পারে না। স্থানীয় সময় হলে দৈনিক উক্তি প্রত্যেক ভিজিটরের জন্য আলাদা মুহূর্তে বদলাত, আর "আজকের দ্রুততম" তালিকা আলাদা আলাদা দিনের তুলনা করত। UTC-ই একমাত্র সীমানা যা সার্ভার ব্রাউজারকে জিজ্ঞেস না করেই হিসাব করতে পারে।
এর দাম হলো, California-র একজন টাইপিস্টের জন্য দিন বদলায় বিকেল 4টা বা 5টায়, আর Delhi-র একজনের জন্য ভোর 5:30-এ। আমরা প্রতি অ্যাকাউন্টে ঘণ্টার একটি অফসেটের কথা ভেবেছিলাম আর প্রথম সংস্করণের জন্য তা না করার সিদ্ধান্ত নিয়েছিলাম: এতে ব্যাখ্যা করার মতো আরেকটি নিয়ম যোগ হয়, আর যে স্ট্রিক বোঝাতে একটি পুরো অনুচ্ছেদ লাগে সেটি আগেই হেরে বসে আছে। দৈনিক চ্যালেঞ্জের কাউন্টডাউন দেখায় চলতি দিনে আর কতক্ষণ বাকি। এটি নিয়ে আবার ভাবলে তা হবে একবারের একটি অফসেট, আর এই নোটে তা জানানো হবে।
কত ঘন ঘন টাইপিং অনুশীলন করা উচিত?
ন্যূনতম শর্তটি কম রাখুন। যে স্ট্রিকে পনেরো মিনিট লাগে তা প্রথম ব্যস্ত দিনেই মরে যায়; খারাপ দিনে একটি 30 সেকেন্ডের টেস্টই যথেষ্ট। 40 থেকে 80 WPM অনুশীলন পরিকল্পনা এই ভাবনা ঘিরেই তৈরি: পুরো সেশন পনেরো মিনিটের, আর ন্যূনতম একটি টেস্ট।
মাঝরাতে প্রথম-টেস্টের বোনাসের পেছনে ছুটবেন না। +50 আছে যাতে একটি ছোট সেশনও সার্থক হয়, আপনাকে রাত জাগানোর জন্য নয়। যদি UTC-তে রাত 11:55 হয় আর আপনি ক্লান্ত থাকেন, ঘুমের চেয়ে স্ট্রিকের মূল্য কম।
দৈনিক চ্যালেঞ্জকে আপনার ডিফল্ট সেশন বানান। এটি একটি উক্তি, সাধারণত এক মিনিটেরও কম লাগে, আর এর বোর্ড প্রতিদিন রিসেট হয়, তাই শীর্ষে পৌঁছানো সম্ভব। গেমিফিকেশন ডিজাইনার Yu-kai Chou-ও একই যুক্তি দেন: "প্রথম থেকে শেষ পর্যন্ত একটি সাধারণ র্যাংকিং শুধু শীর্ষের কাছাকাছি থাকা ছোট একটি দলকেই উজ্জীবিত করে", আর তিনি পরামর্শ দেন রিসেটকে মানুষ কত ঘন ঘন কাজটি করে তার সঙ্গে মেলাতে, ঘন ঘন করা কাজের জন্য দৈনিক।
স্ট্রিক নয়, প্রবণতার রেখা দেখুন। আপনার ইতিহাসের পাতায় 90 দিনের চার্টটিই স্ট্রিকের উদ্দেশ্য। রেখা যদি ওপরে উঠতে থাকে, স্ট্রিক ভাঙলেও সে তার কাজ করেছে। রেখা যদি এক মাস ধরে সমতল থাকে, তাহলে স্ট্রিক আপনাকে টাইপ করিয়ে রাখছে কিন্তু দ্রুত করছে না, আর সেটাই সংকেত যে সাধারণ টেস্টের বদলে অনুশীলন-এ দুর্বল কি-র ড্রিল খুলুন।
আমরা যা নজরে রাখছি
প্রকাশ করার মতো রিটেনশন ডেটা এখনো আমাদের কাছে নেই। যখন থাকবে, প্রশ্ন হবে, যাঁরা 30 দিনের স্ট্রিক ধরে রাখেন তাঁরা কি 90 দিনের প্রবণতায় দ্রুত হচ্ছেন, নাকি শুধু স্ট্রিকটাই ধরে রাখছেন। যদি দ্বিতীয়টা হয়, তাহলে ডিজাইনটি ভুল, আর প্রথম পরিবর্তন হবে দৈনিক চ্যালেঞ্জকেই গোনার জিনিস বানানো।
প্রায়ই জিজ্ঞাসিত প্রশ্ন
কত ঘন ঘন টাইপিং অনুশীলন করা উচিত?
অভ্যাস ধরে রাখতে মাঝে মাঝে ম্যারাথনের চেয়ে অল্প করে ঘন ঘন অনুশীলন ভালো। আমাদের স্ট্রিক দিনে একটি যাচাই করা টেস্ট চায়, আর অনুশীলন পরিকল্পনা পরামর্শ দেয় সময় থাকলে পনেরো মিনিট, না থাকলে একটি ছোট টেস্ট।
দৈনিক স্ট্রিক কখন রিসেট হয়?
UTC-র মাঝরাতে। দৈনিক চ্যালেঞ্জের কাউন্টডাউন দেখায় চলতি UTC দিনে আর কত ঘণ্টা বাকি, তাই আপনি যেখানেই থাকুন, "আজ" কখন শেষ হচ্ছে তা দেখতে পারবেন।
দৈনিক চ্যালেঞ্জে কি নিখুঁত নির্ভুলতা লাগে?
না। যতবার খুশি খেলতে পারেন আর আপনার সেরা রানটি গোনা হয়, তবে দৈনিক বোর্ডে কোনো রান র্যাংক পায় শুধু 90% বা তার বেশি নির্ভুলতায়।