বেশিরভাগ শিক্ষার্থীরা প্রোগ্রামিং থেকে ঝড়ে পড়ছে কেনো?

Published by DIU CPC on

প্রোগ্রামিং হচ্ছে অনেক স্বপ্নের হাতছানি দেয়া বিশাল সমুদ্র। লক্ষ্য স্থির রেখে চেষ্টা করেতে থাকলে একসময় আপনি স্বপ্নের কাছে পৌঁছবেন। কিন্তু সেই চেষ্টার বাধা পড়লেই সমুদ্রের অতলে হারিয়ে যেতে হয়। কম্পিউটার সাইন্স নিয়ে যখন মানুষ পড়তে আসে অনেকেরই আগ্রহ থাকে প্রোগ্রামিং করবে। কিন্তু দিনশেষে কম্পেটেটিভ প্রোগ্রামার পাওয়া যায় হাতে গোনা কয়েকজন। কেনো তারা ঝড়ে পরে তার কারণ নিয়েই আজ আমাদের আলোচনা।

আশা হারিয়ে ফেলা:

আমার শ্রদ্ধেয় শিক্ষক সাইফুল ইসলাম বলেছিলেন, কম্পেটেটিভ প্রোগ্রামিংয়ে সফলতা বাইনারি সংখ্যা ০ আর ১ এর মতো। ০ হচ্ছে শুরু আর ১ হচ্ছে সফলতা। এর মাঝে বিশাল রাস্তা আছে, কিন্তু কোনো দশমিক সংখ্যা নেই। এই রাস্তার মাঝে সবচেয়ে বড় বাধা হিসেবে আসবে হতাশা। কিন্তু হতাশা কাটিয়ে সফলতার দিকে না এগুতে পারলে সেই শূন্যতেই রয়ে যেতে হবে। সফল প্রোগ্রামার হিসেবে আপনারা যাদের মুখ দেখেন তারা প্রত্যেকেই প্রতিনিয়ত হতাশায় পরে এবং হতাশা কাটিয়ে সফলতার পথ ধরে।

জীবনের লক্ষ্যঃ

অনেকেরই জীবনের লক্ষ্য কম্পিউটার সাইন্স নিয়ে থাকে না। তারপরও বন্ধুদের দেখে অথবা ফ্যামিলির চাপে কম্পিউটার সাইন্সে ভর্তি হয়। প্রোগ্রামিংয়ের ব্যাসিক ধারণা যখন দেয়া হয় তারা একাডেমিক স্বার্থে শিখলেও এরপর রাস্তা কঠিন দেখে আর এগুতে চায় না। অনেকেই ঠিক করতে পারে না জীবনে সে কি করবে বা কি হতে চায়। যখন আমাদের লক্ষ স্থির থাকে না
আমাদের একেক কদম পরে একেক দিকে। তাই দিন শেষে সেই আগের যায়গাতেই রয়ে যেতে হয়। কিন্তু লক্ষ স্থির থাকলে আমি জানি যে আমার এইদিকে হাটতে হবে। তখন আমরা সঠিকভাবে প্রত্যেক কদম চলতে পারি। প্রোগ্রামিংয়ে হতাশা কাটিয়ে সামনে তখনই আগাতে পারবো যখন লক্ষ্য স্থির থাকবে।

গণিতের ভিত্তিঃ

যেকোনো ভবনের ভিত্তি ভালো না হলে সে ভবন বেশিদূর উপরে ওঠানো যায় না, তেমনি গণিতের ভিত্তি ভালো না হলে প্রোগ্রামিংয়েও বেশিদূর আগানো যায় না। আর গাণিতিক সমস্যার জন্য যেসব সূত্র আমরা ব্যবহার করি তার বেশির ভাগই থাকে ইন্টারমেডিয়েট পর্যায়ের আগ থেকে। আমাদের দেশে গণিতের যে ভয় রয়েছে তার বেশিরভাগই সেইখান থেকেই পাওয়া। গণিতের ভয় নিয়ে প্রোগ্রামিংয়ে বেশিদূর আগানো যাবে না। প্রোগ্রামিংয়ে কোনো মুখস্থ বিদ্যার যায়গা নেই। প্রত্যেকটা সূত্র এবং নিয়মের মূল জানতে হবে। এই সূত্র কিভাবে আসলো, এই সূত্র ব্যবহার করলে কি হয় এবং কেনো এমনটাই হয়, এসব জানলে পরে যখন কোনো সমস্যা সমাধান করতে সেই সূত্রের মূল থেকে কিছু পরিবর্তন করতে হয়, তখন সহজেই সমাধান করা যায়।

ইংরেজি ভাষার দক্ষতাঃ

আমাদের প্রোগ্রামিং সমস্যাগুলো মূলত ইংরেজিতে দেয়া থাকে, অনেকেরই প্রমলেম স্ট্যাটমেন্ট বুঝতে সমস্যা হয়। ফলে তারা বুঝতেই পারে না যে প্রবলেম এ কি চেয়েছে। সেক্ষেত্রে দেখা অনেক সময় প্রোগ্রামিংয়ে ভালো দক্ষতা থাকার পরও সমস্যা সমাধান করতে পারে না। বিশ্ববিদ্যালয়ে সব পড়ালেখা ইংরেজিতে হওয়ার পরও আমাদের ইংরেজিতে সমস্যা রয়েই যাচ্ছে। প্রোগ্রামিংয়ের পাশাপাশি তাই ইংরেজি দক্ষতা বাড়ানোও খুব জরুরী। একদমই না বুঝলে অন্যদের সহায়তা নিতে হবে।

বাস্তবায়নের অভাবঃ

অনেক সময় এমন হয় যে প্রবলেমে কি চাইছে বুঝি, কিভাবে সমাধান হবে তাও বুঝি, কিন্তু কিভাবে কোডে প্রকাশ করবো তা বুঝে ওঠতে পারি না। এর একমাত্র কারণ পর্যাপ্ত প্রাকটিসের অভাব। এর জন্য একমাত্র সমাধান হচ্ছে বেশি বেশি সমস্যার সমাধান করা। এতে প্রবলেম এট্যাকিং স্কিল বাড়বে। আর প্রবলেম এট্যাকিং স্কিল বাড়লেই প্রবলেম সলভিং স্কিল বাড়বে। আপনার চিন্তা-কল্পনায় যতটুকু পর্যন্ত  ভাবতে পারেন তা সঠিকভাবে কোডে ইমপলিমেন্ট করতে পারলে কম্পিউটার আপনাকে সে কাজ করে দিতে বাধ্য। সুতরাং নিজের চিন্তার লিমিটেশন আরো প্রসারিত করতে হবে। আর নতুন নতুন সমস্যা সমাধানের মাধ্যমেই এটা সম্ভব।

আত্মবিশ্বাস এর অভাবঃ

অনেকের মধ্যে আত্মবিশ্বাস অভাব রয়েছে। তারা মনে করে প্রোগ্রামিংয়ের রাস্তাটা অনেক কঠিন। আমার দ্বারা এত কঠিন চিন্তা সম্ভব না। আমি পারবোনা। আসলে বাচ্চারা যখন হাটতে শিখে হোঁচট খাবেই। কিন্তু হোঁচট খাওয়ার ভয়ে যদি কোনো বাচ্চা হাটা ছেড়ে দেয় সেই বাচ্চার কখনোই হাটা হবে না। এক্সেপ্টেড হবে না এই ভয়ে যদি কখনো কোড সাবমিট না করেন কখনই জানতে পারবেন না এক্সেপ্টেড হয়েছে কি না বা না হলেও কেনো হয় নি। সাবমিশন নিয়ে ভয় করা যাবে না। যত রঙ আন্সার আসবে চেষ্টা করলে তত নতুন জিনিস শেখা হবে।

বন্ধুদের দেখে হতাশঃ

এই হতাশা দুই ধরনের হতে পারে। এক আমার বন্ধুরা কেউ প্রোগ্রামিং করছে না, আমি এত কষ্ট করে কি হবে। পরিবেশের উপর আমোদেরও কাজ অনেকটাই নির্ভরশীল থাকে। দিনশেষে চার বছর পার হয়ে গেলে আপনার সার্টিফিকেটের পাশাপাশি সবচেয়ে বেশি কাজে আসবে স্কীল/দক্ষতা। আর প্রোগ্রামিং হচ্ছে কম্পিউটার সাইন্সের শিক্ষার্থীদের ও একটা আবশ্যকীয় স্কীল।
আরেক হচ্ছে আমার বন্ধুর তো অনেক প্রবলেম সলভড, আমি তো কিছুই পারি না, আমি কিভাবে তাদের সাথে পাল্লা দিবো। আমাদের বিশ্বাস যথেষ্ট চেষ্টা করলে এবং সঠিক পথে আগালে কেউ কারো থেকে কখনো পিছিয়ে থাকে না। আপনি বুঝেছেন আপনার বন্ধু আপনার থেকে ভালো পারছে, তার মানেই সে আপনার থেকে বেশি প্রাকটিস করছে। তার পর্যায়ে পৌছাতে হলে অবশ্যই আপনাকে তার চেয়ে বেশি প্রাকটিস করতে হবে।

প্রবলেম নিয়ে আটকে যাওয়াঃ

অনেকে কিছু প্রোগ্রামিং সমস্যা নিয়ে এতটাই আটকে যায় যে সে আর সামনে আগাতে পারে না। সে কারো কাছ থেকে হেল্পও চায় না, হীনমন্যতায় ভুগে। কোনো সমস্যা নিয়ে আটকে যাওয়া মানেই আপনি নতুন কিছু শিখতে যাচ্ছেন। কিন্তু যদি আটকে থেকে হতাশায় প্রোগ্রামিং ছেড়ে দেন তাহলে কখনোই আপনার নতুন কিছু শিখা হবে না এক্ষেত্রে করণীয় হচ্ছে হতাশায় না পরে অন্য সমস্যা নিয়ে চিন্তা করা এবং কিছুদিন পর আবার এই সমস্যা দেখা। হতে পারে তখন আরো সহজেই সমস্যার সমাধান চিন্তা করা যাবে। তাও না পারলে যারা এই সমস্যা সমাধান করেছে তাদের কাছে হেল্প চাইতে পারেন।

একাডেমিক চাপঃ

প্রোগ্রামিংয়ের এবং প্রবলেম সলভিং করার জন্য সুস্থ মস্তিষ্ক এবং পর্যাপ্ত সময় দরকার। একাডেমিক পড়ার চাপ মাঝে মাঝে এত বেশি থাকে যে সব দিক সামলে ওঠা যায় না। আমাদের সেমিস্টারগুলোও যেনো শুরু হওয়ার আগেই শেষ হয়ে যেতে চায়। এখন সিজিপিএ ভালো রাখতে হবে। আবার প্রোগ্রামিংও করতে হবে। কিভাবে সামলাবো এত দিক?
এজন্য বেশি চাপ একবারে না নিয়ে প্রতিদিন একটা নির্দিষ্ট সময় প্রোগ্রামিংয়ে সময় দিলে সবকিছুর জন্যই যথেষ্ট সময় পাওয়া যায়। একদিনে অনেক সময় প্রোগ্রামিং করে আর সাতদিন না করার চেয়ে প্রতিদিন কম হলেও নির্দিষ্ট একটা সময় প্রোগ্রামিংয়ে দেয়া ভালো। ধারাবাহিকতার বিশাল বিচ্ছেদ প্রোগ্রামিং থেকে দূরে সরিয়ে নেয়ার একটি অন্যতম কারণ। আর আপনি ড্যাফোডিলের Blue Sheet প্রোগ্রামার হলে ইনসেনটিভ পাওয়ার ব্যবস্থা তো থাকছেই।

কন্টেস্টের সময় ঘাবড়ে যাওয়াঃ

কন্টেস্ট সময়ে দুশ্চিন্তায় পরা বা ঘাবড়ে যাওয়া খুবই স্বাভাবিক একটি ব্যাপার। এটি কাটিয়ে ওঠতে না পারলে সমস্যা নিয়ে ঠিকভাবে চিন্তা করা যায় না। সহজ সমস্যাও তখন অনেক কঠিন মনে হতে থাকে। কন্টেস্টের সময়ে সবকিছু ভুলে গিয়ে সমস্যা সমাধানে ফোকাস হওয়াটাও অনেক বড় চ্যালেঞ্জ। তবে অবশ্যই মনের ভয়কে মস্তিষ্কেও চিন্তাশক্তির কাছে হার মানাতে হবে। আর এই স্কীল অর্জন করতে বেশি বেশি কন্টেস্ট করতে হবে। এই পরিবেশের সাথে নিজের খাপ খাওয়ানো শিখতে হবে।

এছাড়াও অনেকের ফ্যামিলিগত অথবা পার্সোনাল সমস্যা থাকে, যে কারণে প্রোগ্রামিংয়ে এতটা মনোযোগী হতে পারে না, ফলে পিছিয়ে পরে এবং হতাশায় ঝড়ে পরে। আবার অনেকে ক্যারিয়ার গড়ার চিন্তায় প্রোগ্রামিং থেকে দূরে সরে যায়।

হতাশা আসবে, ফ্রাস্ট্রেশন আসবে, সমস্যা আসবে, প্রবলেম নিয়ে আটকে যেতে হবে তবে চেষ্টা ছাড়া যাবে না। সঠিক পথে চেষ্টা করতে থাকলে একসময় না একসময় সফলতায় পৌঁছানো যাবেই। আর প্রোগ্রামিংয়ে বা ক্যারিয়ারেও সফলতার কোনো নির্দিষ্ট ইন্ডিকেটর নেই, আপনি নিজেকে কতটুকু উচ্চতায় দেখতে চান অইটাই আপনার জন্য সফলতা। আমার মতে প্রোগ্রামিং এ সফল হওয়ার সবচেয়ে বড় শক্তি

মোঃ ইফরানুল ইসলাম
৪৯ ব্যাচ, সিএসই ডিপার্টমেন্ট।


0 Comments

Leave a Reply

Your email address will not be published. Required fields are marked *