Categories
Bangla Python Series

বাংলায় জ্যাঙ্গো – ইনস্টলেশন

কি কি লাগবে?

  • পাইথন (আমরা Python 2.7.4 ব্যবহার করছি, Python 3 ব্যবহার করবো না)
  • টেক্সট এডিটর বা আইডিই (আমি Sublime Text 2 রিকমেন্ড করি)
  • ডাটাবেইজ সার্ভার (MySQL হলেই চলবে)
  • pip (পাইথন প্যাকেজ ইন্সটল করার জন্য এটি লাগবে । ইনস্টলেশন গাইড )

প্রথম ধাপ – জ্যাঙ্গো ইনস্টল করা

এই কমান্ডটি জ্যাঙ্গো ফ্রেমওয়ার্ক এবং তার প্রয়োজনীয় টুলগুলো ইনস্টল করে নিবে ।

দ্বিতীয় ধাপ – মাইসিকুয়েল বাইন্ডিং ইনস্টল করা

যেহেতু আমরা জ্যাঙ্গোর সাথে মাইসিকুয়েল ব্যবহার করবো সেহেতু আমাদের পাইথনের জন্য মাইসিকুয়েল লাইব্রেরী ইনস্টল করে নিতে হবে ।

এই প্যাকেজটি সি থেকে কম্পাইল করা হয় তাই ইন্সটল করার জন্য বেশ কিছু ডিপেন্ডেন্সীর প্রয়োজন পড়ে (যেমন: পাইথন এবং মাইসিকুয়েলের সি হেডার) । আপনার সিস্টেমে যদি সব গুলো ডিপেন্ডেন্সী না থাকে তবে ইরর মেসেজ দেখে দেখে সেগুলো ইনস্টল করে নিতে হবে ।

যারা ডেবিয়ান বা উবুন্টুতে আছেন, তাদের জন্য অবশ্য ইনস্টলেশন বেশ সহজ –

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

জ্যাঙ্গোর ভার্সন মিলিয়ে দেখা

আমরা ভার্সন 1.5 ব্যবহার করবো এই বইতে । তাই আসুন, জ্যাঙ্গোর ভার্সন দেখে নেই –

এই কমান্ডটি রান করালে আমরা জ্যাঙ্গোর ভার্সনটি জানতে পারবো । যদি আউটপুট আসে 1.5.* ফর্ম্যাটে তাহলে আমরা সঠিক ভার্সনই ইনস্টল করেছি ।

Categories
Bangla

উইন্ডোজ এবং লিনাক্সে সিকিউরিটিঃ কিছু কথা

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

উইন্ডোজ ব্যবহারকারীদের জন্য:

— পাইরেটেড উইন্ডোজ যত নষ্টের গোড়া । এগুলোতে নিরাপত্তা শোচনীয় হয়ে থাকে । উইন্ডোজ ব্যবহার করলে জেনুইন উইন্ডোজ ব্যবহার করুন ।

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

— ফায়ারওয়াল ব্যবহার করুন । কন্ট্রোল প্যানেল থেকে উইন্ডোজ ফায়ারওয়াল এনাবল করে দিন । ফায়ারওয়াল নিশ্চিত করবে আপনার অজান্তে কোন এপ্লিকেশন ইন্টারনেট বা লোকাল নেটওয়ার্কে যেন এক্সেস না পায় ।

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

— কোন সফটওয়্যার চালানোর আগে তার বিশ্বাসযোগ্যতা যাচাই করে নিন । অপরিচিত কোন সফটওয়্যার সম্পর্কে ভাল করে খোজ না নিয়ে চালাবেন না। গুগলে সার্চ করলেই যে কোন জনপ্রিয় সফটওয়্যার সম্পর্কে রিভিউ পাওয়া যাবে ।

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

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

— আমরা অনেকেই থার্ড পার্টি রিপো থেকে সফটওয়্যার ইন্সটল করি । এই রিপো গুলো সম্পর্কে খোজ নিয়ে নেওয়া ভাল ।

— লিনাক্সে রুট পার্মিশন চাওয়া খুব সহজ, কমান্ডের আগে sudo বা gksu লাগিয়ে দিলেই হল । তাই রিপো থেকে ইন্সটল করেননি এমন সফটওয়্যার কে রুট এক্সেস দেওয়ার আগে আরেকবার ভাবুন ।

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

Categories
Bangla Python Series

বাংলায় পাইথন – ফাংশন

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

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

প্রথমে আমরা def কি-ওয়ার্ডটি লিখেছি । তারপার ফাংশনের নাম – “hello”, এবং তারপর (). যদি আমরা ফাংশনটিতে কোন ইনপুট দিতে চাই সেক্ষেত্রে প্যারামিটারগুলো এই () এর মধ্যে কমা দিয়ে আলাদা করে লিখতে হবে । আমরা দেখতে পাচ্ছি, এই ফাংশনে আমরা কোন ইনপুট দিচ্ছি না । ফাংশনটি “Hello world!” প্রিন্ট করবে । সি-প্রোগ্রামিং এর সাথে মিল রেখে (এবং রিটার্ন স্টেটমেন্টের ব্যবহার দেখানোর জন্য) আমরা 0 রিটার্ন করছি । আসলে এই স্টেটমেন্টের কোন দরকার ছিল না ।

এবার আসুন দেখা যাক পাইথনে কিভাবে আমরা ফাংশন প্যারামিটার পাস করব ।

এই ফাংশনটিকে কল করুন এভাবে: sayHello(“maSnun”)

এবার http://learnpythonthehardway.org/book/ex19.html এই পেইজ থেকে ফাংশন নিয়ে কিছু ঘাটাঘাটি করুন । ইনশা আল্লাহ, নেক্সট পোস্টে পাইথনে ফাংশনের আরো কিছু দিক নিয়ে আলোচনা করার চেষ্টা করব ।