ಲಾಗಿನ್ ಪುಟವು ಸರಿಯಾಗಿ ಕಾಣಿಸಿಕೊಂಡಿತು. REST API 200 OK ಪ್ರತಿಕ್ರಿಯೆಯನ್ನು ನೀಡಿತು. SaaS boilerplate ಯಾವುದೇ linting ದೋಷವಿಲ್ಲದೆ ಕಾರ್ಯಾರಂಭ ಮಾಡಿತು. ಒಂದು ಮಧ್ಯಾಹ್ನದಲ್ಲಿಯೇ, ಒಂದು ವಾರ ತೆಗೆದುಕೊಳ್ಳುತ್ತಿದ್ದ ಕೆಲಸವನ್ನು ನೀವು ಮುಗಿಸಿದಿರಿ. AI ಕೋಡಿಂಗ್ ಅಸಿಸ್ಟೆಂಟ್‌ಗಳು ಸಾಫ್ಟ್‌ವೇರ್ ಅಭಿವೃದ್ಧಿಯನ್ನು ಎಷ್ಟು ಸಂಪೂರ್ಣವಾಗಿ ಬದಲಾಯಿಸಿವೆ ಎಂದರೆ, ಈಗ ಫೀಚರ್‌ಗಳನ್ನು ನಿರ್ಮಿಸುವುದು ಇಂಜಿನಿಯರಿಂಗ್‌ನಂತೆ ಅನಿಸದೆ, ಮೆನುವಿನಿಂದ ಆರ್ಡರ್ ಮಾಡುವಂತೆ ಅನಿಸುತ್ತಿದೆ. ಆ ಅನುಕೂಲವು ನಿಜವಾಗಿಯೂ ಇದೆ. ಆದರೆ ಅದು ಒಂದು ಬೆಲೆಯನ್ನು ಕೇಳುತ್ತದೆ, ಅದು ಸಾಮಾನ್ಯವಾಗಿ ಅಪಾಯಗಳು ಹೆಚ್ಚಿರುವ ಸಮಯದಲ್ಲಿ ಮಾತ್ರ ಎದುರಾಗುತ್ತದೆ. ಈ ಬಲೆಗೆ ಡೆವಲಪರ್‌ಗಳು 'Vibe Coding' ಎಂದು ಹೆಸರಿಸಲು ಪ್ರಾರಂಭಿಸಿದ್ದಾರೆ ಮತ್ತು ಈ ಹೆಸರು ಸಮಸ್ಯೆಯನ್ನು ಪರಿಪೂರ್ಣವಾಗಿ ವಿವರಿಸುತ್ತದೆ.

ಕಾಪಿ-ಪೇಸ್ಟ್ ಲೂಪ್

ಈ ಲೂಪ್ ವಾಸ್ತವವಾಗಿ ಹೇಗಿರುತ್ತದೆ ಎಂದರೆ: ನೀವು ಚಾಟ್ ವಿಂಡೋದಲ್ಲಿ ನಿಮ್ಮ ಕರ್ಸರ್ ಅನ್ನು ಇರಿಸಿ ಮತ್ತು ಸರಳ ಇಂಗ್ಲಿಷ್‌ನಲ್ಲಿ ಒಂದು ಫೀಚರ್ ಅನ್ನು ವಿವರಿಸುತ್ತೀರಿ. ತಕ್ಷಣವೇ ಒಂದು ಕೋಡ್ ಬ್ಲಾಕ್ ಕಾಣಿಸಿಕೊಳ್ಳುತ್ತದೆ. ನೀವು ಅದನ್ನು ಹೈಲೈಟ್ ಮಾಡಿ, ಕಾಪಿ ಮಾಡಿ, ನಿಮ್ಮ ಎಡಿಟರ್‌ಗೆ ಮರಳಿ, ಪೇಸ್ಟ್ ಮಾಡಿ ಮತ್ತು ಸೇವ್ ಮಾಡಿ. ಟರ್ಮಿನಲ್ ಯಾವುದೇ ದೋಷಗಳನ್ನು ತೋರಿಸುವುದಿಲ್ಲ. ಬ್ರೌಸರ್ ಸರಿಯಾದ ಲೇಔಟ್ ಅನ್ನು ಪ್ರದರ್ಶಿಸುತ್ತದೆ. ನೀವು ಬದಲಾವಣೆಯನ್ನು ಕಮಿಟ್ ಮಾಡುತ್ತೀರಿ ಮತ್ತು ಮುಂದಿನ ಟಿಕೆಟ್ ಅನ್ನು ತೆರೆಯುತ್ತೀರಿ. ಲಾಜಿಕ್ ಅನ್ನು ಪತ್ತೆಹಚ್ಚಲು ನೀವು ಸಮಯ ತೆಗೆದುಕೊಳ್ಳಲಿಲ್ಲ. ಇಂಪೋರ್ಟ್ ಮಾಡಿದ ಡಿಪೆಂಡೆನ್ಸಿಗಳನ್ನು (dependencies) ಪರಿಶೀಲಿಸಲಿಲ್ಲ. ಆ ಥರ್ಡ್-ಪಾರ್ಟಿ ಲೈಬ್ರರಿ ನಿಜವಾಗಿಯೂ ಅಗತ್ಯವೇ ಅಥವಾ ಸ್ಟ್ಯಾಂಡರ್ಡ್ ಲೈಬ್ರರಿ ಟೂಲ್ ಸಾಕಾಗುತ್ತದೆಯೇ ಎಂಬ ಪ್ರಶ್ನೆಯೂ ಇಲ್ಲ. ಕೆಲಸದ ವಿಧಾನವು ಕೇವಲ ಕೇಳುವುದು, ಕಾಪಿ ಮಾಡುವುದು, ಪೇಸ್ಟ್ ಮಾಡುವುದು ಮತ್ತು ರನ್ ಮಾಡುವುದು ಎಂದಷ್ಟೇ. ಮೇಲ್ನೋಟಕ್ಕೆ ಸರಿಯಾಗಿ ಕಂಡರೆ, ಒಳಗಿನ ಭಾಗವೂ ಸರಿಯಾಗಿದೆ ಎಂದು ಭಾವಿಸಲಾಗುತ್ತದೆ. ಇದು ಯಾವುದೇ ಅರ್ಥಪೂರ್ಣ ರೀತಿಯಲ್ಲಿ ಕೋಡಿಂಗ್ ಮಾಡುವುದಲ್ಲ. ಇದು ಮ್ಯಾನುಯಲ್ ಅನ್ನು ಓದದೆ ಮೊದಲೇ ತಯಾರಿಸಿದ ಭಾಗಗಳನ್ನು ಜೋಡಿಸುವುದಷ್ಟೇ. ಯಾವುದೇ ಶಾರ್ಟ್‌ಕಟ್‌ನಂತೆ, ಇದು ಕೆಲಸ ಮಾಡದ ಕ್ಷಣದವರೆಗೆ ಮಾತ್ರ ಕೆಲಸ ಮಾಡುತ್ತದೆ.

ಅತ್ಯಂತ ಕೆಟ್ಟ ಸಮಯದಲ್ಲಿ ನಿಯಂತ್ರಣವನ್ನು ಕಳೆದುಕೊಳ್ಳುವುದು

ಬಗ್ (bug) ಪ್ರೊಡಕ್ಷನ್‌ನಲ್ಲಿ ಕಾಣಿಸಿಕೊಂಡಾಗ, ಅದು ನಿಮ್ಮ ಮೇಲೆಯೇ ಬೀಳುತ್ತದೆ, AI ಮೇಲಲ್ಲ. ಬೆಳಗಿನ ಎರಡು ಗಂಟೆಗೆ, ಚಾಟ್‌ಬಾಟ್ ನಿಮ್ಮ ಅಬ್ಸರ್ವೇಬಿಲಿಟಿ ಪ್ಲಾಟ್‌ಫಾರ್ಮ್‌ನಲ್ಲಿ ಲಾಗಿನ್ ಆಗಿರುವುದಿಲ್ಲ. ನೀವು ಇರುತ್ತೀರಿ. ನೀವು ಕಳುಹಿಸಿದ ಕೋಡ್ ಅನ್ನು ಎಂದಿಗೂ ಓದದಿದ್ದರೆ, ಅದು ಏಕೆ ವಿಫಲವಾಯಿತು ಎಂಬುದನ್ನು ನೀವು ವಿವರಿಸಲು ಸಾಧ್ಯವಿಲ್ಲ. ನಿಮಗೆ ಅರ್ಥವಾಗದ ಫೈಲ್‌ಗಳಲ್ಲಿ ನೀವು grep ಮಾಡುತ್ತಾ, ನಿಮಗೆ ತಿಳಿಯದ ಲಾಜಿಕ್ ಅನ್ನು ಸರಿಪಡಿಸಲು ಪ್ರಯತ್ನಿಸುತ್ತೀರಿ. ಆ ಅನುಭವವು ದಿಕ್ಕು ತಪ್ಪಿದಂತೆ ಮಾಡುತ್ತದೆ. ಸ್ವತಃ ರಚನೆಗಳನ್ನು ಬರೆಯುವ ಡೆವಲಪರ್ ಸಿಸ್ಟಮ್‌ನ ಮಾನಸಿಕ ನಕ್ಷೆಯನ್ನು (mental map) ನಿರ್ಮಿಸಿಕೊಳ್ಳುತ್ತಾರೆ. ಎಲ್ಲಿ ಅಪಾಯಗಳಿವೆ ಮತ್ತು ಯಾವ ಅಸಂಮತಿಗಳು (assumptions) ವ್ಯವಸ್ಥೆಯನ್ನು ಹಿಡಿದಿಟ್ಟುಕೊಂಡಿವೆ ಎಂಬುದು ಅವರಿಗೆ ತಿಳಿದಿರುತ್ತದೆ. Vibe Coding ಆ ನಕ್ಷೆಯನ್ನು ಅಳಿಸಿಹಾಕುತ್ತದೆ. ನೀವು ಕೇವಲ 'black boxes'ಗಳ ಆಪರೇಟರ್ ಆಗುತ್ತೀರಿ. ಸಿಂಟ್ಯಾಕ್ಸ್ ಸರಿಯಾಗಿದೆ, ಡೆಮೊ ಕ್ಲೈಂಟ್ ಅನ್ನು ಮೆಚ್ಚಿಸಿದೆ, ಆದರೆ ಸಿಸ್ಟಮ್ ನಿಜವಾಗಿಯೂ ನಿಮ್ಮದಲ್ಲ. ಮಾಲೀಕತ್ವಕ್ಕೆ ತಿಳುವಳಿಕೆ ಬೇಕು, ಮತ್ತು ತಿಳುವಳಿಕೆಗೆ ಸಮಯ ಬೇಕು. ಆ ಹಂತವನ್ನು ಬಿಟ್ಟುಬಿಡುವುದು ವೆಚ್ಚವನ್ನು ಕಡಿಮೆ ಮಾಡುವುದಿಲ್ಲ. ಅದು ಕೇವಲ ಅತ್ಯಂತ ದುಬಾರಿ ಕ್ಷಣಕ್ಕೆ ಅದನ್ನು ವರ್ಗಾಯಿಸುತ್ತದೆ.

ಕೆಲಸ ಮಾಡುವ ಕೋಡ್ ಸುರಕ್ಷಿತ ಕೋಡ್ ಅಲ್ಲ

AI ಮಾಡೆಲ್‌ಗಳು ತರಬೇತಿ ಡೇಟಾದಲ್ಲಿ ಕಂಡುಬರುವ ಮಾದರಿಗಳ ಆಧಾರದ ಮೇಲೆ ಪ್ರತಿಕ್ರಿಯೆಗಳನ್ನು ನೀಡುತ್ತವೆ. ಆ ಮಾದರಿಗಳಲ್ಲಿ ಹಳೆಯದಾದ ಮತ್ತು ಅಸುರಕ್ಷಿತವಾದ ಉದಾಹರಣೆಗಳು ಸಾಕಷ್ಟಿವೆ. ನೀವು ಪೇಸ್ಟ್ ಮಾಡಿದ ಲಾಗಿನ್ ಫಂಕ್ಷನ್, ಸಾಲ್ಟೆಡ್ ಸ್ಲೋ ಹ್ಯಾಶ್ (salted slow hash) ಬದಲಿಗೆ ವೇಗವಾದ, ಹಳೆಯ ಹ್ಯಾಶ್ ಅನ್ನು ಬಳಸಿ ಪಾಸ್‌ವರ್ಡ್‌ಗಳನ್ನು ಸಂಗ್ರಹಿಸಬಹುದು, ಏಕೆಂದರೆ ತರಬೇತಿಯ ಸಮಯದಲ್ಲಿ ಹಳೆಯ ಫೋರಂ ಸ್ನಿಪ್ಪೆಟ್‌ಗಳು ಹೆಚ್ಚು ಬಳಕೆಯಲ್ಲಿದ್ದಿರಬಹುದು. ನೀವು ಸರಳ ಉದಾಹರಣೆಯನ್ನು ಕೇಳಿದ್ದರಿಂದ ಮತ್ತು ಮಾಡೆಲ್ ಅದಕ್ಕೆ ಒಪ್ಪಿಕೊಂಡಿದ್ದರಿಂದ, API ಎಂಡ್‌ಪಾಯಿಂಟ್ ಬಳಕೆದಾರರ ಇನ್‌ಪುಟ್ ಅನ್ನು ನೇರವಾಗಿ ರೊ (raw) SQL ಸ್ಟ್ರಿಂಗ್‌ಗೆ ಸೇರಿಸಬಹುದು. ನೀವು ಸರ್ವರ್‌ಲೆಸ್ ಫ್ರಂಟ್‌ಎಂಡ್ (serverless frontend) ನಿರ್ಮಿಸುತ್ತಿದ್ದೀರಿ, ಬ್ಯಾಕ್‌ಎಂಡ್ ರೂಟ್ (backend route) ಅಲ್ಲ ಎಂಬುದು AI ಗೆ ತಿಳಿಯದ ಕಾರಣ, ನಿಮ್ಮ ಡೇಟಾಬೇಸ್ ಕ್ರೆಡೆನ್ಶಿಯಲ್‌ಗಳು ಕ್ಲೈಂಟ್-ಸೈಡ್ ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್‌ಗೆ ಸೋರಿಕೆಯಾಗಬಹುದು.

ಇನ್‌ಪುಟ್ ವ್ಯಾಲಿಡೇಶನ್ (input validation) ಇಲ್ಲದಿರುವುದು ಸಾಮಾನ್ಯವಾಗಿದೆ. ಜನರೇಟ್ ಮಾಡಲಾದ ಫಾರ್ಮ್ ಹ್ಯಾಂಡ್ಲರ್, ಬಳಕೆದಾರರು ಸಭ್ಯರಾಗಿರುತ್ತಾರೆ ಎಂದು ಭಾವಿಸುತ್ತದೆ ಮತ್ತು ಡೇಟಾವನ್ನು ಸ್ಟ್ಯಾಕ್‌ನ ಆಳಕ್ಕೆ ಕಳುಹಿಸುವ ಮೊದಲು ಸ್ಟ್ರಿಂಗ್ ಉದ್ದ, ಸಂಖ್ಯೆಯ ವ್ಯಾಪ್ತಿ ಅಥವಾ ಫೈಲ್ ಪ್ರಕಾರಗಳನ್ನು ಪರಿಶೀಲಿಸಲು ವಿಫಲವಾಗುತ್ತದೆ. ಅಥೆಂಟಿಕೇಶನ್ ಪರಿಶೀಲನೆಗಳು ಸರಿಯಾದ ಸರ್ವರ್-ಸೈಡ್ ವೆರಿಫಿಕೇಶನ್ ಇಲ್ಲದೆ ಕ್ಲೈಂಟ್-ಸೈಡ್ ಟೋಕನ್‌ಗಳ ಮೇಲೆ ಅವಲಂಬಿತವಾಗಿರಬಹುದು, ಇದು ಸುಳ್ಳು ಭದ್ರತೆಯ ಭಾವನೆಯನ್ನು ಸೃಷ್ಟಿಸುತ್ತದೆ. ಅದರ ತರಬೇತಿಯಲ್ಲಿ ಹಳೆಯ Stack Overflow ಉತ್ತರಗಳು ಇರುವುದರಿಂದ, AI ಒಂದು ಸೆಷನ್ ಕುಕಿಯನ್ನು (session cookie) HttpOnly ಅಥವಾ Secure ಫ್ಲಾಗ್‌ಗಳಿಲ್ಲದೆ ಜನರೇಟ್ ಮಾಡಬಹುದು. ಪ್ರತಿ ಸಮಸ್ಯೆಯೂ ಡೆಮೊ ಸಮಯದಲ್ಲಿ ಕಾಣಿಸುವುದಿಲ್ಲ. ಆಪ್ ಕೆಲಸ ಮಾಡುತ್ತದೆ. ಬಳಕೆದಾರರು ಲಾಗಿನ್ ಆಗುತ್ತಾರೆ. ಡೇಟಾ ಹರಿಯುತ್ತದೆ. ಆದರೆ ಒಬ್ಬ ದಾಳಿಗಾರನಿಗೆ ಕೇವಲ ಒಂದು ರಕ್ಷಣೆ ಇಲ್ಲದ ಪ್ರವೇಶ ದ್ವಾರ ಸಾಕು. AI ಔಟ್‌ಪುಟ್ ಅನ್ನು ಭದ್ರತೆಯ ದೃಷ್ಟಿಕೋನದಿಂದ ಪರಿಶೀಲಿಸುವುದು ಪ್ಯಾರಾನೋಯಾ (paranoia) ಅಲ್ಲ. ಇದು ವೃತ್ತಿಪರ ಸಾಫ್ಟ್‌ವೇರ್‌ನ ಮೂಲಭೂತ ಅಗತ್ಯವಾಗಿದೆ.

ಅಸಂಗತತೆಯ ತೆರಿಗೆ

ಕೋಡ್‌ಬೇಸ್ ಒಂದು ಕಥೆಯೂ ಹೌದು. ವಿಷಯಗಳನ್ನು ಹೇಗೆ ಮಾಡಬೇಕೆಂದು ಇದು ಹೊಸ ತಂಡದ ಸದಸ್ಯರಿಗೆ ಕಲಿಸುತ್ತದೆ. Vibe Coding ಆ ಕಥೆಯನ್ನು ಹನ್ನೆರಡು ವಿಭಿನ್ನ ಮತ್ತು ಪರಸ್ಪರ ವಿರೋಧಾಭಾಸವಿರುವ ಭಾಷೆಗಳಾಗಿ ವಿಭಜಿಸುತ್ತದೆ. ನೀವು ನಿನ್ನೆ ನಿರ್ಮಿಸಿದ ಫೀಚರ್, ಎಕ್ಸ್‌ಪ್ಲಿಸಿಟ್ ಸ್ಟೇಟ್ ರಿಡ್ಯೂಸರ್ಸ್ (explicit state reducers) ಹೊಂದಿರುವ ಫಂಕ್ಷನಲ್ React hooks ಅನ್ನು ಬಳಸುತ್ತದೆ. ಇಂದು ಜನರೇಟ್ ಮಾಡಲಾದ ಫೀಚರ್, ಸ್ವಲ್ಪ ವಿಭಿನ್ನ ಪ್ರಾಂಪ್ಟ್‌ನಿಂದ ಬಂದಿದ್ದರಿಂದ, ಮಾಡೆಲ್ ಹಳೆಯ ಮಾದರಿಯನ್ನು ಬಳಸಿದ ಕಾರಣ ಕ್ಲಾಸ್ ಕಾಂಪೊನೆಂಟ್‌ಗಳನ್ನು (class components) ಬಳಸುತ್ತದೆ. API ಲೇಯರ್ OpenAPI-ಜನರೇಟೆಡ್ ಸ್ಟಬ್‌ಗಳು (stubs) ಮತ್ತು ಕೈಬರಹದ ರೂಟ್ ಹ್ಯಾಂಡ್ಲರ್‌ಗಳ ನಡುವೆ ಬದಲಾಗುತ್ತಿರುತ್ತದೆ. ಹೆಸರಿಸುವ ಕ್ರಮಗಳು (Naming conventions) camelCase ಮತ್ತು snake_case ನಡುವೆ ಅಲೆಯುತ್ತವೆ. ಒಂದು ಫೈಲ್‌ನಲ್ಲಿ ಎರರ್ ಹ್ಯಾಂಡ್ಲಿಂಗ್ ಇಲ್ಲದಿರಬಹುದು ಮತ್ತು ಇನ್ನೊಂದರಲ್ಲಿ ವಿವರವಾದ ನೆಸ್ಟೆಡ್ try-catch ಬ್ಲಾಕ್‌ಗಳಾಗಿ ಕಾಣಿಸಿಕೊಳ್ಳಬಹುದು.

ವಾರಗಳು ಕಳೆದಂತೆ, ಈ ಯೋಜನೆಯು ಒಂದು ಪುರಾತತ್ವ ಉತ್ಖನನದಂತೆ (archaeological dig) ಆಗಿಬಿಡುತ್ತದೆ. ಪಕ್ಕದ AI-ಸೃಷ್ಟಿತ ಮಾಡ್ಯೂಲ್ ಯಾವ ಊಹೆಗಳನ್ನು ಮಾಡಿದೆ ಎಂಬುದು ನಿಮಗೆ ತಿಳಿಯದ ಕಾರಣ, ನೀವು ಒಂದು ಮಾಡ್ಯೂಲ್ ಅನ್ನು ಸುರಕ್ಷಿತವಾಗಿ ಬದಲಾಯಿಸಲು ಸಾಧ್ಯವಾಗುವುದಿಲ್ಲ. ರಿಫ್ಯಾಕ್ಟರಿಂಗ್ (Refactoring) ಎಂಬುದು ನಿಧಾನಗತಿಯ, ಅಪಾಯಕಾರಿ 'whack-a-mole' ಆಟವಾಗಿ ಬದಲಾಗುತ್ತದೆ. ಸಿಸ್ಟಮ್ ಕಂಪಿಲ್ ಆಗುತ್ತದೆ, ಆದರೆ ಅದು ಇನ್ನು ಮುಂದೆ ಸಮನ್ವಯತೆಯನ್ನು ಹೊಂದಿರುವುದಿಲ್ಲ. ಸಾವಿರಾರು ಪೇಸ್ಟ್ ಮಾಡಿದ ತುಣುಕುಗಳಿಂದ (pasted snippets) ನಿರ್ವಹಣಾ ಸಾಮರ್ಥ್ಯವು (Maintainability) ಕ್ರಮೇಣ ನಾಶವಾಗುತ್ತದೆ.

AI ಅನ್ನು ಶಿಕ್ಷಕನನ್ನಾಗಿ ಪರಿವರ್ತಿಸಿ

ನೀವು ಔಟ್‌ಪುಟ್ ಅನ್ನು ಪ್ರಶ್ನಿಸಿದಾಗ ಮಾತ್ರ ನಿಜವಾದ ಕಲಿಕೆ ನಡೆಯುತ್ತದೆ. AI ಅನ್ನು ವೇಗವಾಗಿ ಬರೆಯುವ, ಆದರೆ ಕೋಡ್ ರಿವ್ಯೂ (code review) ನಿರೀಕ್ಷಿಸುವ ಒಬ್ಬ ಸೀನಿಯರ್ ಡೆವಲಪರ್‌ನಂತೆ ಪರಿಗಣಿಸಿ. ಆ ಟ್ರೀ ಟ್ರಾವರ್ಸಲ್ (tree traversal) ಗಾಗಿ ಅದು ಇಟರೇಶನ್ (iteration) ಬದಲಿಗೆ ರಿಕರ್ಶನ್ (recursion) ಅನ್ನು ಏಕೆ ಆರಿಸಿಕೊಂಡಿತು ಎಂದು ಕೇಳಿ. ಎಡ್ಜ್ ಕೇಸ್‌ಗಳನ್ನು (edge cases) ಉತ್ತಮವಾಗಿ ನಿರ್ವಹಿಸುವ ಹೆಚ್ಚು ಮೆಮೊರಿ-ಎಫಿಷಿಯೆಂಟ್ (memory-efficient) ಮಾರ್ಗವಿದೆಯೇ ಎಂದು ಕೇಳಿ. ಇನ್‌ಪುಟ್ null ಆಗಿದ್ದಾಗ, ನೆಟ್‌ವರ್ಕ್ ರಿಕ್ವೆಸ್ಟ್ ಟೈಮ್‌ಔಟ್ (timeout) ಆದಾಗ, ಅಥವಾ ಇಬ್ಬರು ಬಳಕೆದಾರರು ಏಕಕಾಲದಲ್ಲಿ ಫಂಕ್ಷನ್ ಅನ್ನು ಟ್ರಿಗ್ಗರ್ ಮಾಡಿದಾಗ ಏನಾಗುತ್ತದೆ ಎಂದು ಕೇಳಿ. ನೀವು ಒಬ್ಬ ಜೂನಿಯರ್ ಸಹೋದ್ಯೋಗಿಯ ಪುಲ್ ರಿಕ್ವೆಸ್ಟ್ (pull request) ಅನ್ನು ಪರಿಶೀಲಿಸುತ್ತಿರುವಂತೆ, ಅದರ ತರ್ಕವನ್ನು (logic) ಸಾಲು ಸಾಲಾಗಿ ವಿವರಿಸಲು ಅದಕ್ಕೆ ಒತ್ತಾಯಿಸಿ.

ನೀವು ಮಾಡೆಲ್ ಅನ್ನು ತನ್ನ ಆಯ್ಕೆಗಳನ್ನು ಸಮರ್ಥಿಸಿಕೊಳ್ಳಲು ಒತ್ತಾಯಿಸಿದಾಗ, ನೀವು ಅವುಗಳನ್ನು ಅರ್ಥಮಾಡಿಕೊಳ್ಳಲು ನಿಮ್ಮನ್ನು ನೀವು ಒತ್ತಾಯಿಸುತ್ತೀರಿ. ಇದು ಸಂಪೂರ್ಣವಾಗಿ ಪರಿಸ್ಥಿತಿಯನ್ನು ಬದಲಾಯಿಸುತ್ತದೆ. AI ಕೇವಲ ಆಟೋಪಿಲಟ್ ಆಗಿ ಇರುವುದನ್ನು ನಿಲ್ಲಿಸಿ, ಒಬ್ಬ ಬೋಧಕನಾಗುತ್ತದೆ (tutor). ನಿಮ್ಮ ಗುರಿ ನೀವೇ ಯಾವುದೇ ಕೋಡ್ ಬರೆಯದಿರುವುದಲ್ಲ. ಅಸಿಸ್ಟೆಂಟ್ ಮೊದಲ ಆವೃತ್ತಿಯನ್ನು ಸಿದ್ಧಪಡಿಸಿದರೂ ಸಹ, ನೀವು ಸಂಪೂರ್ಣವಾಗಿ ಅರ್ಥಮಾಡಿಕೊಂಡ ಕೋಡ್ ಅನ್ನು ಮಾತ್ರ ಬಿಡುಗಡೆ ಮಾಡುವುದು ಇದರ ಉದ್ದೇಶವಾಗಿದೆ.

ಈಗ ನಿಜವಾಗಿಯೂ ಮುಖ್ಯವಾಗುವ ಕೌಶಲಗಳು

ಸಿಂಟ್ಯಾಕ್ಸ್ (syntax) ಬರೆಯುವುದು ದಿನದಿಂದ ದಿನಕ್ಕೆ ಅಗ್ಗವಾಗುತ್ತಿದೆ. ಓದುವುದು ಮತ್ತು ತರ್ಕ ಮಾಡುವುದು...