হ্যালো ওয়ার্ল্ড লিখে ফেললেই প্রোগ্রামিং এ হাতেখড়ি হয়ে গেল তাই না? কিন্তু এর পরেও যেতে হবে অনেকটা পথ। প্রোগ্রামিং এর গুরুত্ব সম্পর্কে নতুন করে বলার কিছু নেই। বর্তমান যুগে সবারই প্রোগ্রামিং জানা উচিত। বেশ কিছু বাংলা ইউটিউব চ্যানেল আছে যেমন, ইচ্ছে কোড প্রোগ্রামিং স্কুল), কিছু ভালো সাইট আছে (যেমন তামিম শাহরিয়ার সুবিন এর cpbook.subeen.com) কিংবা সহজলভ্য প্রোগ্রামিং বই দিয়েই প্রোগ্রামিং এর বেসিকটুকু জেনে নেয়া যায়। এরপর যদি প্রবলেম সলভ করা হয় তাহলে শিখতে যেমন মজা লাগে তেমনি শেখা অনেক দ্রুত এগোয়। এখানে এ ধরনের কিছু সাইট নিয়ে আলোচনা করছি যেখানে প্রবলেম সলভ করতে করতে শেখা যাবে প্রোগ্রামিং।
cpbook.subeen.com
এটি বাংলাদেশের সবচেয়ে পপুলার প্রোগ্রামিং শেখার এবং চর্চার সাইট। এখানে বাংলায় সি প্রোগ্রামিং শেখার সহজ বই ‘এসো প্রোগ্রামিং শিখি’ আপলোড করে দেয়া আছে। যে কেউ চাইলে বইটি নামিয়ে প্রোগ্রামিং শিখে ফেলতে পারে। এ সাইটের সবচেয়ে বড় মাহাত্ম্য হচ্ছে এখানে বাংলায় কিছু প্রবলেম দেয়া আছে। যারা একদমই নতুন শুরু করেছে তাদের অনেক ক্ষেত্রে বিভিন্ন সাইটে ইংরেজিতে লেখা প্রবলেমগুলো বুঝতে অসুবিধা হয়। এখানে করা শুরু করলে সে সমস্যায় পড়তে হবে না এবং প্রবলেম সলভিং সম্পর্কে কিছুটা ধারণা চলে আসায় অন্য সাইটের প্রবলেম সলভ করাও সহজতর হয়ে উঠবে।
www.urionlinejudge.com
এটি একটি ব্রাজিলিয়ান ওয়েবসাইট ,অল্পদিনেই বেশ জনপ্রিয়তা পেয়েছে। এখানে রয়েছে বিগিনারদের জন্যে অনলাইনের সবচেয়ে সহজ প্রবলেম এর কালেকশান। প্রবলেমগুলোর ডিফিকাল্টি একটু একটু করে বাড়তে থাকে এবং প্রায়সময়ই আগের প্রবলেম এর সাথে সামঞ্জস্য থাকে।
www.hackerrank.com
এটিও খুব পপুলার একটি সাইট যেখানে প্রবলেম সলভিং এর মাধ্যমে হাতে ধরে প্রোগ্রামিং শিখিয়ে দেয়া হয়। প্রথম প্রোগ্রামে যা শেখানো হয় পরের প্রোগ্রামে তা এপ্লাই করে সাথে আরো নতুন কিছু শেখানো হয়। নতুন যে অংশ সলভ করতে হবে জলছাপের মাধ্যমে তার ক্লু ও দেয়া থাকে। যাদের প্রোগ্রামিং এর বেসিক ধারণা নেই তারাও এখানে প্রোগ্রামিং করতে পারে।
30 hours of code নামে একটি প্রবলেম সলভিং কোর্স আছে এখানে, যেখানে প্রতিদিন এক ঘন্টা করে সময় দিলেই শিখে ফেলতে পারবেন অনেক কিছুই। এখানে বিভিন্ন কোম্প্যানি জব কনটেস্ট আয়োজন করে থাকে। তারপর সেখান থেকে সিলেক্টেডদের ইন্টারভিউ এর জন্যে ডাকা হয়।
www.codeforces.com
কোডফোর্সেস প্রোগ্রামিং এর সবচেয়ে পপুলার সাইট। সহজ থেকে শুরু করে কঠিন সব ধরনের প্রবলেমই আছে এখানে। এখানে প্রতি সপ্তাহে দুইবার করে অনলাইন কন্টেস্ট এর আয়োজন করা হয়, বিগিনার এবং এডভান্সডদের জন্যে আলাদা কন্টেস্ট হয়। চাকরির সিভিতে কোডফোর্সেস এর রেটিং গুরুত্ব সহকারে বিবেচনা করা হয়. এমনকি ইউনিভার্সিটি গুলোতেও uva এবং এই সাইট সলভ করার পরামর্শ দেয়া হয়। যে কারো সল্যুশান এর ওপর ক্লিক করে তার সল্যুশান দেখা যায়, এতে অন্যেরা কীভাবে ভাবছে বোঝা যায়।
www.codechef.com
প্রোগ্রামিং শেখার পাশাপাশি যদি সুন্দর সুন্দর গিফট পাওয়া যায় তাহলে তো বেশ হয় তাই না? কোডশেফ একটি ইন্ডিয়ান সাইট। প্রবলেম সলভ করে আপনি জমাতে পারেন লাড্ডু, সেই লাড্ডু দিয়ে কিনতে পারেন টি-শার্ট, ব্যাগ থেকে শুরু করে ড্রোন ও।
uva.onlinejudge.org
এটি সবচেয়ে প্রাচীন এবং সমৃদ্ধ সাইট। এখানে একাউন্ট খোলার পর ইউহান্ট অর্থাৎ https://uhunt.onlinejudge.org/ এই সাইটে ও একটি একাউন্ট খুললে uva এর সহজ প্রবলেমগুলো খুঁজে পাওয়া এবং প্রবলেমগুলোর আপডেট রাখা সহজ হয়। এই ইউহান্ট এর ক্লু অনুসরণ করে প্রবলেম সলভ করা সহজ হয়।
www.topcoder.com
কোডফোর্সেস এর আগে এ সাইটটি সবচাইতে জনপ্রিয় ছিল। এখানে প্রচুর ব্লগ এবং টিউটোরিয়াল আছে। ভুল হলে অন্যদের সমাধান দেখে ভুল শুধরে নেয়া যায়। এখানে মাসে কয়েকবার অন্য কারো বিপরীতে সিঙ্গেল রাউন্ড ম্যাচ খেলা যায় এবং দুজনের মধ্যে কে সেরা তা যাচাই করা যায়।
http://www.condingame.com
কোডিং এ মন বসে না? এই সাইটটি আপনাকে সুযোগ দেবে গেম খেলে খেলে প্রোগ্রাম করে গেমটি বানানোর। এই ওয়েবসাইট এ গেম এর লিস্ট আছে সেখান থেকে পছন্দ করে নিয়ে আপনি প্রোগ্রামিং করে আপনার গেমটি বানাতে পারবেন। অন্যসব সাইট এর চেয়ে একেবারে ভিন্ন হলেও এই সাইটটি অনেক পপুলার হয়ে উঠেছে প্রোগ্রামারদের কাছে।
এভাবে অনুশীলনমূলক প্রোগ্রামিং কিছুদিন করার পর প্রোগ্রামিং কিছুটা আয়ত্তে চলে আসলে প্রতিযোগিতামূলক অর্থাৎ কম্পিটেটিটিভ প্রোগ্রামিং শুরু করে দেয়া উচিত। এসব সাইটে সপ্তাহান্তে বা সপ্তাহের নির্দিষ্ট সময়ে প্রোগ্রামিং কনটেস্ট হয়। সেগুলোতে অংশ নিলে সময়ের সাথে সামঞ্জস্য রেখে প্রবলেম সলভ করার দক্ষতাও বাড়ে। সারা দেশ জুড়ে ইউনিভার্সিটিগুলোতে কিছুদিন পর পরই প্রোগ্রামিং প্রতিযোগিতার আয়োজন করা হয়। আকর্ষণীয় অংকের পুরস্কারের পাশাপাশি এসব প্রতিযোগিতায় শেখা যায় অনেক কিছুই।