কি !! শিরোনামটি দেখে নিশ্চই ভাবছেন Command Prompt নিয়ে আবার কি করবে ??
অবশ্য ছবি দেখে অনেকে বুঝে ফেলার কথা সামনে তাদের জন্য কি অপেক্ষা করছে !!!
চলুন কথা না বাড়িয়ে আমরা দেখে নিই CMD নিয়ে আমরা কি করতে চলেছি ।।
আমরা কম্পিউটারইউজাররা কম-বেশি সবাই Command Prompt শব্দটার সাথে পরিচিত।
আজকে আমরা দেখাবো Command Prompt দিয়ে কি কি করা যায় এবং এর বিভিন্ন ট্রিকগুলো সম্পর্কে জানব।
Command Prompt এ কোনো Command রান করতে হলে আগে আপনাকে Command Prompt টা চালু করতে হবে। এটা চালু করার নিয়ম হচ্ছে ........
>>> আপনার কি - বোর্ড থেকে win + R চাপুন। মানে হলো windows লোগো ওয়ালা key টা চেপে ধরে R চাপুন। দেখবেন উপর এর ছবির মত একটা Run Wizard আসবে। এবার ওখানে cmd লিখুন এবং ইন্টার চাপ দিন। এবার নতুন একটা Administrator উইন্ডো আসবে প্রথম ছবির মত ।।
ওখানেই যাবতীয় Command লিখে Computer কে input দিতে হয় ।।
তাহলে চলুন আমরা বিভিন্ন COMMAND এবং এদের কাজ গুলো কি কি তা জেনে নিই !!
arp - Address Resolution Protocol.
bcdboot- Used to create and repair a system partition.
chkdsk- Used to check and repair issues in the disk.
cleanmgr - Used clean temp files and recycle bin automatically.
cls - Clear CMD screen.
cmdkey- Used to manage stored usernames and passwords.
color - Change the color of the CMD shell using options.
compress - Compress one or more file.
help - Display a list of commands and see online information for them.
ipconfig - Display and change Windows IP configuration.
পরিপাটি জীবন , সব কিছু পরিপাটি কে না পছন্দ করে । সব কিছু সুন্দর করে যথাস্থানে গুছিয়ে রাখার মাঝে পৈষাচিক আনন্দ রয়েছে । সে পৈষাচিক আনন্দ আমাদের সকলের ই উপভোগ করা উচিত । আমরা একটি বুক সেলফ এর কথা ভাবতে পারি , বুক সেলফ এ যদি বই গুল সুন্দর করে গুছিয়ে রাখি তাহলে আমরা সহজেই আমাদের প্রয়োজন মত বইটি খুঁজে পেতে পারি । একজন programmer হিসাবে আমাদের নিত্য প্রয়োজনীয় যেমন - code , problem solving , project , book pdf , গুরুত্বপূর্ণ file এগুলো আর্কাইভ করে রাখা উচিত ।
আমরা আমাদের গুরুত্বপূর্ণ ডাটা গুল সব একসাথে আমাদের pc বা laptop এর একটি Drive এ রাখি , কিন্তু আমাদের ডাটা গুল কি এখানে secure , যদি কোন সময় আমাদের pc বা laptop এ যদি কোন সমস্যা হয় এবং Hard Disk crash করে , তখন যদি আমাদের গুরুত্বপূর্ণ ডাটা গুল হারিয়ে ফেলি তখন কি হবে ? এই সমস্যা সমাধানের একটি উপায় আছে আর তা হল আর্কাইভ । আপনি চাইলে আপনার গুরুত্বপূর্ণ ডাটা বা ফাইল গুল আর্কাইভ করে রাখতে পারেন । যারা varsity তে fresher থাকে তাদের আর্কাইভ সম্পর্কে ধারনা কম থাকে এবং তারা আর্কাইভ এর গুরুত্ব কতটুকু তা বুঝে উঠার আগেই হয়তো এরকম ঝামেলার সম্মুখীন হতে হয় যেকোনো কারণে ।
আর্কাইভ কোথায় করব ঃ
আমাদের প্রত্যেক কে varsity থেকে একটা করে email দেয় , যেই email এর google drive এ 32 gb এর মতন space থাকে । আপনি আপনার গুরুত্বপূর্ণ data বা file গুল varsity email এর drive এ আর্কাইভ করে রাখতে পারেন ।
আপনি চাইলে আপনার personal email এর google drive এ ও আর্কাইভ করতে পারেন , সেখানে আর্কাইভ করার জন্য আপনি 15 gb এর মতন free space পেতে পারেন ।
এছাড়াও আমরা আমদের code গুলকে / প্রোজেক্ট গুলকে GitHub / Git এ আর্কাইভ করে রাখতে পারি ।
আমরা আমাদের গুরুত্বপূর্ণ Note গুল Median এ আর্কাইভ করে রাখতে পারি ।
এছাড়াও আমাদের সবারই facebook account রয়েছে । আমরা আমাদের Note , file গুল facebook এর Note section এ অথবা নিজে কোন group or page create করে সেখানে up দিয়ে সংরক্ষণ করতে পারি ।
আর্কাইভ একটি গুরুত্বপূর্ণ কাজ ও একটি ভাল অভ্যাস যার চর্চা আমাদের সকলেরই করা উচিত । এই ভাল অভ্যাসটি আমাদের সকলের মাঝে আলোড়ন সৃষ্টি করুক এবং আমাদের ডাটা বা ফাইল গুল সংরক্ষিত থাকুক ।
নিজেকে আপনি ১০ বছর পর কোন অবস্থানে দেখতে চান ? বেশির ভাগ interview এর প্রধান প্রশ্ন থাকে এটি । ঠিক আমার ও একই প্রশ্ন আপনার প্রতি , আপনি আপনাকে ১০ বছর পর কোন অবস্থানে দেখতে চান ? নিজেকে নিজেই প্রশ্ন করুন ।
আপনি চাইলেই নিজের উজ্জ্বল ভবিষ্যৎ এর চাবি-কাঠি হয়ে উঠতে পারেন । নিজেকে নিয়ে যেতে পারেন উন্নতির চরম শিখরে , নিজের মেধা ও বুদ্ধিমত্তা কে কাজে লাগিয়ে । " দোলনা থেকে কবর পর্যন্ত জ্ঞান অর্জন করা উচিত । "
( আল হাদিস )
Data Structure and Algorithm শুধু কয়েকটি শব্দের সমষ্টি নয় , এই শব্দগুলো হল coding এর প্রাণ , একটি program এর সৌন্দর্য এবং একজন ভাল programmer এর পরিচয় । একজন ভাল programmer এর প্রধান গুন ই হল তার program কে সুন্দর ভাবে represent করা যাতে অন্যকেউ দেখা মাত্রই easily তার code বুঝতে পারে , program কে অর্থবহুল করে তোলা , আর তাই তো চাকরির interview এ বর্তমানে প্রশ্ন কর্তাদের পছন্দের topic হয়ে দাঁড়িয়েছে এই Data Structure and Algorithm Analysis .
interview board এ প্রশ্ন কর্তা এই topic থেকে বেশ কিছু প্রশ্ন করে থাকেন এবং একজন programmer এর এই টপিক সম্পর্কে ধারনা কি রকম তা যাচাই করেন এবং তার সম্পর্কে স্বচ্ছ ধারনা নেন । So , চলুন দেরি না করে Data Structure and Algorithm Analysis নিয়ে কিছু Top প্রশ্ন দেখে নেয়া যাক -
How to find middle element of linked list in one pass ?
How to find if linked list has a loop ?
How to reverse string in java ?
Write java program to print fibonacci series ?
How to reverse linked list using recursion and iteration ?
What is binary search tree ?
Write a java program to check if a number is a palindrome or not ?
How to find 3rd element from end in a linked list in one pass ?
How do search a target key in a linked list ?
What is an AVL tree ?
What is a dequeue ?
Which sorting algorithm considered the fastest ?
What is data abstraction ?
Differentiate NULL and Void .
What is an ordered list ?
Write a java program to implement stack in java .
Differentiate file structure from storage structure .
When is a binary search best applied ?
In what areas do data structure are applied ?
In an integer array there is 1 to 100 number out of one is duplicate , How to find ?
Write a java program to sort an array using bubble sort algorithm .
What is the difference between stack and queue data structure ?
What is difference between singly linked list and doubly linked list data structure ?
How to find duplicates in an array if there is more than one duplicates ?
How do you reference all the elements in a one dimention array ?
Which data structure is applied when dealing with a recursive function ?
How does dynamic memory allocation help in managing data ?
Are linked list considered linear or non linear data structures?
Do all declaration statements result in a fixed reservation in memory .
What is the minimum number of nodes that a binary tree can have ?
How do signed and unsigned numbers affect memory ?
What is the primary advantage of a linked list ?
What is the difference between push or pop ?
What is a postfix expression ?
What is the advantage of the heap over stack ?
প্রশ্ন গুলির উত্তর আপনারা নিজ থেকে google করে জেনে নিবেন । এতে করে আপনার প্রশ্ন গুলির উত্তর আয়ত্তে চলে আসবে ।
শুধু interview এর ভাইবাতেই নয় তারা আপনার পরীক্ষা নিবে তাদের interview এর তৃতীয় ধাপ project তৈরি করা বা problem solving করতে দেয়া এসব পরীক্ষাতেও । আপনার যদি data structure and algorithm সম্পর্কে fully concept clear না থাকে সেক্ষেত্রে আপনি ঐ সকল IT Farm গুলতে বেশি সুবিধা করতে পারবেন না । নিজেকে নিজের যোগ্য জায়গায় দেখতে চাইলে এখন থেকেই পরিশ্রম শুরু করুন । আপনার সুন্দর ভবিষ্যৎ আপনারই অপেক্ষায় রয়েছে পথ চেয়ে ।
মানুষ সৃষ্টির সেরা জীব । মানুষ তার আশেপাশের পরিবেশ , পরিবার , সমাজ থেকে শিক্ষা লাভ করে । আর সেই শিক্ষার বহিঃপ্রকাশ ঘটে তার আচার , ব্যাবহার , সামাজিক মূল্যবোধ এর মাধ্যমে । মানুষ নিজের প্রয়োজন এ সমাজ , পরিবেশ , পরিবার থেকে নিজে নিজে শিখতে পছন্দ করে । আর তাই মানুষ হচ্ছে সবচাইতে best self learner . মানুষের এই গুনটি কে কাজে লাগিয়ে বর্তমান যুগে একটি শক্তিশালী platform হিসেবে নিজেকে দ্বার করিয়েছে Machine Learning .
Machine Learning হচ্ছে Artificial Intelligent এর একটি platform .
Machine Learning হচ্ছে কতগুলো Algorithm এর সমষ্টি । এই Algorithm গুল আমরা যে কোন Language এ implement করতে পারি । Machine Learning হতে পারে কোন Robot বা কোন Intelligent Software যাকে কিছু data দিলে সে সেই data গুল পর্যালোচনা করে নিজে নিজে শিখে problem এর output প্রদান করে । কিছু Machine learning program হলও ok google, prisma , cortana , Shiri etc .
IBM Watson হচ্ছে এখন পর্যন্ত সবচাইতে বুদ্ধিমান প্রোগ্রাম । Warson API ব্যাবহার করে Intelligent Software তৈরি করা যায় ।
Machine Learning এর Deep Neural Network এর উপর ভিত্তি করে তৈরি করা হয়েছে prisma , যা Image recognition এবং image processing এর মাধ্যমে আপনার image কে আপনার মনের মত করে তোলে । কিছু কিছু ক্ষেত্রে ইমেজ সনাক্ত করতে এটি বেশি ব্যাবহার করা হয় ।
Machine Learning Algorithm হচ্ছে ৩ ধরনের ।
Supervised Learning - > কোন Computer program কে শিখিয়ে দেয়া হচ্ছে supervised learning . computer কে কিছু ইনপুট দিলে সেই ইনপুটের আলোকে সে তার আউটপুট প্রদান করে থাকে ।
Unsupervised Learning - >Unsupervised learning এ output কি হবে তা বলে দেয়া হয়না । program নিজেই তার data গুল পর্যালোচনা করে নিজে থেকে সম্ভাব্য output প্রদান করে থাকে নিজ বুদ্ধিমত্তা কে কাজে লাগিয়ে ।
Reinforcement Learning - > Human Nature যেভাবে কোন কিছু শিখে ঠিক তার মতন করেই শিখে reinforcement learning . যে কাজ টি তার করতে বেশি ভাল লাগে সেই কাজটি ই সে বেশি করে করে ঠিক মানুষের মতন । আমরা এখন সেই Supervised learning এর যুগে পড়ে রয়েছি এবং Unsupervised learning নিয়ে কাজ করে যাচ্ছি নতুন কিছু করার সম্ভাবনায় ।
Machine Learning শিখার জন্য কোন কোন language আমার জন্য suitable হতে পারে ঃ
R Language - > Statistical Analysis এর জন্য বেষ্ট হলও এই R Language . অনেক data নিয়ে কাজ করার জন্য R একটি জনপ্রিয় programming language . R Opensource programming Language .
Python - > python এ প্রচুর পরিমাণে built in library থাকায় এবং কাজ করতে সহজ হওয়ায় বর্তমান এর আরেকটি জনপ্রিয় language হয়ে দাঁড়িয়েছে এই python . data নিয়ে কাজ করার জন্য Scikit learn বেশি ব্যাবহার করা হয় python এ । Scikit learn হচ্ছে Machine language এর একটি framework .
প্রথমেই ভাবতে শুরু করুন , টপিক এর নাম টি পড়ে আপনার কি মনে হচ্ছে । আর্টিকেল টা কিসের উপর হতে পারে , চিন্তা করুন । কি ধরতে পারলেন কি ? আচ্ছা আমি ই বলে দিচ্ছি Sieve of Eratosthenes হচ্ছে prime number নির্ণয় করার Algorithm . যখন আমার চোখের সামনে এই name টি আসে তখন আমারও কোন idea ছিলনা এটি কি হতে পারে ।
Sieve of Eratosthenes হচ্ছে prime number নির্ণয় করার সবচাইতে প্রাচীন technique. এই technique টি হচ্ছে ১০০০ বছরের ও পুরনো । Greek Mathematician Eratosthenes এটি উদ্ভাবিত করেন এবং তার নামানুসারে এর নামকরণ করা হয় Sieve of Eratosthenes Algorithm .
যখন এই পৃথিবীতে কোন Computer এর চিহ্ন ছিলনা , সেই সময় এই Algorithm technique দিয়ে মানুষ prime number নির্ণয় করে থাকত । আর সবচাইতে মজার বিষয় হল এখন পর্যন্ত যত Algorithm আছে prime number নির্ণয় করার জন্য তার মধ্যে সবচেয়ে ভাল efficiency এবং bug free technique হচ্ছে এই Sieve of Eratosthenes .
Sieve of Eratosthenes এ প্রত্যেকটি prime number কে এক একটি civics বলা হয় ।
Application - > The Sieve of Eratosthenes process produces the stream of all prime numbers .
Sieve of Eratosthenes technique ব্যাবহার করে easily target value পর্যন্ত prime number নির্ণয় করা যায় । Time complexity একটু বেশি হলেও এটি efficiency এবং একটি সহজ পদ্ধতি prime number নির্ণয় করার ।
আপনারা চাইলে এই সম্পর্কে আরও বেশি জানতে পারেন Wikipedia থেকে ।
এইতো অল্প কিছুদিন পূর্বেই একটি presentation এর জন্য slide তৈরি করছিলাম , তখন content গুল নিয়ে research করে দেখতে পেলাম অনেকেই তাদের job থেকে resign নিয়েছে এবং আবার পড়াশুনা শুরু করেছে একটি টার্গেট কে লক্ষ্য করে । হঠাৎ করে তাদের জব ছেড়ে দেবার এবং আবার পড়াশুনা শুরু করার দরকারটাই আবার কি ,তারা graduates Engineer তারপরও তারা কেন তাদের এত ভাল জব এবং position থেকে resign নিচ্ছে । কারণটা খুব ই simple , শাহরুখ খানের একটি movie তে dialog আছে , " কুছ পানে কে লিয়ে কুছ খুনা পারতাহে অর হারকার জিত্নে বালো কো বাজিগার কেহতেহে " । ঠিক তাই তারা তাদের টার্গেট কে লক্ষ্য করে তাদের জব এবং দীর্ঘ ১ টি বছর সময় কে বিসর্জন দিয়েছে এবং তারা একটি সময় সফলও হয়েছে । এমন কি শিখল তারা ১ টি বছর পরিশ্রম করে , তা আর কিছু নয় তা হল Data Structure and Algorithms . তারা দীর্ঘ ১ টি বছর Data Structure and Algorithms নিয়ে পড়াশুনা করেছে এবং analysis করেছে । Now they are the Engineer and Developer of the Google .
Data Structure কি ঃ
Data Structure হল data optimize ও store করার কৌশল । পরবর্তীতে যেন এসব data কে সর্বোত্তমভাবে ব্যাবহার করা যায় এবং ফিরে পাওয়া যায় সেই কৌশলই হল data structure .
computer এ data নিয়ে আমরা ৩ ধরনের কাজ করে থাকি ।
Data input
Data Processing
Data Output
আর data structure এর কাজ হল এই ৩ ধরনের কাজকে সহজে সম্পন্ন করা ।
Array
Linked List
Stack
Queues
Tree
Graph
এগুলো হল কয়েকটি data structure .
Algorithms :
Algorithm হল কয়েকটি অপারাশনের সেট । কোন একটা সমস্যা কে সবচেয়ে উৎকৃষ্ট যে উপায়ে সমাধান করা যায় তাকেই বলা হয় Algorithm .
একটি problem এর জন্য একটাই Algorithm হয় কিন্তু একটি Algorithm এর জন্য অনেকগুলো solve হতে পারে ।
আমরা চাইলে একটি particular problem এর জন্য আমাদের নিজেদের মত করে Algorithm design করতে পারি এবং তা implement করতে পারি । Algorithm is the steps of solving a problem .
কোন একটা সমস্যা সাধারণ বুদ্ধি প্রয়োগ করে সমাধান করলে যতটা effective হয় , Algorithm ব্যাবহার করে solve করলে তার চাইতে বেশি effective হয় ।
World জুড়ে অনেক Algorithm রয়েছে । কিন্তু যেই Algorithm গুল World এ রাজক্ত করে যাচ্ছে সেগুলো হল -
Bubble sort
Merge sort
Quick sort
Insertion sort
Selection sort
Heap sort
DFS ( Depth first search )
BFS ( Best first search )
A * search
Hill climbing
Binary search
Knapsack
LIS
LCS
Greedy Algorithm
Programmer হিসেবে Data Structure and Algorithm Analysis ঃ
Computer Science এর একটি মুল ও শক্তিশালী সাবজেক্ট হল Data Structure and Algorithm Analysis . একজন ভাল ও দক্ষ programmer হতে হলে অবশ্যই data structure Algorithm Analysis সম্পর্কে জানতে হবে । Data Structure and Algorithm Analysis শিখতে কোন programming language এর প্রয়োজন হয়না । যে কোন language দিয়ে Data Structure and Algorithm Analysis শিখা যায় ।
একটি program কে সুন্দর ও প্রাণবন্ত করতে Data Structure and Algorithm Analysis এর ভূমিকা অপরিসীম ।
Software Design থেকে শুরু করে বড় বড় problem এর solving এ এর বিশেষ জুড়ি রয়েছে । কাজকে সহজ ও সুন্দর ভাবে অতি অল্প সময়ে সবার সামনে represent করতে Data Structure and Algorithm এর জুড়ি নেই । তাইত google , facebook , Amazon , YouTube সবার চোখের মনি হয়ে উঠেছে এই Data Structure and algorithm analysis specialist রা । So , আজই শুরু কর নতুন জীবনের পথ চলা ।
Data Structure and Algorithm সম্পর্কে আরও জানতে ঃ
Data Structure and Algorithm সম্পর্কে আরও জানতে google করতে পারেন , YouTube এ ভাল ভাল video content রয়েছে তা দেখতে পারেন । আপনাদের জানার আগ্রহ আরও তৈরি করতে বেশ কিছু resource দিয়ে দিলাম ।
YouTube :
mycodeschool
infinite loop
Bappy Nur
easytuts4you
Nabil Hijazi
Derek Banas
Sujit das (MIT Course )
Love Extends Code
Jompesh
MIT open courseware
Florin Mazilu
Book name :
Programming Contest , Data Structure and Algorithm by Md.Mahbubul Hasan
The Art of computer programming
Programming pearls
Data Structure and Algorithms made easy by Narasimha karumnachi
Data Structure and Algorithms in JAVA by Robert Lafore
The Algorithm Design Manual by Steven S Skiena
Introduction to Algorithms
Algorithms
Elements of programming interviews in Java , The insider guide
Algorithms in C
problem solving with Algorithm and Data Structure using Python
CSE তে ভর্তি হবার পর আমাদের সবারি কম বেশি স্বপ্ন থাকে যে আমি একজন programmer হব ।কিন্তু আসলে অনেকের ক্ষেত্রে সেই স্বপ্ন টা শুধু স্বপ্নই থেকে যায় ।কিন্তু আমরা চাইলেই আমাদের এই স্বপ্ন টা পূরণ করতে পারি , বাস্তবে রূপ দিতে পারি ।
একজন ভাল programmer এর কি কি গুন থাকা প্রয়োজন ঃ
একজন ভাল programmer হতে হলে সবার আগে যেই গুন টি থাকা প্রয়োজন তা হল ধৈর্য । আপনাকে অবশ্যই ধৈর্যবান হতে হবে ।
depression থেকে নিজেকে ১০০ হাত দূরে রাখতে হবে । যখন ই depressed হবেন তখন ই কারও জীবনী পরে , উক্তি পরে বা ভিডিও দেখে নিজেকে নিজে motivated করার চেষ্টা করতে হবে।
problem যত জটিল ই হক না কেন তা easily solve করার চেষ্টা করতে হবে ।
Practice makes a man perfect . তাই সবসময় practice করে যেতে হবে ।তাহলে আপনি লজিক গুল দ্রুত ধরতে পারবেন এবং easily logic খাটিয়ে problem solve করতে পারবেন ।
নতুন কিছু শিখার আর জানার আগ্রহ তৈরি করতে হবে ।
problem এ পরলে তা অবশ্যই নিজেকে solve করার চেষ্টা করতে হবে , problem solve করার জন্য লেগে থাকতে হবে । তারপর ও problem solve না হলে teacher এর শরণাপন্ন হতে হবে ।
একজন ভাল mentor খুঁজতে হবে এবং তার অধীনে কাজ করতে হবে এবং তার থেকে কিভাবে নতুন কিছু শিখা যায় এবং তা apply করা যায় তা জানতে হবে ।
লজিক গুল real life problem বা project এ apply করার ability তৈরি করতে হবে ।
নিজের মাঝে আত্মবিশ্বাস তৈরি করতে হবে ।
নিজের মাঝে programmer programmer মনোভাব তৈরি করতে হবে এবং মন কে একজায়গায় স্থির রাখতে হবে এবং focus ঠিক রাখতে হবে । খেয়াল রাখতে হবে যেন programmer programmer ভাব যেন অহংকার এ পরিণত না হয় ।
programming contest এ অংশ নিতে হবে ।
Programming শিখতে হলে কি কি জানতে হবে ঃ
programming শিখতে হলে সবার প্রথম যা জানতে হবে তা হল programming language . অনেকের মনেই প্রশ্ন থাকে কোন programming language টি শিখব । আমি prefer করি programming এর হাতে খড়ি হোক Mother language C দিয়ে । C বুঝতে অনেক সহজ এবং beginner level এর জন্য best হবে ।
C language এর কি কি topic শিখব ঃ
যেহেতু আপনি programming শিখবেন তাই আপনাকে অবশ্যই target ভিত্তিক কাজ করতে হবে । যথা সময়ে কাজ শেষ করার goal set করতে হবে । আমরা এখানে weekly ভিত্তিক একটি course outline দিচ্ছি ।
Week 1 - >
Variable
Data Type
Token
Operator and expression
Arithmetic Operation
Assignment operator
Week 2 - >
Control statement
if statement
Switch statement
for loop statement
while loop statement
do statement
break statement
go to statement
Week 3 - >
Function
Array
Week 4 - >
Pointer
String
Custom Data Type
Week 5 - >
Data file
Memory Allocation
Bitwise Operator
Week 6 - >
Advanced C
একজন ভাল Programmer হতে হলে যা যা করতে হবে ঃ
একজন ভাল programmer হতে হলে অবশ্যই আপনাকে একজন ভাল problem solver হতে হবে । আর তাই আপনাকে programming এর জন্য যথেষ্ট সময় দিতে হবে এবং প্রতিদিন problem solving করতে হবে । varsity life এর প্রথম ২ বছর অন্তত প্রতিদিন problem solving করা উচিত এবং পরে developing site নিয়ে কাজ করা উচিত ।
Problem solving কোথায় করব ঃ
problem solve করার জন্য বেশ কয়েকটি ভাল website রয়েছে ।
Uri Online judge : Beginner level এর জন্য ভাল । এখানে অনেকগুলো category তে problem গুল ভাগ করা রয়েছে । problem solving এর শুরু এই website দিয়ে হলে মন্দ কি ।
UVA online judge ঃ Beginner and Intermediate level এর জন্য ভাল । এখানে Uri এর থেকে একটু জটিল problem গুল পাওয়া যায় ।
Hacker Rank
Timus Online Judge
AIZU Online Judge
Sphere Online Judge (SPOJ)
Programming কোথা থেকে শিখব ঃ
Programming শিখার জন্য উত্তম মাধ্যম হল google . google এ অনেক ধরনের resource পাওয়া যায় programming শিখার জন্য । google এ ভাল ভাল বই এর pdf পাওয়া যায় , এছাড়াও বেশ কিছু website আছে যা থেকে easily programming শিখা যায় । Example : Tutorialspoint , Code academy , Code avengers , Code schools , Udacity , Code house , Khan academy , Learn street , Codetts , SQLzoo
Programming শিখার জন্য আরেকটি মাধ্যম হল YouTube . Example : Thenewboston , google developers , Derek Banas , Learn code.academy , Kudvenkat , Codecourse , DevTips , Leveluptuts , Adamkhoury ,TreeHouse ,SlideNerd , Learnwebcode , Quentin watt , Jream .
Android Apps এর মাধ্যমেও আমরা programming শিখতে পারি । Play store এ ভাল ভাল Android apps পাওয়া যায় যা programming শিখার জন্য ভাল উপকারী ।
Blog writing হতে পারে আপনার programming সম্পর্কে জানার আরেকটি মাধ্যম । আপনি blog পরে পরে programming সম্পর্কে অনেক কিছু জানতে পারবেন এবং তা real life এ প্রয়োগ করতে পারবেন ।
Programming শিখার আরেকটি অন্যতম মাধ্যম হল বই পড়া । বই পড়ে programming শিখা এবং তা চর্চা করার মজাই আলাদা ।বই পড়ার প্রধান সুবিধা হল আপনি sequentially সবকিছু শিখতে পারবেন । একটি কাজ কয়েক ভাবে করা যায় সে সম্পর্কে ধারনা লাভ করতে পারবেন বই পড়ে চর্চা করার মাধ্যমে । programming language , programming সবকিছুর basic জিনিশ গুল ভালভাবে শিখতে পারবেন । sequentially শিখতে পারবেন বলে অনেক সহজে অতি দ্রুত basic to advance level পর্যন্ত শিখতে পারবেন।
Programming Contest :
আপনার নিজেকে যাচাই করার জন্য অবশ্যই আপনাকে programming contest গুলতে অংশ নিতে হবে ।Programming contest এর মাধ্যমে আপনার problem solving করার ক্ষমতা আর বৃদ্ধি পাবে । Top কয়েকটি programming contest এর নাম / website উল্লেখ করা হল ঃ