AI ਤੁਹਾਡੇ ਲਈ ਨਹੀਂ ਸੋਚੇਗਾ। ਅਤੇ ਇਹ ਇੱਕ ਚੰਗੀ ਗੱਲ ਹੈ।
ਬਹੁਤ ਸਾਰੇ ਲੋਕ ਉਮੀਦ ਕਰਦੇ ਹਨ ਕਿ AI ਇੱਕ ਸੀਨੀਅਰ ਸਾਫਟਵੇਅਰ ਇੰਜੀਨੀਅਰ ਵਾਂਗ ਕੰਮ ਕਰੇ। ਉਹ ਚਾਹੁੰਦੇ ਹਨ ਕਿ ਇਹ ਇਕੱਲੇ ਹੀ ਆਰਕੀਟੈਕਚਰ ਚੁਣੇ, best practices ਦੀ ਚੋਣ ਕਰੇ, ਅਤੇ ਸੁਰੱਖਿਆ (security) ਦਾ ਪ੍ਰਬੰਧ ਕਰੇ।
ਇਹ ਉਮੀਦ ਗਲਤ ਹੈ।
ਇੱਕ LLM ਤੁਹਾਡੇ ਪ੍ਰੋਂਪਟ ਦੇ ਅਧਾਰ 'ਤੇ ਅਗਲੇ ਟੋਕਨਾਂ ਦੀ ਭਵਿੱਖਬਾਣੀ ਕਰਦਾ ਹੈ। ਇਹ ਤੁਹਾਡੇ ਮਾਰਗਦਰਸ਼ਨ ਦੀ ਪਾਲਣਾ ਕਰਦਾ ਹੈ।
ਜੇਕਰ ਤੁਸੀਂ SOLID principles ਲਈ ਨਹੀਂ ਕਹਿੰਦੇ, ਤਾਂ AI ਉਹਨਾਂ ਦੀ ਵਰਤੋਂ ਨਹੀਂ ਕਰੇਗਾ। ਜੇਕਰ ਤੁਸੀਂ Repository Pattern ਲਈ ਨਹੀਂ ਕਹਿੰਦੇ, ਤਾਂ AI ਉਹ ਨਹੀਂ ਬਣਾਏਗਾ। ਜੇਕਰ ਤੁਸੀਂ ਇੱਕ ਸਧਾਰਨ API ਮੰਗਦੇ ਹੋ, ਤਾਂ AI ਇੱਕ ਗੁੰਝਲਦਾਰ layered system ਨਹੀਂ ਬਣਾਏਗਾ।
ਜਦੋਂ ਤੁਸੀਂ ਅਸਪਸ਼ਟ ਹੁੰਦੇ ਹੋ, ਤਾਂ AI ਚੀਜ਼ਾਂ ਬਾਰੇ ਅੰਦਾਜ਼ੇ ਲਗਾਉਂਦਾ ਹੈ। ਅੰਦਾਜ਼ੇ ਸਮੱਸਿਆਵਾਂ ਦਾ ਕਾਰਨ ਬਣਦੇ ਹਨ।
AI ਅਜਿਹੀ ਲਾਇਬ੍ਰੇਰੀ ਚੁਣ ਸਕਦਾ ਹੈ ਜੋ ਤੁਸੀਂ ਨਹੀਂ ਚਾਹੁੰਦੇ। ਇਹ ਬੇਲੋੜੀਆਂ dependencies ਜੋੜ ਸਕਦਾ ਹੈ। ਇਹ vendor lock-in ਪੈਦਾ ਕਰ ਸਕਦਾ ਹੈ।
AI ਨੂੰ ਉਹੀ ਕਰਨਾ ਚਾਹੀਦਾ ਹੈ ਜੋ ਤੁਸੀਂ ਬਿਲਕੁਲ ਕਹਿੰਦੇ ਹੋ।
ਜਦੋਂ ਮੈਂ ਕਿਸੇ ਪ੍ਰੋਜੈਕਟ ਵਿੱਚ logs ਜੋੜਨਾ ਚਾਹੁੰਦਾ ਹਾਂ, ਤਾਂ ਮੈਂ ਇਹ ਨਹੀਂ ਕਹਿੰਦਾ: "Add logs."
ਮੈਂ ਕਹਿੰਦਾ ਹਾਂ: "Serilog ਦੀ ਵਰਤੋਂ ਕਰੋ। ਅਧਿਕਾਰਤ ਦਸਤਾਵੇਜ਼ਾਂ ਦੀ ਪਾਲਣਾ ਕਰੋ। ਲਾਇਬ੍ਰੇਰੀ ਦੀਆਂ best practices ਦੀ ਪਾਲਣਾ ਕਰੋ। ਮੌਜੂਦਾ ਪ੍ਰੋਜੈਕਟ ਪੈਟਰਨ ਨਾਲ ਮੇਲ ਕਰੋ।"
ਹੁਣ AI ਕੋਲ ਸੰਦਰਭ (context) ਹੈ। ਇਹ ਲਾਇਬ੍ਰੇਰੀ, ਦਸਤਾਵੇਜ਼ਾਂ ਅਤੇ ਪੈਟਰਨ ਨੂੰ ਜਾਣਦਾ ਹੈ।
ਇਹੀ ਗੱਲ ਕੋਡ ਦੀ ਗੁਣਵੱਤਾ (code quality) 'ਤੇ ਵੀ ਲਾਗੂ ਹੁੰਦੀ ਹੈ। ਜੇਕਰ ਤੁਸੀਂ ਸਿਰਫ਼ ਨਵੇਂ ਫੀਚਰ ਮੰਗਦੇ ਹੋ, ਤਾਂ technical debt ਵਧਦਾ ਹੈ। ਇਹ AI ਦੀ ਗਲਤੀ ਨਹੀਂ ਹੈ। ਮੈਂ ਕੋਡ ਰਿਵਿਊ ਜਾਂ ਪ੍ਰੋਜੈਕਟ ਦੇ ਮੁੜ-ਸੰਗਠਨ ਲਈ ਨਹੀਂ ਕਿਹਾ ਸੀ।
ਆਪਣੇ ਪ੍ਰੋਜੈਕਟ, Tiny Theft Auto ਵਿੱਚ, ਮੈਂ ਵਿਕਾਸ ਨੂੰ ਖੁਦ ਸੰਭਾਲਿਆ। ਮੈਂ ਇੱਕ HTML ਫਾਈਲ ਨਾਲ ਸ਼ੁਰੂ ਕੀਤਾ ਸੀ। ਜਦੋਂ ਇਹ ਵਧਿਆ, ਤਾਂ ਮੈਂ ਖਾਸ ਹੁਕਮ ਦਿੱਤੇ:
- Apply SRP.
- ਕਲਾਸਾਂ ਨੂੰ ਵੱਖ-ਵੱਖ ਫਾਈਲਾਂ ਵਿੱਚ ਵੰਡੋ।
- ਢਾਂਚੇ ਨੂੰ ਮੁੜ-ਸੰਗਠਿਤ ਕਰੋ।
- ਕੋਡ ਰਿਵਿਊ ਕਰੋ।
- ਸੁਧਾਰ ਲਈ ਖੇਤਰ ਲੱਭੋ।
ਫੈਸਲੇ ਮੈਂ ਲਏ। AI ਨੇ ਕੰਮ ਕੀਤੇ।
ਪੇਸ਼ੇਵਰ ਮਾਹੌਲ ਵਿੱਚ, ਕੰਪਨੀਆਂ ਕੋਲ logs, testing, ਅਤੇ observability ਲਈ ਖਾਸ ਪੈਟਰਨ ਹੁੰਦੇ ਹਨ। ਮੈਂ ਇਹ ਉਮੀਦ ਨਹੀਂ ਕਰਦਾ ਕਿ AI ਇਹਨਾਂ ਪੈਟਰਨਾਂ ਦਾ ਅੰਦਾਜ਼ਾ ਲਗਾਏਗਾ। ਮੈਂ ਦਸਤਾਵੇਜ਼ ਜਾਂ ਟੈਂਪਲੇਟ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹਾਂ। ਇਹ AI ਨੂੰ ਨਵਾਂ ਆਰਕੀਟੈਕਚਰ ਬਣਾਉਣ ਤੋਂ ਰੋਕਦਾ ਹੈ ਅਤੇ ਇਸਨੂੰ ਮੌਜੂਦਾ ਮਿਆਰਾਂ ਨੂੰ ਲਾਗੂ ਕਰਨ ਲਈ ਮਜਬੂਰ ਕਰਦਾ ਹੈ।
ਆਪਣੀ ਸੋਚ ਬਦਲੋ।
ਆਪਣੀ ਸੋਚ ਨੂੰ ਆਊਟਸੋਰਸ ਨਾ ਕਰੋ। ਆਪਣੇ ਕੰਮ ਨੂੰ ਆਊਟਸੋਰਸ ਕਰੋ।
ਤੁਸੀਂ ਆਰਕੀਟੈਕਚਰ ਦਾ ਫੈਸਲਾ ਕਰਦੇ ਹੋ। ਤੁਸੀਂ scalability ਦਾ ਫੈਸਲਾ ਕਰਦੇ ਹੋ। ਤੁਸੀਂ best practices ਦਾ ਫੈਸਲਾ ਕਰਦੇ ਹੋ। ਤੁਸੀਂ ਲਾਇਬ੍ਰੇਰੀਆਂ ਦਾ ਫੈਸਲਾ ਕਰਦੇ ਹੋ।
AI ਇਹਨਾਂ ਫੈਸਲਿਆਂ ਨੂੰ ਤੇਜ਼ੀ ਨਾਲ ਲਾਗੂ ਕਰਨ ਵਿੱਚ ਤੁਹਾਡੀ ਮਦਦ ਕਰਦਾ ਹੈ। ਇਹ ਚੋਣਾਂ ਕਰਨ ਵਾਲਾ ਇੰਜੀਨੀਅਰ ਨਹੀਂ ਹੈ। ਇਹ ਉਹਨਾਂ ਲੋਕਾਂ ਲਈ ਇੱਕ productivity multiplier ਹੈ ਜੋ ਜਾਣਦੇ ਹਨ ਕਿ ਉਹ ਕੀ ਬਣਾਉਣਾ ਚਾਹੁੰਦੇ ਹਨ।
Source: https://dev.to/andredarcie/a-ia-nao-vai-pensar-por-voce-e-isso-e-uma-coisa-boa-5jj
Optional learning community: https://t.me/GyaanSetuAi
