প্রোগ্রামিং শেখার তিন স্ট্রাটেজি

প্রোগ্রামিং শেখার তিন স্ট্রাটেজি

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

.

২. কম্বাইন্ড স্ট্রাটেজি: এই স্ট্রাটেজি দুইভাবে কাজ করতে পারে। এক) প্রথমে কোন একটা টেকনোলজি ভালো করে শিখলে। তারপর কোন একটা ইন্টার্ন/চাকরিতে ঢুকে ছয় মাস কাজ করার পর অল্প অল্প করে হলেও প্রোগ্রামিংয়ের ফান্ডামেন্টাল কনসেপ্ট যেমন: ডাটা স্ট্রাকচার, এলগরিদম, OOP, ডাটাবেজ, Cloud এর বেসিক সম্পর্কে ধারণা নিবে। কিছু প্রব্লেম সলভিং করবে। হয়তো খুব বেশি প্যারা নিবে না। তারপরেও কনসেপ্টগুলো শিখবে, এপ্লাই করতে পারবে। সেই লেভেলে যেতে হবে।

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

.

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

এর পাশাপাশি Object Oriented Programming, Database, Cloud Computing ও শিখবে এবং সবার শেষে ফাইনাল প্রজেক্ট।

এখন প্রশ্ন হতে পারে-- কোথা থেকে শিখবো? কিভাবে শিখবো? কতদিন সময় লাগতে পারে?

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

.

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

.

এইখানে--

১. বিভিন্ন ইউনিভার্সিটির নামকরা শিক্ষকেরা একদম বেসিক প্রোগ্রামিং থেকে শুরু করে ডাটা স্ট্রাকচার, এলগরিদম, OOP, ডাটাবেজ, Cloud কম্পিউটিং সহ একটা কমপ্লিট জার্নি দিবেন। এমনকি Math For Programming নামে একটা স্পেশাল ইন্ট্রোডাক্টরি কোর্সও থাকবে।

২. প্রত্যেকটা টপিকের উপর অনেক অনেক প্রব্লেম সলভিং থাকবে। ল্যাব থাকবে। প্রাকটিস কনটেস্ট থাকবে। প্রব্লেম সলভিং এ ভালো করলে স্পেশাল প্রব্লেম সলভার্স ক্লাবে সুযোগ পাবে।

৩. কোন কিছুতে আটকে গেলে এক্সট্রা কনসেপচুয়াল সেশন থাকবে। প্রতিদিন তিন বেলা লাইভ সাপোর্ট সেশন থাকবে। সেখানে স্ক্রীনশেয়ার করে তোমার প্রব্লেম সল্ভ করে নিতে পারবে।

৪. অনটাইমে ভালোভাবে কোর্স ফিনিশ করলে ইন্টারভিউ এর স্পেশাল প্রিপারেশন দিয়ে দেশি বিদেশী বিভিন্ন কোম্পানিতে জব প্লেসমেন্ট এর সাপোর্ট দেয়া হবে।