Skip to content

Latest commit

 

History

History
209 lines (117 loc) · 72.4 KB

Inspirational Post about Programming.md

File metadata and controls

209 lines (117 loc) · 72.4 KB

প্রোগ্রামিং সম্পর্কিত বিভিন্ন অনুপ্রেরণামূলক লেখাগুলো এখানে পাওয়া যাবে। প্রায় সবগুলো লেখাই ফেসবুক থেকে সংগৃহীত। প্রতিটি লেখার শিরোনামে ক্লিক করলে মূল পোস্ট দেখতে পাওয়া যাবে।

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

সিলেবাস ঘেঁটে দেখলাম, পুরো ৪ বছরে সি, জাভা, এসেম্বলি ছাড়া আর কোন ভাষা শিখাবে না। মাঝখানে কি জানি এসকিউএল আছে। তাই ১-১ আর ১-২ ইউনিভার্সিটির সিলেবাস প্রনেতাদের গালাগালি করে পার করলাম। কীসব আজাইরা সাবজেক্ট পড়ায় কামের জিনিশ থুইয়া !!!! পেইন !!!! >:(

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

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

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

এইভাবে বিভিন্ন ক্ষেত্রে অনুভব করছি যে এতদিন নিজেকে ফাঁকি দিয়ে কি বড় ভুলটাই না করলাম। যদি এইভাবেই ভার্সিটি লাইফ টা পার করে দেই, বা হয়ে যায়, তাহলে খোমাখাতায় চ্যাট করার সুবাদে যে টাইপিং স্পিড হাতে এসেছে, তা দিয়ে কোনরকমে একজন টাইপিস্টের চাকরি বাগায়ে নেয়া যাবে !!!

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

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

কেউ যদি এই লেখা পড়ে থাকেন, এবং আপনার অবস্থাও যদি আমার মত হয়, তাহলে ভাই/বোন, এখনও সময় আছে, আসেন সাবধান হই। নইলে সামনে যে দুর্দিন আসছে,নিজের পায়ে দাঁড়ানো- সংসারের হাল ধরা – সংসার করা !!!

আল্লাহ আমাদের সবাইকে এই আলস্যময় ফাঁকিবাজি থেকে উদ্ধার করুন, আমিন !!!!!!!!!!

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

তবে সমস্যা হলো, এই সফটওয়্যার ডেভেলপারের রঙিন দুনিয়া খানিকের জন্য আমার চোখ ঝলসে দেয়। একটা বিচিত্র কিন্ত ভুল উপলব্ধির বোধোদয় হয় আমার মাঝে। তা হলো, সফটওয়্যার ডেভেলপ করতে হলে জানা দরকার কিভাবে সফটওয়্যার বানাতে হয়। পাস করে তো এই কাজই করবো, তাহলে একাডেমিক স্টাডির দরকার কি ?

এইরকম একটা ভুল ধারনা নিয়ে বেশ ভালো ভাবেই এই সফটওয়্যার নিয়ে পড়ে থাকা শুরু করলাম। দিন দিন রেজাল্ট আবার খারাপ হওয়া শুরু করলো। একাডেমিক সাবজেক্ট গুলোর মাঝে সফটওয়্যার ডেভেলপমেন্ট রিলেটেড সাবজেক্ট গুলো অনেক ভালো করতাম, কিন্তু তার বাইরে সাবজেক্ট, যেমন – অটোমাটা, কম্পাইলার, আর্টিফিশিয়াল ইন্টেলিজেন্স ইত্যাদি এইসব সাবজেক্টকে তখন আমার মনে হয় নাই সরাসরি সফটওয়্যার রিলেটেড সাবজেক্ট। কুয়ার ব্যাঙ এই আমি তখন শুধুই মনে করতাম পেছনে একটা ডাটা সোর্স আর সামনে একটা গ্রাফিক্যাল ইন্টারফেস, ব্যস এই তো ! আর কি লাগে, আমি তো সফটওয়্যার ডেভেলপার হয়ে গেছি !! (???)

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

এই অজ্ঞানতা ভরা অন্ধকূপ থেকে বের হয়ে আসি বেশ নাটকীয়ভাবে। ৪র্থ বর্ষের শুরুর দিকে ভয়াবহ রকমের আর্থিক সঙ্কটে পড়ি। কোথাও পার্ট টাইম এপ্লাই করা ছাড়া আর কোন গতি ছিলো। একটা সফটওয়্যার ফার্মে এপ্লাই করি। ঐ সাধারন কিছু সফটওয়্যার তৈরি করার কারনে অবজেক্ট অরিয়েন্টেড প্রোগ্রামিং এর উপরে একটা ন্যাচারাল স্কিল চলে আসে। তার উপরে ভর করেই চাকরীর ইন্টারভিউ এর ফাইনাল পর্যন্ত পৌঁছে যাই।

ফাইনাল ইন্টারভিউ যিনি নেন, উনি একজন ঝানু সফটওয়্যার ডেভেলপার। অসাধারন ব্যক্তিত্ব, প্রায় ১৫ বছরের উপরে এই পেশায় আছেন। উনার সাথে আমার কথোপকথনের কিছু চুম্বক অংশ তুলে ধরছিঃ

তো আপনার লিখিত পরীক্ষার খাতা দেখলাম, আপনার অবস্থা তো ভয়াবহ !! (চুপ থেকে কিছুক্ষন) তাহলে ভাই দয়া করে বলবেন কিভাবে আমি এই চূড়ান্ত ধাপ পর্যন্ত ডাক পেলাম। না ! আমাদের একটা ক্রাইটেরিয়া আছে, মোটামুটী পাশ মার্ক পেলেই আমরা ডাক দেই আর কি। তো আপনার ডাটাবেজ জয়েন কুয়েরি তো একটাও হয় নাই। এর মধ্যে কি আর দেখে এসেছেন বা দেখার চান্স হয়েছে কুয়েরি গুলো ?? (ফাঁকিবাজ আমি কিছুক্ষন চুপ থেকে) জি না ভাই। আচ্ছা আচ্ছা ! সমস্যা নাই। তো কিছু কোডীং সমস্যা আছে, কোন ল্যাঙ্গুয়েজ প্রেফার করবেন ? সি++ নাকি সি# ? সি# ঠিক আছে। এই নিন সমস্যা, আপনি সমাধান করুন, ২০ মিনিট সময় দেয়া হলো। আমি একটু আসছি।

যেহেতু নিজের মত করে এডহক এপ্রোচে কোড করতাম, ACM নামের জিনিসটাকে সবসময় এড়ীয়ে এসেছি আর BFS, DFS টাইপের এলগোরিদমগুলো বুঝতে বা ইমপ্লিমেন্ট করতে কঠিন লাগতো বলে নিজেকে বুঝ দিয়ে আসতাম যে সফটওয়্যার ডেভেলপমেন্টে এইগুলো লাগে না, তাই রাম ধরা টা এইখানে এসেই খেলাম।

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

আপনার সিজিপিএ ও তো ভালো না। আপনাকে হয় একাডেমিক্লি ভালো হতে হবে, নয়তো যদি আপনার সত্যিকার স্কিলসেট থাকে, তাহলে সেটা দিয়ে আপনার একাডেমিক পুউর রেজাল্ট কাভার দেয়া যাবে। কিন্তু আপনার তো কোনটাই নাই। আর আপনি তো অ্যালগোরিদম ডাটা স্ট্রাকচারেও ভালো না ! তো বলেন, আপনার এই অবস্থার কারন কি ?

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

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

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

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

এইবারে সেই ফার্মে আমার এক মাসের অভিজ্ঞতার একটুখানি শেয়ার করি। প্রথমত, বাংলাদেশের সফটওয়্যার কোম্পানিগুলো আশা করে একজন ফ্রেশার কোম্পানিতে জয়েন করার আগে, কিংবা জয়েন করার পরে নিজে নিজেই সবকিছু শিখে নিবে। কারন নতুনদের যে কোন কিছু দেখিয়ে দিবে, তাতেই তাদের অনেকখানি প্রোডাক্টিভ সময় চলে যাবে, তারা তা নস্ট করতে রাজি নন। এই কর্পোরেট দুনিয়ায় সবকিছু চলে ROI (Return Of Investment) এর উপরে। এবং কারো সময়ও এই ROI এর মাঝে পড়ে। আমার ম্যানেজার যে আমার পিছনে ১০ মিনিট সময় ব্যয় করবেন তার আগে তিনি চিন্তা করে দেখবেন যে এই ১০ মিনিট আমার পিছে ব্যয় করলে তার যে ইনভেস্টমেন্ট আসবে, সেটা কি তার নিজের ১০ মিনিট কাজ ফেলে রাখার চাইতে লাভজনক কিনা, যদি হয়, তাহলে তিনি সময় ব্যয় করবেন, নইলে না। এটা মোটেও অমানবিক কিছু না, এইটা জাস্ট সিস্টেম ! অবশ্যই প্রতিদিন অফিস করে ক্লাস করা তারপরে নিজের নানারকম কাজ সবকিছু সামাল দিতে বেশ বেগ পেতে হচ্ছিলো, তার উপরে আমাকে প্রতিদিন প্রায় ৩৫ কিমি জার্নি করতে হয় বাসে। যার কারনে অনেক ক্লান্ত থাকতাম। যেহেতু ৪র্থ বর্ষে পড়ছি, আমার মাঝে আরেকটা নতুন বোধোদয় আসতে শুরু করে। একজন নরমাল ছাত্র এই শেষ বর্ষে এসে যেসব সুযোগ সুবিধা বা যে ধরনের জ্ঞান অর্জন করে থাকে, তার সবকিছু থেকেই আমি বঞ্চিত হচ্ছি। যেমন আমার থিসিসের কোন কাজ আমি করতে পারছিলাম না। আমি ক্রমাগতই প্রচন্ডভাবে অনুভব করছিলাম, আমি পিছিয়ে যাচ্ছি অনেক।

আবার ওইদিকে অফিস থেকেও অনেক প্রেসার দেয়া হচ্ছিলো, যেন নিজে নিজে সব শিখে কাজ শুরু করে দেই, কারন তারা আমার পিছনে টাকা খরচ করছে। আমার পক্ষে সম্ভব হয় নাই এক-দুই সপ্তাহের মাঝে সম্পূর্ণ নতুন একটা টেকনোলজি শিখে রানিং প্রজেক্টে ঢুকে যাওয়া। সম্ভব হতো অন্তত কিছু দিক নির্দেশনা যদি পাওয়া যেত। কিন্তু ঐ যে, there is nobody to show or teach you anything ! যার কারনে পুরো পরিবেশ টাই হোস্টাইল হয়ে গিয়েছিলো। আমি প্রচন্ড রকম ডিপ্রেসড হয়ে পড়ি। কারন কম্যুনিটিতে যেসব সফটওয়্যার পিপল দের দেখতাম, প্রচন্ড রকম সহযোগিতাপূর্ণ, সবাই সবাইকে সাহায্য করছে, বাস্তব অনেখখানিই ভিন্ন।

এই অবস্থায় প্রতীক ভাইকে সব কিছু খুলে বলি। আমার সৌভাগ্য যে উনার সাথে আমার পরিচয় হয়েছিলো। উনার ভরসায় চাকরিটা ছেড়ে দেই।

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

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

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

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

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

সেদিন একজন বলছে আরেকজনকে, "খালি পিএইচপি শিখে কি হবে? ওয়ার্ডপ্রেস শিখো, পিএইচপি, জাভাস্ক্রিপ্ট আর এইচটিএমএল এমনিতেই শিখা হয়ে যাবে।" (টপ ডাউন অ্যাপ্রোচ) :P যারা বছরে হাজার হাজার ডেভেলপার তৈরি করেন, কোথায় তারা? আমরা কি মান সম্মত কিছু তৈরি করছি?

টেক গ্রুপ গুলা ছোট ছোট ঢেউ তৈরি করতে পারছে কেবল, আমার মনে হয় যা একসময় নিস্তেজ হয়ে যায়।

আমাদের মৌলিক মান নিয়ে কাজ করার এখনি সময়, তা না হলে বাজারে একজনও ভালো মানের প্রোগ্রামার পাওয়া যাবে কিনা সন্দেহ। আপনি কি ভাবছেন?

প্রোগামিং জিনিসটার সাথে পরিচয় ভার্সিটিতে ভর্তি হওয়ার পর। প্রথম সেমিস্টারে আমাদের সি ল্যাব ছিল, ল্যাবের ফরম্যাট ছিলো এরকম যে স্যাররা দুইটা বা তিনটা প্রবলেম দিতো তিন ঘন্টার মদ্ধ্যে সেগুলো সলভ করে দেখাতে হতো। দ্বিতীয় কিংবা তৃতীয় ল্যাবের দিন, আশীষ স্যার আর আরাফাত স্যারের সি ল্যাব। একটাই প্রবলেম ছিল মনে হয় সেদিন, এক থেকে একশোর মদ্ধে যে নাম্বারগুলো প্রাইম শুধু সেগুলো প্রিন্ট করতে হবে। স্যার প্রাইম নাম্বার বের করার লজিকটাও বলে দিসিলো, "যে সংখ্যা শুধু মাত্র ঐ সংখ্যা আর শুধু "১" দিয়ে বিভাজ্য সেটাই প্রাইম। সো সবই বলে দেয়া শুধু কোডটা লিখতে হবে। আমি বসছিলাম দ্বিতীয় সারির দ্বিতীয় পিসিটাতে আমার বরাবর কোনাতেই মনে হয় ছিল মন্ময়। দশ-পনের মিনিটের মদ্ধ্যেই কোড করে স্যারকে দেখায় ফেললো, আমি তখনো কি করবো বুঝেই উঠতে পারি নাই (অবশ্য হতাশ হওয়ার কিছু ছিল না, সেই পোলা এখন গুগলের ইঞ্জিনিয়ার :D )। যাই হোক, আমি কিছুতেই ফিগার আউট করতে পারতেছিলাম না, যে সি ল্যাঙ্গুয়েজে কিভাবে এই প্রাইম নাম্বার টেস্টটা করবো। আমি সি তে লুপ লিখতে পারি, ইফ এলস লজিক পারি কিন্তু এইগুলো ব্যবহার করে কিভাবে সমস্যাটা সলভ করবো মাথাতেই ঢুকতেসে না। ইতিমধ্যে দুই ঘণ্টা শেষ। ল্যাব দুপুর দুইটায় শুরু হয়ে বিকাল পাচটায় শেষ হয়। ক্লাসমেটরা এক এক করে সলভ করে বের হয়ে যাচ্ছে, কেমন জানি কান্না কান্না লাগতেসিল। সবাই পারতেসে আর আমি কিচ্চু বুঝতেসিও না। খালি মনে হচ্ছিল ক্যান সিএসইতে ভর্তি হলাম এর চেয়ে এপ্লাইড ফিজিক্সে ভর্তি হলেই হতো।

আমি তিনটা জিনিস করতে পারতাম ঐ মূহুর্তেঃ ১। হাল ছেড়ে দিয়ে, প্রোগামিং আমাকে দিয়ে হবে না সিদ্ধান্ত নিয়ে চলে আসতাম। ২। আজকে পারবো না, অন্যদিন করবো ভেবে ঐদিন আর ল্যাব না করতাম। ৩। আর পারতাম সমস্যাটা নিয়ে কচ্ছপের মতো কামড়ে ধরে পরে থাকতে।

আমি ল্যাবে পাচটা-দশ পর্যন্ত বসে ছিলাম, চারটা পঞ্চাশ পর্যন্ত মনে হচ্ছিল এই কোড আমি করতে পারবো না। তারপর সামথিং হ্যাপেন্ড, প্রোগামিং এর ম্যাজিকটা জাস্ট হতাৎ করে একদম পরিষ্কার হয়ে গেলো। কম্পিউটারে মতো ভাবতে না চেষ্টা করে প্রথমে মানুষের মতো ভাবলাম। আমাকে যদি কেউ বলতো এক থেকে একশোর মধ্যে কোনটা কোনটা প্রাইম বলো। তাহলে আমি কিভাবে হিসাব করতাম। আমি প্রথমে ১ থেকে ১০০ পর্যন্ত এক একটা নাম্বার মনে মনে নিতাম আর ঐগুলা কি অন্য কোন নাম্বার দিয়ে ভাগ করা যায় কিনা সেটা ভাবতাম, একদম সিম্পল। এখন এই জিনিসটাই জাস্ট কম্পিউটার বোঝে এমন ভাষায় অনুবাদ করতে হবে, খুবই সহজ জিনিস। আমি সি তে ফর লুপ লিখতে পারি যে একটা একটা করে নাম্বার মনে নিবে (মেমরীতে) তারপর আমি বাকি সব নাম্বারের আরেকটা ফরলুপ চালাবো আর সেই লুপে নাম্বারটা বিভাজ্য কিনা সেই ইফ এলস লিখবো। একদম পানির মতো সহজ। মনে হয় ল্যাব থেকে সবার শেষে বের হইসিলাম বাট যে আমি এক ঘন্টা আগেও ভাবতেসিলাম সিএসই আমাকে দিয়ে পড়া হবে না সেই আমি তখন মোটামুটি কনফিডেন্ট আমি পারবো। কেউ পাচ মিনিটে পারবে আর আমি পাঁচ ঘন্টাতে, কিন্তু আমি পারবো। সেই থেকে এখন পর্যত যখনই কোন সিমিংলি ইমপসিবল কাজ ফেইস করি, একটা বড় নিশ্বাস নেই আর মনে মনে বলি "লেগে থাকলে আমি অবশ্যই পারবো"।

শেষ কথা, কোড লেখা খুবই সহজ কাজ কিন্তু কঠিন কাজ হচ্ছে এলগোরিদমটা চিন্তা করা (যেটা আমি এখনো পারি না)।

(মুরুব্বিদের জন্য অনুপযোগী। প্রোগ্রামিং সংক্রান্ত কোন উচ্চমার্গীয় কথা এখানে নাই। তাই হাতে সময় কম থাকলে না পড়াই ভাল :P )

কোথাও চান্স না পেয়ে জাতীয় বিশ্ববিদ্যালয়ের CSE তে ভর্তি হলাম। ক্লাস শুরুর ১ মাস বাকি থাকতে সি-তে হাতেখড়ি। সিনট্যাক্সগুলো মুটামুটি শেষ হবার পর UVa-তে করা শুরু করলাম। সারা জীবনের ফাঁকিবাজির প্রায়শ্চিত্য স্বরুপ ইজি ইজি প্রবলেম নিয়ে ঘন্টার পর ঘন্টা, দিনের পর দিন বসে বসে শ’ দুয়েক প্রবলেম সলভ করলাম। আশেপাশের অনেকে এই ফালতু (!) জিনিস বাদদিয়ে ওয়েব ডিজাইন শেখা শুরু করল। কেউ কেউ App ডেভেলপমেন্ট আবার কেউ ডাটাবেজ/নেটওয়ার্কিং। তখন মনে হত এই কনটেস্ট প্রবলেম সলভ করা বেশি কঠিন। প্রোগ্রামিং এর জিরো নলেজ নিয়ে একটার পর একটা প্রোডাক্ট তারা বাজারে নিয়ে আসতেছে। টুকটাক আয়ও হচ্ছে। আমি শালা কি করতেছি? -_-

৩ বছর পার হবার পর Android App ডেভেলপমেন্ট শেখা শুরু করলাম। দেখলাম “গেবন বড়ই সোন্দর্য্য” ( :'( ) কনটেস্টের জন্য নিয়মিত ভাল কোচ বা সেরকম উদ্যোমী টিমমেট না পেলেও এন্ড্রয়েডে কাজ করার সময় একজন পাগলাকে টিমমেট হিসেবে পেলাম। জগন্নাথ CSE এর Mahadi Hasan Sunny ওরও শ’দুয়েকের মত সলভ করা। আরেক টিমমেট Mainuddin Chisty ভাই। কমার্স ব্যাকগ্রাউন্ড, চাকুরিজীবি একই সাথে অসম্ভব পরিশ্রমী। আমরা [The Oak Troop] (https://www.facebook.com/TheOakTeam/) গঠন করি যা এখন [Megaminds Web & IT Solutions] (https://www.facebook.com/megamindsweb/) এর সাথে মার্জ হয়ে কাজ করছে। App Of Ramadan 2015 আমাদের প্রথম প্রোজেক্ট। [Download from Play Store] (https://play.google.com/store/apps/details?id=theoaktroop.appoframadan) [Size: 3 MB]

ACM থেকে ডেভেলপমেন্টে...। সেদিন সানীর সাথে গল্প করছিলাম যে, UVa তে যদি প্রবলেম সলভ না করতাম এই এপের প্রোজেক্টটা করা কখনোও সম্ভব হত না। সম্ভব হত না আক্ষরিক অর্থে বলি নাই। অর্থাৎ অনলাইন জাজে সলভ করার কারণে এটা করা অনেকটা সহজ হয়েছে। আল্লাহর রহমতে মুটামুটি বাগ ফ্রি একটা কাজ হিসেবে প্লে স্টোরে আপলোড দিতে পেরেছি (UX এর কথা জিজ্ঞেস করে লজ্জা দিবেন না :P )। এরপরেও কোন প্রোডাক্টকেই ১০০% বাগ ফ্রি বলা যায় না।

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

এই অভিজ্ঞতা শেয়ারটা মূলত CSE তে ভর্তি হওয়া নতুনদের জন্য। প্রথম থেকেই অমানসিক পরিশ্রম করার পরামর্শ রইল ACM প্রবলেম সলভিং এর জন্য। অনেকেই কানের কাছে ওয়েব ডেভেলপমেন্ট/মোবাইল ডেভেলপমেন্টের জন্য প্যানপ্যান করবে। তাদের কথা উড়িয়ে দিন।

ভার্সিটিতে ৩ বছর ব্যাসিক প্রোগ্রামিং, ডাটা স্ট্রাকচার, এলগরিদম প্র্যাক্টিস করুন। এরপর যেই প্ল্যাটফর্মে কাজ করার ইচ্ছা হয় সেদিকে যাবেন। তখনই বলতে পারবেনঃ

“Programmer’s life is so much beautiful...”
Happy Programming... :)

"আমি মধ্যবিত্ত ঘরের ছেলে।আমি একটি পাবলিক বিশ্ববিদ্যালয়ে পড়ি।আমি গত এক বছর ধরে সি প্রোগ্রামিং করছি।আমি UVA তে ১০০ সমস্যা সমাধান করছি।গত তিন মাস ধরে সি প্লাস প্লাস করতেছি।আমার কাছে contest মোটামুটি ভাল লাগে কিন্তু ভবিষ্যতে যদি ভাল না করতে পারি,এই জন্য আমি কি অন্য কোনো language শুরু করব।আমার কাছে প্রোগ্রামিং অনেক ভাল লাগে।আমি যদি প্রোগ্রামিং নিয়ে ক্যারিয়ার গড়তে চায়, তাহলে কোন language আমি এখন শুরু করব।

পড়াশোনা শেষ করে সফটওয়্যার ইন্ডাস্ট্রিতে কাজ করার আমার অনেক ইচ্ছা। পিতার বড় ছেলে তো! তাই টেনশন বেশি। হয়ত এমন একটা ভাষ শিখলাম পড়াশোনা শেষ করে ভাল জব পাইলাম না। ছোট ভাই মনে করে যদি সাহায্য করতেন।"

উপরের লেখাটা প্রোগ্রামিং সংক্রান্ত একটা গ্রুপে পেলাম। এমন প্রশ্ন প্রায় সকল কনটেস্ট্যান্টদের মাথায় ঘুরপাক খায়। পোস্টের নিচে আবার চমৎকার একটা উত্তরও পেলাম। উত্তরটি দিয়েছেন Tawkir Ahmed Isti ভাইয়া। বেশ ভাল লেগেছে তার কথাগুলো। তার কমেন্ট নিয়ে তাই এই পোস্ট করাঃ

"একটু বড় হবে কমেন্টটা কিন্তু আশা করি আপনি উপকৃত হবেন।

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

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

কোম্পানিগুলো এইগুনটাই চায়, আর এই গুন আয়ত করার সবচেয়ে সহজ এবং সিউর উপায় হচ্ছে প্রোগামিং কন্টেস্ট।

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

২। সো আমার পরামর্শ, ভার্সিটি জীবনের প্রথম দুবছর চোখ বন্ধ করে কন্টেস্ট করতে থাকেন।

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

৪। এসময় এসে আপনি বিডি জবসের সাইটে ঢুকবেন আর দেখবেন যে চাকরীর নিয়োগে কোন কোন ফ্রেমওয়ার্ক বা ল্যাঙ্গুয়েজ চায় এবং আপনি নিজের সাথে তুলনা করে দেখবেন যে এবস ক্ষেত্রে আপনার পারদর্শিতা কেমন।

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

৫। সিজিপিএ একটা ফ্যাকটর, সো এসবের পাশে পাশে পড়াশোনা টা চালায় যাবেন। সিজিপিএ খারাপ হলে অনেক কোম্পানী হয়তো আপনার সিভি পড়েও দেখবে না।

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

আপনার উন্নতি কেও ঠেকাতে পারবে না, ইনশাল্লাহ।"


CGPA নিয়ে বেশ কিছু বাস্তবসম্মত কথা বলেছেন Mukit Chowdhury ভাইয়া। সেগুলো হচ্ছেঃ

"বাংলাদেশে জবের জন্য হয়ত cg ফ্যাক্ট না, কিন্তু আপনি যদি বাইরের কোন ভাল ফার্মে জব করতে চান? বা আপনি যদি বাইরে সেটেল্ড হতে চান? তখন কিন্তু cg টা অনেক ইম্পর্টেন্ট। খুব ভাল কোডার না হলে কিন্তু শুধু জব দিয়ে বাইরে যাওয়া পসিবল না। কিন্তু শুধু cg দিয়ে খুব ভাল কোডিং স্কিল না নিয়ে/একদম শূন্য কোডিং স্কিল নিয়েও বাইরে চলে যেতে দেখেছি। smile emoticon সমস্যা হল, যত ভাল কোডারই হোক না কেন, কারো ইচ্ছা করে না, ১৫/২০ বছর একটানা দেশে কোডিং করতে। তখন একটা পর্যায়ে সবাই দেশের বাইরে যাওয়ার চিন্তা করে। কিন্তু পর্যাপ্ত cg না থাকার কারণে, অনেকেই তা পারে না। আপনি বলতে পারেন, জব দিয়ে তো যাওয়া যায়। কিন্তু বাস্তবতা হল, জবের জন্য প্রতি বছরে ভিসা প্রতিটা দেশের লিমিটেড থাকে, কিন্তু স্টুডেন্ট ভিসা লিমিটেড না। আপনার সব কাগজ-পত্র ওকে, তারপরও আপনি ওয়ার্ক ভিসা নাও পেতে পারেন, কিন্তু কাগজ-পত্র ওকে থাকলে, আপনার স্টুডেন্ট ভিসা মোটামুটি নিশ্চিত।

আর দেশের বেশিরভাগ কোম্পানিই আসলে ওয়েল ম্যানেজড না। যার কারণে একজিন ফ্রেশার বেশিরভাগ সময়ই জবে ঢুকে হতাশ হয়ে পড়ে। এদিক থেকে তুলনামূলকভাবে বাইরে মাস্টার্স/phd এর জন্য গিয়ে এরপর সেখানেই কোন একটা ফার্মে ঢুকে যাওয়া বেটার ক্যারিয়ারের জন্য। এইজন্যও cg ইম্পর্ট্যান্ট।"

হ্যাপি কোডিং... :)

[Hasan Abdullah এর গ্রুপ পোস্ট

ব্যক্তিঃ "ভালবাসা দিবি কিনা বল?" >:O
প্রফেশনঃ "জোর করে ভালবাসা হয় না" ;) :v](https://www.facebook.com/groups/bengaliprogramming/permalink/523686091136602/)

"ভাইয়া, গ্রাফিক্স ডিজাইন শিখব নাকি ওয়েব ডিজাইন শিখব? শুনেছি এন্ড্রয়েড এপের নাকি সেই লেভেলের চাহিদা... ডট নেটের মার্কেট এখন ক্যামন?"

প্রশ্নগুলো শুনতে শুনতে মাঝে মাঝে নিজের মাথাতেই আউলা লাগে! মুরুব্বিদের থেকে শুনে শুনে ইদানীং আমিও এই টাইপের প্রশ্নের উত্তরে বলি "আপনার যেইটা করতে ভাল লাগে, যেইটাকে আপনি ভালবাসেন সেইটা করেন"। যদিও আমি নিশ্চিত বেশির ভাগ ক্ষেত্রেই মনে মনে প্রশ্নকর্তা ভাবেন "হেহ... একটা গুরুপের এডমিন হইয়া ভাবে পাউ মাডিত পড়ে না!!!" ভাইডি!!! রকেট সায়েন্টিস্টের ম্যালা কদর। অইবেন নি? ডাইরেক নাাসা...!!!

যাই হোক, গুরুজনেরা বলেন টাকার পিছনে দৌড়ালে আজীবন টাকার পিছনেই দৌড়াতে হয়। এর চেয়ে বরং ভালবাসার পিছনে দৌড়ান (অবশ্যই পজিটিভ অর্থে)। এই দৌড়ের মধ্যে আনন্দ পাবেন। যারা নিয়মিত সাইক্লিং করেন বা লম্বা ট্যুর দেন তাদেরও কিন্তু ভীষণ পরিশ্রম আর কষ্ট হয়। কিন্তু সেটাতেই তারা আনন্দ পায়। আমি যতবার ঢাকার বাইরে সাইকেল নিয়ে রাইড দেই ততবারই প্রতিজ্ঞা করি আর জীবনেও রাইড দিব না! কিন্তু সেটা আর মানা হয় না। যারা ক্লাইম্বিং করেন, পর্বতারোহী, তাদেরকে পাহাড় রীতিমত ডাকে। এই মৃত্যুর ঝুঁকিপূর্ণ প্রতিটা পদক্ষেপ তারা উপভোগ করেন। আরামের সমতল তাদের টানে না। এটাতেই কিন্তু আনন্দ! একই ভাবে আরেকটা আনন্দের কথা এই মাত্রই মাথায় আসল। যেই আনন্দের সাথেও পরিশ্রম ও ক্লান্তি যুক্ত। সরাসরি বললাম না, ১৮+ এঙ্গেলে চিন্তা করে নিয়েন :P

আপনার যদি সি ল্যাঙ্গুয়েজের কোড হাবিজাবি মনে হয়, এক্কেবারেই কোন স্বাদ না পান তাহলে বাদ দেন। দেখেন কোনটা ভাল লাগে। আপনার জন্য হতে পারে পাইথন স্যুট করবে। আবার আপনার হয়ত কালো কনসোলে খটখট করে ইনপুট দিয়ে ঐখানেই কাজ করতে যুত লাগে না, ওয়েবের ফর্ম বানিয়ে নানা রকম ভেল্কি দেখতে ভাল লাগে। হতে পারে আপনি ভালবাসেন ডিজাইনিং। তাহলে আপনি তাই-ই করেন... বাজারে কোনটার চাহিদা কেমন সেটা যাচাই করে ভালবাসতে গেলে আপনার আর সেই প্রফেশন/প্ল্যাটফর্মের মধ্যকার কথাবার্তা হতে পারে এই পোস্টের শুরুর দুইটা সংলাপের মত! আপনি হুমকি দিবেন, সে ভেংচি কাটবে!

আমরা সি প্রোগ্রামিং আর ডাটা+এলগো'র কোর্স ( বিস্তারিত দেখুনঃ http://goo.gl/5IBgb6 ) চালাতে গিয়ে এক রকম বিপদেই পড়েছি বলা চলে। বিপদে পড়ে বিপথে যাবার জোগাড়! কোর্সের পোস্ট দেখে ১০ জন নক/কল দিলে ৭ জনই আগে জিজ্ঞেস করে এন্ড্রয়েডের তো এখন অনেক চাহিদা, যে কোন প্রতিষ্ঠানেই এই কোর্স করায় আপনারা এগুলা করান না? এন্ড্রয়েড/ওয়েবের কোর্স চালু করলে জানায়েন, সি শিখে আমার পোষাবে না। জিজ্ঞেস করলে জানা যায় সি এর ব্যাসিক তার বেশ ভাল। ইফ-এলস/টিফ এলস পর্যন্ত তার কোন সমস্যা নাই। এখন তার এন্ড্রয়েড শিখতে হবে, কারণ প্লেস্টোরে বিশেষ রাতের প্রস্তুতিমূলক এপ আপলোড দিয়ে হাগার হাগার ডলার কামানো লাগবে!

এই যদি হয় টার্গেট তাহলে মনে হয় এই লাইন ত্যাগ করা ভাল। কারণ একজন ভাল প্রোগ্রামার, যিনি কোডের সাথে কথা বলেন। কোডের সুখ-দুঃখ অনুভব করতে পারেন। তিনি কখনো নিজেকে এতটা দূর্বল ভাববেন না যে কোন একটা প্ল্যাটফর্মের টুলস ইউজ করার কোর্স করতে চাইবেন। (এর ব্যাতিক্রমও থাকতে পারে। আবার আমার চিন্তাধারা পুরোটা ভুলও হতে পারে।) আমরা যখন অনলাইন কনটেস্টের কথা বলি (Running contest: https://goo.gl/8D8NNj ) তখন অনেকেই এটা সরাসরিই বলেন "সময় নষ্ট"! হয়ত বাজারে এইসব কোর্সের আকাশচুম্বি চাহিদা দেখে একদিন আমরাও শুরুর অবস্থান থেকে সরে গিয়ে এসব কোর্স শুরু করব। তাই উপরে বললাম বিপথগামী হতেও পারি আমরা।

উপরের এই প্রশ্নগুলো করেন সাধারণত ভার্সিটির শেষের দিকের শিক্ষার্থীরা। যাদের সামনে অন্ধকার! একেবারে হতাশার শেষ প্রান্তে এসে উদ্ভ্রান্তের মত ঘুরতে থাকে একটুখানি আশার আলো দেখার জন্য। ফ্যামিলির কথা চিন্তা করে হলেও তাকে চিন্তা করতে হয় কোন লাইনে গেলে এট লিস্ট পাশ করে বাবার সামনে একটা চাকরি নিয়ে দাঁড়াতে পারব। তাই আসলে এক তরফা তাদেরকে দোষ দেয়াও অনুচিত। এই লেখাটা মূলত যারা ভার্সিটি লাইফের শুরুর দিকে "এঞ্জয়িং ভার্সিটি লাইফ" মুডে আছো তাদের জন্য (তুমি করেই বললাম। আমি ফোর্থ ইয়ারে মাত্র উঠলেও ভার্সিটিতে চার বছরের বেশি পার করে ফেলেছি)। মৌজ-মাস্তি, হ্যাং-আউট আর সাজগোজ করে প্রেজেন্টেশন দিতে গিয়ে সেলফি তোলার মধ্যে যারা ঘুরপাক খাচ্ছ তারা জাস্ট চোখ বন্ধ করে ৩ বছর পরের কোন একটা দিনের কথা চিন্তা কর। গফ/বফের সাথে ভবিষ্যতের স্বপ্নের জাল বুনার পাশাপাশি এটাও চিন্তা কইরো কোন কোয়ালিটি ছাড়া পাশ করে বের হবার পরে তোমার বোনা জালের কেজি কত টাকা হবে? আর সেই জাল বেঁচে সংসার চলবে কিনা।

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

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

আসুন অনেক ভাল প্রোগ্রামার হবার চেয়ে, এই অসুস্থ্য সময়ে অনেক ভাল মানুষ হবার দিকে বেশি গুরুত্ব দেই।
প্রোগ্রামিং শেখাটা কিন্তু ফরজ না... ;)