# পূর্বশর্ত

• পাইথন প্রোগ্রামিং ল্যাঙ্গুয়েজ জানা থাকা লাগবে! একদম ভালো না হলেও মোটামুটি লেভেলের পাইথন জ্ঞান দরকার, OOP সম্পর্কে ভালো ধারনা থাকতে হবে।

• HTML জানা থাকা লাগবে, CSS মোটামোটি জানতে হবে, JavaScript সম্পর্কে ধারনা থাকলে ভালো!

• কম্পিউটার থাকতে হবে, ইন্টারনেট থাকলে খুবই ভালো! পাইথন ৩ ইন্সটল করা থাকতে হবে। pip ইন্সটল করা থাকতে হবে, pip দিয়ে প্যাকেজ ইন্সটল করা জানতে হবে। উইন্ডোজের কমান্ড প্রম্পট বা লিনাক্সের টার্মিনাল এর বেসিক কমান্ডগুলো জানতে হবে, যেমন cd, ls, source ইত্যাদি। (এগুলো পাইথন সম্পর্কিত বিষয় না, তাই এই কোর্সে এগুলো কভার করা হবেনা।)

• ধৈর্য, ইচ্ছা এবং মুয়াযাবাত!

• পাইথনের অন্য কোন ওয়েব ফ্রেমওয়ার্ক (যেমন ফ্ল্যাস্ক) জানা থাকলে খুবই ভালো! অন্যথায় প্রথম প্রথম জ্যাঙ্গো কঠিন লাগতে পারে!

• অন্য কোন ল্যাঙ্গুয়েজের ওয়েব ফ্রেমওয়ার্ক (যেমন লারাভেল, রেইলস) জানা থাকলে ভালো!

• গুগলে সার্চ করা জানতে হবে। খুব ভালো না, মোটামুটি ভাবে সার্চ করে কোন বিষয় জানতে পারার মত হলেও চলবে!

• প্রতিটি চ্যাপ্টারে কোড নিজে করতে হবে (নিজে মানে নিজ হাতে “কি বোর্ডে” টাইপ করতে হবে, কপি পেস্ট করা বা শুধু কোডের দিকে চোখ বুলিয়ে যাওয়া একদম নিষেধ)

• প্রতিটি চ্যাপ্টার বুঝতে হবে, একবার পড়ে না বুঝলে দুই/তিন বার পড়তে হবে। তাও না বুঝলে চ্যাপ্টারের শেষে দেয়া বিস্তারিত জানার লিংকগুলোতে যেয়ে পড়তে হবে। তাও না বুঝলে গুগলে সে বিষয় সার্চ করে পড়তে হবে, তাও না বুঝলে পাইথন সম্পর্কিত কোন গ্রুপে না বুঝা বিষয়টা নির্দিষ্ট করে উল্লেখ করে প্রশ্ন করতে হবে। (আর হ্যা! ইংরেজি কিছুটা জানা থাকলেও স্ট্যাকওভারফ্লো তে সে বিষয়টা সার্চ করে বের করার চেষ্টা করতে হবে!)

• ডাটাবেইজ সম্পর্কে ধারনা থাকতে হবে

আমরা কোর্সেটতে python 3.7 এর সাথে django 2.2 ব্যবহার করব। প্রোজেক্ট এর কোড গুলো এবং স্ক্রিনশটগুলো উইন্ডোজ ওএস তে করব। কারণ আমরা ধরে নিচ্ছি যে এই কোর্স যে করবে সে জ্যাঙ্গোতে একেবারে নতুন (কিন্তু অবশ্যই পাইথন সম্পর্কে ভালো ধারনা রাখে!) এবং সে উইন্ডোজ ব্যবহারকারি। (কেননা বাংলাদেশের অধিকাংশ বিগিনার প্রোগ্রামার উইন্ডোজ ওএস ব্যবহার করে!) তবে অন্য অপারেটিং সিস্টম গুলোর সাথে এক্ষেত্রে খুব একটা পার্থক্য থাকবে না বিধায় লিনাক্স বা ম্যাক ব্যবহারকারীদের কোন সমস্যা হবার কথা না!
