Monday, November 18, 2013

Bjarne Stroustrup-র C++ বই

"Certainly not every good program is object-oriented, and not every object-oriented program is good..." - Bjarne Stroustrup 

আজ থেকে বছর কুড়ি আগে স্টারদেরকে সবাই তাঁদের পুরো, ভদ্রস্থ নামেই ডাকতো - সে তিনি যে বিষয়েরই হোন না কেন। যেমন কপিলদেবকে সবাই কপিলদেব-ই বলতো, কাউকে বলতে শুনিনি যে "K. N." - বা উত্তমকুমারকে অন্য কোনো নামে কাউকে ডাকতে শুনিনি কখনো। 'হেমন্ত মুখোপাধ্যায়' চিরকালই হেমন্ত মুখোপাধ্যায় নামেই পরিচিত ছিলেন - এমন কি 'হেমন্ত মুখার্জী' নামেও তাঁকে ডাকতে খুব কমই শুনেছি। একবার পূজার বাজারে গীতশ্রী সন্ধ্যা মুখোপাধ্যায়ের HMV থেকে বার হওয়া নতুন গানের রেকর্ড কিনতে গিয়ে: "দাদা, সন্ধ্যার নতুন রেকর্ডটা কি আছে?" বলাতে যোধপুর পার্কের 'দ্য মেলোডি' রেকর্ড স্টোরের কাউন্টারে বসা সেই বয়স্ক লোকটি ব্যাঙ্গাত্মক সুরে তিরস্কার করেছিলেন: 'সন্ধ্যা কি আপনার বন্ধু হয় নাকি ?' - জীবনে দ্বিতীয়বার আর সেই একই ভুল করিনি। এখনো সেই LP রেকর্ডের শিরোনামটা মনে আছে: 'নতুন গানের, রঙীন খামে

কিন্তু আজকাল হলো গিয়ে সব 'শর্টের' যুগ। মানুষের হাইট গেছে কমে, মিনি-স্কার্টের ঝুল কমতে কমতে হয়ে গেছে রুমাল, উর্ধাঙ্গের পরিধেয় বস্তু দেখলে মনে পড়ে সেই প্রবাদ: 'কেউ পরে অভাবে, কেউ পরে স্বভাবে' ! আর বিশ্বাস, সততা, এ সবের কথা না-বলাই ভালো। শচীন তেন্ডুলকার হয়ে গেছে 'SRT' - শাহরুখ খান হয়ে উঠেছে 'SRK' - সিনেমার নামগুলো তো আরও ফানি। 'QSQT' যে আমির খানের টসটসে প্রেমের ছায়াছবি, সেটা না জানায় সুদুর অতীতে আমাকে অনেক অপদস্থ হতে হয়েছিলো। কয়েকদিন আগেই বাড়ি ফেরার পথে প্রচন্ড ট্রাফিক জ্যামে পড়েছিলাম। তিন লেনের এক্সপ্রেস রোডের কোথায় একটা অ্যাক্সিডেন্ট হয়ে সেটা একটাই লেন হয়ে গেছে। 'ন-যৌ-ন-তস্থৌ' হয়ে চারিদিকে মগনলাল মেঘরাজের কথা মতো 'সব লালে-লাল' দেখছি। রাস্তাটা যে এতো গাড়ি বয়ে নিয়ে চলে সেটা আগে কখনো মনে হয়নি। জীবনে শর্টকাটের যে কি প্রয়োজন তা আবার অনুভব করলাম। কিন্তু কোথায় নিই শর্টকাট !  রাস্তা তো পুরো পার্কিং লট হয়ে আছে! চরম bored হয়ে বসে বসে ভাবছিলাম যে আমার জীবনে শর্টকাটওয়ালা কোন বস্তু বা মহাপুরুষের আবির্ভাব কখনো হয়েছিলো কিনা। স্মৃতি মানুষকে যে কতখানি প্রতারিত করতে পারে, তা আবার নতুন করে জেনে বিস্মিত হলাম। মনে পড়ে গেলো আমার জীবনের প্রথম কর্মস্থলেই এক কলিগকে আমরা ডাকতাম তার শর্টকাট নামে, 'SJD' (পুরো নামটা এখানে বলা ঠিক হবে না !)  - সে'কথাটা বেমালুম ভুলে গেছিলাম। এই SJD নাম মনে করার সাথে সাথেই একরাশ হাসির ঘটনা মনে পড়ে গেলো। তাদের সব থেকে মজারটার সাথে জড়িয়ে আছেন C++ ল্যাঙ্গোয়েজের জন্মদাতা Bjarne Stroustrup মহাশয় স্বয়ং। 

সে সময় Java ল্যাঙ্গোয়েজ এতোটা পপুলার হয়নি - বিল গেটস মনোপলিতে ভালোমতোই ডলারের পাহাড় বানিয়ে চলেছিলেন। C++ আর MFC জানা লোকেদের তখন প্রচুর ডিমান্ড। এই সময় দিল্লী, না বোম্বে-র TCS থেকে একজন বিজ্ঞ ছেলে এসে জয়েন করেছিলো আমাদের অফিসে, আমাদের থেকে মাস খানেক আগে। তাকে না-জানি কেন 'পানু' নামে ডাকা হতো। এখানেও সেই শর্টকাট নাম। তবে মিথ্যা বলবো না, সে মোটেই ঐসব 'নীল সিনেমা'-টিনেমা দেখতো না। কিন্তু নিক-নেম তো আপনা-আপনিই জন্ম নেয়, অনেকটা আগাছার মতো এবং বেশিরভাগ সময় কোনো কারণ ছাড়াই। তো এই পানুর কাছে ছিলো Stroustrup-এর লেখা অরিজিনাল বই "The C++ Programming Language"  --- এই বই নাকি  C++-এর প্রথম ও শেষ কথা। এটা ধুয়ে তার জল খেলেও নাকি গোটা IT জগৎ চলে আসবে আমাদের হাতের মুঠোয়, সিনিয়ররা মাথার মধ্যে এরকম ভাবনাই ঢুকিয়ে দিয়েছিলো। কিন্তু বইটা ছি বিদেশী - Addison Wesley থেকে পাবলিশড হতো আর দামও ছিল অনেক বেশি - ইন্ডিয়ান টাকায় তখনকার দিনেও প্রায় সাতশো টাকার মতো। সে সময় ইন্টারনেট থেকে বই ডাউনলোডের কোনো কনসেপ্টই ছিলো না। তার উপর আমরা ছিলাম ঘোর অর্থ-সংযমী ব্যাচেলর, বই 'কিনে পড়ায়' কখনোই বিশ্বাস কোরতাম না। যাদবপুরের এইট-বি বাস স্ট্যান্ডের রামকৃষ্ণদার জেরক্সের দোকান তখন আমাদেরকে বাঁচিয়ে রেখেছিলো, বা উল্টোটা, আমরা বাঁচিয়ে রেখেছিলাম তাঁকে। আমরা রোজ দেখতাম পানু অফিসে এসে নিজের ডেস্কে বসে বসে গম্ভীরভাবে সারাক্ষণ ওই খটমট বইটা পড়ে যাচ্ছে - কারুর সঙ্গে তেমন কথাটথা সে বিশেষ বলতো না। আমরা যখন কম্পিউটারে বসে আমাদের রোজকার ফুটবল গেমস খেলতে খেলতে চেঁচামেচি শুরু করে দিতাম, তখন সে অতি-বিরক্ত চোখে আমাদের দিকে তাকিয়ে, শ্রাগ করে কনফারেন্স রুমে চলে যেতো, আর দরজা বন্ধ করে সেখানে বসে ঘন্টার পর ঘন্টা সেই বইটা পড়ে যেতো। আমরা ভাবতাম না-জানি সে ক-তো জ্ঞানী। অনেকবারই তার কাছে Stroustrup-এর সেই বইটা পড়বো বলে চেয়েছি, কিন্তু তার সেই একই কথা: 'না ভাই, আমি বই বাড়ি নিয়ে যেতে দিই না - তুমি অফিসে বসেই অফ টাইমে পড়ো না  কেন ?' -  আমরা আমতা আমতা করি, আর মনে মনে বলি: "শালা !! আধুনিক পাগলা দাশু এসেছে কোথাকার !!  অফিসে এসে বই পড়লে খেলবোটা কখন? আর বই 'কিনে কেন' পড়বো শুনি? তাহলে জেরক্সের দোকানগুলো রয়েছে কি করতে !!"  - পানু ছিল মহা সাবধানী - লাঞ্চে যাবার সময় নিজের ব্যাকপ্যাকের মধ্যে বইটা ঢুকিয়ে তবে সে খেতে যেতো। বইটা যেন ছিল তার নন-লিভিং এক প্রেমিকা - মুহুর্তের জন্যেও সে তাকে নজর-ছাড়া করতে চাইতো না। 

এই রকম ভাবেই  চলছিলো - মাসখানেক বাদে একদিন SJD জয়েন করলো, একটা জাপানি প্রজেক্টে কাজ করার জন্যে। পানু সহ আমরা কয়েকজন অলরেডি সেই প্রজেক্টে কাজ শুরু করে দিয়েছি  - পানু ছিলো আমাদের স্বঘোষিত টিম লীড। SJD ছিলো আমাদের থেকে সামান্য বড়ো, কিন্তু ফিচকে। সেও বোধহয় কোনো একটা TCS থেকেই এসেছিলো। তো কিছুদিনের মধ্যেই জানা গেলো SJD আমাদের থেকে 'একটু বেশি C++ জানা' প্রোগ্রামার। সুতরাং অচিরেই সে হয়ে উঠলো 'বেশ মূল্যবান' বস্ত আমরা সবাই তার ভালো বন্ধু হবার চেষ্টা করতে লাগলাম - এমনকি পানুও। দেখলাম, এই হচ্ছে মোক্ষম সুযোগ, একদিন আমরা SJDকে সব খুলে বললাম। তার কাছেও সেই মহার্ঘ্য বইটা ছিলো না - দেখলাম সেও আমাদের মতো অর্থ-সংযমে বিশ্বাসী - আর হবেই-না বা কেন, সেও ছিল আমাদের মতো কলকাত্তাইয়া বাঙালি। সুতরাং সে নিমিষেই রাজি হয়ে গেলো। SJD কিছুদিন পানুর সাথে ভালো ব্যবহার করে করে তার কিছুটা বিশ্বাস অর্জন করলো।  তারপর এক শুক্রবারের সন্ধ্যায় সে পানুর কাছে ওই বইটি উইকেন্ডে বাড়িতে নিয়ে পড়ার জন্যে আব্দার করে বসলো। পানু না-না-না করতে গিয়েও আর না-করতে পারলো না। বাস্তবিকই তার C++ জ্ঞান ছিল লিমিটেড। সুতরাং SJDকে হাতে রাখার জন্যে সে বইটা ধার দিতে রাজি হয়ে গেলো। তবে সে কিন্তু SJDকে দিয়ে বার বার 'কিরা কাটিয়ে' নিলো যে তার সেই বিশ্বাসের অমর্যাদা যেন না-হয়, অর্থাৎ সেই বই যেন কোনোভাবেই SJD-র কাছ থেকে হাতছাড়া না-হয়। SJD সহ আমরা সবাই থাকতাম দক্ষিণে আর পানু থাকতো উত্তরে। সুতরাং আমদের অফিস বাস ছিলো আলাদা আলাদা। ফেরার সময় বাস আমাদেরকে ড্রপ করে দিতো যাদবপুর পর্যন্ত। তো সেই রাতে যাদবপুরে নেমে আমরা সোজা দৌড়ালাম রামকৃষ্ণদার জেরক্সের দোকানে। সেখানে পাক্কা দু-ঘন্টা দাঁড়িয়ে থেকে সেই মোটা ধুমসো বই জেরক্স করা হলো - উইথ multiple copies !!! বাড়ি ফিরলাম হে-ভ-ভি খোশ মেজাজে - একে তো ৭০০ টাকার বই যোগাড় করেছি মাত্র ৩০ টাকাতে, তার উপর পানুর বইয়ের ওপর আচ্ছা বাটপাড়ি করা গেছে !! সেটা ভেবে আরও মজা লাগলো। এখন ভেবে দেখলে অবশ্য বেশ খারাপই লাগে - কিন্তু সেই সময়ে একটুর জন্যেও মন খারাপ করে নি। মানুষ বোধ হয় সময়ের সাথে সাথে বদলিয়েই যায়। 

নেক্সট সোমবার আমরা অফিসে ঢুকলাম বেশ আলাদা আলাদা ভাবে - এমন ভাব করলাম যে SJDকে আমরা তেমন চিনিই না। যথারীতি পানু নিজে এসে SJD-র কাছ থেকে বইটা চেয়ে নিলো। আমরা তো প্রমাদ গুনছি - কম্পুটারের স্ক্রিনের দিকে মুখ করেগম্ভীর ভাবে কোনমতে হাসি চেপে বসে আছি, ভাবখানা এমন যেন NASA-র কোনো ইম্পর্টান্ট প্রজেক্টে কাজ করছি। কয়েক মুহূর্ত বাদেই পানুর গলা শোনা গেল: 'SJD, একটু শোনো তো' - কাঁচের রিফ্লেকশনে দেখতে পেলাম পানু SJDকে নিয়ে কনফারেন্স রুমে ঢুকে দরজা টেনে দিলো। ঘষাটে কাঁচের দরজার ওপাশে SJDকে দেখা গেলো ক্রমাগত হাত-পা নেড়ে নেড়ে কি-সব বলে চলেছে। আমি হাসি আর চাপতে না পেরে সোজা রেস্টরুমের দিকে হাঁটা দিলাম। 

কিছুক্ষণ বাদে ফিরে এসে দেখলাম পানু আর SJD দুজনেই ভাসুর-ভাদ্র-বৌ-এর মতো দু'জন-দু'দিকে গম্ভীর মুখ করে বসে আছে, কেউ কাউকে চেনে বলে মনে হচ্ছে না। আমার দিকে চোখ পড়তেই SJD-র পাতলা গোঁফের তলায় লুকানো হাসিটা খন্ড সেকেন্ডের জন্যে ফুটে উঠেই আবার মিলিয়ে গেলো। বাকি দিনটা আমরা সবাই হিন্দী সিনেমার 'মনোজকুমার'-এর মতো নাকে-মুখে হাত চাপা দিয়ে, জটিল ভাবনার মধ্যে ডুবে থাকার ভাব দেখিয়ে কোনোরকমে কাটিয়ে দিলাম। বিকেলে ফেরার পথে আমরা 'মাসির দোকানের' সামনে বসে SJD-র মুখে তাদের সেই কথোপকথনের রিপ্লে শুনলাম। পানুর 'সত্যি কথাটা তুমি আমায় বলো একবার...'-এর কাতর অনুযোগে SJD নাকি প্রথমে শুরু করেছিলো 'বই পড়তে পড়তে খোলা অবস্থায় ঘুমিয়ে পড়েছিলাম আর পা-টা বোধ হয় বই-এর উপরে চলে গিয়েছিলো' - কিন্তু সেটা শোনাতে পানু আঁতকে ওঠে, তারপর নাকি কাউন্টার প্রশ্ন করে যে বইয়ের বাইন্ডারের দিকে এতো ভাঁজ কিসের, আর কালো-কালো ছোপগুলোই বা এলো কোত্থেকে? তখন SJD বলে যে মেসের ঘরের পশ্চিমের জানলা দিয়ে বিকেলের দুষ্টু রোদ্দুর এসে এসে ঐসব করে দিয়েছে। পানু সেই ভুলভাল যুক্তি সেদিন খেয়েছিলো বলে আদৌ মনে হয় না, কিন্তু SJD নাকি এর আগে জীবনে কখনো, একটা সিঙ্গেল সেশনে এতো বার করে 'বিশ্বাস করো, বিশ্বাস করো...' বলেনি।  
~~~   ~~~   ~~~

Java আজ C++এর বাজার ভালোই খেয়ে নিয়েছে। Stroustrup-এর সেই বইও আজ আর C++এর 'De facto বই' বলে অনেকেই মনে করে না। Given a chance শুধু আমি কেন, বেশিরভাগ লোকই আজকাল C++ নিয়ে আর কাজ করতে চায় না। Java made our lives much easier, as well as  richer - Open Sourceকে আঁকড়ে ধরে জীবনযুদ্ধে আমরা যে যার মতো বিভিন্ন দিকে ছিটকে গিয়েছি। আজ তারা দু'জনে কে কোথায় আছে কোন আইডিয়া নেই - তবে জানতে খুব ইচ্ছা হয় যে এখনো পানু SJDকে, কিংবা আমাদেরকে ক্ষমা করেছে কি না...


No comments:

Post a Comment