Monday, March 16, 2015

ওযেব ডেভোলপার হওয়ার গাইড লাইন

গাইড লাইন  :: ওয়েব ডেভলপার হতে চাইলে 

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

HTML শিখুন

Image result for html
প্রথমেই আপনাকে HTML সম্পর্কে ভাল ধারনা থাকতে হবে। HTML বলতে সাধারন ভাবে ট্যাগ সমূহ বা কিভাবে টেক্সট লিঙ্কআপ করতে হয় বা কিভাবে লেয়ার বানাতে হয় শুধু মাত্র এই সাধারন জিনিষ গুলোর মধ্যে সীমাবদ্ধ থাকলে হবে না। HTML এর হাই লেভেল পর্যন্ত জানতে হবে

CSS শিখুন

Image result for css
এরপর CSS টা বেশ ভাল ভাবে জানতে হবে। এটা জানা ছাড়া ভালভাবে সাইটের ডিসপ্লে বা ডিজাইনকে কন্ট্রোল করতে পারবেন না। সৌন্দর্য বৃদ্ধি করতে পারবেন না। তাই HTML এর পরেই CSS কে ভালভাবে রপ্ত করতে হবে

Server-Side Technologies কে রপ্ত করুন

Image result for server guide technology
বেশ অনেক server side Technologies রয়েছে এর মধ্যে PHP, ColdFusion, Python, Ruby, ASP.NET, Java EE ইত্যাদি রয়েছে। আমার কাছে কেউ সাজেশন চাইলে আমি বলব এগুলোর মধ্যে PHP টা শিখতে। কারন PHP টা বর্তমানে বেশ জনপ্রিয় এর মাধ্যমে অনেক সুন্দর সুন্দর ডায়নামিক ওয়েব সাইট বানানো যায়। তবে যারা নতুন তাদের ASP.NET, Java EE এই দুটো কাছেই যেতে না করব, কারন এই দুটো অনেক কঠিন জটিল জিনিস। যেমন আপনি যদি ASP.NET শিখতে চান তবে আপনাকে সি ল্যাঙ্গুয়েজ ভিজুয়াল ব্যাসিক সম্পর্কে বেশ ভাল ধারনা থাকতে হবে

JavaScript জানুন


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

SQL শিখুন

Image result for sql

ডায়নামিক ওয়েব সাইট বানাতে হলে, অবশ্যই ডাটাবেজ সম্পর্কে জানতে হবে। অনেক ধরনের ডাটাবেজ ইঞ্জিন রয়েছে কিন্তু SQL টা বেশির ভাগ মানুষ ব্যবহার করে বুঝে। তাই এটাই শেখা ভাল

ওয়েব সার্ভার সম্পর্কে ধারনা নিন

ওয়েব সার্ভার সম্পর্কে তেমন বেশি জানা লাগবে না। হালকা পাতলা জানলেই হবে। যেমন ফাইল আপলোড করা, সাব ডোমেইন তৈরি করা, ইমেইল কনফিগারেশন করা ইত্যাদিইত্যাদি

ওয়েব ফ্রেমওয়ার্ক ব্যবহার করা শিখুন

আপনি সব কিছু শিখলেন HTML, CSS, JavaScript, PHP ইত্যাদি। কিন্তু এগুলোকে Raw Materials হিসাবে নিয়ে কাজ করতে অনেক অনেক সময় লাগবে। অনেক ঝামেলা পোহাতে হবে। তাই সময় বাঁচানোর জন্য কাজের সুবিধার্থে ওয়েব ফ্রেমওয়ার্ক ব্যবহার করতে হবে। যেমন আপনি যদি PHP ভাল পারেন তবে আপনি CakePHP, CodeIgniter, Zend ইত্যাদি ফ্রেমওয়ার্ক ব্যবহার করতে পারেন বা আপনি যদি Python ভাল জানেন তবে Django, webpy Ruby এর জন্য RoR ফ্রেমওয়ার্ক ব্যবহার করতে পারেন

বিভিন্ন CMS ব্যবহার করা শিখুন

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

ওয়েব সিকিউরিটি সম্পর্কে জানুন

Image result for web security

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

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

কিভাবে বা কোথায় শিখব ???

বর্তমানে সকল বিষয়ই ইন্টারনেটে গুগল/ ইউটিউবে  সার্চ করে পাওয়া যায় । এছাড়াও  সাইটে প্রচুর এক্সিলেন্ট তথ্য পাওয়া যায়। 
আমার পরামর্শ  আপনি http://www.w3schools.com/ সাইটে আপনার জ্ঞান সমৃদ্ধ করতে পারেন।
মোটামুটি অনেক বিষয় জানানোর চেষ্টা করলাম ওয়েব ডেভেলপমেন্ট সম্পর্কে। এখন কথা হল, কোথায় থেকে শিখব ??? কিভাবে শিখব ??? সবাইকে গাইড লাইন দেবার পর এই একই প্রশ্ন করে। তো আসুন এই ব্যাপারে কিছু জানি। এটা সম্পূর্ণ আমার ব্যক্তিগত মতামত তাই কারো মতের সাথে দ্বিমত হলে আমার করার কিছু নেই
প্রথমেই বলি, ট্রেনিং সেন্টার নামক ব্যবসায়িক প্রতিষ্ঠান থেকে দূরে থাকুন গলা কেটে নিবে ঠিকই কিন্তু কাজের জিনিস সব শেখাবে না। কিছু কিছু প্রতিষ্ঠান আছে ভাল তবে খুজে পাওয়া মুশকিল। সর্বপ্রথম কাজ হল নিজের মধ্যে আগ্রহ তৈরি করা। এরপর এই লাইনে এক্সপার্ট একজন মানুষের পরামর্শ মত প্রতি ধাপে ধাপে এগিয়ে যান। কোন  ট্রেনিং সেন্টার শিখলে সেটার পাশাপাশি নিজে নিজে প্রচুর প্র্যাকটিস করেন আর গুগলকে কাজে লাগান। যেই বিষয় যখনই কোন সমস্যা মনে হবে তখনই ট্রেনিং সেন্টারের আশার ফেলে না রেখে গুগলে সার্চ দিয়ে বিষয়টা জেনে নিবেন। ওই ট্রেনিং সেন্টার আপনাকে যা শিখাবে তার চেয়ে ভাল শিখতে পারবেন যদি আপনি গুগলকে কাজে লাগাতে পারেন
তবে নিজে নিজে শিখাটা অনেক কঠিন একটা ব্যাপার হয়ে দাঁড়ায়। তাই কোন ট্রেনিং সেন্টার বা এক্সপার্ট এর সান্নিধ্যে যেতে হয়। সেই ক্ষেত্রে একটু সতর্ক থাকবেন। অর্থাৎ
  • এক্সপার্ট হলেই যে ভাল শিখাতে পারবে এমন কোন কথা নেই অনেকে আছে যারা নিজেরা নিজে অনেক ভাল পারে কিন্তু অন্যকে শেখাতে পারেনা
  • অনেকে আছে ভাল শেখায় কিন্তু ব্যবহারগত ভাবে সেটা কাজে লাগানো শেখাতে পারে না
  • কিছু ট্রেনিং সেন্টার কাজের জিনিসের চেয়ে অকাজের জিনিসের দিকে বেশি গুরুত্ব দেয়
  • কিছু ট্রেনিং সেন্টার আছে যারা শেখায় ১০ টাকার জিনিস কিন্তু বিনিময়ে নেয় ২০ টাকা
এমন কিছু জিনিস আছে যা দেখে বুঝে ট্রেনিং সেন্টার বা এক্সপার্টদের সান্নিধ্যে যাবেন

কিছু এক্সট্রা উপদেশ বাক্যঃ

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

শেষ কথা

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

উপরোক্ত গাইড লাইনের কোন বিষয় বুঝতে সমস্যা হলে মন্তব্যতে জানান বা ফেসবুকে ইনবক্স করুন

 By   হোসেন রাহাত :   Techtunes  


0 comments:

Post a Comment