AI எனது UI-ஐ 2 மணிநேரத்தில் உருவாக்கியது. பிறகு அதைச் சரிசெய்ய 3 வாரங்களைச் செலவிட்டேன்.
ஒரு AI ஏஜென்ட் எனது UI-ஐ இரண்டு மணிநேரத்தில் உருவாக்கியது. அது 47 கோப்புகளை மாற்றியது. அது components, API routes மற்றும் ஒரு validation library-ஐ உருவாக்கியது.
அது நம்பமுடியாததாக இருந்தது என்று நான் நினைத்தேன். ஒரு வார வேலையை மிச்சப்படுத்தியதாக நான் நினைத்தேன்.
ஆறு வாரங்களுக்குப் பிறகு, நான் இன்னும் அந்த code-ஐச் சரிசெய்து கொண்டிருக்கிறேன். Components வேலை செய்கின்றன, ஆனால் அந்த code ஏன் வேலை செய்கிறது என்பதை எனது குழுவால் விளக்க முடியவில்லை. AI எங்களது patterns-களைப் பின்பற்றவில்லை. அது புதிய முறைகளை உருவாக்கியது. இப்போது ஒரே வேலையைச் செய்ய எங்களிடம் இரண்டு வெவ்வேறு வழிகள் உள்ளன, ஆனால் ஆவணங்கள் (documentation) ஏதுமில்லை.
இதுதான் Ghost Implementation பிரச்சனை.
உங்களுக்கு எலும்புகள் மட்டுமே உள்ள குறியீடு கிடைக்கிறது, ஆனால் அதில் உயிர் இல்லை. Code சரியாக இயங்குகிறது (compiles) மற்றும் சோதனைகளும் (tests) வெற்றி பெறுகின்றன. ஆனால் அது ஏன் அந்த முறையில் எழுதப்பட்டது என்று யாருக்கும் தெரியாது. AI-க்கு சூழல் (context) தெரியவில்லை, டெவலப்பருக்குப் புரிதல் இல்லை.
எனது ஆலோசனைப் பணியில் (consulting work) மூன்று முக்கியப் பிரச்சனைகளைக் காண்கிறேன்:
- Implementation Amnesia: செயல்பாட்டின் தேவைகளை (function requirements) ஆழமாகச் சிந்திப்பதற்கு முன்பே டெவலப்பர்கள் AI-ஐ நாடுகிறார்கள்.
- Reviewer Blindness: பொறியாளர்கள் AI பரிந்துரைகளைப் படிக்காமலேயே அவற்றை 'accept' செய்கிறார்கள்.
- Debugging Atrophy: மாறிகளைத் (variables) தனிமைப்படுத்துவதற்குப் பதிலாக, பிழைகளைச் (bugs) சரிசெய்ய டெவலப்பர்கள் AI-ஐப் பயன்படுத்துகிறார்கள். இது 15 நிமிடத் தீர்வை 3 மணிநேரத் தலைசுற்றலாக மாற்றுகிறது.
தாங்கள் கட்டமைப்பை (architecture) கவனித்துக் கொள்வதாகவும், AI boilerplate-ஐக் கவனித்துக் கொள்ளும் என்றும் மக்கள் கூறுகிறார்கள். இது ஒரு தவறு. Boilerplate என்பது உங்கள் அமைப்பின் இணைப்புத் திசு (connective tissue) போன்றது. அதை எழுதுவதைத் தவிர்க்கும்போது, உங்கள் கட்டமைப்பிற்குத் தேவையான முறைகளை (patterns) நீங்கள் இழக்கிறீர்கள்.
நாம் தயாரிப்பை வெளியிடுவதற்கான நேரத்தை (time to ship) அளவிடுகிறோம், ஆனால் அதைத் பராமரிப்பதற்கான நேரத்தை (time to maintain) அளவிடுவதில்லை.
AI கருவிகள் வேகத்திற்காக உருவாக்கப்பட்டவை. அவை நீண்ட கால நிலைத்தன்மைக்காக (long term stability) உருவாக்கப்பட்டவை அல்ல. நீங்கள் எவ்வளவு வேகமாக வெளியிடுகிறீர்கள் என்பதை மட்டுமே அளவிட்டால், மிகப்பெரிய தொழில்நுட்பக் கடனை (technical debt) உருவாக்குகிறீர்கள்.
AI பயன்படுத்தும் போது கூர்மையாகவும் விழிப்புடனும் இருப்பது எப்படி:
- அதை இருமுறை விளக்குங்கள்: ஆவணங்களைப் (docs) பார்க்காமல் ஒரு கருவி ஏன் வேலை செய்கிறது என்பதை உங்களால் விளக்க முடியாவிட்டால், அங்கு ஒரு இடைவெளி உள்ளது என்று அர்த்தம்.
- ஒரு எளியத் திட்டத்தை உருவாக்குங்கள்: AI இல்லாமல் ஒரு சிறிய திட்டத்தை குறியீடாக்குங்கள் (code). உங்கள் கைமுறைத் திறன்களை (manual skills) உயிர்ப்புடன் வைத்திருங்கள்.
- ஒரு architecture log-ஐப் பராமரியுங்கள்: ஒவ்வொரு பெரிய முடிவிற்கும் மூன்று வாக்கியங்களை எழுதுங்கள். நீங்கள் எதைத் தேர்ந்தெடுத்தீர்கள், எதை நிராகரித்தீர்கள் மற்றும் ஏன் என்பதைத் தெளிவாகக் குறிப்பிடுங்கள்.
- உங்கள் சார்புநிலையைக் (dependency) கண்காணியுங்கள்: உங்கள் அமர்வுகளை (sessions) 1 முதல் 5 வரை மதிப்பிடுங்கள். நீங்கள் AI-ஐ அதிகமாகச் சார்ந்திருந்தால், உங்கள் தனித்திறனை இழக்கிறீர்கள்.
AI பரிந்துரைகளை அங்கீகரிக்கும் நபராக மட்டும் இருக்காதீர்கள். அமைப்பைப் (system) புரிந்துகொண்ட நபராக இருங்கள்.
உங்கள் கடைசி AI pull request-ஐப் பாருங்கள். அதன் state management-ஐ சத்தமாக விளக்க முயற்சி செய்யுங்கள். உங்களால் அதைச் செய்ய முடியாவிட்டால், அது ஒரு Ghost Implementation.
AI உங்கள் பிழைத்திருத்தச் (debugging) செயல்முறையை எவ்வாறு மாற்றியுள்ளது? கருத்துப் பெட்டியில் (comments) எனக்குத் தெரியப்படுத்துங்கள்.
விருப்பத்தேர்வு கற்றல் சமூகம்: https://t.me/GyaanSetuAi