ಹೆಚ್ಚಿನ ಇಂಜಿನಿಯರ್ಗಳು AI ಬಳಸುತ್ತಾರೆ. ಕೆಲವರು ಮಾತ್ರ ಅದರೊಂದಿಗೆ ಇಂಜಿನಿಯರಿಂಗ್ ಮಾಡುತ್ತಾರೆ.
ಈಗ ಹೆಚ್ಚಿನ ಸಾಫ್ಟ್ವೇರ್ ಇಂಜಿನಿಯರ್ಗಳು AI ಬಳಸುತ್ತಿದ್ದಾರೆ.
ಅವರು ಇದನ್ನು ಡಿಬಗ್ ಮಾಡಲು (debugging), ಪರೀಕ್ಷೆಗಳನ್ನು ಬರೆಯಲು (writing tests), ಅಥವಾ SQL ಕ್ವೇರಿಗಳನ್ನು ರಚಿಸಲು ಬಳಸುತ್ತಾರೆ. AI ಬಳಸುವುದು ಸುಲಭ. ಆದರೆ AI ನೊಂದಿಗೆ ಇಂಜಿನಿಯರಿಂಗ್ ಮಾಡುವುದು ಬಹಳ ಕಷ್ಟ.
ನೈಜ ರೆಪೊಸಿಟರಿ (repository) ಕಾರ್ಯಗಳಲ್ಲಿ AI ಬಳಸುವಾಗ ನಾನು ಒಂದು ಸಮಸ್ಯೆಯನ್ನು ಗಮನಿಸಿದೆ. ಒಂದು ತಪ್ಪು ಬದಲಾವಣೆಯು ಕೇವಲ ಕೆಟ್ಟ ಫಲಿತಾಂಶವನ್ನು ನೀಡುವುದಿಲ್ಲ; ಅದು ನಿಮ್ಮ ರಚನೆ (structure), ನಿಮ್ಮ ಪರೀಕ್ಷೆಗಳು (tests) ಮತ್ತು ಭವಿಷ್ಯದ ನಿರ್ವಹಣಾ ಸಾಮರ್ಥ್ಯವನ್ನು (maintainability) ಹಾಳುಮಾಡುತ್ತದೆ.
ಕೋಡ್ ಜನರೇಟ್ ಮಾಡುವ ಭಾಗ ಸುಲಭವಾಗಿದೆ. ಒಂದು ಸಾಮಾನ್ಯ ಪ್ರಾಂಪ್ಟ್ (prompt) ವೇಗವಾಗಿ ಕೋಡ್ ಅನ್ನು ನೀಡುತ್ತದೆ. ಮೊದಲ ನೋಟಕ್ಕೆ ಅದು ಸ್ವಚ್ಛವಾಗಿ ಕಾಣಿಸಬಹುದು.
ನೀವು ಮೊದಲು ಬೇಸರದ ಕೆಲಸಗಳನ್ನು ಮಾಡಿದಾಗ ಮಾತ್ರ ಉಪಯುಕ್ತ ಫಲಿತಾಂಶಗಳು ಸಿಗುತ್ತವೆ. ನೀವು ಇವುಗಳನ್ನು ಮಾಡಲೇಬೇಕು:
- ಅಗತ್ಯತೆಯನ್ನು (requirement) ವ್ಯಾಖ್ಯಾನಿಸುವುದು.
- ವ್ಯಾಪ್ತಿಯನ್ನು (scope) ಸೀಮಿತಗೊಳಿಸುವುದು.
- ನಿರ್ಬಂಧಗಳನ್ನು (constraints) ವಿವರಿಸುವುದು.
- ಬದಲಾವಣೆಯನ್ನು ಹೇಗೆ ಪರಿಶೀಲಿಸಬೇಕು ಎಂದು ನಿರ್ಧರಿಸುವುದು.
ಕೌಶಲವು ಪ್ರಾಂಪ್ಟಿಂಗ್ ಮಾಡುವುದಲ್ಲ. ಕೌಶಲವು ಕೆಲಸವನ್ನು ರೂಪಿಸುವುದಾಗಿದೆ (shaping the work).
AI ಔಟ್ಪುಟ್ನ ವೇಗವನ್ನು ಹೆಚ್ಚಿಸುತ್ತದೆ. ಆದರೆ ಅದು ಪರಿಶೀಲನೆಯ (verification) ಗುಣಮಟ್ಟವನ್ನು ಹೆಚ್ಚಿಸುವುದಿಲ್ಲ. ಕೋಡ್ ಜನರೇಟ್ ಮಾಡುವುದು ವೇಗವಾದರೆ, ಅಸ್ಪಷ್ಟ ಅಗತ್ಯತೆಗಳು ಹೆಚ್ಚು ದುಬಾರಿಯಾಗುತ್ತವೆ. ದುರ್ಬಲ ವಿಮರ್ಶೆಗಳು (weak reviews) ಹೆಚ್ಚು ಅಪಾಯಕಾರಿಯಾಗುತ್ತವೆ.
AI ನಿಮ್ಮ ಅಸ್ತಿತ್ವದಲ್ಲಿರುವ ಇಂಜಿನಿಯರಿಂಗ್ ಲೂಪ್ ಅನ್ನು (engineering loop) ವೃದ್ಧಿಸುತ್ತದೆ.
ಅಗತ್ಯತೆ ಅಸ್ಪಷ್ಟವಾಗಿದ್ದರೆ, AI ಏನನ್ನಾದರೂ ಉತ್ಪಾದಿಸುತ್ತದೆ. ಆರ್ಕಿಟೆಕ್ಚರ್ (architecture) ಅಸ್ತವ್ಯಸ್ತವಾಗಿದ್ದರೆ, AI ಆ ಅಸ್ತವ್ಯಸ್ತತೆಯನ್ನು ಕಾಪಿ ಮಾಡುತ್ತದೆ. ನೀವು ಔಟ್ಪುಟ್ ಅನ್ನು ಪರಿಶೀಲಿಸಲು ಸಾಧ್ಯವಾಗದಿದ್ದರೆ, ವೇಗವು ಅಪಾಯವಾಗುತ್ತದೆ.
ಪ್ರಶ್ನೆಯೆಂದರೆ AI ಇಂಜಿನಿಯರ್ಗಳನ್ನು ಬದಲಾಯಿಸುತ್ತದೆಯೇ ಎಂದಲ್ಲ. ಪ್ರಶ್ನೆಯೆಂದರೆ: ಕೋಡ್ ಅಗ್ಗವಾದಾಗ ಇಂಜಿನಿಯರಿಂಗ್ನ ಯಾವ ಭಾಗಗಳು ಹೆಚ್ಚು ಮುಖ್ಯವಾಗುತ್ತವೆ?
ನನ್ನ ಉತ್ತರ: ಅನುಷ್ಠಾನಕ್ಕೆ (implementation) ಮುನ್ನ ಸ್ಪಷ್ಟವಾಗಿ ಯೋಚಿಸುವುದು.
AI ಹಳೆಯ ಸಲಹೆಗಳನ್ನು ಇನ್ನಷ್ಟು ಮುಖ್ಯವಾಗಿಸುತ್ತದೆ:
- ಎರಡು ಬಾರಿ ಯೋಚಿಸಿ, ಒಮ್ಮೆ ಕೋಡ್ ಮಾಡಿ.
- AI ಯಿಂದ ನಿರ್ಮಿಸಲು ಕೇಳುವ ಮೊದಲು ಸಮಸ್ಯೆಯನ್ನು ವ್ಯಾಖ್ಯಾನಿಸಿ.
- ಉತ್ತರವನ್ನು ಒಪ್ಪಿಕೊಳ್ಳುವ ಮೊದಲು ಲಾಭ ಮತ್ತು ನಷ್ಟಗಳನ್ನು (tradeoffs) ಪರಿಶೀಲಿಸಿ.
- ಮರ್ಜ್ (merge) ಮಾಡುವ ಮೊದಲು ವರ್ತನೆಯನ್ನು (behavior) ಪರಿಶೀಲಿಸಿ.
ಇಂಜಿನಿಯರಿಂಗ್ ಎಂಬುದು ಕೋಡ್ ಬರೆಯುವುದರಿಂದ ಸರಿಯಾದ ಬದಲಾವಣೆಯನ್ನು ರೂಪಿಸುವುದರತ್ತ ಬದಲಾಗುತ್ತಿದೆ.
AI ಅನ್ನು ರಚನೆಯ ಅಗತ್ಯವಿರುವ ಸಹಯೋಗಿಯಂತೆ (collaborator) ಪರಿಗಣಿಸಿ. ಒಂದು ಉತ್ತಮ ಲೂಪ್ ಹೀಗಿರುತ್ತದೆ: Requirement → Gaps → Plan → Small change → Review → Checks → Notes.
ನೈಜ ಇಂಜಿನಿಯರಿಂಗ್ ಎಂದರೆ ಕೋಡ್ ಉತ್ಪಾದಿಸುವುದಲ್ಲ. ಅದು ವಿಶ್ವಾಸಾರ್ಹ ಬದಲಾವಣೆಯನ್ನು (reliable change) ಉತ್ಪಾದಿಸುವುದಾಗಿದೆ.
ಅತಿ ಹೆಚ್ಚು ಕೋಡ್ ಜನರೇಟ್ ಮಾಡುವುದು ಅನುಕೂಲವಲ್ಲ. ಏನನ್ನು ನಿರ್ಮಿಸಬೇಕು ಮತ್ತು ಅದು ನಿಮ್ಮ ಸಿಸ್ಟಮ್ಗೆ ಹೇಗೆ ಹೊಂದಿಕೆಯಾಗುತ್ತದೆ ಎಂದು ತಿಳಿಯುವುದೇ ನಿಜವಾದ ಅನುಕೂಲ.
ಗೆಲ್ಲುವ ಇಂಜಿನಿಯರ್ಗಳು ಅತಿ ವೇಗವಾಗಿ ಪ್ರಾಂಪ್ಟ್ ಬರೆಯುವವರಲ್ಲ. ಅವರು ಆ ಸಾಧನದ ಸುತ್ತ ಉತ್ತಮ ವರ್ಕ್ಫ್ಲೋಗಳನ್ನು (workflows) ವಿನ್ಯಾಸಗೊಳಿಸುವವರಾಗುತ್ತಾರೆ.
ಮೂಲ: https://dev.to/jeelvankhede/most-engineers-use-ai-few-engineer-with-it-3pd
ಐಚ್ಛಿಕ ಕಲಿಕಾ ಸಮುದಾಯ: https://t.me/GyaanSetuAi