প্রোগ্রামিং এর দুনিয়ায় যদি তুমি নতুন হয়ে থাকো, তাহলে ফ্রি রিসোর্স(ওয়েবসাইট, ভিডিও, বই, অন্যের প্রজেক্ট…) দিয়ে শুরু করাটাই শ্রেয়।

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

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

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

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

তবে, মনে কি প্রশ্ন জাগে প্রোগ্রামিং শেখার জন্যে বেস্ট ফ্রি ওয়েবসাইট কোনগুলো?

তবে আমি বলবো, তুমি যদি আমার মতো উপরের প্রশ্নটি করে থাকো, তাহলে প্রথমেই, প্রশ্নটা ভুল করেছো। যদি প্রশ্নটাই ভুল হয়, উত্তর যাই হোক না কেনো কাঙ্ক্ষিত লক্ষ্যের কাছে নিয়ে যাবে না। অর্থাৎ, প্রশ্নটা ভুল হলে, উত্তরটাও “তোমার” জন্যে ভুল হবে। কারণ, প্রোগ্রামিং শেখার জন্যে বেস্ট ওয়েবসাইট কোনগুলো তা নির্ভর করবে তুমি কোন ল্যাংগুয়েজ শিখতে চাও, তুমি কিভাবে ভালো ভাবে শিখতে পারো(@ফাইন্মেন টেকনিক) এমন বিষয়গুলো উপরে।

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

প্রোগ্রামিং শেখাটাকে আমি প্রধানত ৩ভাগে ভাগ করি।
Theoretical Learning- প্রথমেই একটা নির্দিষ্ট ল্যাংগুয়েজ নিয়ে জ্ঞান থাকা প্রয়োজন। একটি নির্দিষ্ট ল্যাংগুয়েজ কোন কাজে ব্যবহার করা যাবে, কোন জায়গায় ব্যবহার করাটা সঠিক, ল্যাংগুয়েজের সিনট্যাক্স ইত্যাদি জানা প্রয়োজন। একেবারে প্রথমদিকে থিওরিটিক্যাল লার্নিং-এর পেছনেই সময় সবচেয়ে বেশি ব্যয় হবে এবং এটাই করা উচিত। লাফ দিয়ে পরের ধাপে চলে গেলে পরবর্তীতে সমস্যার মুখোমুখি হতে হবে। কারণ এতে তোমার বেস কাঁচা থাকবে। আর বেস যদি ভালো না হয়, বিল্ডিং আজ না হয় কাল ভেঙে পড়বেই৷ তাই, এই ধাপে গুণে গুণে ইট, বালি সিমেন্টের পরিমাণ যোগ করতে হবে। 😉
Learning By Practicing- যা শিখেছ তা বুঝেছ কিনা তা জানার সবচেয়ে সহজ এবং কার্যকর মাধ্যম হচ্ছে প্রবলেম সলভ করা। পাজেল এবং প্রবলেম সলভ করার জন্যে অনেক মাধ্যম রয়েছে। বিশেষ করে, বিভিন্ন ওয়েবসাইটে শুরু তৈরিই হয়েছে এই উদ্দেশ্যে।
Learning By Creating- শেখার জন্যে শ্রেষ্ঠ মাধ্যম হচ্ছে নিজের স্কিলটা বাস্তব জীবনে কোনো কাজে লাগানো। সেটা বিগিনার লেভেল থেকে এডভান্স লেভেল পর্যন্ত হতে পারে। এভাবেই একটা সাধারণ ওয়েবসাইট থেকে ফুল-ফিচার্ড ওয়েবসাইট কিংবা গেম বানানো সম্ভব। ছোটো ছোটো প্রজেক্ট দিয়েই শুরু করা যায়। এতে বন্ধুদের কাছে যেমন সো-অফ করার জন্যে সুযোগ পাবে, প্রথমদিকে ক্লায়েন্টের কাছেও প্রমাণ হিসেবে নিজের কাজ সো-কেস করতে পারবে। আর না বললেই নয়, প্রজেক্টে যতো সমস্যার মুখোমুখি হবে ততো তোমার বাস্তব জ্ঞান।

থিওরিটিক্যাল লার্নিং শুধু বেস তৈরি করার জন্যে। প্রথম ও দ্বিতীয় ধাপের কাজ হচ্ছে তৃতীয় ধাপের দিকে উদ্ভুদ্ধ করা।

থিওরিটিক্যাল লার্নিং-এর জন্যে বেস্ট প্রোগ্রামিং ওয়েবসাইট

১. FreeCodeCamp
নিঃসন্দেহে, ফ্রি ওয়েবসাইটগুলোর মধ্যে এটা বর্তমানে সর্বোচ্চ পপুলার। ২০১৬ বা ১৭ এর শুরুতেও যদি আমাকে জিজ্ঞাসা করা হতো আমি এটাকে এতোটা উপরে রাখতাম না। কিন্তু গত এক-দেড় বছরে এর মধ্যে এতো ডেভেলপমেন্ট হয়েছে এটাকে প্রথমে না রেখে পারা যায় না। বিশেষ করে, এর ইউজার ইন্টারফেস (UI) বেস্ট।

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

২. W3School
W3School আমার গো-টু রিসোর্চ। কখনো কোনো সিনট্যাক্সের প্রয়োজন হলে এটাকে স্মরণ করাটাই আমার বেস্ট বলে মনে হয়।

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

যা আগেই বলেছিলাম, নির্দিষ্ট তথ্যের জন্যে এই ওয়েবসাইটটি বাকি সবগুলোর তুলনায় ভালো।

৩. Udacity
ইউড্যাসিটি, কোর্সের জন্যে আমার পারসোনাল ফেভরেট ওয়েবসাইট। এবং সাথে বেস্ট ওয়েবসাইট গুলোর মধ্যে একটি। কোর্স কোয়ালিটি অন্য যেকোনো ওয়েবসাইট থেকে ভালো। প্রত্যেক কোর্সেই একটা মডার্ণ টাচ রয়েছে যা edX, Coursera তে নেই।

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

ওয়েবসাইটটিতে প্রতিনিয়ত কনটেন্ট আপগ্রেড করা হয় যা MOOC গুলাতে হয়না। এছাড়াও, তুলনামূলকভাবে এই ইন্ডাস্ট্রিতে নতুন বলে, অনেক ফ্রিকোয়েন্টলি কোর্স এড করা হয়।

যদি কখনো এক-লাইন কোডও লিখে না থাকো, এই ওয়েবসাইটের কোর্সগুলো তোমাকে প্রথম থেকে শুরু করার জন্যে যথেষ্ট।

৪. edX
হারভার্ড ইউনিভার্সিটি এবং এমআইটি, ২০১২ সালে এডেক্স প্রতিষ্ঠা করে। ফ্রি অনলাইন কোর্সের জন্যে এটি সবচেয়ে বড় ওয়েবসাইট। এখানে ২৪০০ এর উপরে কোর্স রয়েছে, যদিও সব প্রোগ্রামিং বা কম্পিউটার সাইন্স নিয়ে নয়। তবে, কম্পিউটার সায়েন্স নিয়ে যথেষ্ট কোর্স রয়েছে।

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

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

কোর্স গুলো বিগিনার থেকে ইন্টারমেডিয়েট লেভেল পর্যন্ত বলে প্রোগ্রামিং-এর দুনিয়ায় প্রবেশের জন্যে এগুলো যথেষ্ট।

৬. CodeCademy
কোড একাডেমি নিঃসন্দেহে বিগিনারদের মধ্যে সবচেয়ে পপুলার ওয়েবসাইট। এর ইউজার ইন্টারফেস অন্য যেকোনো ওয়েবসাইট থেকে ভালো। ফ্রি কোড ক্যাম্পের ইউজার ইন্টারফেস সম্ভবত এই ওয়েবসাইট থেকে ইন্সপায়ার্ড।

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

৭. The Odin Project
ভিকিং কোড স্কুলের ফ্রি ভার্সন হচ্ছে দ্যা ওডিন প্রজেক্ট ।এখানে ওয়েব ডেভেলপার হওয়ার জন্যে প্রয়োজনীয় স্কিল শেখানো হয়। অর্থাৎ, ক্লায়েন্ট সাইডের জন্যে HTML, CSS, JS ড্যাটাবেসের জন্যে SQL, সার্ভার সাইডের জন্যে Ruby এবং Ruby On Rails। সাথে ভার্সন কন্ট্রোল সিস্টেম গিট শেখানো হয়।

৮.GA Dash
বিখ্যাত অনলাইন এবং অফলাইন ইন্সটিটিউট জেনেরাল এসেম্বলির ফ্রি ভার্সন হচ্ছে ড্যাস। অনেকটা ডেমোর মতো। এটাতে HTML5, CSS3 এবং JavaScript-এর ব্যাসিক রিসোর্স আছে।

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

৯. Cybrary.it
সাইব্রেরি, আবারও আমার ফেভরেট ওয়েবসাইট গুলোর মধ্যে একটি। এই ওয়েবসাইটে তোমাকে সাইবার সিকিউরিটি ফিল্ডের জন্যে প্রস্তুত করবে।। সাইবার সিকিউরিটি স্পেশালিস্ট অথবা আইটি প্রফেশনাল হওয়ার জন্যে প্রয়োজনীয় স্কিল শেখার জন্যে এই ওয়েবসাইটি বিখ্যাত।

১০. Khan Academy
আমাদের ক্লাসিক খান একাডেমিকে ভুলে কি থাকা যায়? খান একাডেমি আমেরিকা-বেসড সবচেয়ে বড় ফ্রি অনলাইন স্কুল। অনেকটা এডেক্সে, কোর্সেরার কোর্সের মতোই এখানেও হাজার হাজার টপিকের উপরে তৈরি কোর্স রয়েছে। তাই বিগিনার কোর্সগুলো দিয়ে তুমিও ফ্রিতে প্রোগ্রামিং শেখা শুরু করতে পারবে খান একাডেমিতে।

১১. MIT OpenCourseWare
এমআইটিতে পড়তে চাও? কিন্তু তুমি যেতে পারবেনা, তাহলে কি করা যায়? তাদের নিয়ে আসো তোমার ঘরে। হ্যা, ঠিক শুনেছ, তাদের তুমি নিজের ঘরে আনতে পারবে। বাস্তবে না হোক ভার্চুয়ালি।

অনলাইনে এমআইটির শিক্ষকদের কোর্স তুমি এই ওয়েবসাইটিতে পাবে। এই ওয়েবসাইটটিতে কলেজের শেখানো হয় এমন প্রায় সব টপিকের উপরেই কোর্স রয়েছে।

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

১২. UpSkill
আপস্কিল যদিও একটি পেইড লার্নিং প্ল্যাটফর্ম, তবে এর ওয়েব ডেভেলপার এসেনশিয়াল কোর্সটিতে এনরোল করে তুমি ফুল-স্ট্যাক ডেভেলপার হওয়ার জন্যে প্রয়োজনীয় স্কিল শিখতে পারবে। কোর্সটি সম্পুর্ণ ভিডিও কোর্স।

এই কোর্সটিতে HTML, CSS, JavaScript, Git, Ruby On Rails, BootStrap এবং আরো অনেক টেকনোলজির ভিডিও রয়েছে।

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

Got Something to Say?

This site uses Akismet to reduce spam. Learn how your comment data is processed.