অনেকেই প্রায় সময় ফেসবুকে ইনবক্স করে জানতে চায় কি ভাবে ভাল ওয়েব ডেভলপার হতে পারবে বা কি ভাবে ওয়েব ডেভলপমেন্টের কাজ শিখবে। ভাল গাইড লাইন চায়। তাই সবাইকে বার বার উত্তর দেবার চেয়ে পোস্ট আকারে লিখার চিন্তা করলাম। ওয়েব ডেভলপমেন্টের আসলে অনেক বড় একটা ব্যাপার। কথাটা যত সোজা কাজটা আসলে এত সোজা না। ইদানিং অনেকে ওয়ার্ডপ্রেস বা জুমলা ইন্সটল ও কিছু প্লাগিন ও থিম সম্পর্কে ধারনা নিয়েই নিজেকে ওয়েব ডেভলপার হিসাবে দাবি করে। ব্যাপারটা মজাই লাগে। এই হিসাব করলে আমাদের দেশে কাক পাখির মত ওয়েব ডেভলপার এর সংখ্যা অগণিত হয়ে যাবে। কাজের কথায় আসি। আমি এক্সপার্ট না তবুও ওয়েব ডেভলপমেন্টের প্রাথমিক পর্যায় থেকে শুরু করে এক্সপার্ট লেভেল পর্যন্ত একটি গাইড লাইন দেবার চেষ্টা করছি। এক্সপার্টরা যদি কোন ভুল পান তবে জানাবেন।
HTML শিখুন
প্রথমেই আপনাকে HTML সম্পর্কে ভাল ধারনা থাকতে হবে HTML বলতে সাধারন ভাবে ট্যাগ সমূহ বা কিভাবে টেক্সট লিঙ্কআপ করতে হয় বা কিভাবে লেয়ার বানাতে হয় শুধু মাত্র এই সাধারন জিনিস গুলোর মধ্যে সীমাবদ্ধ থাকলে হবে না HTML এর হাই লেভেল পর্যন্ত জানতে হবে।
CSS শিখুন
এর পর CSS টা বেশ ভাল ভাবে জানতে হবে। এটা জানা ছাড়া ভাল ভাবে সাইটের ডিসপ্লে বা ডিজাইনকে কন্ট্রোল করতে পারবেন না। সৌন্দর্য বৃদ্ধি করতে পারবেন না। তাই HTML এর পরেই CSS কে ভাল ভাবে রপ্ত করতে হবে।
Server-Side Technologies কে রপ্ত করুন
বেশ অনেক server side Technologies রয়েছে এর মধ্যে PHP, ColdFusion, Python, Ruby, ASP.NET, Java EE ইত্যাদি রয়েছে। আমার কাছে কেউ সাজেশন চাইলে আমি বলব এগুলোর মধ্যে PHP টা শিখতে। কারন PHP টা বর্তমানে বেশ জনপ্রিয় ও এর মাধ্যমে অনেক সুন্দর সুন্দর ডায়নামিক ওয়েব সাইট বানানো যায়। তবে যারা নতুন তাদের ASP.NET, Java EE এই দুটো কাছেই যেতে না করব কারন এই দুটো অনেক কঠিন ও জটিল জিনিস। যেমন আপনি যদি ASP.NET শিখতে চান তবে আপনাকে সি ল্যাঙ্গুয়েজ ও ভিজুয়াল ব্যাসিক সম্পর্কে বেশ ভাল ধারনা থাকতে হবে।
JavaScript জানুন
ওয়েব সাইটকে ডায়নামিক করে গড়ে তুলতে JavaScript এর বেশ প্রয়োজন পরবে। এটি একটি স্ক্রিপ্টিং ল্যাঙ্গুয়েজ। বেশ কঠিন একটি জিনিস। এটা ভাল ভাবে শিখতে পারলে বেশ অনেক কাজে দিবে। কঠিন ও সময় সাপেক্ষ বলে যারা শিখতে ইচ্ছুক না তাদের জন্য বলব শিখার কোন দরকার নেই। শুধু স্ক্রিপ্টগুলো বা কোডগুলো কি ভাবে ব্যবহার করতে হয় এটা শিখুন তাহলেই হবে। কাজের সুবিধা মত গুগলে সার্চ দিলে অনেক অনেক রেডি স্ক্রিপ্ট পাবেন। জাভাস্ক্রিপ্ট এর কিছু ফ্রেমওয়ার্ক আছে এগুলো সমন্ধে জানুন। আমার কাছে MooTools, jQuery ফ্রেমওয়ার্ক ভাল লাগে। এছাড়া সম্ভবত আরও অনেক ফ্রেমওয়ার্ক আছে।
SQL শিখুন
ডায়নামিক ওয়েব সাইট বানাতে হলে অবশ্যই ডাটাবেজ সম্পর্কে জানতে হবে। অনেক ধরনের ডাটাবেজ ইঞ্জিন রয়েছে কিন্তু SQL টা বেশীর ভাগ মানুষ ব্যবহার করে ও বুঝে। তাই এটাই শিখাটা ভাল।
ওয়েব সার্ভার সম্পর্কে ধারনা নিন
ওয়েব সার্ভার সম্পর্কে তেমন বেশি জানা লাগবে না। হালকা পাতলা জানলেই হবে। যেমন ফাইল আপলোড করা, সাব ডোমেইন তৈরি করা, ইমেইল কনফিগার করা ইত্যাদি... ইত্যাদি...
ওয়েব ফ্রেমওয়ার্ক ব্যবহার করা শিখুন
আপনি সব কিছু শিখলেন HTML, CSS, JavaScript, PHP ইত্যাদি। কিন্তু এগুলোকে Raw Materials হিসাবে নিয়ে কাজ করতে অনেক অনেক সময় লাগবে। অনেক ঝেমেলা পোহাতে হবে। তাই সময় বাঁচানোর জন্য ও কাজের সুবিধার্থে ওয়েব ফ্রেমওয়ার্ক ব্যবহার করতে হবে। যেমন আপনি যদি PHP ভাল পারেন তবে আপনি CakePHP, CodeIgniter, Zend ইত্যাদি ফ্রেমওয়ার্ক ব্যবহার করতে পারেন বা আপনি যদি Python ভাল জানেন তবে Django, webpy ও Ruby এর জন্য RoR ফ্রেমওয়ার্ক ব্যবহার করতে পারেন।
বিভিন্ন CMS ব্যবহার করা শিখুন
অনেক ধরনের শক্তিশালী CMS রয়েছে যেগুলো ফ্রি তে পাওয়া যায়। যেমন WordPress, Joomla, Drupal ইত্যাদি। এগুলোর যেকোনো একটিতে এক্সপার্ট হন। এগুলো আপনাকে খুব দ্রুত ও সহজে বিভিন্ন ধরনের ওয়েব সাইট করতে সাহায্য করবে। আমার কাছে সাজেশন চাইলে আমি বল WordPress টা শিখুন। এটা বেশ শক্তিশালী একটি CMS। খুব সহজে ওয়েব সাইট ডেভলপ করা যায় এটা দিয়ে।
ওয়েব সিকিউরিটি সম্পর্কে জানুন
বর্তমানে যে হারে হ্যাকিং বারতেছে। একটি ওয়েব সাইট ডেভলপ করার সাথে সাথে সিকিউরিটির ব্যবস্থা করতে হয়। প্লাটফর্ম যেটাই হোক সিকিউরিটি সবার আগে দিতে হবে। না হলে ডাটাবেজ চুরি থেকে শুরু করে অনেক ক্ষতি হতে পারে। তাই একজন এক্সপার্ট ওয়েব ডেভলপারকে অবশ্যই ওয়েব সিকিউরিটি সম্পর্কে জানতে হবে।
উপরুক্ত জিনিস গুলো ছারাও একজন এক্সপার্ট ওয়েব ডেভলপারকে আরও কিছু অতিরিক্ত জিনিস জানতে হয়। তার মধ্যে রয়েছেঃ বিভিন্ন ডেভলপমেন্ট সহায়ক টুলস, বাগ ট্র্যাকিং সিস্টেম, লিনেক্স কমান্ড, সাবভার্সন, অ্যাজাক্স ইত্যাদি।
কিভাবে বা কোথায় থেকে শিখব ???
যাক মোটামুটি অনেক কথা জানা হল ওয়েব ডেভলপমেন্ট সম্পর্কে। এখন কথা হল কোথায় থেকে শিখব ??? কেমনে শিখব ??? সবাইকে গাইড লাইন দেবার পর এই একই প্রশ্ন করে। তো আসুন এই ব্যাপারে কিছু জানি। এটা সম্পূর্ণ আমার বাক্তিগত মতামত তাই কারো মতের সাথে দ্বিমত হলে আমার করার কিছু নেই। প্রথমেই বলি ট্রেনিং সেন্টার নামক ব্যবসায়িক প্রতিষ্ঠান থেকে দূরে থাকুন। গলা কেটে নিবে ঠিকই কিন্তু কাজের জিনিস সব শিখাবে না। কিছু কিছু প্রতিষ্ঠান আছে ভাল তবে খুজে পাওয়া মুশকিল। সর্ব প্রধান কাজ হল নিজের মধ্যে আগ্রহ তৈরি করা। এরপর এই লাইনে এক্সপার্ট একজন মানুষের পরামর্শ মত প্রতি ধাপে ধাপে আগানো। কোন ট্রেনিং সেন্টার শিখলে সেটার পাশাপাশি নিজে নিজে প্রচুর প্র্যাকটিস করেন আর গুগলকে কাজে লাগান। যেই বিষয় যখনই কোন সমস্যা মনে হবে তখনই ট্রেনিং সেন্টারের আশার ফেলে না রেখে গুগলে সার্চ দিয়ে বিষয়টা জেনে নিবেন। ওই ট্রেনিং সেন্টার আপনাকে যা শিখাবে তার চেয়ে ভাল শিখতে পারবেন যদি আপনি গুগলকে কাজে লাগাতে পারেন। তবে নিজে নিজে শিখাটা অনেক কঠিন একটা ব্যাপার হয়ে দাঁড়ায়। তাই কোন ট্রেনিং সেন্টার বা এক্সপার্ট কারো সান্নিধ্যে যেতে হয়। সেই ক্ষেত্রে একটু সতর্ক থাকবেন। অর্থাৎ...
এক্সপার্ট হলেই যে ভাল শিখাতে পারবে এমন কোন কথা নেই। অনেকে আছে যারা নিজেরা নিজে অনেক ভাল পারে কিন্তু অন্যকে শিখাতে পারেনা।
অনেকে আছে ভাল শিখায় কিন্তু ব্যবহারগত ভাবে সেটা কাজে লাগানো শিখাতে পারে না।
কিছু ট্রেনিং সেন্টার কাজের জিনিসের চেয়ে অকাজের জিনিসের দিকে বেশি গুরুত্ব দেয়।
কিছু ট্রেনিং সেন্টার আছে যারা শিখায় ১০ টাকার জিনিস কিন্তু বিনিময়ে নেয় ২০ টাকা।
এমন কিছু জিনিস আছে যা দেখে বুঝে ট্রেনিং সেন্টার বা এক্সপার্টদের সান্নিধ্যে যাবেন।
কিছু এক্সট্রা উপদেশ বাক্যঃ
শিখার ক্ষেত্রে অবশ্যই ধৈর্য সহকারে শিখতে হবে। আস্তে আস্তে সামনে আগাতে হবে।
মাঝ পথে বা অর্ধেক শিখে বাকি টুকু বাদ রাখবেন না। একটার পর একটা ধীরে ধীরে আয়ত্বে আনার চেষ্টা করবেন।
কোন সমস্যার সম্মুখীন হলে গুগল সার্চ আর সাহায্য নিবেন। আর প্রথম দিকে শিখার সময় প্রচুর সময় দিবেন।
এক সাথে সব শিখার চেষ্টা করবেন না। একটি একটি করে ধীরে ধীরে শিখবেন।
শিখার পাশাপাশি নিয়মিত প্র্যাকটিস করবেন। প্র্যাকটিসের উদ্দেশ্যে প্রয়োজন বোধে অন্যকে ফ্রিতে সাইট ডেভলপ করে দিবেন। এতে প্র্যাকটিসের পাশাপাশি সুনামও বাড়বে।
শিখা শেষ হয়ে গেলেও নিয়মিত প্রাসঙ্গিক বিষয় গুলোর আপডেট খবর রাখবেন।
শেষ কথা
নিজে যতই পারেন না কেন সেটা নিয়ে অহংকার করবেন না। “অহংকার পতনের মূল” যথা সম্ভব চেষ্টা করবেন অন্যকে সাহায্য করতে। অন্যকে টুকটাক সাহায্য নিয়মিত করার চেষ্টা করবেন এতে অন্যকে সাহায্য করতে গিয়ে নিজেও অনেক কিছু শিখতে পারবেন।
একটি মন্তব্য পোস্ট করুন