നിങ്ങളുടെ ദൈനംദിന ഡെവലപ്‌മെന്റ് വർക്ക്ഫ്ലോയിൽ AI ഉപയോഗിക്കാം

AI എഞ്ചിനീയറിംഗ് വിവേകത്തിന് (engineering judgment) പകരമാവില്ല. എന്നാൽ ഒരു പ്രശ്നത്തിൽ കുടുങ്ങിപ്പോകുന്നതും പരിഹാരം കണ്ടെത്തുന്നതും തമ്മിലുള്ള സമയം അത് കുറയ്ക്കുന്നു.

AI-യോട് "കോഡ് മെച്ചപ്പെടുത്തുക" എന്ന് ചോദിക്കുന്നത് നിർത്തുക. പകരം ഈ അഞ്ച് പ്രായോഗിക രീതികൾ ഉപയോഗിക്കുക.

1. പെർഫോമൻസ് തടസ്സങ്ങൾ (performance bottlenecks) കണ്ടെത്തുക

നിങ്ങളുടെ ഓഡിറ്റുകൾക്കായി ചെക്ക്‌ലിസ്റ്റുകൾ നിർമ്മിക്കാൻ AI ഉപയോഗിക്കുക. താഴെ പറയുന്ന കാര്യങ്ങളെപ്പോലെ കൃത്യമായ അളവുകൾ ചോദിക്കുക:

  • Database call counts
  • Network waterfalls
  • Bundle sizes
  • RUM and server timings
  • Lighthouse scores

2. പ്രതീക്ഷിക്കാത്ത ടെസ്റ്റ് കേസുകൾ (test cases) നിർമ്മിക്കുക

ഒരു ഫംഗ്ഷൻ സിഗ്നേച്ചറോ (function signature) സ്പെക്കോ (spec) AI-ക്ക് നൽകുക. താഴെ പറയുന്നവ ചോദിക്കുക:

  • Boundary cases
  • Strange inputs
  • Race conditions
  • Property-based testing ideas വിശ്വാസ്യത വർദ്ധിപ്പിക്കുന്നതിനായി ഈ നിർദ്ദേശങ്ങളെ യഥാർത്ഥ ടെസ്റ്റുകളാക്കി മാറ്റുക.

3. നിയന്ത്രണങ്ങളോടെ റീഫാക്ടർ ചെയ്യുക (Refactor with constraints)

അവ്യക്തമായ പ്രോംപ്റ്റുകൾ മോശം കോഡിലേക്ക് നയിക്കും. കൃത്യമായ നിർദ്ദേശങ്ങൾ ഉപയോഗിക്കുക:

  • "Reduce cyclomatic complexity without changing behavior."
  • "Extract pure functions and make side effects explicit."
  • "Keep the public API the same but improve naming." നിയന്ത്രണങ്ങൾ നൽകുന്നത് ഔട്ട്‌പുട്ട് പരിശോധിക്കുന്നത് എളുപ്പമാക്കും.

4. സന്ദർഭത്തിനനുസരിച്ചുള്ള വിശദീകരണങ്ങൾ ചോദിക്കുക

നിങ്ങളുടെ പ്രോജക്റ്റ് വിവരങ്ങൾ നൽകിയാൽ AI വേഗത്തിൽ പഠിക്കാൻ നിങ്ങളെ സഹായിക്കും. താഴെ പറയുന്നവ ചോദിക്കുക:

  • "Why does this React render happen twice in StrictMode?"
  • "Based on this SQL query plan, what is the cause of the lag?"
  • "Where should I put this validation in this specific codebase?"

5. വാലിഡേഷൻ ലൂപ്പ് (validation loop) പിന്തുടരുക

AI പലപ്പോഴും ഉയർന്ന ആത്മവിശ്വാസത്തോടെ തെറ്റായ വിവരങ്ങൾ നൽകിയേക്കാം. ഈ നിയമങ്ങൾ പാലിക്കുക:

  • അത് കംപൈൽ (compile) ചെയ്യുന്നുണ്ടെങ്കിൽ, അത് ടെസ്റ്റ് ചെയ്യുക.
  • അത് സെക്യൂരിറ്റിയെ ബാധിക്കുന്നതാണെങ്കിൽ, അത് രണ്ടുതവണ പരിശോധിക്കുക.
  • അത് ഒരു വസ്തുത പറയുന്നതാണെങ്കിൽ, ഒരു സ്രോതസ്സ് (source) പരിശോധിക്കുക.

മികച്ച ഫലങ്ങൾക്കായി ഈ പ്രോംപ്റ്റ് ടെംപ്ലേറ്റ് ഉപയോഗിക്കുക:

  • Goal: നിങ്ങൾ എന്താണ് നേടാൻ ആഗ്രഹിക്കുന്നത്.
  • Context: നിങ്ങളുടെ ഭാഷയും ഫ്രെയിംവർക്കും.
  • Input: നിങ്ങളുടെ കോഡ്, ലോഗുകൾ അല്ലെങ്കിൽ എററുകൾ.
  • Output format: ബുള്ളറ്റുകൾ, സ്റ്റെപ്പുകൾ അല്ലെങ്കിൽ ഒരു diff.
  • Constraints: പെർഫോമൻസ്, വായനാക്ഷമത (readability), അല്ലെങ്കിൽ പുതിയ ഡിപെൻഡൻസികൾ പാടില്ല.

ഉദാഹരണം: Goal: Reduce API latency. Context: Node.js and Postgres. Input: Endpoint code and query. Output: A list of 5 improvements. Constraints: No schema changes this sprint.

നിങ്ങളുടെ ദൈനംദിന ജോലിയിൽ നിങ്ങൾ എങ്ങനെയാണ് AI ഉപയോഗിക്കുന്നത്?

Source: https://dev.to/imkrunal/using-ai-in-your-daily-dev-workflow-without-the-hype-57b1

Optional learning community: https://t.me/GyaanSetuAi