നിങ്ങളുടെ ദൈനംദിന ഡെവലപ്മെന്റ് വർക്ക്ഫ്ലോയിൽ 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
