“৫২টি প্রোগ্রামিং সমস্যা ও সমাধান” ভূমিকা প্রোগ্রামিংয়ে দক্ষতা অর্জন করতে হলে প্রোগ্রামিং সমস্যা সমাধান করা বা যাকে আমরা প্রবলেম সলভিং বলি, সেই জিনিসটি করার কোনো বিকল্প নেই। কেউ যখন নতুন প্রোগ্রামিং শিখবে, তখন প্রোগ্রামিংয়ের মৌলিক ধারণাগুলো আয়ত্ত্বে আনার পরপর কয়েকশ ঘণ্টা প্রোগ্রামিং চর্চা করা আবশ্যক। ইন্টারনেটে হাজার হাজার প্রোগ্রামিং সমস্যা রয়েছে, যেগুলো সমাধান করে অনলাইন জাজে পরীক্ষা করা যায়। কিন্তু মুশকিল হচ্ছে ওই সমস্যাগুলো বাংলা ভাষায় লেখা নয়। তাই আমাদের অনেক শিক্ষার্থীরাই সেখানে আগ্রহ পায় না। এছাড়া প্রোগ্রামিংয়ে যারা একেবারে নতুন, তাদের জন্য আলাদাভাবে কোনো রিসোর্স আমার চোখে পড়েনি। তাই এই বইটি লেখার কথা আমার মাথায় আসে।
বইটি ষষ্ঠ শ্রেণি ও তার ওপরের যেকোনো ক্লাসের শিক্ষার্থীর জন্য উপযোগী। তবে তার আগে জানা থাকতে হবে সি প্রোগ্রামিং ভাষা। আমার "কম্পিউটার প্রোগ্রামিং ১ম খণ্ড" বইতে যতটুকু প্রোগ্রামিং দেখানো হয়েছে, এই বইয়ের সমস্যাগুলো সমাধানের জন্য সেটুকু প্রোগ্রামিং জানাই যথেষ্ট। বইটি পড়ার সময় অবশ্যই প্রতিটি সমস্যা আগে নিজে চেষ্টা করতে হবে। কয়েক ঘণ্টা একনাগাড়ে চেষ্টা করেও কেউ যদি না পারে, তবে সমাধান দেখে শিখে নিতে হবে। আর ওয়েবসাইটে গিয়ে নিজের সমাধান জমা দিয়ে যাচাই করার কাজটিও করা যাবে। বইটি লিখতে আমার সহলেখক রিনি এবং রাফি অক্লান্ত পরিশ্রম করেছে। এছাড়া আমার ছাত্র তুষারও অনেক পরিশ্রম করে বইটি রিভিউ করেছে। আবার বইয়ের সমস্যাগুলোর কয়েকটি সিপিবুক ওয়েবসাইট থেকে নেওয়া যেগুলো তৈরি করেছেন ইকরাম মাহমুদ ফাহিম, তানভীরুল ইসলাম, শুভানন রাযিক প্রমুখ। তাদের পরিশ্রম সফল হবে যখন আমাদের স্কুল-কলেজের শিক্ষার্থীরা বিভিন্ন প্রোগ্রামিং প্রতিযোগিতায় দাপিয়ে বেড়াবে। সেই দিনের অপেক্ষায় রইলাম।
বইটি কাদের জন্য দক্ষ প্রোগ্রামার হওয়ার সহজ উপায় হচ্ছে প্রোগ্রামিং সমস্যা সমাধানের চর্চা করা। তাই যারা নতুন প্রোগ্রামিং শিখছে, তাদের জন্য উপযোগি করে ৫২টি প্রোগ্রামিং সমস্যা দেওয়া হয়েছে এবং সেগুলোর সমাধান নিয়ে আলোচনা করা হয়েছে। সমাধান দেখানোর সময় সি প্রোগ্রামিং ভাষা ব্যবহার করা হয়েছে। যারা ভবিষ্যতে বিভিন্ন প্রোগ্রামিং প্রতিযোগিতায় অংশ নিতে চায় - যেমন জাতীয় হাই স্কুল প্রোগ্রামিং প্রতিযোগিতা, ইনফরমেটিক্স অলিম্পিয়াড, এসিএম আইসিপিসি, তারা প্রোগ্রামিং সমস্যা সমাধানের চর্চা এই বই দিয়েই শুরু করতে পারে। এছাড়া বইটি প্রোগ্রামিংয়ের জগতে নতুন যে কারো জন্য উপযোগী হবে।
'হাবলুদের জন্য প্রোগ্রামিং' বইটি কাদের জন্য যারা ভয়ের কারণে প্রোগ্রামিং শিখা শুরু করতেই পারে না। প্রোগ্রামিং কঠিন; সায়ন্সের স্টুডেন্ট বা ম্যাথে ভালো না হলে প্রোগ্রামিং শিখতে পারবে না মনে করে মুখ লুকিয়ে রাখে। তাদের জন্য গল্প আর মজার ছলে, চায়ের আড্ডার মাধ্যমে প্রোগ্রামিংয়ের বেসিক কনসেপ্টগুলো উপস্থাপন করা হয়েছে। তাছাড়া স্মার্টফোনে কোনকিছু ইনস্টল না করেই প্রোগ্রামিং প্রাকটিস করতে পারবে। আর যারা প্রোগ্রামিং শিখে কিছুটা এগিয়ে আছে, তারাও বইটি পড়ে প্রোগ্রামিংয়ের বেসিক কনসেপ্টগুলো ফকফকা করে নিতে পারবে।
বইয়ের ভূমিকা যারা পরীক্ষায় ভালো নম্বর পায় না, যাদেরকে ভালো স্টুডেন্ট হিসেবে গণ্য করা হয় না, তাদেরকে পরোক্ষভাবে গাধা, বলদ বা হাবলু হিসেবে সম্বোধন করা হয়। এসব হাবলুরা পড়ালেখার মাঠে, চাকরির হাটে কিংবা প্রেমের ঘাটে, অনেকটাই পিছিয়ে থাকে।
হাবলুরা পড়ালেখায় হাবলু হলেও, দুনিয়ার সবকিছুতে হাবলু না। ক্লাস ফাঁকি দেয়ার ফন্দি, শর্টকাটে পাশ করার পদ্ধতি, ফ্রেন্ডের পকেট থেকে টাকা খসানোর সিস্টেম, হাবলুদের চাইতে ভালো কেউ জানে না। তাদের পড়ালেখা মনে না থাকলেও, টিভি সিরিয়ালের কাহিনী, সিনেমার ডায়ালগ, ইন্টারনেটের চিপা-চাপার খবর ঠিকই মনে থাকে। এমনকি এসব জিনিসে চাল্লুদেরকেও পিছনে ফেলে দেয় তারা। সেজন্যই হাবলুদের মতো করে, চায়ের দোকানের আড্ডার ভাষা দিয়ে, প্রোগ্রামিংকে উপস্থাপন করা হয়েছে। যাতে হাবলুরা হাবলু স্টাইলে প্রোগ্রামিং-এর মজা পেয়ে এগিয়ে যেতে পারে।
ঝংকার মাহবুবের বইয়ের পাণ্ডুলিপি পড়ে আমি খুবই অবাক এবং আশান্বিত হয়েছি যে আমাদের পরবর্তী প্রজন্ম নানা বিষয়ে যথেষ্ট দক্ষতা অর্জন করেই বড় হচ্ছে। বইয়ের নামকরণ থেকে শুরু করে ব্যবহৃত ভাষা এবং ঢং সবই ভিন্ন ও আকর্ষনীয়। বইয়ের নাম ‘হাবলুদের জন্য প্রোগ্রামিং’ হলেও লেখক সন্দেহাতীতভাবে বিশ্বাস করেন যে আমাদের যেকোনো তরুনের জন্য প্রোগ্রামিং শেখা তেমন কোনো কঠিন কাজ নয়। প্রতিটি অধ্যায়ই লেখকের স্বতন্ত্র ভাষায়, ঢংয়ে খুবই হাল্কা মেজাজে উপভোগ্য কৌতুকের সঙ্গে উপস্থাপিত হয়েছে যাতে করে কোন 'হাবলু'ই টের না পায় যে সে খুবই জটিল কিছু শিখতে যাচ্ছে। অনুশীলন করার জন্য বইতেই পর্যাপ্ত ফাঁকা জায়গা দেয়া আছে।
আমি আশা করি আমাদের ছেলেমেয়েরা এই বইটি পড়ে যেমন প্রোগ্রামিংয়ের ভয় জয় করবে, ঠিক একইভাবে প্রোগ্রামিংয়ের বেশ কিছু ধারনাও আত্মস্থ করতে পারবে। আমি ঝংকার মাহবুবকে বইটি লেখার জন্য অভিনন্দন জানাই এবং তাঁর বইয়ের পাঠকদের মেধার অনুশীলনের মাধ্যমে শ্রেয়তর মস্তিষ্কের অধিকারী হয়ে বাংলাদেশকে সমৃদ্ধ করার আমন্ত্রণ রইল।
ড. মোহাম্মদ কায়কোবাদ অধ্যাপক, কম্পিউটার সায়েন্স এন্ড ইঞ্জিনিয়ারিং বিভাগ, বাংলাদেশ প্রকৌশল বিশ্ববিদ্যালয় (বুয়েট)
‘বিদ্যাকৌশল: লেখাপড়ায় সাফল্যের সহজ ফরমুলা’ সূ চি:* ভূমিকা * বিদ্যাকৌশল: পড়ালেখায় ভালো করা কি শেখার বিষয় * পড়ার মোটিভেশন * ভালো ছাত্র হবার পরিকল্পনা * ভালো করে পড়া ও বোঝা * সঠিক নিয়মে লেখাপড়া * পড়ার প্রস্তুতি: পরিবেশ ও সময় * পড়ার পরিবেশ * পড়ার মোক্ষম সময় কোনটা * শ্রেণিকক্ষে শিক্ষা লাভ * শ্রেণিকক্ষে শিক্ষা: কীভাবে লেকচার শুনবেন ও অংশ নিবেন * ক্লাসনোট লেখার গুরুত্ব * কী করে ফাটাফাটি ক্লাস নোট তুলবেন * বিদ্যাকৌশল: পড়ার ও শেখার নানা কার্যকর কায়দা * শেখার নানা কায়দা * গ্রুপ স্টাডি * নানারকমের বিষয় পড়ার মোক্ষম উপায় * দ্রুতপঠন: কী করে দ্রুত পড়বেন * দ্রুতলিখন: কী করে লিখবেন দ্রুত * দ্রুত পড়ে বোঝা ও শেখার উপায়: তিনটি কার্যকর পদ্ধতি * মনে রাখার সহজ উপায় * মনে রাখার কিছু সহজ পরামর্শ * মন বসানো মনোযোগ বাড়ানো এবং গুছিয়ে পরিকল্পনা করা * পড়ায় মন বসানো * মানসিক স্থিরতা, আবেগকে বশে আনা * পড়া ভালো লাগানোর উপায় * মনোযোগ বাড়ানোর কৌশল * পরিকল্পনার পরি, দিশাহারার দিশা আর ঘুম আনয়ক নাকেতেলগরিদম * পোমডরো টেকনিক * পরিকল্পনা, নয় শুধু কল্পনা: পরিকল্পনা করার কার্যকর পদ্ধতি * পরীক্ষা পরীক্ষা পরীক্ষা * পরীক্ষা পরীক্ষা পরীক্ষা * পরীক্ষায় ভালো করার উপায় * পরীক্ষার প্রস্তুতি * মৌখিক পরীক্ষার প্রস্তুতি * পরীক্ষা প্রস্তুতির পাঁচ দিনের পরিকল্পনা * পরীক্ষা প্রস্তুতির এক দিনের পরিকল্পনা * পরীক্ষার পূর্বরাত্রি * পরীক্ষার দিন * ‘দেখায়া দিব’ সিনড্রোম থেকে রক্ষা পাওয়ার উপায় * পরীক্ষার হল থেকে বেরিয়ে কী করবেন * ছুটির সময়কে কাজে মোক্ষমভাবে লাগানো * পড়ার আনুষঙ্গিক বিষয় * পড়ালেখা ও পার্টটাইম কাজ বা টিউশনি একসাথে চালানো * আলসেমি হতে বাঁচবেন কীভাবে? * হতাশা কাটানো বা আত্মবিশ্বাস বাড়ানো * পরীক্ষাভীতি বা নার্ভাসনেস কাটানো * পড়াশোনায় তথ্যপ্রযুক্তির ব্যবহার * অভিভাবকদের জন্য * আপনার সন্তানকে কীভাবে পড়ার ব্যাপারে সাহায্য করবেন * শেষ কথা ভূমিকা পড়াশোনায় ভালো করতে কে না চায়? আর পড়াশোনা করা কেবল আমাদের শিক্ষাজীবনেরই অংশ নয়; বরং সারাজীবনই আমরা কাজের প্রয়োজনে অথবা অন্য কোনো দরকারে কিছু না কিছু শিখে থাকি বা শেখার চেষ্টা করি। এই চেষ্টায় কেউ সফল হয়, কেউ আবার পারে না। কারও জন্য পড়াশোনা করা, ভালো ফলাফল করা, ভালো করে কিছু শেখা খুব সহজ কাজ। আবার কারও জন্য এটা খুবই কঠিন একটা কাজ। কিন্তু কেন? মেধা? মেধা একটা ব্যাপার বটে, কিন্তু একমাত্র ব্যাপার না। পড়াশোনা করতে গেলে, কিছু শিখতে গেলে কেবল মেধা নয়, এর সাথে সাথে লাগে কিছু কৌশল জানা। ভালো করে শেখার, মনে রাখার এবং বুঝে-শুনে সেটা কাজে লাগানোর কায়দাকৌশল। এটা যারা জানে, তারা ভালো ছাত্রছাত্রী, অল্প সময়েই পড়া শেষ করে ও শিখে ফেলে তারা পরে পরীক্ষাতেও তা লিখে আসতে পারে, ভালো ফল করে। আর যারা জানে না, তারা অনেক চেষ্টা করেও সে রকম ভালো ফলাফল পায় না। মেধা জন্মগত বটে, কিন্তু গোপন কথাটা বলে দিই, মেধা কিন্তু কারও ভালো শিক্ষার্থী হওয়ার প্রধান নিয়ামক না। অনেকগুলো ফ্যাক্টরের মধ্যে মেধা একটি মাত্র ফ্যাক্টর। এবং সুখবরটা হলো চেষ্টা দিয়ে, কায়দাকৌশল শিখে মেধার কমতিটা পুষিয়ে নেওয়া অবশ্যই সম্ভব।
এই বইটাতে আসলে ভালো করে সঠিক নিয়মে পড়াশোনা করা, কোনো কিছু শেখার কায়দাকৌশল নিয়েই আলোচনা করেছি, আর এই কায়দাগুলোর নাম দিয়েছি বিদ্যাকৌশল। ভালো ছাত্ররা এই বিদ্যাকৌশল জানে, কিন্তু অধিকাংশ ক্ষেত্রেই তারা এই কৌশলগুলো অন্যদের জানাতে চায় না, অথবা মেধার চেয়ে এই বিদ্যাকৌশলের জোরেই যে তারা ভালো ফলাফল করছে, পাচ্ছে সাফল্য, সেটা তারা জানে না। বইটি লেখার উদ্দেশ্যই হলো সবার জন্য এই পড়ালেখায় ভালো করার কৌশলগুলো গুছিয়ে তুলে ধরা। আমি নিজে শিক্ষাবিশেষজ্ঞ নই। তবে বিনয়ের সাথে বলতে চাই, স্কুল, কলেজ ও বিশ্ববিদ্যালয় পর্যায়ে আমি নিজে ভালো ফলাফল করার সাথে সাথে প্রচুর ভালো ছাত্রছাত্রীর সাথে পড়েছি। এখন শিক্ষক হিসেবে অনেক সময়েই ভালো শিক্ষার্থীদের খুব কাছ থেকে দেখছি। এ বইটি তার ভিত্তিতেই লেখা। বইটা কাদের জন্য? বিদ্যাকৌশল বইটি আসলে সব রকমের শিক্ষার্থীর জন্যই লেখা। স্কুল, কলেজ, বিশ্ববিদ্যালয়— সব পর্যায়ের শিক্ষার্থীরাই এ বইটি পড়ে উপকৃত হবেন বলে আমার বিশ্বাস। শুধু তা-ই নয়, যারা এখন শিক্ষার্থী নন, কিন্তু চাকরি বা অন্য দরকারে কিছু শিখতে চান দ্রুত এবং কার্যকরভাবে, তাদের জন্যও এ বইটিতে আলোচিত বিদ্যাকৌশল কাজে আসবে। এই বইটা কীভাবে পড়বেন?
বইটির শুরুতে আলোচনা করা হয়েছে পড়াশোনার মোটিভেশন আনা এবং সঠিক নিয়মে পড়ালেখা করার গুরুত্ব নিয়ে একনজরে কিছু পরামর্শ দিয়ে। এরপর পড়াশোনা করার প্রস্তুতি পর্বে বলা হয়েছে পড়ার পরিবেশ ও মোক্ষম সময় নিয়ে। শ্রেণিকক্ষে বা লেকচার শুনতে গিয়ে কীভাবে ক্লাসনোট তুলবেন ও এ থেকে উপকৃত হবেন, তা আলোচনা করার পরে শেখার নানা কায়দা, দ্রুত লিখন ও পঠন এবং দ্রুত কোনো কিছু পড়ে বোঝার ওপরে এবং পড়া মনে রাখার ওপরে বেশ কিছু কৌশল উপস্থাপন করেছি। পড়াশোনায় ভালো করতে গেলে মানসিক স্থিরতা এবং মনোযোগ বাড়ানোর বিকল্প নাই, পরের কয়েকটি অধ্যায়ে তা-ই আলোচিত হয়েছে। পরীক্ষার প্রস্তুতির ওপরে বেশ কয়েকটি অধ্যায়ে পরীক্ষার জন্য গুছিয়ে প্রস্তুতি নেওয়া এবং পরীক্ষার আগে, পরীক্ষার দিনে ও পরে কী করতে হবে, তা বলেছি। সবশেষে বলা হয়েছে আলসেমি থেকে বাঁচা এবং হতাশা কাটিয়ে পরীক্ষা-ভীতিকে জয় করে এগিয়ে যাওয়ার কিছু পরামর্শ। বইটি শেষ করেছি অভিভাবকদের জন্য কিছু পরামর্শ দিয়ে।
শিক্ষার্থী ও শিক্ষক হিসেবে নানা শিক্ষাপ্রতিষ্ঠানের সাথে জড়িত আছি সেই পাঁচ বছর বয়স থেকে। আমার শ্রদ্ধেয় শিক্ষকদের প্রতি আন্তরিক শ্রদ্ধা জানাই, তাদের কাজে আমার অপরিসীম ঋণ, যা কখনোই শোধ হবে না। আশা করি এই বইটির মাধ্যমে আগামী প্রজন্মের শিক্ষার্থীরা উপকৃত হবেন, পড়াশোনা করতে, নতুন কিছু জানতে ও শিখতে পারবেন সাফল্যের সাথে। সব শিক্ষার্থীর প্রতি রইল শুভকামনা। বিদ্যাকৌশলের প্রয়োগ সফল হোক আপনাদের জীবনে।
“থ্রি এ এম” বইটির প্রথম দিকের কিছু কথাঃ এক ঘন্টা।ষাট মিনিট। তিন হাজার ছয়শ সেকেন্ড। | প্রতিদিন আমার জন্যে কেবল এটুকু সময়ই বরাদ্দ থাকে। এই এক ঘন্টাই আমি জেগে থাকি পুরো চব্বিশ ঘন্টার মধ্যে। কিন্তু এই ঘটনার পেছনের বৈজ্ঞানিক ব্যাখা দিয়ে আমি আপনাদের বিরক্ত করতে চাই না, বরং সরাসরি গল্পে চলে যাওয়া যাক। আর সেই গল্পও একখান! এক ঘন্টার মধ্যেই আমাকে সেটা আপনাদের শোনাতে হবে। কিন্তু তা-ও আপনাদের এটুকু জানিয়ে রাখি, এমন কোন ডাক্তার নেই যাকে আমি দেখাইনি, আর যত প্রকারের ওষুধ কারো পক্ষে খাওয়া সম্ভব আমি খেয়েছি। কিন্তু কাজের কাজ কিছুই হয়নি। আমি প্রতিদিন রাত তিনটায় ঘুম থেকে উঠি আর এর এক ঘন্টার মধ্যেই আবার ঘুমিয়ে পড়ি। এরপর টানা তেইশ ঘণ্টা ঘুমিয়েই কাটিয়ে দেই। পরের দিন আবার রাত তিনটায় জেগে উঠি। এভাবেই চলছে আমার জীবন। জানি, এরকম জীবনে হয়ত বেশি কিছু করা যায় না, কিন্তু এটাই আমাকে মেনে নিতে হয়েছে।আমার বয়শ এখন ছত্রিশ। এই বয়সে অন্যরা প্রায় ২০০০০০ ঘন্টা জেগে কাটিয়েছে। কিন্তু আমি এই সময়ে জেগে ছিলাম ১৪,০০০ ঘন্টারও কম। একটা তিন বছরের বাচ্চার চেয়েও কম। ডাক্তারদের মতে, পুরো পৃথিবীতে মাত্র তিনজন মানুষ আছে যারা কিনা আমার মত এরকম একই মেডিকেল কন্ডিশনের ভুক্তাভোগি হ্যা, মেডিক্যাল কন্ডিশন-এইটাই বলে তারা। কোন রোগ না, কোন অসুস্থতা না, শুধু একটা মেডিক্যাল কন্ডিশন। তাইওয়ানের একটা বাচ্চা মেয়ের আছে এই কন্ডিশন আর আইসল্যান্ডে একটা ছেলের। কিন্তু এই কন্ডিশনের নামকরণ করা হয়েছে আমার নাম অনুযায়ি। কারণ আমার ব্যাপারটাই প্রথম নজরে। এসেছিল সবার। হেনরি বিনস-এটাই বলা হয় এই কন্ডিশনকে। আমি হেনরি বিনস আর আমার হেনরি বিনস আছে বাহ্ সারাংশ এক ঘন্টা।ষাট মিনিট। তিন হাজার ছয়শ সেকেন্ড। সাধারণের জন্য যা খুবই সামান্য হেনরি বিনসের জন্য তাইই মহার্ঘ্য। কেননা চব্বিশ ঘন্টার মাঝে এতটুকু সময়ই তার জন্য বরাদ্দ। রাত ৩টা থেকে ৪ টা। বাকি সময় বিরল মেডিক্যাল কন্ডিশনে ভোগা হেনরির সময় কাটে ঘুমে। এই হেনরিই ঘটনাচক্রে পরে যান এক খুনের ঘটনায়। খুনের সাসপেক্ট স্বয়ং আমেরিকার প্রেসিডেন্ট। যে খুনের পরোক্ষ স্বাক্ষী ছিল হেনরি সেই খুনেরই আসামি হিসেবে পুলিশ তাকেই সন্দেহ করে। কিন্তু শেষ পর্যন্ত হেনরিই তার বরাদ্দকৃত ১ ঘন্টা সময় দিয়েই খুনের তদন্ত করে-পড়ামাত্রই যা মনে হয় অবিশ্বাস্য!