Thursday, March 31, 2016

Programming Interview with Ahmad Faiyaz

ইন্টারভিউ সিরিজের আগের লিখাগুলা এই লিঙ্কে পাওয়া যাবে ।

প্রশ্ন ঃ ভাইয়া প্রোগ্রামিং কনটেস্ট এর ব্যাপারে প্রথম কিভাবে জানছিলেন মনে আছে ?

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

প্রশ্নঃ প্রথম অনসাইট এর কথা মনে আছে ?

উত্তরঃ হাঁ , অবশ্যই । প্রথম কনটেস্ট ছিল সাস্ট সিএসই ফিস্টা - ২০১১ , এনএসইউ থেকে ৫টা টিম গেছিল । আমার টিমের নাম ছিল , NSU strikers. আমাদের কনটেস্ট ভাল হয় নাই , একটা মিলাইছিলাম মনে হয় । তবে এক্সপেরিয়ান্স অসাধারণ ছিল , ৫ ঘণ্টা ক্যামনে গেছিল মনে নাই ।

প্রশ্ন ঃ ভাইয়া ভার্সিটির সেকেন্ড ইয়ারে এসে কনটেস্ট এর ব্যাপারে জানা কি আপনার মনে হয় আপনি অনেক দেরি করে ফেলছিলেন ? সচরাচর আইওআই যারা করে থাকে তাদের সাথে সব সময় একটা দূরত্ব থেকে যায় ?

উত্তর ঃ  হাঁ হাঁ , I regret . ঐসময় আমি রিজুল ( DU ) এবং BUET এর সাকিবকে চিনতাম । তাদের দুইজনই Uva তে ব্যাপক সল্ভ করে ফেলছিল আর আমি মাত্র 3N + 1 সাবমিট করছি । যদিও সাকিব IOI গেছিলাম , তখন ব্যাপারটা জানতাম না আর রিজুল অনেক সল্ভ করে ফেলছিল Uva তে । ওদের হারানো জন্য অনেক সল্ভ করা লাগত তাই Uva বেশি সল্ভ করি নাই :p তারপর লাকি ভাবে লাইট ওজি এসে গেল , এইখানে সল্ভ স্টার্ট করে দিলাম । অনেক ইন্টারেস্ট ছিল এই ব্যাপারে তাই গ্যাপ আছে এইটা নিয়ে চিন্তা করতাম না । জাস্ট সল্ভ করে গেছি ।

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

উত্তরঃ টেস্ট কেইজ করা অনেক মজার ব্যাপার আর মানুষ এর কোড থেকে নতুন অনেক কিছু শিখা যায় , কি ভুল করতেছে ধরতে পারলে নেক্সড টাইম আমি হয়তো এই ভুল করব না । অনেক কর্নার কেইজ চিন্তা করা যায় । আর ব্লগ লিখা হচ্ছে নিজের জন্য । যখন তুমি কাউকে কিছু বুঝাইতে যাবা  you need to know that topic very well , আমি একটা ব্লগ লিখছিলাম বাই কানেক্টেড কম্পোনেন্ট নিয়ে , লিখতে গিয়ে আরো ভালমত বুঝছি জিনিসটা । মানুষ question করবে তুমি নতুন আরো কিছু জানবা এইসব থেকে , আমি হয়তো আগে ভাবি নাই । অনেক এ ব্লগ এ কোড দিয়ে দেয় । আমি এইটা discourage করব । এতে অনেক এ ব্লগ না বুঝে কোড কপি পেস্ট করে ।

প্রশ্ন ঃ কি টাইপের প্রবলেম সল্ভ করতে ভাইয়া বেশী ভাল লাগে ?

উত্তর ঃ Data Structure, String, Graph ( BCC, SCC )।

প্রশ্ন: ভাইয়া   কোন প্রবলেম সল্ভ এর সময় "Thinking Process" কি থাকে প্রবলেম ?

উত্তর ঃ ক্যাটেগরিতে ফালানোর ট্রাই করি কি টাইপের প্রবলেম । এরপর দেখি এইরকম কিছু আগে করছি কিনা । CF এ দেখছি অনেক এই বলছে ম্যাক্সিমাম প্রবলেম অন্য কোন প্রবলেম এর ভ্যারিয়েশন । যদিও তাও না বের করতে পারি তাহলে প্রবলেমটা আরো সিমপ্লিফাই করতে পারি কিনা তা দেখি , ছোট ছোট টাস্ক এ ভাগ করে তারপর এইগুলাকে দিয়ে কিভাবে সল্যুশন করা যায় - যা আসলে শিখছিলাম ফাহিম ভাইয়ার ( Iqram Mahmud - Smilitude ) কাছ থেকে ।

প্রশ্নঃ কোন প্রবলেম Accepted না হলে কি কি ব্যাপার দেখেন ?
উত্তরঃ ঐ যে কর্নার কেইজ গুলা চিন্তা করি , অনেক রকম ভ্যালু নেই দেখি কি হবার কথা কি হচ্ছে। মাঝে মধ্যে সময় থাকলে brute force করি । দেখি কেন ভুল হচ্ছে । যদিও তাও ভুল না পাই , এল্গো রিভাইস দেই । ইমপ্লিমেন্টেশন চেক করি । ও হাঁ অবশ্যই প্রবলেম আবার পড়ি ।

প্রশ্ন ঃ অনেক সময় দেখা যায় কয়েকদিন কারো কনটেস্ট ভাল না হইলে অনেক এ হতাশ হয়ে কনটেস্ট ছেড়ে দেয় বা অন্যভাবেও বলা হয় সব কনটেস্টেন এর লাইফে হতাশার একটা পিরিয়ড থাকে , এই সময় কিভাবে নিজেকে মোটিভেট করা উচিত ?

উত্তর ঃ ও হাঁ , আমিও দুইবার ছেড়ে দিছিলাম । একবার ন্যাশনাল কনটেস্ট মিস করছিলাম কনটেস্ট ছেড়ে দেবার কারনে । যাই হোক মোটিভেশন এর কিছু নাই , আমার কাছে মনে হইছে তোমার চান্স ৫বার , নিতে সমস্যা কি ? আর এই জিনিসটা হ্যাম্পার করতেছে না আমার ডেইলি লাইফ বা  একাডেমিক এ । যদিও একটু সিজিপিএ কমছে এইটা আমার দোষেই । এই তো জাস্ট ট্রাই করে যাওয়া যাতে কখনো মনে না হয় আরো একবার চান্স ছিল নেই নাই , নিলে হয়তো ভাল করতে পারতাম ।

প্রশ্ন ঃ প্রোগ্রামিং কনটেস্ট এ ইন্সপারেশন এর কেউ আছে , কাউকে ফলো  করতেন ?

উত্তর ঃ হা .. Iqram Mahmud (Fahim ভাই), Mahmud Ridwan ভাই ।

প্রশ্নঃ প্রোগ্রামিং কনটেস্ট এ কোন মজার কোন স্মৃতি আছে যেইটা মনে করলে এখনো হাঁসি পায় ?

উত্তরঃ হাঁ , এইটা ডেফোডিল এর কনটেস্ট ২০১১ এ ছিল । আমরা দুইটা করছিলাম বা একটা প্রবলেম আর মিলাইতে পারতেছিলাম না । আমাদের বাম পাশে ছিল DU এর জুবায়ের ভাইদের টিম । উনারা বলতে ছিল যে একটা প্রবলেম কিভাবে মিলাইছে । আমি পাশে ছিলাম , হাল্কা শুনছি সিমুলেশন করে দেখলেই হয় । তখন মাথায় ঢুকছে সিমুলেশন করে কিভাবে হবে , পরে কনটেস্ট শেষ এর ৫মিনিট আগে এসি :p এইজন্যই আমি আমার টিমমেটদের সবসময় বলি আস্তে ডিসকাস করতে ।

প্রশ্ন ঃ এই বছর ওয়াল্ড ফাইনালের জন্য আপনাদের টিম এর প্রিপারেশন ক্যামন ?

উত্তর ঃ এই তো চলতেছে , ওয়াল্ড ফাইনাল এর সেটগুলা practice করা হইছে । নতুন অনেককিছু শিখতেছি , জানতেছি । hopefully world final ভাল হবে ।

 প্রশ্ন ঃ যদিও এখনও অনেক টাইম বাকি আছে , যারা এই বছর রিজিওনাল করবে সেই টিমগুলার জন্য ভাইয়া কোন সাজেশন ?

উত্তর ঃ আমি কি বলব । সাজেশন এর কিছু নাই । just don't lose the hope . solvable problem solve করাই আসল ।

প্রশ্ন: নতুন যারা কনটেস্ট শুরু করতেছে তাদের কোন সাজেশন ? কিভাবে ভাল করবে ?

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

প্রশ্ন ঃ প্রোগ্রামিং বাদে কোন হবি ? ফ্রি টাইমে কি করেন ?

উত্তরঃ software development, graphics design, photography.. আর ফ্রি টাইমে মুভি দেখি , সিরিয়াল দেখি , আড্ডা মারি , গেইম খেলি , টিউটোরিয়াল পড়ি ।

No comments:

Post a Comment