চৌদ্দ সপ্তাহে জুনিয়র ওয়েব ডেভেলপার হওয়ার রুটিন।
নিচের রুটিনটা সপ্তাহ আকারে দেয়া আছে। আর ডেইলি টাস্ক এর বিস্তারিত রুটিন দেখতে চাইলে web . programming-hero .com এ গিয়ে পেইজের মাঝামাঝি পর্যন্ত স্ক্রল করে দেখে ফেলো।
এই রুটিন চৌদ্দ সপ্তাহে ফিনিশ করতে হলে তোমাকে প্রতিদিন সলিড ৬-৮ ঘন্টা সময় মাস্ট দিতে হবে। মাঝে মধ্যে দরকার হলে সময় আরেকটু বাড়িয়ে দিতে হবে। আর 'মিনমিন' করা পাবলিকরা বা একদিন হেলেদুলে চিমটি কেঁটে সাতদিন মলম লাগানো পাবলিকরা "সপ্তাহ"কে "মাস" দিয়ে রিপ্লেস করে নিও।
প্রথম সপ্তাহ:
প্রথমেই Web development বা website এর হাড্ডিগুড্ডি অর্থাৎ Html এর বেসিক কিছু tag যেমন p, a, body, html, div, em, h1, h2, h3, h4, h5, h6, head, img, input, li, ul, ol, span, strong, ইত্যাদি ধরে ধরে শিখতে হবে। তারপর সিমিলার স্টাইলে CSS এর স্টাইল রুলগুলা যেমন height, width, color, border, background, font-size, font-family, margin, padding, overflow, position, text-align, display, ইত্যাদি
দিয়ে ওয়েবসাইটের রূপ লাবণ্য বাড়িয়ে দেয়ার সিস্টেম ট্রাই করতে হবে। পরের দিন গিট্টু পাকাইতে বসে যাবে। গিট্টু পাকানোর জন্য গিট বা গিটহাব এ কিভাবে কোড রাখে, রিপোজিটরি খুলে, কোড পুশ করে সেগুলা জানা। এরপর HTML, CSS দিয়ে ফকির হলেও একটা ওয়েবসাইট বানিয়ে ফেলো। এবং সেটাকে গিটহাব পেইজেস এ হোস্ট করে ফেলো।
আর হ্যাঁ, এইগুলা শুরু করার আগে ভিজ্যুয়াল ষ্টুডিও কোড আর নোড তোমার কম্পিউটারে ইন্স্টল্ করে নিও।
.
দ্বিতীয় সপ্তাহ:
এই সপ্তাহে তোমার কাজ হবে। ওয়েব সাইটের লেটেস্ট হাড্ডিগুড্ডি এর ক্যালসিয়াম বাড়ানো। অর্থাৎ HTML5 এর audio, video, aside, section, article, nav, header, footer ইত্যাদি ট্যাগগুলো দেখা। এর পাশাপাশি ওয়েবসাইট এ Form কিভাবে বানায়, টেবিল কিভাবে বানায় এইগুলা দেখা। এরপর তোমার কাজ হবে css3 রিলেটেড কিছু জিনিস দেখা। যার মধ্যে আছে box-shadow, transition, transform, flexbox, grid layout, ইত্যাদি। এই সপ্তাহ শেষ করতে গেলে তোমাকে bootstrap শিখতে হবে। এবং সেটা ডকুমেন্টটেশন দেখে হোক বা ভিডিও দেখে হোক। শেখার চেষ্টা করবা, তারপর Responsive একটা ওয়েবসাইট বানানোর চেষ্টা করবা।
.
তৃতীয় সপ্তাহঃ
এইবার শুরু হবে আসল খেলা। প্রথমে খুবই সিম্পলভাবে JavaScript এ পঞ্চরত্ন অথাৎ variable, condition, Array, Loop আর function সম্পর্কে জানবা। তারপর সিম্পল হলেও কিছু problem solving করতে হবে। একদম problem solving এর যদি ওস্তাদ হয়ে যেতে পারো তাহলে খুবই ভালো, না হলেও মিনিনাম তোমাকে তিনটা সংখ্যা থেকে বড় সংখ্যা বা কোন একটা array সেখান থেকে সব চেয়ে ছোট সংখ্যা বের করবে এমন টাইপের কিছু problem solving করবে। এরপর prime number, string reverse, factorial, Fibonacci সিরিজের মতো কিছু জিনিস শিখে ফেলবে। আবার iterative এবং recursive এই দুই সিস্টেম নিয়েও একটু ধারণা নিয়ে রাখবে।
.
চার নাম্বার সপ্তাহঃ
এই উইক একটু রিলাক্সের। তাই সপ্তাহের একদম শুরুতে ওয়েবসাইটের ভিতরের আত্মা নিয়ে টান দিবা। যাতে ওয়েবসাইট এর দম বের হয়ে যায়। তো দম মানে DOM । এই DOM নিয়ে কাজ করতে গেলে কোন একটা টেক্সটবক্সে কি value আছে সেটা কিভাবে বের করা যাবে। দরকার পরলে ভ্যালু চেইঞ্জ করে দিবা। কোথাও মাউস দিয়ে ক্লিক করলে সেই ক্লিক এর মোক্ষম জবাব হিসেবে event টাকে হ্যান্ডেল করে ফেলবে। এবং ওয়েবসাইট এ ইন্টারেক্টিভ একটা ফিল নিয়ে আসতে পারবে। এই ইন্টারাক্টিভ ফিল নিয়ে দুই একটা প্রজেক্ট করে ফেলবে।
এই সপ্তাহের শেষে একদিন বা দুইদিন সময় নিয়ে। লাষ্ট চার সপ্তাহের রিভিশন দিয়ে দিবে।
.
পাঁচ নাম্বার সপ্তাহ:
এই সপ্তাহে তোমার কাজ ওয়েবসাইটকে ফকির হলেও ডাইনামিক একটা ফিল দেয়া। তোমার নিজের গুদাম খালি হলেও আরেকজনের গুদামের জিনিস API নামক একটা জিনিস দিয়ে টেনে এনে ওয়েবসাইট এ দেখানো। সেটা হতে পারে json placeholder বা অন্য কোন API দিয়ে ডাটা এনে website দেখাতে পারো সেই রিলেটেড দুই তিনটা project করো। আবার ওয়েবসাইট এ ডাটা সার্চ দেয়া যায় এমন কিছু ফাংশনালিটি ইমপ্লিমেন্ট করো। যখন ডাটা লোড হতে থাকবে তখন একটা spinner দেখাবে। সেই লেভেলের মজা হবে।
.
সপ্তাহ নাম্বার ছয়:
প্রথমেই ES৬ নামক কিছু জিনিস আছে সেগুলা দেখতে হবে। বিশেষ করে let, const, arrow function, default parameter, three dots, destructuring, ইত্যাদি। তারপর তুমি ওয়েব ডেভেলপার হও বা না হও। ব্রাউজার সম্পর্কে তোমাকে জানতেই হবে। আর ওয়েব ডেভেলপার হতে চাইলে তো আর কোন কথাই নাই। তাই তোমাকে প্রথমেই console, source ট্যাব সম্পর্কে জানতে হবে। তারপর network, elements আর Application ট্যাব নিয়েও আইডিয়া রাখতে হবে। তারপর ডিবাগ নামক একটা জিনিস আছে। সেটা হচ্ছে ওয়েবসাইট ঠিক মতো কাজ না করলে সেটার ভিতরে বাঘ-ভাল্লুক যা আছে সব শিকার করা। সেই শিকারী হতে হবে সপ্তাহ নাম্বার ৬ এ।
.
লাকি সেভেন। সপ্তাহ নাম্বার সাত:
গত দেড় মাসে যা যা শিখছো এগুলাকে একটু ঘসামাজা করতে হবে। রিভিশন এর উপর রাখবে হবে। নচেৎ জিনিসগুলা তোমার কাছ থেকে গায়েবুল হাওয়া হয়ে যাবে। বিশেষ করে জাভাস্ক্রিপ্টের জিনিসগুলো গুরিয়ে পেঁচিয়ে দেখতে হবে। Es6 এবং জাভাস্ক্রিপ্ট এর ট্রিকি কিছু কনসেপ্ট আছে সেগুলাতে সময় দিবে। তাহলে পরবর্তী স্টেপ এ কমফোর্ট ফিল করবে।
.
আট নম্বর সপ্তাহ:
এখন হবে আসল খেলা। JavaScript এর একটা framework বা library এর ভিতরে প্রবেশ করতে হবে। এক্ষেএে আমার রিকোমেন্ডেশন হচ্ছে React দিয়ে শুরু করো। তাই ফান্ডামেন্টাল কিছু কনসেপ্ট যেমন component জিনিসটা কি? এটা কিভাবে লিখে বা কিভাবে create react app দিয়ে নতুন একটা project শুরু করবা। এবং এই project এর ভিতরে তুমি যত component use করবা সেগুলাকে কিভাবে ডাটা পাঠাবা বা ডাইনামিকভাবে ডাটাকে আপডেট করবা এই জিনিসগুলা কিছুটা জানতে হবে। অবশ্যই React এর কিছু hook সম্পর্কে জানতে হবে। প্রথমেই একটা সিঙ্গেল পেইজ এপ্লিকেশন বানাতে হবে। কিভাবে API দিয়ে ডাইনামিক ডাটা লোড করবা। সেগুলা জানতে হবে।
.
সপ্তাহ নম্বর নয়:
সপ্তাহ নম্বর নয় এ এসে আর কোন নয়-ছয় করা যাবে না। React রাউটার (ওয়াইফাই রাউটার এর কাছাকাছি কিছু কিনা চেক করে দেখো) সেটা ইউজ করতে হবে। একাধিক পেজ এর সাথে স্টেট শেয়ার করার সিস্টেম জানতে হবে। একটু চার্ট কিভাবে বানায়। ছোটখাটো হলেও একটা ড্যাশবোর্ড ডেভেলপ করার চেষ্টা করতে হবে। এর পাশাপাশি আরেকটু state manage করতে গিয়ে তোমাকে Context api বা use reducer টাইপের জিনিসগুলা কিভাবে কাজ করে সেগুলা একটু চেখে দেখতে হবে।
.
দশ নম্বর সপ্তাহে:
দশ এ এসে সস দিয়ে Authentication সিস্টেম কিভাবে React এপ্লিকেশন এ ইন্টিগ্রেট করে সেটা জানতে হবে। এছাড়াও React এপ্লিকেশন কিভাবে হোস্টিং করে সেটাও জানতে হবে। তোমার ওয়েবসাইট google, ফেইসবুক, টুইটার বা গিটহাব দিয়ে কিভাবে লগইন করাবে সেটাও বুঝতে হবে। আরো কিছু দরকারি প্যাকেজ আছে। form হ্যান্ডেল করা, ইত্যাদি। সেগুলা দেখতে হবে।
.
সপ্তাহ নাম্বার এগার:
এইবার একটু স্ট্যাক এর নিচের দিকে নামাতে হবে। কিভাবে ফুলস্ট্যাক হওয়ার জন্য ব্যাকএন্ডের কিছু জিনিস জানবে। বিশেষ করে Node,
এবং Mongodb দিয়ে CRUD অপারেশন তোমাকে শিখতে হবে। প্লাস কিভাবে JWT টোকেন দিয়ে কোন একটা API কে সিকিউর করবে। সেটাও জানতে হবে।
.
সপ্তাহ নাম্বার বারো + সপ্তাহ নাম্বার তের:
এইবার তোমার কাজ হচ্ছে ফুলস্ট্যাক এপ্লিকেশন বানানো। এবং সেটাকে ডেপ্লয় করা। এই দুই সপ্তাহে মিনিমাম দুইটা ওয়েবসাইট বানাতেই হবে।
.
সপ্তাহ নাম্বার চৌদ্দ:
একজন developer বা একজন programmer হিসাবে কিছু programming এর fundamental কিছু জিনিস তোমাকে জানতেই হবে। তারমানে বেসিক কিছু হলেও data structure এবং বেসিক কিছু algorithm জানতে হবে। এর পাশাপাশি object oriented programming সম্পর্কে মোটামুটি হলেও ধারণা রাখতে হবে।
.
কিভাবে শিখবো?:
উপরের রুটিনটা নিজে নিজে ফিনিশ করতে পারলে বেষ্ট। তবে আমাদের মধ্যে কেউ কেউ আছে যারা লম্বা সময় লেগে থাকতে পারে না। বা প্রথম প্রথম আটকে গেলে গুগল থেকে সল্যুশন বের করতে পারে না। কিংবা কিভাবে তার স্কিলকে রিপ্রেজেন্ট করে জব বা ইন্টার্ন পাবে সেই গাইডলাইন ম্যানেজ করতে না তারা তখন কোন কোর্স বা গাইডেড লার্নিং এনভায়রনমেন্ট এর কথা চিন্তা করতে পারো। তবে নিজে নিজে শিখো বা অন্য কারো কাছে শিখো-- হার্ডওয়ার্ক তোমাকে করতেই হবে। সময় তোমাকে দিতেই হবে। একটা লম্বা সময় ওয়েব ডেভেলপমেন্ট এর পিছনে লেগে তোমাকে থাকতেই হবে।
0 Comments