Thursday, September 8, 2016

Installing swift on ubuntu 16.04 LTS from source

Swift is new shiny programming language from apple and it's going to replace objective-C gradually. Swift has been open sourced last year and beside macOS you can install it on ubuntu desktop's.

I am going to show how to install swift from development branch source code on ubuntu 16.04 LTS.

For doing so open your terminal and install the following dependencies running the following command:

sudo apt-get install git cmake ninja-build clang python uuid-dev libicu-dev icu-devtools libbsd-dev libedit-dev libxml2-dev libsqlite3-dev swig libpython-dev libncurses5-dev pkg-config libblocksruntime-dev libcurl4-openssl-dev
After installing the dependencies successfully installing the dependencies
we need to clone the source code inside a specific directory for locating other 
swift sub-module directories.
So lets create a directory name swift-build. Run the commands on
terminal:
mkdir swift-build
cd swift-build
now clone the git repository inside this repo
git clone https://github.com/apple/swift.git
wait few minutes for the cloning and after cloning is complete run the
following command to install sub-modules
./swift/utils/update-checkout --clone
this will take long as it will install/clone a lot of things.
After cloning all the sub modules we need to clone and bootstrap ninja
build system as its the new build tool for swift.
git clone https://github.com/ninja-build/ninja.git
cd ninja
git checkout release
./configure.py --bootstrap
This won't take much to bootstrap. And after bootstrapping move to
swift directory
cd ..
cd swift/ 
./utils/build-script -r -t
The last command will start building all swift related tools.

Tuesday, May 24, 2016

Installing and setup python 3 development environment on windows in Bangla



সবাইকে পাইথন এর দ্বিতীয় tutorial এ স্বাগত জানাচ্ছি। এই tutorial এ আমরা

উইন্ডোজ অপারেটিং সিস্টেম এ কিভাবে পাইথন 3 ইন্টারপ্রেটার ইন্সটল করে কাজের

পরিবেশ তৈরি করতে হয় তা দেখবো এবং পাইথন এ প্রথম প্রোগ্রাম লিখা শিখবো।

টুলস সেটআপ ( Tools setup )

প্রথমেই আমরা python.org site থেকে পাইথন ৩.৪ সিরিজ এর MSI installer download করে নিব।







Download শেষে installer এ double click করলে প্রোগ্রাম টির installation process শুরু হবে



এখানে আপনি চাইলে শুধু নিজের জন্য অথবা সব user এর জন্য পাইথন ইন্সটল করতে পারেন।

নেক্সট বাটন এ ক্লিক করলে হার্ড ডিস্ক এর কন কোন ড্রাইভ এ এবং কন কোন ফোল্ডার এ পাইথন ইন্সটল হবে

বাই ডিফল্ট সেটা দেখাবে। বাই ডিফল্ট C drive এর python34 folder এ ইন্সটল হবে। আপনারা চাইলে অন্ন

ফোল্ডার বা ড্রাইভ এ ও ইন্সটল করতে পারেন। তবে প্রাথমিক অবস্থায় ডিফল্ট লোকেশান এ ইন্সটল করাটাই



এর পর নেক্সট বাটন ক্লিক করলে পাইথন এর কন কন কোন কোন feature আপনি ইন্সটল

করতে চান installer সেই তথ্য চাইবে। লক্ষ্য করুন নিচের ১ টি বাদে বাকি সব option এ

টিক দেয়া আছে। আমরা শেষের option টি ও চেক করে দিব যেন সেটি ও ইন্সটল হয়।

নাইলে nahole পরে environmental veriable mannualy set করতে হবে।



সব অপশন সিলেক্ট করে নেক্সট ক্লিক করলে পাইথন ইন্সটল হউয়া হওয়া শুরু হবে।



ইন্সটল ঠিক ভাবে শেষ হলে নিচের মত arokom akti স্ক্রীন আশবে। সেখানে

 ফিনিশ বাটন এ ক্লিক করলে ইন্সটল প্রক্রিয়া সম্পন্ন হবে।






পাইথনে প্রথম প্রোগ্রাম হ্যালো ওয়ার্ল্ড

ইন্সটল প্রক্রিয়া সফল ভাবে সেস  করার পর এবার আমরা দেখবো কিভাবে

পাইথন এর প্রথম প্রোগ্রাম লিখতে হয়। পাইথন প্রোগ্রাম লিখার জন্য আমরা পাইথন IDLE

ব্যাবহার করব যা কিনা পাইথন ইন্সটল এর সময় ই আপনার computer এ ইন্সটল হয়ে যাবে। IDLE

তে যাওয়ার জন্য স্টার্ট মেনু তে গিয়ে IDLE python GUI তে ক্লিক করতে হবে।


তাহলে নিচের মত IDLE python GUI te click korle,  পাইথন IDLE বা শেল ওপেন হবে জাতে  আমরা পাইথন

প্রোগ্রাম লিখব।



এবার আমরা শেল এ ১তা  প্রোগ্রাম লিখব এবং তার আউট পুট কিভাবে

চেক করতে হয় তা দেখবো।

আসুন আমরা শেল এ “Hello world” print কিভাবে করতে হয় তা

দেখি। শেল এ গিয়ে লিখুন

>>> print("Hello World!")

এর পর এন্টার প্রেস করলেই শেল এ Hello World! Output দেখতে পারবেন।



>>> print("Hello World!")

Hello World!

লিখে ফেললেন আপনার প্রথম পাইথন প্রোগ্রাম। এই প্রোগ্রাম টি তে আমরা পাইথন এর print() function

ব্যাবহার করে hello world string এর output পেয়েছি।


প্রোগ্রাম টি আমরা interactive mode এ run করেছি। কিন্তু এই mode এ সব সময় শেল

এ প্রোগ্রাম লিখা সুবিধাজনক নয়। তাই আমরা দেখবো কিভাবে নতুন ফাইল ওপেন

করে তাতে কোড সেভ করে পরে run করে দেখা যায়।

এর জন্য প্রথমে শেল এ গিয়ে file থেকে new File select করবো


এরপর যে খালি blank *untitled* পেজ বা console আসবে তাতে print("Hello python!")



এরপর run এ গিয়ে run module select করলে তা



১ টি popup message show করবে কোড টি রান করার পূর্বে সেভ করার জন্য।



ওকে বাটন এ ক্লিক করার পর নির্দিষ্ট ফোল্ডার এ ফাইল টি hello.py নামে সেভ



করলে সেভ হবার সাথে সাথেই শেল এ output print হবে।





আর *untitled* পেজ টি তার নাম ও ফাইল লোকেশান সহ দেখা যাবে





এই tutorial এ আমরা উইন্ডোজ সিস্টেম এ কিভাবে পাইথন 3 ইন্সটল করতে হয় , সাথে সাথে পাইথন এর প্রথম প্রোগ্রাম লিখা এবং টা  কিভাবে run করতে হয় টা শিখলাম। আজ তাহলে এই পর্যন্ত ই।

Introduction to python programming in Bangla

সবাই কে আমার আমাদের আজকের প্রোগ্রামিং  tutorial এ স্বাগত জানাচ্ছি। আমাদের এই tutorial এ

বিষয়বস্তু হচ্ছে  পাইথনের (Python programming language) সংক্ষিপ্ত পরিচিতি তুলে ধরা।

Amader ajjker bisoybostu gulo hosse :

 পাইথনের সংক্ষিপ্ত পরিচিতি

 কাদের জন্য এই tutorial

 পাইথন কী

 পাইথনের ইতিহাস

 কেন/ কোথায় আমরা পাইথন ব্যবহার করি


পাইথনের সংক্ষিপ্ত পরিচিতি

পাইথন বর্তমানে একটি বহুল ব্যবহৃত ও জনপ্রিয় প্রোগ্রামিং ভাষা এবং দিন দিন এর জনপ্রিয়তা বেড়েই

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

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

গুলোর একটি হচ্ছে পাইথন। এছাড়া ও আরও অনেক বড় বড় প্রতিষ্ঠান এ ও Python ব্যাবহার করা হয় যেমন

Dropbox, Quora, Pinterest, instagram, Mozilla, redhat, openstack প্রভৃতি। Python দিয়ে সহজে অনেক

কঠিন প্রোগ্রামিং সমস্যা সমাধান করা সম্ভব বলেই python এর ব্যাবহার এত বেড়ে যাচ্ছে এবং পাইথন

প্রোগ্রামারদের চাহিদা ও দিন দিন বেড়ে যাচ্ছে।


কাদের জন্য এই tutorial


এই tutorial series টি মুলত যারা প্রোগ্রামিং এ একেবারেই নতুন তাদের উদ্দেশ্য করে সাজানো হয়েছে।

প্রোগ্রামিংয়ে যারা একেবারেই নতুন তাদের জন্য কোর্সটি উপযোগি  এবং জারা  মোটামুটি প্রোগ্রামিং জানে তাদের ও পাইথনের সাথে পরিচয় করিয়ে দেয়া এই tutorial এর লক্ষ। যারা

শৌখিন প্রজেক্ট কিংবা প্রফেশনাল প্রজেক্টে পাইথন ব্যবহার করতে চায় chan তারা এই tutorial series দিয়ে

পাইথন শেখা শুরু করতে পারেন। এই টিউটোরিয়াল সিরিজ শেষ করে ভাল ভাবে অনুশীলন করলে আপনারা

লেখাপড়া এবং ব্যাবহারিক ক্ষেত্রে পাইথন প্রোগ্রামিং ল্যাঙ্গুয়েজ এর যথাযথ প্রয়োগ শিখতে পারবেন বলে আশা

করা যায়।


পাইথন কী?

এবার আসুন পাইথন সম্পরকে  সংক্ষেপে কিছু তথ্য জেনে নেয়া যাক। পাইথন একটি হাই

লেভেল বা উচ্ছস্তরের কম্পিউটার প্রোগ্রামিং ল্যাঙ্গুয়েজ এবং এটা একটা ইন্টারপ্রেটেড ভাষা বা

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

লেভেল এ কম্পাইল করার দরকার হয়না। পাইথন এর ইন্তারপ্রেটার  সরাসরি আউটপুট দিয়ে

দেয়। এ জন্য ইন্টার একটিভ প্রোগ্রামিং এর জন্য পাইথন খুবি  সহজ ও উপযোগী একটি

ভাষা। কারন পাইথন এ কোড ইনপুট দিলে সাথে সাথে তার আউটপুট পাওয়া যায়। পাইথন ইন্টারপ্রেটার সহজেই

লিনাক্স, ম্যাক ওএসএক্স ও উইন্ডোজ সহ যেকোনো অপারেটিং সিস্টেমে চলে অর্থাৎ এটা একটা ক্রস

প্লাটফরম প্রোগ্রামিং ভাষা। www.python.org এই ঠিকানা থেকে যে কেউ সহজেই পাইথন ডাউনলোড করে

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

প্রোজেক্ট অর্থাৎ এর সোর্স কোড যেকেউ চাইলে পরিবর্তন করতে পারে বা পাইথন এর ইন্টারপ্রেটার এ

কোন নতুন সুবিধা বা ফিচার যোগ করতে চাইলে পাইথন প্রোজেক্ট এ অবদান রাখতে পারে। ওপেন সোর্স

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

সি প্রোগ্রামিং ল্যাঙ্গুয়েজ এ করতে হবে। পাইথন এর সকল উন্নয়ন ও রক্ষণাবেক্ষণ এর কাজে পাইথন

সফটওয়্যার ফাউন্ডেশন মূলত নিবেদিত ভাবে কাজ করছে এবং পাইথন এর মূল প্রস্তুতকারী গুইড ভান রসাম

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


পাইথনের ইতিহাস

Python language টি ১৯৮৯ সালে প্রথম তৈরির কাজ শুরু করেন গুইড ভান রসাম নামের একজন ডাচ

বিজ্ঞানী। যদিও ল্যাঙ্গুয়েজ টি নির্মাণ এর চেষ্টা চিন্তা ভাবনা তিনি ১৯৮০ সালের পর থেকে ই সুরু  করেন। এবিসি নামক একটি প্রোগ্রামিং ল্যাঙ্গুয়েজ এর উত্তরসূরি হিসাবে তিনি পাইথন তৈরি

করার কথা চিন্তা করেন যা কিনা ইউনিক্স অপারেটিং সিস্টেম এ প্রোগ্রামার রা সি বা সি প্লাস প্লাস এর

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

করেন যার মূল লক্ষ্য সহজ বোধ্য ল্যাঙ্গুয়েজ সিনট্যাক্স দারা  সহজে খুব কম কোড এর

মাধ্যমে জটিল জটিল প্রোগ্রামিং সমস্যা সহজে সমাধান করতে পারে। পাইথন এর প্রথম পাবলিক ভার্সন

প্রকাশিত হয় ১৯৯১ সালে যা ছিল ০.৯ ভার্সন। এরপর প্রথম পুরনাঙ্গ ভার্সন প্রকাশিত হয় ১৯৯৫ সালে

পাইথন ১.০ হিসাবে। পাইথন এর জনপ্রিয়তা বাড়তে থাকে ২০০০ সালে ভারসন ২.০ বের হবার পর। এই

দ্বিতীয় ভারসন এ উল্লেখযোগ্য পরিমান নতুন ফিচার যোগ করা হয়। ২০০৮ সালে পাইথন এর তৃতীয়

মেজর ভারসন প্রকাশিত হয় জা কিনা এখন পর্যন্ত ব্যাবহার হচ্ছে। আমাদের এই

টিউটোরিয়াল সিরিজ এ আমরা মূলত পাইথন এর সর্বশেষ প্রকাশিত ভার্সন ই ব্যবহার করব।


কেন/ কোথায় আমরা পাইথন ব্যবহার করি

এবার জেনে নেয়া যাক পাইথন আমরা কেন এবং কোথায় অর্থাৎ কি কি কাজে পাইথন ব্যাবহার করতে পারি।

পাইথন ব্যাবহার এর সবছে বড় সুবিধা হল অন্য অনেক প্রোগ্রামিং ভাষার তুলনায় অনেক

কম কোড লিখে অনেক জটিল সমস্যার সমাধান সহজে করা যায় এবং এর কোড সহজে পড়ে বঝা  যায়। এর উন্নত ল্যাঙ্গুয়েজ ডিজাইন এর কারনে সহজে উন্নমানের  সফটওয়্যার তৈরি করা

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

এবং পাইথন এর তৈরি সফটওয়্যার যেকোনো অপারেটিং সিস্টেম এ ব্যাবহার করা যায়। পাইথন ব্যাবহার করে

অনেক জটিল ও বড় বড় প্রোজেক্ট করা সম্ভব এবং এইসব সিস্টেম এ কোটি কোটি ব্যাবহারকারি থাকা

সত্ত্বেও পাইথন বিপুল পরিমান চাপ সহ্য করে ও সাভাবিক ভাবে  কাজ করতে পারে।

পাইথন দিয়ে ডেক্সটপ অ্যাপ্লিকেশান, গ্রাফিচাল  ইউজার ইন্টারফেস সফটওয়্যার, ওয়েব

অ্যাপ্লিকেশান ডেভেলপমেন্ট, গেম ডেভেলপমেন্টও ছাড়া ও সিস্টেম লেভেল প্রোগ্রামিং, ডাটা মাইনিং, বিভিন্ন

সিস্টেম অটোমেশান স্ক্রিপ্ট এবং উচ্চতর বিজ্ঞানিক ও গানিতিক গবেষণার মত গুরুত্বপূর্ণ কাজে বেপক

হারে ব্যাবহার kora হয়। আর ওপেন সোর্স প্রোজেক্ট হওয়াতে পাইথন ব্যাবহার করতে কোন টাকা ও খরচ

করতে হয়না এবং দীর্ঘ সময় ধরে ল্যাঙ্গুয়েজ এর আপডেট, বাগ ফিক্স এবং সিকিউরিটি পাওয়া যায়, যার ফলে

দীর্ঘ মেয়াদে পাইথন ব্যাবহার করা বেশ সুবিধা জনক। আর একারণে অনেক বড় বড় প্রতিষ্ঠান পাইথন এর

উপর আস্থা রাখছে।


এই post তে আমরা পাইথন প্রোগ্রামিং ল্যাঙ্গুয়েজ এর সংক্ষিপ্ত পরিচিতি ও এর নানাবিধ ব্যাবহার, পাইথন এর জন্ম ইতিহাস ও বিকাশ, পাইথন বেবহারকারি  বড় বড় প্রতিষ্ঠান এর নাম, কেন

তারা পাইথন ব্যাবহার  করছে এবং পাইথন আমরা কেন সিখব  বা ব্যাবহার

করব টা  জানলাম।

তাহলে আজ এই পর্যন্ত ই ,আমাদের পরবর্তী টিউটোরিয়াল এ আমরা পাইথন ল্যাঙ্গুয়েজ এর Installation হতে

শুরু করে আর অন্যান্য Advanced ফিচার হাতে কলমে শেখা সুরু  করব।

Monday, June 2, 2014

Django Beginners Tutorial: Quick Start

Starting development in Django web framework and understanding it's design philosophy is bit difficult for the beginners at very the beginning. In this tutorial I'll try to illustrate the basic steps to create a django project with a very basic application and all the relevant steps in ubuntu linux.

Setting Up Python Web Development Environment in Linux

Web application development with python is gaining popularity day by day for the advancement of the available python web frameworks like django, flask, web2py, pyramid etc. Using python web frameworks in development help the developers to increase the productivity  and built robust systems.