গত দুই বছর ধরে, Work & Co-এ আমার টিম এবং আমি জনসাধারণের দ্বারা ব্যবহৃত ওয়েব অভিজ্ঞতাগুলি পাঠাতে আমাদের সাহায্য করার জন্য Copilot, Cursor, Claude, এবং ChatGPT-এর মতো AI কোডিং টুলগুলিকে পরীক্ষা করছি এবং ধীরে ধীরে একীভূত করছি। অবশ্যই, কিছু প্রাথমিক সংশয়বাদ এবং কয়েক আহা মুহুর্তের পরে, বিভিন্ন এআই সরঞ্জামগুলি আমার দৈনন্দিন ব্যবহারে তাদের পথ খুঁজে পেয়েছে। সময়ের সাথে সাথে, অ্যাপ্লিকেশনগুলির তালিকা যেখানে আমরা বুঝতে পেরেছি যে AI কে দখলে নেওয়ার অর্থ বাড়তে শুরু করেছে, তাই আমি সিদ্ধান্ত নিয়েছি যে আমি "দায়িত্বশীল বিকাশকারী" বলি তার জন্য AI সরঞ্জামগুলির জন্য কিছু ব্যবহারিক ব্যবহারের ক্ষেত্রে শেয়ার করব। একজন দায়িত্বশীল বিকাশকারী বলতে আমি কী বুঝি? আমাদের নিশ্চিত করতে হবে যে আমরা আমাদের স্টেকহোল্ডার এবং ক্লায়েন্টদের দ্বারা প্রত্যাশিত মানের কোড সরবরাহ করি। আমাদের অবদান (অর্থাৎ, টান অনুরোধ) আমাদের সহকর্মীদের উপর বোঝা হয়ে যাবে না যাদের আমাদের কাজ পর্যালোচনা এবং পরীক্ষা করতে হবে। এছাড়াও, যদি আপনি একটি কোম্পানির জন্য কাজ করেন: আমরা যে সরঞ্জামগুলি ব্যবহার করি তা আমাদের নিয়োগকর্তার দ্বারা অনুমোদিত হতে হবে। সুরক্ষা এবং গোপনীয়তার মতো সংবেদনশীল দিকগুলি সঠিকভাবে পরিচালনা করা প্রয়োজন: নীতি অনুমোদন ছাড়া গোপনীয়তা, গ্রাহক ডেটা (PII), বা মালিকানাধীন কোডগুলিকে টুলগুলিতে পেস্ট করবেন না৷ এটিকে ইন্টারনেটে অপরিচিত ব্যক্তির কোডের মতো বিবেচনা করুন। সর্বদা পরীক্ষা এবং যাচাই. দ্রষ্টব্য: এই নিবন্ধটি AI কোডিং সরঞ্জামগুলির সাথে কিছু খুব প্রাথমিক পরিচিতি অনুমান করে যেমন VSCode বা কার্সরের ভিতরে Copilot। যদি এই সবগুলি আপনার কাছে সম্পূর্ণ নতুন এবং অপরিচিত মনে হয়, Github Copilot ভিডিও টিউটোরিয়ালগুলি আপনার জন্য একটি দুর্দান্ত শুরু হতে পারে।

এআই কোডিং টুলের সহায়ক অ্যাপ্লিকেশন দ্রষ্টব্য: নিম্নলিখিত উদাহরণগুলি প্রধানত জাভাস্ক্রিপ্ট-ভিত্তিক ওয়েব অ্যাপ্লিকেশন যেমন React, Vue, Svelte, বা Angular এ কাজ করার উপর ফোকাস করবে। একটি অপরিচিত কোডবেস সম্পর্কে বোঝা প্রতিষ্ঠিত কোডবেসগুলিতে কাজ করা অস্বাভাবিক নয় এবং একটি বৃহৎ উত্তরাধিকার কোডবেসে যোগদান ভীতিজনক হতে পারে। শুধু আপনার প্রজেক্ট এবং আপনার AI এজেন্ট খুলুন (আমার ক্ষেত্রে, VSCode-এ কপিলট চ্যাট) এবং আপনি একজন সহকর্মীকে যেভাবে প্রশ্ন করবেন ঠিক সেভাবে প্রশ্ন করা শুরু করুন। সাধারণভাবে, আমি যেকোন এআই এজেন্টের সাথে কথা বলতে পছন্দ করি ঠিক যেমনটা আমি একজন সহকর্মীর সাথে করি। এখানে একটি আরো পরিমার্জিত উদাহরণ প্রম্পট: "আমাকে একটি উচ্চ-স্তরের আর্কিটেকচার ওভারভিউ দিন: এন্ট্রিপয়েন্ট, রাউটিং, প্রমাণীকরণ, ডেটা লেয়ার, বিল্ড টুলিং। তারপরে 5টি ফাইল ক্রমানুসারে পড়ার জন্য তালিকাভুক্ত করুন। ব্যাখ্যাগুলিকে অনুমান হিসাবে বিবেচনা করুন এবং উল্লেখিত ফাইলগুলিতে ঝাঁপ দিয়ে নিশ্চিত করুন।"

আপনি ফলো-আপ প্রশ্ন জিজ্ঞাসা করতে পারেন যেমন "রাউটিং বিস্তারিতভাবে কীভাবে কাজ করে?" অথবা "প্রমাণিকরণ প্রক্রিয়া এবং পদ্ধতির মাধ্যমে আমার সাথে কথা বলুন" এবং এটি আপনাকে একটি অপরিচিত কোডবেসের অন্ধকারে কিছু আলোকিত করার জন্য সহায়ক দিকনির্দেশের দিকে নিয়ে যাবে। নির্ভরতা আপগ্রেড করার সময় ট্রাইএজিং ব্রেকিং পরিবর্তন npm প্যাকেজ আপডেট করা, বিশেষ করে যখন সেগুলি ব্রেকিং পরিবর্তনের সাথে আসে, ক্লান্তিকর এবং সময়সাপেক্ষ কাজ হতে পারে এবং আপনাকে মোটামুটি রিগ্রেশন ডিবাগ করতে বাধ্য করে। আমাকে সম্প্রতি ডেটা ভিজ্যুয়ালাইজেশন লাইব্রেরি plotly.js আপগ্রেড করতে হয়েছিল সংস্করণ 2 থেকে 3 পর্যন্ত একটি বড় রিলিজ সংস্করণ, এবং এর ফলস্বরূপ, কিছু গ্রাফে অক্ষ লেবেল কাজ করা বন্ধ করে দিয়েছে। আমি ChatGPT কে জিজ্ঞাসা করতে গেলাম: "আমি আমার কৌণিক প্রকল্প আপডেট করেছি যা প্লটলি ব্যবহার করে। আমি plotly.js — ডিস্ট প্যাকেজ সংস্করণ 2.35.2 থেকে 3.1.0 পর্যন্ত আপডেট করেছি — এবং এখন x এবং y অক্ষের লেবেলগুলি চলে গেছে। কী হয়েছে?"

এজেন্ট অবিলম্বে একটি সমাধান নিয়ে ফিরে এসেছিল (নিচে নিজের জন্য দেখুন)। দ্রষ্টব্য: আমি এখনও ফিক্স পাঠানোর আগে অফিসিয়াল মাইগ্রেশন গাইডের বিরুদ্ধে ব্যাখ্যা যাচাই করেছি।

ফাইল জুড়ে নিরাপদে রিফ্যাক্টর প্রতিলিপি করা ক্রমবর্ধমান কোডবেসগুলি অবশ্যই কোড একত্রীকরণের সুযোগ উন্মোচন করে। উদাহরণস্বরূপ, আপনি ফাইল জুড়ে কোড ডুপ্লিকেশন লক্ষ্য করেন যা একটি একক ফাংশন বা উপাদানে বের করা যেতে পারে। ফলস্বরূপ, আপনি একটি ভাগ করা উপাদান তৈরি করার সিদ্ধান্ত নেন যা পরিবর্তে অন্তর্ভুক্ত করা যেতে পারে এবং একটি ফাইলে সেই রিফ্যাক্টরটি সম্পাদন করতে পারে। এখন, আপনার অবশিষ্ট ফাইলগুলিতে সেই পরিবর্তনগুলি ম্যানুয়ালি করার পরিবর্তে, আপনি আপনার এজেন্টকে আপনার জন্য রিফ্যাক্টরটি রোল আউট করতে বলুন। এজেন্ট আপনাকে প্রসঙ্গ হিসাবে একাধিক ফাইল নির্বাচন করতে দেয়। একবার একটি ফাইলের জন্য রিফ্যাক্টর হয়ে গেলে, আমি প্রেক্ষাপটে রিফ্যাক্টর করা এবং অপরিবর্তিত ফাইল উভয়ই যোগ করতে পারি এবং এজেন্টকে অন্যান্য ফাইলে এই ধরনের পরিবর্তনগুলি রোল আউট করার জন্য অনুরোধ করতে পারি: "আমি ফাইল A-তে যে পরিবর্তনগুলি করেছি তা B ফাইলেও প্রতিলিপি করুন"। অপরিচিত প্রযুক্তিতে বৈশিষ্ট্য বাস্তবায়ন AI কোডিং টুল ব্যবহার করে আমার প্রিয় আহা-মুহূর্তগুলির মধ্যে একটি ছিল যখন এটি আমাকে GLSL-এ বেশ জটিল অ্যানিমেটেড গ্রেডিয়েন্ট অ্যানিমেশন তৈরি করতে সাহায্য করেছিল, এমন একটি ভাষা যার সাথে আমি মোটামুটি অপরিচিত ছিলাম। একটি সাম্প্রতিক প্রকল্পে, আমাদের ডিজাইনাররা একটি 3D অবজেক্টে লোডিং স্টেট হিসাবে একটি অ্যানিমেটেড গ্রেডিয়েন্ট নিয়ে এসেছেন৷ আমি সত্যিই ধারণাটি পছন্দ করেছি এবং আমাদের ক্লায়েন্টদের কাছে অনন্য এবং উত্তেজনাপূর্ণ কিছু সরবরাহ করতে চেয়েছিলাম। দসমস্যা: এটি বাস্তবায়ন করার জন্য আমার কাছে মাত্র দুই দিন ছিল এবং GLSL-এর বেশ খাড়া শেখার বক্ররেখা রয়েছে। আবার, একটি AI টুল (এই ক্ষেত্রে, ChatGPT) কাজে এসেছে, এবং আমি এটিকে আমার জন্য একটি স্বতন্ত্র HTML ফাইল তৈরি করার জন্য সহজভাবে অনুরোধ করা শুরু করেছি যা একটি ক্যানভাস এবং একটি খুব সাধারণ অ্যানিমেটেড কালার গ্রেডিয়েন্ট রেন্ডার করে। ধাপে ধাপে, আমি একটি শালীন ফলাফলে না আসা পর্যন্ত আমি AI কে এতে আরও সূক্ষ্মতা যোগ করার জন্য অনুরোধ করেছি যাতে আমি আমার আসল কোডবেসে শেডারকে একীভূত করা শুরু করতে পারি। শেষ ফলাফল: আমাদের ক্লায়েন্টরা খুব খুশি ছিল, এবং আমরা AI কে ধন্যবাদ অল্প সময়ের মধ্যে একটি জটিল বৈশিষ্ট্য সরবরাহ করেছি। লেখার পরীক্ষা আমার অভিজ্ঞতায়, ইউনিট এবং ইন্টিগ্রেশন পরীক্ষার একটি সঠিক স্যুট ক্রমাগত লিখতে এবং বজায় রাখার জন্য প্রকল্পগুলিতে খুব কমই পর্যাপ্ত সময় রয়েছে এবং তার উপরে, অনেক বিকাশকারী পরীক্ষা লেখার কাজটি সত্যিই উপভোগ করেন না। আপনার AI সাহায্যকারীকে আপনার জন্য পরীক্ষা সেট আপ করতে এবং লিখতে অনুরোধ করা সম্পূর্ণরূপে সম্ভব এবং অল্প সময়ের মধ্যে করা যেতে পারে। অবশ্যই, একজন বিকাশকারী হিসাবে, আপনার এখনও নিশ্চিত হওয়া উচিত যে আপনার পরীক্ষাগুলি আসলে আপনার অ্যাপ্লিকেশনের গুরুত্বপূর্ণ অংশগুলির দিকে নজর দেয় এবং বুদ্ধিমান পরীক্ষার নীতিগুলি অনুসরণ করে, তবে আপনি আমাদের AI সাহায্যকারীর কাছে পরীক্ষার লেখা "আউটসোর্স" করতে পারেন। উদাহরণ প্রম্পট: "জেস্ট ব্যবহার করে এই ফাংশনের জন্য ইউনিট পরীক্ষা লিখুন। সুখী পথ, প্রান্তের ক্ষেত্রে এবং ব্যর্থতার মোডগুলি কভার করুন। কেন প্রতিটি পরীক্ষা বিদ্যমান তা ব্যাখ্যা করুন।"

এমনকি আপনি আপনার এজেন্টকে নির্দেশিকা হিসাবে টেস্টিং গুরু কেন্ট সি. ডডসের পরীক্ষার সেরা অনুশীলনগুলিও পাস করতে পারেন, যেমন নীচে:

অভ্যন্তরীণ টুলিং পূর্বে উল্লিখিত শেডার উদাহরণের কিছুটা অনুরূপ, আমাকে সম্প্রতি একটি কোডবেসে কোড সদৃশ বিশ্লেষণ করার এবং একটি রিফ্যাক্টরের আগে এবং পরে তুলনা করার দায়িত্ব দেওয়া হয়েছিল। আপনি যদি ম্যানুয়ালি ফাইলগুলি তুলনা করার সময়-সাপেক্ষ রুটে যেতে না চান তবে অবশ্যই একটি তুচ্ছ কাজ নয়। Copilot-এর সাহায্যে, আমি একটি স্ক্রিপ্ট তৈরি করেছি যা আমার জন্য কোড ডুপ্লিকেশন বিশ্লেষণ করে, একটি টেবিলে আউটপুট সাজিয়ে এবং অর্ডার করে এবং এটি এক্সেলে রপ্তানি করে। তারপর আমি এটা আরো একধাপ এগিয়ে নিলাম. আমাদের কোড রিফ্যাক্টর হয়ে গেলে, আমি এজেন্টকে আমার বিদ্যমান এক্সেল শীটটিকে বেসলাইন হিসাবে নিতে, আলাদা কলামে সদৃশ বর্তমান অবস্থায় যোগ করতে এবং ডেল্টা গণনা করতে বলেছিলাম। অনেক দিন আগে লেখা কোড আপডেট করা হচ্ছে সম্প্রতি, আমার একজন পুরানো ক্লায়েন্ট আমাকে আঘাত করেছিল, সময়ের সাথে সাথে, কিছু বৈশিষ্ট্য তার ওয়েবসাইটে আর সঠিকভাবে কাজ করছে না। ক্যাচ: ওয়েবসাইটটি প্রায় দশ বছর আগে তৈরি করা হয়েছিল, এবং JavaScript এবং SCSS প্রয়োজন জেএস-এর মতো পুরানো কম্পাইল টুল ব্যবহার করছে এবং সেটআপের জন্য Node.js-এর একটি পুরানো সংস্করণ প্রয়োজন যা আমার 2025 ম্যাকবুকেও চলবে না। সম্পূর্ণ বিল্ড প্রক্রিয়াটি হাতে করে আপডেট করতে আমার অনেক দিন লেগে যেত, তাই আমি AI এজেন্টকে অনুরোধ করার সিদ্ধান্ত নিয়েছি, "আপনি কি JS এবং SCSS বিল্ড প্রক্রিয়াটিকে Vite-এর মতো একটি লীন 2025 স্ট্যাকে আপডেট করতে পারেন?" এটা নিশ্চিত, এবং এজেন্টের সাথে প্রায় এক ঘন্টা পরিমার্জন করার পরে, আমি আমার SCSS এবং JS বিল্ডকে Vite-এ স্যুইচ করেছি এবং আমি প্রকৃত বাগ ফিক্সিং-এ ফোকাস করতে সক্ষম হয়েছি। আপনার বিল্ড প্রক্রিয়াতে এই ধরনের অবিচ্ছেদ্য পরিবর্তন করার সময় আউটপুট এবং কম্পাইল করা ফাইলগুলি সঠিকভাবে যাচাই করা নিশ্চিত করুন। সারসংক্ষেপ এবং খসড়া আপনি একটি প্রতিশ্রুতি বার্তার জন্য একটি বাক্যে আপনার সমস্ত সাম্প্রতিক কোড পরিবর্তনগুলিকে সংক্ষিপ্ত করতে চান বা কমিটগুলির একটি দীর্ঘ তালিকা রাখতে চান এবং সেগুলি তিনটি বুলেট পয়েন্টে যোগ করতে চান? কোন সমস্যা নেই, AI কে এটির যত্ন নিতে দিন, কিন্তু দয়া করে এটি প্রুফরিড করতে ভুলবেন না। একটি উদাহরণ প্রম্পট একজন সহমানবকে বার্তা পাঠানোর মতোই সহজ: "অনুগ্রহ করে সংক্ষিপ্ত বুলেট পয়েন্টগুলিতে আমার সাম্প্রতিক পরিবর্তনগুলি যোগ করুন"৷ এখানে আমার পরামর্শ হবে সতর্কতার সাথে লেখার জন্য GPT ব্যবহার করা, এবং কোডের মতো, প্রেরণ বা জমা দেওয়ার আগে অনুগ্রহ করে আউটপুট চেক করুন। সুপারিশ এবং সর্বোত্তম অভ্যাস প্রম্পটিং AI ব্যবহার করার একটি অপ্রকাশ্য সুবিধা হল যে আপনার প্রম্পটগুলি যত বেশি নির্দিষ্ট এবং মানানসই হবে তত ভাল আউটপুট। একটি AI এজেন্টকে প্রম্পট করার প্রক্রিয়াটি আমরা লিখতে এবং কোড করার আগে আমাদের প্রয়োজনীয়তাগুলি যথাসম্ভব নির্দিষ্টভাবে তৈরি করতে বাধ্য করে। এই কারণেই, একটি সাধারণ নিয়ম হিসাবে, আমি আপনার প্রম্পটিংয়ের সাথে যতটা সম্ভব নির্দিষ্ট হওয়ার পরামর্শ দিই। রায়ান ফ্লোরেন্স, রিমিক্সের সহ-লেখক, বাক্যটির সাথে আপনার প্রাথমিক প্রম্পটটি শেষ করে এই প্রক্রিয়াটিকে উন্নত করার একটি সহজ কিন্তু শক্তিশালী উপায় প্রস্তাব করেছেন: "আমরা শুরু করার আগে, আমার জন্য আপনার কোন প্রশ্ন আছে?"

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

সংস্করণ নিয়ন্ত্রণ ব্যবহার করুন এবং হজমযোগ্য অংশে কাজ করুন গিটের মতো সংস্করণ নিয়ন্ত্রণ ব্যবহার করা শুধুমাত্র একটি কোডবেসে একটি দল হিসাবে সহযোগিতা করার সময়ই কাজে আসে না বরং আপনাকে একটি হিসাবে সরবরাহ করতেওস্থিতিশীল পয়েন্ট সহ স্বতন্ত্র অবদানকারী জরুরী পরিস্থিতিতে ফিরে যেতে। এর অ-নিয়ন্ত্রক প্রকৃতির কারণে, AI কখনও কখনও দুর্বৃত্ত হতে পারে এবং এমন পরিবর্তন করতে পারে যা আপনি যা অর্জন করার চেষ্টা করছেন তার জন্য সহায়ক নয় এবং অবশেষে জিনিসগুলি অপূরণীয়ভাবে ভেঙে ফেলতে পারে। আপনার কাজকে একাধিক প্রতিশ্রুতিতে বিভক্ত করা আপনাকে স্থিতিশীল পয়েন্ট তৈরি করতে সহায়তা করবে যেগুলি যদি আপনি এদিক-ওদিক হয়ে যায় তবে আপনি ফিরে যেতে পারেন। এবং আপনার সতীর্থরাও আপনাকে ধন্যবাদ জানাবে, কারণ আপনার কোডটি যখন শব্দার্থগতভাবে ভাল-গঠিত অংশে বিভক্ত হয় তখন তাদের পর্যালোচনা করতে তাদের আরও সহজ সময় হবে। পুঙ্খানুপুঙ্খভাবে পর্যালোচনা এটি একটি সাধারণ সর্বোত্তম অনুশীলন, কিন্তু আমার মতে, উন্নয়ন কাজের জন্য AI সরঞ্জামগুলি ব্যবহার করার সময় এটি আরও বেশি গুরুত্বপূর্ণ হয়ে ওঠে: আপনার কোডের প্রথম সমালোচনামূলক পর্যালোচক হন। আপনার পরিবর্তনের লাইনে লাইনে যেতে কিছু সময় নেওয়ার বিষয়টি নিশ্চিত করুন, ঠিক যেমন আপনি অন্য কারো কোড পর্যালোচনা করবেন এবং আপনার নিজের স্ব-পর্যালোচনা পাস করার পরেই আপনার কাজ জমা দেবেন। "দুটি জিনিস এই মুহূর্তে আমার কাছে সত্য: এআই এজেন্টগুলি আশ্চর্যজনক এবং একটি বিশাল উত্পাদনশীলতা বৃদ্ধি করে৷ আপনি যদি আপনার মস্তিষ্ক বন্ধ করে দেন এবং পুরোপুরি ছেড়ে দেন তবে এগুলিও বিশাল স্লপ মেশিন৷ "- আরমিন রোনাচার তার ব্লগ পোস্ট এজেন্ট সাইকোসিস: আমরা কি পাগল হয়ে যাচ্ছি?

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

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

You May Also Like

Enjoyed This Article?

Get weekly tips on growing your audience and monetizing your content — straight to your inbox.

No spam. Join 138,000+ creators. Unsubscribe anytime.

Create Your Free Bio Page

Join 138,000+ creators on Seemless.

Get Started Free